The NetBSD Project

CVS log for src/lib/libpthread/pthread_specific.c

[BACK] Up to [cvs.NetBSD.org] / src / lib / libpthread

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.28 / (download) - annotate - [select for diffs], Sun Apr 10 10:38:33 2022 UTC (2 years ago) by riastradh
Branch: MAIN
CVS Tags: netbsd-10-base, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10, HEAD
Changes since 1.27: +4 -4 lines
Diff to previous 1.27 (colored) to selected 1.2 (colored)

pthread: Nix trailing whitespace.

Revision 1.27 / (download) - annotate - [select for diffs], Sat Feb 12 14:59:32 2022 UTC (2 years, 2 months ago) by riastradh
Branch: MAIN
Changes since 1.26: +5 -2 lines
Diff to previous 1.26 (colored) to selected 1.2 (colored)

libpthread: Move namespacing include to top of .c files.

Stuff like libc's namespace.h, or atomic_op_namespace.h, which does
namespacing tricks like `#define atomic_cas_uint _atomic_cas_uint',
has to go at the top of each .c file.  If it goes in the middle, it
might be too late to affect the declarations, and result in compile
errors.

I tripped over this by including <sys/atomic.h> in mips
<machine/lock.h>.

(Maybe we should create a new pthread_namespace.h file for the
purpose, but this'll do for now.)

Revision 1.21.2.3 / (download) - annotate - [select for diffs], Thu May 22 11:36:59 2014 UTC (9 years, 10 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.21.2.2: +18 -3 lines
Diff to previous 1.21.2.2 (colored) to branchpoint 1.21 (colored) next main 1.22 (colored) to selected 1.2 (colored)

sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")

Revision 1.22.2.3 / (download) - annotate - [select for diffs], Sun Jun 23 06:21:08 2013 UTC (10 years, 9 months ago) by tls
Branch: tls-maxphys
Changes since 1.22.2.2: +18 -3 lines
Diff to previous 1.22.2.2 (colored) next main 1.23 (colored) to selected 1.2 (colored)

resync from head

Revision 1.21.22.3 / (download) - annotate - [select for diffs], Mon Apr 29 01:50:18 2013 UTC (10 years, 11 months ago) by riz
Branch: netbsd-6
CVS Tags: netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1
Changes since 1.21.22.2: +10 -2 lines
Diff to previous 1.21.22.2 (colored) to branchpoint 1.21 (colored) next main 1.22 (colored) to selected 1.2 (colored)

Pull up following revision(s) (requested by manu in ticket #869):
	lib/libpthread/pthread_rwlock.c: revision 1.33
	lib/libc/include/reentrant.h: revision 1.16
	lib/libpthread/pthread_cond.c: revision 1.59
	lib/libpthread/pthread_misc.c: revision 1.15
	lib/libc/thread-stub/thread-stub.c: revision 1.23
	lib/libpthread/pthread_cancelstub.c: revision 1.38
	lib/libpthread/pthread_specific.c: revision 1.26
	lib/libpthread/pthread_mutex.c: revision 1.56
	lib/libpthread/pthread_tsd.c: revision 1.11
	lib/libpthread/Makefile: revision 1.80
	lib/libpthread/pthread.c: revision 1.143
	lib/libpthread/pthread_int.h: revision 1.89
- Allow libpthread to be dlopened again, by providing libc stubs to
libpthread.
- Fail if the dlopened libpthread does pthread_create(). From manu@
- Discussed at length in the mailing lists; approved by core@
- This was chosen as the least intrusive patch that will provide
  the necessary functionality.
XXX: pullup to 6

Revision 1.26 / (download) - annotate - [select for diffs], Thu Mar 21 16:49:12 2013 UTC (11 years, 1 month ago) by christos
Branch: MAIN
CVS Tags: yamt-pagecache-base9, tls-maxphys-base, tls-earlyentropy-base, tls-earlyentropy, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, phil-wifi-base, phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, phil-wifi-20191119, phil-wifi-20190609, phil-wifi, pgoyette-localcount-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, pgoyette-localcount, pgoyette-compat-merge-20190127, pgoyette-compat-base, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, pgoyette-compat, perseant-stdc-iso10646-base, perseant-stdc-iso10646, netbsd-9-base, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, netbsd-8-base, netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, netbsd-8, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7, matt-nb8-mediatek-base, matt-nb8-mediatek, localcount-20160914, is-mlppp-base, is-mlppp, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan, agc-symver-base, agc-symver
Changes since 1.25: +18 -7 lines
Diff to previous 1.25 (colored) to selected 1.2 (colored)

- Allow libpthread to be dlopened again, by providing libc stubs to libpthread.
- Fail if the dlopened libpthread does pthread_create(). From manu@
- Discussed at length in the mailing lists; approved by core@
- This was chosen as the least intrusive patch that will provide
  the necessary functionality.
XXX: pullup to 6

Revision 1.25 / (download) - annotate - [select for diffs], Wed Mar 6 11:30:56 2013 UTC (11 years, 1 month ago) by yamt
Branch: MAIN
Changes since 1.24: +7 -3 lines
Diff to previous 1.24 (colored) to selected 1.2 (colored)

add assertions

Revision 1.22.2.2 / (download) - annotate - [select for diffs], Mon Feb 25 00:27:59 2013 UTC (11 years, 1 month ago) by tls
Branch: tls-maxphys
Changes since 1.22.2.1: +4 -8 lines
Diff to previous 1.22.2.1 (colored) to selected 1.2 (colored)

resync with head

Revision 1.21.2.2 / (download) - annotate - [select for diffs], Wed Jan 16 05:32:27 2013 UTC (11 years, 3 months ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.21.2.1: +4 -8 lines
Diff to previous 1.21.2.1 (colored) to branchpoint 1.21 (colored) to selected 1.2 (colored)

sync with (a bit old) head

Revision 1.21.22.2 / (download) - annotate - [select for diffs], Sun Dec 2 18:47:36 2012 UTC (11 years, 4 months ago) by riz
Branch: netbsd-6
CVS Tags: netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1
Changes since 1.21.22.1: +8 -4 lines
Diff to previous 1.21.22.1 (colored) to branchpoint 1.21 (colored) to selected 1.2 (colored)


Back out ticket #724 (libpthread changes) until they can be better
understood, as they broke threaded programs on (at least) i386 and amd64.

Revision 1.21.22.1 / (download) - annotate - [select for diffs], Wed Nov 28 23:58:35 2012 UTC (11 years, 4 months ago) by riz
Branch: netbsd-6
Changes since 1.21: +4 -8 lines
Diff to previous 1.21 (colored) to selected 1.2 (colored)

Pull up following revision(s) (requested by christos in ticket #724):
	lib/libpthread/pthread_specific.c: revision 1.24
	lib/libpthread/pthread_tsd.c: revision 1.10
	lib/libpthread/pthread_tsd.c: revision 1.9
	lib/libpthread/pthread_int.h: revision 1.88
Replace the simple implementation of pthread_key_{create,destroy}
and pthread_{g,s}etspecific functions, to one that invalidates
values of keys in other threads when pthread_key_delete() is called.
This fixes chromium, which expects pthread_key_delete() to do
cleanup in all threads.
Don't call the destructor in pthread_key_delete() following the standard.

Revision 1.24 / (download) - annotate - [select for diffs], Wed Nov 21 19:19:24 2012 UTC (11 years, 4 months ago) by christos
Branch: MAIN
CVS Tags: yamt-pagecache-base8, yamt-pagecache-base7
Changes since 1.23: +4 -8 lines
Diff to previous 1.23 (colored) to selected 1.2 (colored)

Replace the simple implementation of pthread_key_{create,destroy}
and pthread_{g,s}etspecific functions, to one that invalidates
values of keys in other threads when pthread_key_delete() is called.
This fixes chromium, which expects pthread_key_delete() to do
cleanup in all threads.

Revision 1.22.2.1 / (download) - annotate - [select for diffs], Tue Nov 20 03:00:44 2012 UTC (11 years, 5 months ago) by tls
Branch: tls-maxphys
Changes since 1.22: +13 -6 lines
Diff to previous 1.22 (colored) to selected 1.2 (colored)

Resync to 2012-11-19 00:00:00 UTC

Revision 1.21.2.1 / (download) - annotate - [select for diffs], Tue Oct 30 18:59:15 2012 UTC (11 years, 5 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.21: +29 -2 lines
Diff to previous 1.21 (colored) to selected 1.2 (colored)

sync with head

Revision 1.23 / (download) - annotate - [select for diffs], Wed Sep 12 14:55:48 2012 UTC (11 years, 7 months ago) by matt
Branch: MAIN
CVS Tags: yamt-pagecache-base6
Changes since 1.22: +13 -6 lines
Diff to previous 1.22 (colored) to selected 1.2 (colored)

Only copy the ucontext_t in pthread_setcontext if _UC_TLSBASE is set.
Conditionalize the test on _UC_TLSBASE being defined.

Revision 1.22 / (download) - annotate - [select for diffs], Wed Sep 12 02:00:53 2012 UTC (11 years, 7 months ago) by manu
Branch: MAIN
Branch point for: tls-maxphys
Changes since 1.21: +22 -2 lines
Diff to previous 1.21 (colored) to selected 1.2 (colored)

setcontext() used to be incompatible with -lpthread since it affected
the TLS pointer, therefore wrecking the pthread environement.

Some ports had _UC_TLSBASE flag or equivalent (_UC_UNIQUE on alpha)
that controlled whether setcontext() would change the TLS pointer.
This change let libpthread override setcontext() with its own version
that unsets _UC_TLSBASE, enabling safe usage of setcontext() with
-lpthread.

We also have the following required changes here:
- rename alpha's _UC_UNIQUE into _UC_TLSBASE
- add _UC_TLSBASE definition in header file for all ports
  (powerpc, sh3, sparc and sparc64 lack the implementation for now)
- introduce a libc stub that can be overriden for setcontext()
- modify MD libcs swapcontext() implementations so that they use the
  setcontext() libc stub instead of doing a plain system call.

While we are there:
- document various MD _UC_* flags in header file
- add libc and libpthread tests for swapcontext() behavior
  (hopefully helpful to spot MD problems introduced with this change)

Future work:
- Deciding whether kernel support or _UC_TLSBASE should be added for
  powerpc, sh3, sparc and sparc64 is left to portmasters
  sparc64

Approved by core@

Revision 1.20.2.1 / (download) - annotate - [select for diffs], Thu Sep 18 04:39:24 2008 UTC (15 years, 7 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.20: +3 -8 lines
Diff to previous 1.20 (colored) next main 1.21 (colored) to selected 1.2 (colored)

Sync with wrstuden-revivesa-base-2.

Revision 1.21.6.2 / (download) - annotate - [select for diffs], Mon Jun 23 10:38:40 2008 UTC (15 years, 9 months ago) by ad
Branch: christos-time_t
Changes since 1.21.6.1: +77 -0 lines
Diff to previous 1.21.6.1 (colored) to branchpoint 1.21 (colored) next main 1.22 (colored) to selected 1.2 (colored)

pthread_curcpu_np: remove hack for pthread_dummy_lwpctl.

Revision 1.21.6.1, Mon Jun 23 10:38:39 2008 UTC (15 years, 9 months ago) by ad
Branch: christos-time_t
Changes since 1.21: +0 -77 lines
FILE REMOVED

file pthread_specific.c was added on branch christos-time_t on 2008-06-23 10:38:40 +0000

Revision 1.21 / (download) - annotate - [select for diffs], Mon Jun 23 10:38:39 2008 UTC (15 years, 9 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pagecache-base5, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, netbsd-6-base, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, matt-premerge-20091211, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-premerge-20101231, matt-mips64-base2, jym-xensuspend-nbase, jym-xensuspend-base, jym-xensuspend, christos-time_t-nbase, christos-time_t-base, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: yamt-pagecache, netbsd-6, christos-time_t
Changes since 1.20: +3 -8 lines
Diff to previous 1.20 (colored) to selected 1.2 (colored)

pthread_curcpu_np: remove hack for pthread_dummy_lwpctl.

Revision 1.19.2.1 / (download) - annotate - [select for diffs], Sun May 18 12:30:40 2008 UTC (15 years, 11 months ago) by yamt
Branch: yamt-pf42
Changes since 1.19: +2 -9 lines
Diff to previous 1.19 (colored) next main 1.20 (colored) to selected 1.2 (colored)

sync with head.

Revision 1.20 / (download) - annotate - [select for diffs], Mon Apr 28 20:23:01 2008 UTC (15 years, 11 months ago) by martin
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, hpcarm-cleanup-nbase
Branch point for: wrstuden-revivesa
Changes since 1.19: +2 -9 lines
Diff to previous 1.19 (colored) to selected 1.2 (colored)

Remove clause 3 and 4 from TNF licenses

Revision 1.11.2.2 / (download) - annotate - [select for diffs], Sun Mar 23 00:40:28 2008 UTC (16 years, 1 month ago) by matt
Branch: matt-armv6
Changes since 1.11.2.1: +3 -3 lines
Diff to previous 1.11.2.1 (colored) to branchpoint 1.11 (colored) next main 1.12 (colored) to selected 1.2 (colored)

sync with HEAD

Revision 1.19 / (download) - annotate - [select for diffs], Sat Mar 22 14:19:27 2008 UTC (16 years, 1 month ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base
Branch point for: yamt-pf42
Changes since 1.18: +2 -9 lines
Diff to previous 1.18 (colored) to selected 1.2 (colored)

Back out previous. It seems to expose another bug in libpthread/libc,
potentially errno being used before threading is up and running.

Revision 1.18 / (download) - annotate - [select for diffs], Fri Mar 21 21:35:43 2008 UTC (16 years, 1 month ago) by ad
Branch: MAIN
Changes since 1.17: +9 -2 lines
Diff to previous 1.17 (colored) to selected 1.2 (colored)

Move pthread__errno() into pthread_specific.c so it gets the "no stack
frame" treatment.

Revision 1.11.2.1 / (download) - annotate - [select for diffs], Wed Jan 9 01:36:39 2008 UTC (16 years, 3 months ago) by matt
Branch: matt-armv6
Changes since 1.11: +19 -6 lines
Diff to previous 1.11 (colored) to selected 1.2 (colored)

sync with HEAD

Revision 1.17 / (download) - annotate - [select for diffs], Tue Jan 8 20:55:58 2008 UTC (16 years, 3 months ago) by christos
Branch: MAIN
CVS Tags: matt-armv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-base
Changes since 1.16: +3 -3 lines
Diff to previous 1.16 (colored) to selected 1.2 (colored)

cast -1 to unsigned int.

Revision 1.16 / (download) - annotate - [select for diffs], Mon Jan 7 11:51:43 2008 UTC (16 years, 3 months ago) by yamt
Branch: MAIN
CVS Tags: matt-armv6-base
Changes since 1.15: +9 -3 lines
Diff to previous 1.15 (colored) to selected 1.2 (colored)

pthread_curcpu_np: map LWPCTL_CPU_NONE to 0 so that this works in the case
of _lwp_ctl failure.

Revision 1.15 / (download) - annotate - [select for diffs], Fri Dec 7 20:36:52 2007 UTC (16 years, 4 months ago) by ad
Branch: MAIN
CVS Tags: cube-autoconf-base, cube-autoconf
Changes since 1.14: +3 -6 lines
Diff to previous 1.14 (colored) to selected 1.2 (colored)

Back out previous now that libc/libpthread are initialized first.

Revision 1.14 / (download) - annotate - [select for diffs], Sat Dec 1 01:19:31 2007 UTC (16 years, 4 months ago) by ad
Branch: MAIN
Changes since 1.13: +6 -4 lines
Diff to previous 1.13 (colored) to selected 1.2 (colored)

Hack around ld.so initializing pthread users before libpthread/libc.

Revision 1.13 / (download) - annotate - [select for diffs], Tue Nov 27 20:58:26 2007 UTC (16 years, 4 months ago) by ad
Branch: MAIN
Changes since 1.12: +13 -2 lines
Diff to previous 1.12 (colored) to selected 1.2 (colored)

Add thr_curcpu(), pthread_curcpu_np().

Revision 1.12 / (download) - annotate - [select for diffs], Tue Nov 13 01:21:32 2007 UTC (16 years, 5 months ago) by ad
Branch: MAIN
Changes since 1.11: +4 -7 lines
Diff to previous 1.11 (colored) to selected 1.2 (colored)

Cosmetic change.

Revision 1.10.20.1 / (download) - annotate - [select for diffs], Mon Sep 3 10:14:16 2007 UTC (16 years, 7 months ago) by skrll
Branch: nick-csl-alignment
Changes since 1.10: +4 -3 lines
Diff to previous 1.10 (colored) next main 1.11 (colored) to selected 1.2 (colored)

Sync with HEAD.

Revision 1.11 / (download) - annotate - [select for diffs], Thu Aug 16 12:01:49 2007 UTC (16 years, 8 months ago) by ad
Branch: MAIN
CVS Tags: nick-csl-alignment-base5, nick-csl-alignment-base4, nick-csl-alignment-base3, matt-armv6-prevmlocking
Branch point for: matt-armv6
Changes since 1.10: +4 -3 lines
Diff to previous 1.10 (colored) to selected 1.2 (colored)

- Reinitialize the absolute minimum when recycling user thread state.
  Chops another ~10% off create/join in a loop on i386.
- Disable low level debugging as this is stable. Improves benchmarks
  across the board by a small percentage. Uncontested mutex acquire
  and release in a loop becomes about 8% quicker.
- Minor cleanup.

Revision 1.10 / (download) - annotate - [select for diffs], Wed Aug 13 18:52:01 2003 UTC (20 years, 8 months ago) by nathanw
Branch: MAIN
CVS Tags: wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, nick-csl-alignment-base2, nick-csl-alignment-base, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, netbsd-3-base, netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0, netbsd-3, netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2, matt-mips64-base, matt-mips64, hpcarm-cleanup, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: nick-csl-alignment
Changes since 1.9: +2 -184 lines
Diff to previous 1.9 (colored) to selected 1.2 (colored)

Split out pthread_{set,get}specific() into a separate file and arrange
for that file to not be built with profiling. This makes it reasonable to
use pthread_{set,get}specific() to implement thread-safe profiline call counts.

Revision 1.9 / (download) - annotate - [select for diffs], Thu Jul 17 20:40:43 2003 UTC (20 years, 9 months ago) by nathanw
Branch: MAIN
Changes since 1.8: +3 -3 lines
Diff to previous 1.8 (colored) to selected 1.2 (colored)

Don't use PTHREAD_DESTRUCTOR_ITERATIONS; the constant is going away.

Revision 1.8 / (download) - annotate - [select for diffs], Thu May 15 19:16:37 2003 UTC (20 years, 11 months ago) by wiz
Branch: MAIN
Changes since 1.7: +3 -3 lines
Diff to previous 1.7 (colored) to selected 1.2 (colored)

Fix typo in comment.

Revision 1.7 / (download) - annotate - [select for diffs], Thu May 15 19:13:24 2003 UTC (20 years, 11 months ago) by nathanw
Branch: MAIN
Changes since 1.6: +3 -6 lines
Diff to previous 1.6 (colored) to selected 1.2 (colored)

Remove an unnecessary test in pthread_getspecific().

Revision 1.6 / (download) - annotate - [select for diffs], Sat Mar 8 08:03:36 2003 UTC (21 years, 1 month ago) by lukem
Branch: MAIN
Changes since 1.5: +4 -2 lines
Diff to previous 1.5 (colored) to selected 1.2 (colored)

add __RCSID()

Revision 1.5 / (download) - annotate - [select for diffs], Sat Feb 15 04:39:16 2003 UTC (21 years, 2 months ago) by nathanw
Branch: MAIN
Changes since 1.4: +1 -2 lines
Diff to previous 1.4 (colored) to selected 1.2 (colored)

Remove unused #include <assert.h>

Revision 1.4 / (download) - annotate - [select for diffs], Tue Jan 21 23:29:22 2003 UTC (21 years, 3 months ago) by nathanw
Branch: MAIN
Changes since 1.3: +11 -10 lines
Diff to previous 1.3 (colored) to selected 1.2 (colored)

Don't bother acquiring the tsd_lock and reading the destructor function
if the corresponding TSD entry is empty.

Cuts down lock/unlock pairs for this operation from 256 to the number
of active TSD entries; sicne this is done when every thread exits, it saves
many total lock/unlock pairs.

Revision 1.3 / (download) - annotate - [select for diffs], Sat Jan 18 18:45:57 2003 UTC (21 years, 3 months ago) by christos
Branch: MAIN
Changes since 1.2: +2 -1 lines
Diff to previous 1.2 (colored)

de-lint

Revision 1.2 / (download) - annotate - [selected], Sat Jan 18 10:34:16 2003 UTC (21 years, 3 months ago) by thorpej
Branch: MAIN
Changes since 1.1: +257 -0 lines
Diff to previous 1.1 (colored)

Merge the nathanw_sa branch.

Revision 1.1.2.9 / (download) - annotate - [select for diffs], Thu Jan 9 19:27:52 2003 UTC (21 years, 3 months ago) by thorpej
Branch: nathanw_sa
CVS Tags: nathanw_sa_end
Changes since 1.1.2.8: +5 -5 lines
Diff to previous 1.1.2.8 (colored) to branchpoint 1.1 (colored) next main 1.2 (colored)

Remove trailing semicolon from __strong_alias().

Revision 1.1.2.8 / (download) - annotate - [select for diffs], Wed Jan 8 19:34:23 2003 UTC (21 years, 3 months ago) by thorpej
Branch: nathanw_sa
Changes since 1.1.2.7: +6 -1 lines
Diff to previous 1.1.2.7 (colored) to branchpoint 1.1 (colored) to selected 1.2 (colored)

Rewrite the way libpthread provides thread primitives to libc, using
strong and weak aliases (the way cancelation points are handled).

Work around lame Unix static library semantics which could cause
the wrong thread primitives or cancelation point functions to be
included in a statically-linked program.

THIS IS AN ABI CHANGE.  People running the nathanw_sa branch should
ensure that their libc and libpthread are in sync after updating.

Revision 1.1.2.7 / (download) - annotate - [select for diffs], Mon Oct 7 18:57:52 2002 UTC (21 years, 6 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.1.2.6: +71 -30 lines
Diff to previous 1.1.2.6 (colored) to branchpoint 1.1 (colored) to selected 1.2 (colored)

Protect operations on the destructor array with mutexes.

Add a lot of verbiage about how broken the specification of
pthread_key_delete() is, and change the implementation to the
least-damaging option: clearing the destructor and not permitting key
reuse.

Revision 1.1.2.6 / (download) - annotate - [select for diffs], Fri Apr 26 22:10:49 2002 UTC (21 years, 11 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.1.2.5: +13 -14 lines
Diff to previous 1.1.2.5 (colored) to branchpoint 1.1 (colored) to selected 1.2 (colored)

Make the names of the thread-specific data arrays visible.

Revision 1.1.2.5 / (download) - annotate - [select for diffs], Thu Apr 11 02:51:35 2002 UTC (22 years ago) by nathanw
Branch: nathanw_sa
Changes since 1.1.2.4: +1 -6 lines
Diff to previous 1.1.2.4 (colored) to branchpoint 1.1 (colored) to selected 1.2 (colored)

Revert weak aliases.

Revision 1.1.2.4 / (download) - annotate - [select for diffs], Mon Mar 25 03:46:01 2002 UTC (22 years, 1 month ago) by nathanw
Branch: nathanw_sa
Changes since 1.1.2.3: +6 -2 lines
Diff to previous 1.1.2.3 (colored) to branchpoint 1.1 (colored) to selected 1.2 (colored)

Provide interfaces to libc.

Revision 1.1.2.3 / (download) - annotate - [select for diffs], Fri Mar 1 01:29:15 2002 UTC (22 years, 1 month ago) by nathanw
Branch: nathanw_sa
Changes since 1.1.2.2: +12 -1 lines
Diff to previous 1.1.2.2 (colored) to branchpoint 1.1 (colored) to selected 1.2 (colored)

Add a comment noting the dissent about what pthread_key_delete() should
really do.

Revision 1.1.2.2 / (download) - annotate - [select for diffs], Sun Dec 30 02:19:26 2001 UTC (22 years, 3 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.1.2.1: +3 -3 lines
Diff to previous 1.1.2.1 (colored) to branchpoint 1.1 (colored) to selected 1.2 (colored)

pt_spin_t -> pthread_spin_t.

Revision 1.1.2.1 / (download) - annotate - [select for diffs], Wed Aug 8 16:39:33 2001 UTC (22 years, 8 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.1: +202 -0 lines
Diff to previous 1.1 (colored) to selected 1.2 (colored)

Implement thread-specific data.

Revision 1.1, Wed Aug 8 16:39:33 2001 UTC (22 years, 8 months ago) by nathanw
Branch: MAIN
CVS Tags: nathanw_sa_before_merge
Branch point for: nathanw_sa
FILE REMOVED

file pthread_specific.c was initially added on branch nathanw_sa.

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.




CVSweb <webmaster@jp.NetBSD.org>