Request diff between arbitrary revisions
Default branch: MAIN
Revision 1.10 / (download) - annotate - [select for diffs], Fri Dec 8 19:14:36 2023 UTC (6 months ago) by miod
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE,
OPENBSD_7_5,
HEAD
Changes since 1.9: +2 -1 lines
Diff to previous 1.9 (colored)
Make sure TIB_INIT correctly initializes tib_thread_flags; regression introduced in 1.3, causing sporadic pthread_main_np() erroneous results (and possibly more subtle problems). With and ok kurt@
Revision 1.9 / (download) - annotate - [select for diffs], Tue Dec 27 07:44:56 2022 UTC (17 months, 2 weeks ago) by jmc
Branch: MAIN
CVS Tags: OPENBSD_7_4_BASE,
OPENBSD_7_4,
OPENBSD_7_3_BASE,
OPENBSD_7_3
Changes since 1.8: +2 -2 lines
Diff to previous 1.8 (colored)
spelling fixes; from paul tagliamonte
Revision 1.8 / (download) - annotate - [select for diffs], Tue Jul 14 16:48:13 2020 UTC (3 years, 10 months ago) by kettenis
Branch: MAIN
CVS Tags: OPENBSD_7_2_BASE,
OPENBSD_7_2,
OPENBSD_7_1_BASE,
OPENBSD_7_1,
OPENBSD_7_0_BASE,
OPENBSD_7_0,
OPENBSD_6_9_BASE,
OPENBSD_6_9,
OPENBSD_6_8_BASE,
OPENBSD_6_8
Changes since 1.7: +6 -1 lines
Diff to previous 1.7 (colored)
Fix TIB/TCB on powerpc64. Some bright sould decided that the TCB should be 8 bytes in the 64-bit ABI just like in the 32-bit ABI. But that means there is no "spare" word in the TCB that we can use to store a pointer to our struct pthread. So we have to treat powerpc64 special. Also recognize that the thread pointer points 0x7000 bytes after the TCB. Since the TCB is 8 bytes this means that TCB_OFFSET should be 0x7008. Pointed out by guenther@; ok deraadt@
Revision 1.7 / (download) - annotate - [select for diffs], Fri May 10 13:29:21 2019 UTC (5 years, 1 month ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_6_7_BASE,
OPENBSD_6_7,
OPENBSD_6_6_BASE,
OPENBSD_6_6
Changes since 1.6: +23 -1 lines
Diff to previous 1.6 (colored)
ld.so boot cleanup support: - put functions and data which are only used before calling the executable's start function into their own page-aligned segments for unmapping (only done on amd64, arm64, armv7, powerpc, and sparc64 so far) - pass .init_array and .preinit_array functions an addition argument which is a callback to get a structure which includes a function that frees the boot text and data - sometimes delay doing RELRO processing: for a shared-object marked DF_1_INITFIRST do it after the object's .init_array, for the executable do it after the .preinit_array - improve test-ld.so to link against libpthread and trigger its initialization late libc changes to use this will come later ok kettenis@
Revision 1.6 / (download) - annotate - [select for diffs], Tue Nov 28 18:57:02 2017 UTC (6 years, 6 months ago) by kettenis
Branch: MAIN
CVS Tags: OPENBSD_6_5_BASE,
OPENBSD_6_5,
OPENBSD_6_4_BASE,
OPENBSD_6_4,
OPENBSD_6_3_BASE,
OPENBSD_6_3
Changes since 1.5: +4 -6 lines
Diff to previous 1.5 (colored)
Add a member to be used by __cxa_thread_atexit(). Remove padding which would now misalign things. ok guenther@
Revision 1.5 / (download) - annotate - [select for diffs], Thu Aug 10 13:35:18 2017 UTC (6 years, 10 months ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE,
OPENBSD_6_2
Changes since 1.4: +2 -2 lines
Diff to previous 1.4 (colored)
fix typo in comment
Revision 1.4 / (download) - annotate - [select for diffs], Thu Apr 20 16:07:52 2017 UTC (7 years, 1 month ago) by visa
Branch: MAIN
Changes since 1.3: +3 -5 lines
Diff to previous 1.3 (colored)
Get TCB address using the RDHWR instruction instead of __get_tcb(). This gives fast access to the address on systems that implement the UserLocal register. TCB caching is still used when running in the single-threaded mode in order not to penalize old systems. The kernel counterpart of this change must be in place before using this diff! With guenther@
Revision 1.3 / (download) - annotate - [select for diffs], Sat May 7 19:05:21 2016 UTC (8 years, 1 month ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_6_1_BASE,
OPENBSD_6_1,
OPENBSD_6_0_BASE,
OPENBSD_6_0
Changes since 1.2: +52 -47 lines
Diff to previous 1.2 (colored)
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@
Revision 1.2 / (download) - annotate - [select for diffs], Sun Mar 20 02:30:28 2016 UTC (8 years, 2 months ago) by guenther
Branch: MAIN
Changes since 1.1: +36 -39 lines
Diff to previous 1.1 (colored)
Prepare for future ld.so/libc bump: update <tib.h> with the definitions that will be needed and make libpthread work when ld.so/libc.a provide an initial TIB.
Revision 1.1 / (download) - annotate - [select for diffs], Mon Sep 14 08:16:14 2015 UTC (8 years, 8 months ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_5_9_BASE,
OPENBSD_5_9
Prefer the standardized <poll.h> over <sys/poll.h>