summaryrefslogtreecommitdiff
path: root/thread.h
Commit message (Collapse)AuthorAgeFilesLines
* DG/UX updates from Takis Psarogiannakopoulos.Jarkko Hietaniemi2002-03-111-1/+1
| | | p4raw-id: //depot/perl@15151
* Sprinkle some copyrights (use the oldest timestamp toJarkko Hietaniemi2002-01-241-0/+9
| | | | | | be found in the repository, which is most often not right, but at least consistent) p4raw-id: //depot/perl@14400
* Changes USE_THREADS to USE_5005THREADS in the entire source.Artur Bergman2001-08-271-4/+4
| | | | | | Thanks to H. Merijn Brand for the patch. Some of the comments and or guards might be removable in perl.h now. p4raw-id: //depot/perl@11758
* Make perl fork()-safe (in a slightly limited way) even onGurusamy Sarathy2001-07-201-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | platforms that don't have pthread_atfork() (extension of the fix in change#11151). Note that this will not help extensions that call fork() directly in C, or that link to libraries that call fork() directly. Such cases must be fixed to either call PerlProc_fork(), or call atfork_lock() in parent before the calling the function that forks and call atfork_unlock() in both parent and child immediately after the fork(). (There are no worries if C code calls exec() in the child immediately after a fork(). Only cases where the child calls perl's API functions (including New()) after the fork() are problematic.) This change also eliminates the use of vfork() from perl, since all such uses were violating the severe restrictions on modifying the state of the process between the vfork() and the exec(). This is a modified version of patches suggested by Abhijit Menon-Sen and Richard Soderberg. p4raw-link: @11151 on //depot/perl: 50dd6e574ff39b609595ddb16b2fe9f625a26f8c p4raw-id: //depot/perl@11423
* fix PTHREAD_ATFORK croaking too early, too oftenCoral2001-07-171-11/+2
| | | | | Message-Id: <200107162125.f6GLPJ345261@moonlight.crystalflame.net> p4raw-id: //depot/perl@11392
* Make PTHREAD_ATFORK() to croak if HAS_FORK, noop otherwise.Jarkko Hietaniemi2001-07-121-2/+8
| | | p4raw-id: //depot/perl@11337
* pthread_atfork on FreeBSD - Part 1: #ifdef HAS_PTHREAD_ATFORK coral2001-07-121-2/+6
| | | | | Message-Id: <200107122316.f6CNGoq09171@moonlight.crystalflame.net> p4raw-id: //depot/perl@11336
* Re: [patch] pthread_atfork bandaidDoug MacEachern2001-07-121-0/+3
| | | | | Message-ID: <Pine.LNX.4.21.0107112342330.28844-100000@mako.covalent.net> p4raw-id: //depot/perl@11297
* Retract #11289.Jarkko Hietaniemi2001-07-121-4/+1
| | | p4raw-id: //depot/perl@11293
* (Retracted by #11289.)Jarkko Hietaniemi2001-07-121-1/+4
| | | p4raw-id: //depot/perl@11289
* perl built with USE_ITHREADS can deadlock during fork() or backticksGurusamy Sarathy2001-07-051-0/+9
| | | | | | | | | | | | | since it doesn't ensure threads other than the one calling fork() aren't holding any locks; the fix is to use pthread_atfork() to hold global locks building perl with -Dusemymalloc exacerbates the problem since Perl_malloc() holds a mutex, and perl's exec() calls New() XXX the code in win32thread.h may be needed on platforms that have no pthread_atfork() p4raw-id: //depot/perl@11151
* NetWare port from Guruprasad S <SGURUPRASAD@novell.com>.Jarkko Hietaniemi2001-06-161-0/+4
| | | p4raw-id: //depot/perl@10643
* Thinko noticed by Doug MacEachern.Jarkko Hietaniemi2001-05-171-1/+1
| | | p4raw-id: //depot/perl@10147
* Macrofy the getspecific (and use it also in util.c)Jarkko Hietaniemi2001-05-171-6/+13
| | | p4raw-id: //depot/perl@10143
* Use the unchecked thread-specific key fetch also in Tru64.Jarkko Hietaniemi2001-05-171-2/+4
| | | p4raw-id: //depot/perl@10142
* Quick thread speedupDan Sugalski2001-05-171-1/+6
| | | | | Message-Id: <5.1.0.14.0.20010516175826.01afde08@24.8.96.48> p4raw-id: //depot/perl@10141
* Move the stack desire definition to thread.h.Jarkko Hietaniemi2001-05-161-0/+4
| | | p4raw-id: //depot/perl@10122
* Multiplicity and thread fixes for VMSDan Sugalski2001-05-021-0/+4
| | | | | Message-Id: <5.0.2.1.0.20010502112909.01f24e28@24.8.96.48> p4raw-id: //depot/perl@9960
* Integrate change #8695 from maintperl.Jarkko Hietaniemi2001-02-091-0/+1
| | | | | | | | | thread.h tweak to enable 5005threads on HP-UX 10.20 with DCE threads p4raw-link: @8695 on //depot/maint-5.6/perl: c11cbe4f3d933e2347888f343724a545c9cdea8d p4raw-id: //depot/perl@8743 p4raw-integrated: from //depot/maint-5.6/perl@8742 'copy in' thread.h (@8609..)
* Integrate changes #8608,8609,8610,8611,8612,8613 from maintperl.Jarkko Hietaniemi2001-01-301-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | perl's internal variables are not for public consumption, move their docs from perlapi.pod to perlintern.pod support for -Dusethreads build under HP-UX 10.20 and DCE threads library (11.0 and later have pthreads but 10.x don't) avoid uninitialized value warnings canonicalize paths when doing chdir() on windows (or Cwd::getcwd() gets weird results) perldoc nit on windows make it possible to run the tests outside the source tree (there's still a dependency on ../lib being the library location) p4raw-link: @8612 on //depot/maint-5.6/perl: 21b80573951053245624647c6ea0077acae22b99 p4raw-link: @8611 on //depot/maint-5.6/perl: 706e8e4d2d0a6985197cb1cb76dc3d2575cd159e p4raw-link: @8610 on //depot/maint-5.6/perl: fc1aae957f18d75529c72450055ab0d424b7d318 p4raw-link: @8609 on //depot/maint-5.6/perl: 13b98125bf15a4dfacaa2c6f56d3742c97180500 p4raw-link: @8608 on //depot/maint-5.6/perl: f893c726cdaa1ccdec167db9b2ff5c2fdc19e29b p4raw-id: //depot/perl@8614 p4raw-integrated: from //depot/maint-5.6/perl@8596 'copy in' t/lib/dprof/V.pm t/op/flip.t utils/perldoc.PL (@8159..) win32/bin/search.pl (@8166..) t/io/tell.t (@8175..) hints/hpux.sh (@8601..) thread.h (@8606..) 'ignore' pod/perlintern.pod (@7766..) pod/perlapi.pod (@8605..) 'merge in' intrpvar.h t/base/term.t (@7895..) win32/vdir.h (@8156..) thrdvar.h (@8602..) perlapi.c (@8606..)
* free TLS slot properly on WindowsGurusamy Sarathy2000-08-211-0/+8
| | | p4raw-id: //depot/perl@6748
* Getting perlio and threads to compileLupe Christoph2000-08-111-1/+1
| | | | | | | Message-ID: <20000809113554.G23160@alanya.lupe-christoph.de> (the Solaris version changes in Configure skipped) p4raw-id: //depot/perl@6594
* rename totally bletcherous SvLOCK() thingy (doesn't do what theGurusamy Sarathy2000-07-141-0/+10
| | | | | name suggests anyway) p4raw-id: //depot/perl@6398
* integrate cfgperl changes#6293..6324 into mainlineGurusamy Sarathy2000-07-111-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | p4raw-link: @6324 on //depot/cfgperl: 81bf48a6dbba4b295dfa172a17ca70b654dbf225 p4raw-link: @6293 on //depot/cfgperl: 6e37ea6052902cde1aeb08a2129ffc7c8ea53736 p4raw-id: //depot/perl@6369 p4raw-branched: from //depot/cfgperl@6368 'branch in' lib/Win32.pod lib/lib_pm.PL p4raw-deleted: from //depot/cfgperl@6368 'delete in' pod/Win32.pod (@5937..) pod/buildtoc (@6091..) lib/lib.pm.PL (@6227..) pod/Makefile (@6232..) p4raw-integrated: from //depot/cfgperl@6368 'copy in' thread.h (@5656..) lib/warnings/register.pm (@5704..) ext/B/B/Stash.pm (@5972..) lib/CGI/Util.pm (@6034..) util.c (@6217..) gv.c (@6244..) pp.c (@6260..) doop.c (@6269..) pod/perlfunc.pod (@6277..) pp_ctl.c (@6293..) makedef.pl (@6301..) embed.h global.sym objXSUB.h perlapi.c proto.h (@6305..) win32/Makefile (@6307..) Makefile.SH (@6309..) t/op/method.t (@6312..) sv.h (@6315..) 'ignore' op.c (@6273..) 'merge in' embed.pl win32/win32.c (@6305..) p4raw-integrated: from //depot/cfgperl@6324 'merge in' toke.c (@6307..) p4raw-branched: from //depot/cfgperl@6323 'branch in' pod/buildtoc.PL (@6319..) p4raw-integrated: from //depot/cfgperl@6323 'copy in' pod/perl.pod (@6319..) pod/perltoc.pod (@6322..) 'merge in' MANIFEST (@6319..) p4raw-branched: from //depot/cfgperl@6319 'branch in' pod/Makefile.SH p4raw-integrated: from //depot/cfgperl@6315 'ignore' pp_hot.c (@6313..) p4raw-integrated: from //depot/cfgperl@6311 'copy in' ext/POSIX/POSIX.pod (@6296..) p4raw-integrated: from //depot/cfgperl@6307 'merge in' doio.c (@6223..)
* avoid using context pointer in MUTEX_INIT() et al; remove theGurusamy Sarathy2000-03-111-37/+15
| | | | | *_NOCONTEXT variants to keep it simple p4raw-id: //depot/perl@5651
* various shenanigans in change#5342Gurusamy Sarathy2000-02-291-2/+4
| | | | | p4raw-link: @5342 on //depot/perl: ba869debd80c55cfae8e9d4de0991d62f9efcb9b p4raw-id: //depot/perl@5343
* support fetching current interpreter from TLS under useithreadsGurusamy Sarathy2000-02-291-122/+133
| | | p4raw-id: //depot/perl@5342
* usethreads build fixups for NeXTstep (as suggested by Hans Mulder)Gurusamy Sarathy2000-01-021-1/+3
| | | p4raw-id: //depot/perl@4746
* bring in basic threads stuff under USE_ITHREADSGurusamy Sarathy1999-12-231-59/+107
| | | p4raw-id: //depot/perl@4704
* make die/warn and other diagnostics go to wherever STDERR happensGurusamy Sarathy1999-10-061-1/+1
| | | | | | to point at; change places that meant Perl_debug_log rather than PerlIO_stderr() p4raw-id: //depot/perl@4302
* hand-apply whitespace mutiliated patchHans Mulder1999-07-051-2/+0
| | | | | | Message-Id: <3.0.6.32.19990607144642.03079100@ous.edu> Subject: [PATCH 5.005_57]Updated VMS patch p4raw-id: //depot/perl@3594
* more complete support for implicit thread/interpreter pointer,Gurusamy Sarathy1999-06-091-22/+29
| | | | | | | | | | | | | | | | | | | | | enabled via -DPERL_IMPLICIT_CONTEXT (all changes are noops without that enabled): - USE_THREADS now enables PERL_IMPLICIT_CONTEXT, so dTHR is a noop; tests pass on Solaris; should be faster now! - MULTIPLICITY has been tested with and without PERL_IMPLICIT_CONTEXT on Solaris - improved function database now merged with embed.pl - everything except the varargs functions have foo(a,b,c) macros to provide compatibility - varargs functions default to compatibility variants that get the context pointer using dTHX - there should be almost no source compatibility issues as a result of all this - dl_foo.xs changes other than dl_dlopen.xs untested - still needs documentation, fixups for win32 etc Next step: migrate most non-mutex variables from perlvars.h to intrpvar.h p4raw-id: //depot/perl@3524
* remove _() non-ansismGurusamy Sarathy1999-06-021-1/+1
| | | p4raw-id: //depot/perl@3518
* The HP-UX threads patch (change #3028) is needed also here.Jarkko Hietaniemi1999-03-021-0/+14
| | | | | p4raw-link: @3028 on //depot/maint-5.005/perl: d9761d5fa9df9e662778f8ca3ed55c2e3037a72a p4raw-id: //depot/cfgperl@3052
* Change#2441 aftermath.Jarkko Hietaniemi1998-12-031-0/+8
| | | p4raw-id: //depot/cfgperl@2443
* various fixes for race conditions under threads: mutex locks basedGurusamy Sarathy1998-11-291-8/+7
| | | | | | | | | | | on PL_threadnum were seriously flawed, since it means more than one thread could enter the critical region; PL_na was global instead of thread-local; child thread could finish and free thr structures before Thread->new() got around to creating the Thread object; cv_clone() needed locking, as it mucks with PL_comppad and other global data; new_struct_thread() needed to lock template-thread's mutex while copying its data p4raw-id: //depot/perl@2385
* Replace ATTR_JOINABLE with true Configure probeJarkko Hietaniemi1998-11-021-10/+0
| | | | | | | | | | for PTHREAD_CREATE_JOINABLE (or equivalent: PTHREAD_CREATE_UNDETACHED or __UNDETACHED). Remove ATTR_JOINABLE itself: Thread.xs uses PTHREAD_CREATE_JOINABLE (or equivalent) directly. Really scan for <mach/cthreads.h> only if usethreads. p4raw-id: //depot/cfgperl@2181
* ATTR_JOINABLE logic, based on (private email)Neale Ferguson1998-10-271-9/+7
| | | | | | Subject: Some little diffs Message-ID: <36350969.DA33E7B4@mailbox.tabnsw.com.au> p4raw-id: //depot/cfgperl@2096
* Mach cthreads support based on:Brian Harrison1998-10-271-0/+62
| | | | | | | | | | | | | Subject: perl5.005_02 patch for mthreads To: perl5-porters@perl.org Message-ID: <MLIST_Pine.GSO.4.04.9810231410220.11111-200000@sulaco.eos.home.net> Pthread yield probe (dejavu) Cosmetic nanochange for the union semun output. Better inttypes.h probe. Undo the 'void *' $selecttype probe from #1971 because it breaks the $selectminbits test. p4raw-id: //depot/cfgperl@2095
* DJGPP feedback for #2028.Jarkko Hietaniemi1998-10-221-4/+2
| | | p4raw-id: //depot/cfgperl@2033
* VM/ESA feedback for #2028.Jarkko Hietaniemi1998-10-211-4/+2
| | | p4raw-id: //depot/cfgperl@2031
* OLD_PTHREADS_API reorganizing.Jarkko Hietaniemi1998-10-201-18/+43
| | | p4raw-id: //depot/cfgperl@2028
* Thinko at PTHREADS_CREATED_JOINABLE.Jarkko Hietaniemi1998-10-201-1/+1
| | | p4raw-id: //depot/cfgperl@2022
* YIELD more robustly.Jarkko Hietaniemi1998-10-191-1/+13
| | | p4raw-id: //depot/cfgperl@2020
* VM/ESA (and OS390) are in between of OLD_PTHREADS_API andJarkko Hietaniemi1998-10-191-1/+4
| | | | | the 'new' one (just like DJGPP, it seems). p4raw-id: //depot/cfgperl@2019
* check in all confperl changes as of change#1964 into cfgperlGurusamy Sarathy1998-10-151-24/+16
| | | | | p4raw-link: @1964 on //depot/confperl: 2d85315bb227e0962a693eaaadc3f40ca2fbf49b p4raw-id: //depot/cfgperl@1971
* provide locked access to string table for USE_THREADSGurusamy Sarathy1998-09-241-6/+21
| | | p4raw-id: //depot/perl@1863
* tweaked version of suggested patchIlya Zakharevich1998-08-021-1/+1
| | | | | | Message-Id: <199807210140.VAA17186@monk.mps.ohio-state.edu> Subject: [PATCH 5.004_75] Enable -DS p4raw-id: //depot/maint-5.005/perl@1701
* PL_ stuff for threadsNick Ing-Simmons1998-07-181-7/+7
| | | p4raw-id: //depot/ansiperl@1534
* [asperl] integrate mainline changes (untested)Gurusamy Sarathy1998-05-181-3/+5
|\ | | | | p4raw-id: //depot/asperl@1010