OpenBSD CVS

CVS log for src/libexec/ld.so/tib.c


[BACK] Up to [local] / src / libexec / ld.so

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.9 / (download) - annotate - [select for diffs], Fri Dec 8 12:58:27 2023 UTC (5 months, 3 weeks ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, HEAD
Changes since 1.8: +2 -4 lines
Diff to previous 1.8 (colored)

locally us MAXIMUM() rather than MAX()
ok tb gnezdo

Revision 1.8 / (download) - annotate - [select for diffs], Sat Jan 8 06:49:41 2022 UTC (2 years, 4 months ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_7_4_BASE, OPENBSD_7_4, OPENBSD_7_3_BASE, OPENBSD_7_3, OPENBSD_7_2_BASE, OPENBSD_7_2, OPENBSD_7_1_BASE, OPENBSD_7_1
Changes since 1.7: +2 -6 lines
Diff to previous 1.7 (colored)

Prep .c files for removing the #includes from */archdep.h
 * replace #include "archdep.h" with #includes of what is used, pulling in
   "syscall.h", "util.h", and "archdep.h" as needed
 * delete #include <sys/syscall.h> from syscall.h
 * only pull in <sys/stat.h> to the three files that use _dl_fstat(),
   forward declare struct stat in syscall.h for the others
 * NBBY is for <sys/select.h> macros; just use '8' in dl_printf.c
 * <machine/vmparam.h> is only needed on i386; conditionalize it
 * stop using __LDPGSZ: use _MAX_PAGE_SHIFT (already used by malloc.c)
   where necessary
 * delete other bogus #includes, order legit per style: <sys/*> then
   <*/*>, then <*>, then "*"

dir.c improvement from jsg@
ok and testing assistance deraadt@

Revision 1.7 / (download) - annotate - [select for diffs], Fri Dec 1 23:30:05 2017 UTC (6 years, 6 months ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9, OPENBSD_6_8_BASE, OPENBSD_6_8, OPENBSD_6_7_BASE, OPENBSD_6_7, OPENBSD_6_6_BASE, OPENBSD_6_6, OPENBSD_6_5_BASE, OPENBSD_6_5, OPENBSD_6_4_BASE, OPENBSD_6_4, OPENBSD_6_3_BASE, OPENBSD_6_3
Changes since 1.6: +94 -16 lines
Diff to previous 1.6 (colored)

Redo the calculation of the alignment and placement of static TLS data to
correctly take into account the segment p_align.  Previously, anything
with a size belong the natural alignment or with alignment larger than
the natural one would either not be intialized correctly, be misaligned,
or result in the TIB being misaligned.

Problems reported by Charles Collicutt (charles (at) collicutt.co.uk)
ok kettenis@

Revision 1.6 / (download) - annotate - [select for diffs], Sun Oct 29 08:45:53 2017 UTC (6 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.5: +1 -1 lines
Diff to previous 1.5 (colored)

Prefer <elf.h> to the non portable <sys/exec_elf.h>.

ok jca@, deraadt@

Revision 1.5 / (download) - annotate - [select for diffs], Sun Aug 27 21:59:49 2017 UTC (6 years, 9 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE, OPENBSD_6_2
Changes since 1.4: +1 -1 lines
Diff to previous 1.4 (colored)

Replace heaps of hand-written syscall stubs with a simpler framework
which is largely MI.
ok visa kettenis

Revision 1.4 / (download) - annotate - [select for diffs], Mon Jan 23 12:59:12 2017 UTC (7 years, 4 months ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_6_1_BASE, OPENBSD_6_1
Changes since 1.3: +4 -2 lines
Diff to previous 1.3 (colored)

The functionality of _dl_allocate_tib() is used internally, so rename
it to allocate_tib(), mark that hidden, then make the exported function
an alias of that.

ok kettenis@

Revision 1.3 / (download) - annotate - [select for diffs], Thu May 19 20:07:43 2016 UTC (8 years ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE, OPENBSD_6_0
Changes since 1.2: +4 -0 lines
Diff to previous 1.2 (colored)

Give the caller a chance to handle the failure if unable to allocate
the TIB for a new thread

ok jca@ millert@ deraadt@

Revision 1.2 / (download) - annotate - [select for diffs], Wed May 18 20:40:20 2016 UTC (8 years ago) by deraadt
Branch: MAIN
Changes since 1.1: +1 -1 lines
Diff to previous 1.1 (colored)

fix types for mmap wrappers.  A few whitespace cleanups snuck in.
ok guenther

Revision 1.1 / (download) - annotate - [select for diffs], Sat May 7 19:05:23 2016 UTC (8 years ago) by guenther
Branch: MAIN

Use a Thread Information Block in both single and multi-threaded programs.
This stores errno, the cancelation flags, and related bits for each thread
and is allocated by ld.so or libc.a.  This is an ABI break from 5.9-stable!

Make libpthread dlopen'able by moving the cancelation wrappers into libc
and doing locking and fork/errno handling via callbacks that libpthread
registers when it first initializes.  'errno' *must* be declared via
<errno.h> now!

Clean up libpthread's symbol exports like libc.

On powerpc, offset the TIB/TCB/TLS data from the register per the ELF spec.

Testing by various, particularly sthen@ and patrick@
ok kettenis@

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.