Commit Graph

325 Commits

Author SHA1 Message Date
Daniel Beulshausen
112b9062ff adopt shane's popen patch 2001-07-09 16:44:40 +00:00
Andi Gutmans
6f3f47eaa9 - Fix off by one error in allocating command line (by Shane) 2001-07-07 20:00:35 +00:00
Daniel Beulshausen
8934c1eb6a fix some popen trouble 2001-07-01 20:08:21 +00:00
Zeev Suraski
44e75b6cdd Fix UNC path handling 2001-06-27 14:30:02 +00:00
Sascha Schumann
6ae7e5f54a Support for SGI's State Threads. Will be used by PHP's thttpd SAPI
initially.
2001-06-21 16:54:05 +00:00
Zeev Suraski
855cad5c54 Update .dsp 2001-05-09 14:55:17 +00:00
Zeev Suraski
a8f87e6c23 Layout fix 2001-05-05 16:05:19 +00:00
Zeev Suraski
70b6c55ce6 Fix missing statement 2001-05-05 16:04:14 +00:00
Zeev Suraski
cbb777f167 Fix chdir() under Windows 9x/ME 2001-05-03 15:50:37 +00:00
Andi Gutmans
4c823e8a89 - Change macros from V_ to VCWD_ because of AIX name clash 2001-04-30 12:45:02 +00:00
Andi Gutmans
dfa9179887 - Commit test passed 2001-04-27 19:11:35 +00:00
Andi Gutmans
3f72a97dbb - Testing commit script 2001-04-27 19:10:58 +00:00
Andi Gutmans
a2dbc5babd - Fix some ws to be like the rest of TSRM 2001-04-27 18:50:35 +00:00
Daniel Beulshausen
1b279d3477 get rid of MS's _popen/_pclose 2001-04-27 16:41:53 +00:00
Andi Gutmans
42fbe5be4b - Whitespace 2001-04-05 14:02:08 +00:00
Andi Gutmans
a943751310 - Lock the whole thing for now in order not to have a race condition.
It shouldn't effect performance too much because usually threads are
  reused a few times before they are nuked by the web server, at least
  under IIS and Zeus.
2001-04-05 14:00:54 +00:00
Andi Gutmans
6123fe515d - Revert previous fix because dtor's which access thread local storage
might stop working. Need to fix this! We can either mutex the whole thing
  which is slow (this is how it was before the race condition was introduced)
  or find a different solution.
2001-04-04 21:43:04 +00:00
Andi Gutmans
78861607d7 - Fix race condition in ts_free_thread(). 2001-04-04 17:05:10 +00:00
Andi Gutmans
9047e5c956 - Use tabs and not spaces !!! 2001-04-04 16:33:06 +00:00
Andi Gutmans
ac8ab87841 - This can explain lots of instability on multi-threaded platforms! 2001-04-04 16:25:29 +00:00
Daniel Beulshausen
8889397ba8 support unc style paths 2001-03-23 08:33:06 +00:00
Ben Mansell
5d6cb2fc32 Speedup for pthread implementation. We make use of thread local storage
to allow access to the current thread's resources without having to
obtain the memory mutex and traverse our hash table. This is a big
performance win!
2001-03-06 15:07:57 +00:00
Zeev Suraski
b22a6ef2b1 Fix a TSRM bug (possibly fixing a sporadic crash in the timeout window
under Windows) - fix from Ben Mansell
2001-03-01 01:06:36 +00:00
Andi Gutmans
8769a693c9 - BeOS apparently doesn't have realpath(). Improve the previously
commited patch.
2001-01-21 17:35:31 +00:00
Rasmus Lerdorf
83cf6629ec @BeOS patch from svanegmond@bang.dhs.org modified somewhat by Rasmus
BeOS patch from svanegmond@bang.dhs.org modified somewhat by Rasmus
2001-01-21 17:29:15 +00:00
Shane Caraveo
d0dbf1ea57 my mistake...freed in a different function. 2001-01-08 00:35:05 +00:00
Shane Caraveo
65eac44f69 be sure to unlock that mutex before returning! 2001-01-08 00:32:18 +00:00
Zeev Suraski
412939dd0c Add Release_TSDbg to TSRM as well 2001-01-07 18:28:03 +00:00
Sascha Schumann
af97475e93 Use the hardly-documented third parameter of AM_INIT_AUTOMAKE to suppress
defining PACKAGE/VERSION.
2000-12-02 13:27:07 +00:00
Andi Gutmans
afccae85d9 - Thanks to "Daniel Beulshausen" <daniel@php4win.de> 2000-11-22 04:59:32 +00:00
Zeev Suraski
1ebdb6fa14 Beef up debugging support 2000-11-18 02:41:14 +00:00
Zeev Suraski
d5a09981d6 Import debug-level improvements to TSRM, by Dmitri Dmitrienko 2000-11-17 23:31:15 +00:00
Sascha Schumann
c5e776ec2d sizeof(size_t) != sizeof(int) on 64-bit platforms.
This also makes the API more consistent.
2000-11-06 23:35:33 +00:00
Zeev Suraski
8aecb3c984 mode_t should be an unsigned_int 2000-10-31 18:05:28 +00:00
Andi Gutmans
fd7284a665 - Add V_RENAME() by "Daniel Beulshausen" <daniel@php4win.de>.
- It is untested and all places which use rename() in PHP should now use
- V_RENAME().
2000-10-26 05:21:52 +00:00
Andi Gutmans
94bea2902b - Move #define to .h file 2000-10-03 16:36:32 +00:00
Andi Gutmans
3dab84005d - Fix V_CHDIR_FILE() 2000-10-03 15:08:37 +00:00
Andi Gutmans
a45553cd57 - Add TODO 2000-09-16 19:07:50 +00:00
Andi Gutmans
228648397e - Add config_common.h to dsp 2000-09-11 18:59:32 +00:00
Andi Gutmans
db1422f10e - Testing 1 2 3 2000-09-11 15:15:29 +00:00
Andi Gutmans
770098eca8 - Testing 1 2 3 2000-09-11 15:14:56 +00:00
Andi Gutmans
fe434a05b4 - Fix crash bug on NetBSD and OpenBSD. MAXPATHLEN didn't get defined
correctly and caused a stack overrun. This was *hard* to debug.
2000-09-07 15:31:29 +00:00
Andi Gutmans
f390d7e2ab - Get rid of build warning on Windows 2000-09-07 14:11:38 +00:00
Andi Gutmans
b8a95da22a - Centralize some configuration stuff
- Use inline in my strtok_r implementation
2000-09-06 20:27:12 +00:00
Andi Gutmans
07cfd5754e - Added macros 2000-09-04 04:18:38 +00:00
Andi Gutmans
1109b9ab57 - More TSRM work 2000-09-03 18:58:46 +00:00
Andi Gutmans
da19ff78f3 - Add new files to TSRM windows project 2000-09-03 18:49:35 +00:00
Andi Gutmans
03432bf61f - Make TSRM work on Windows. 2000-09-03 18:47:35 +00:00
Andi Gutmans
daf926cf5b - Move virtual cwd to TSRM.
In the least this still doesn't work on Windows.
2000-09-03 18:18:13 +00:00
Andi Gutmans
77b55ad07d - Revert change of defining TSRM_WIN32 in dsp 2000-09-02 16:28:50 +00:00
Andi Gutmans
5f3d935920 - Change TSRM_OTHER macro to TSRM_THREADS as it should be only to check
for threads
2000-09-02 15:24:18 +00:00
Andi Gutmans
a8656beb34 - Make TSRM compile stand-alone again 2000-09-02 15:11:45 +00:00
Andi Gutmans
d6d8b51b2c - Define TSRM_WIN32 in Windows dsp 2000-09-02 15:04:57 +00:00
Andi Gutmans
92cfa27ff0 - Use TSRM_WIN32 2000-09-02 15:03:19 +00:00
Sam Ruby
f2b0015c9b Allow TSRM to be built on Windows platforms 2000-09-02 14:39:48 +00:00
Andi Gutmans
3d95c23c96 - Support for always building TSRM into PHP 2000-08-31 23:44:10 +00:00
Andi Gutmans
a2ea62d4c9 - Change license of .c and .h files of TSRM. It's still not the complete
- text like in the PHP headers because we don't have it on the web yet but
- it should be enough to allow Sascha to touch TSRM :)
2000-08-31 19:02:14 +00:00
Sascha Schumann
c1894bbf96 Add dummy depend: target 2000-08-25 09:04:51 +00:00
Andi Gutmans
b0fd857c69 - Oops I was only thinking about VIRTUAL_DIR and forogt about the rest of
- TSRM which Zeev implemented  on his own.
2000-07-11 19:17:19 +00:00
Andi Gutmans
744a823fd2 - Commit new license for TSRM. 2000-07-11 19:15:51 +00:00
Sascha Schumann
8adf849dce Identifiers that begin with underscore are reserved for the implementation. 2000-07-02 23:16:54 +00:00
Andi Gutmans
a4edfc06c5 - Export ts_resource_ex in order to succesfully build Windows version 2000-06-17 14:56:19 +00:00
Zeev Suraski
33f9499975 Make it possible to access other threads' local storage. Only use it if you have a clear
knowledge of what you're doing!
2000-06-16 14:38:05 +00:00
Sascha Schumann
0eeee6b7c8 Add -qthreaded for AIX cc V5 2000-06-10 08:26:59 +00:00
Sascha Schumann
f6c8918a0d Add FreeBSD's new -kthread option.
Add a list of compiler/platforms where the flags are known to work.
2000-06-10 08:09:05 +00:00
Zeev Suraski
c5b2c8ba93 Update .dsp's 2000-06-08 12:28:48 +00:00
Sascha Schumann
d3a7f5be38 Make TSRM compile again. ZTS is defined by a header file included in
tsrm_config.h, so TSRM.o was always empty.
2000-06-06 00:16:16 +00:00
Andi Gutmans
09d281ff62 - Only compile if building a thread safe version 2000-06-04 04:14:17 +00:00
Sascha Schumann
a33c135b0a Add enable-threads flag for gcc on HPUX 2000-05-24 11:13:11 +00:00
Sascha Schumann
86d6389db4 Assign/restore vars appropiately 2000-05-05 12:15:36 +00:00
Sascha Schumann
6c4d6ba5e3 Don't automatically assign pthreads_cflags/pthreads_libs to env
variables. That allows us to check for the availability of POSIX threads
before actually using it.
2000-05-04 10:49:36 +00:00
Sascha Schumann
b87df8f210 Add UnixWare/OpenServer flags 2000-04-30 04:50:03 +00:00
Thies C. Arntzen
38c2b8ec63 hpux needs _REENTRANT 2000-04-15 17:06:21 +00:00
Sascha Schumann
2b1daf73eb * Include <stddef.h> for NULL
* Check for pthread_mutexattr_init() for improved SGI support
2000-03-30 23:35:26 +00:00
Sascha Schumann
7658768705 Use CPPFLAGS for reentrancy/thread flags 2000-03-15 21:40:03 +00:00
Sascha Schumann
a2121549aa Move the sincludes outside of AC_DEFUN(), so PHP can use the macros 2000-03-07 16:49:17 +00:00
Sascha Schumann
05024cb094 Use improved POSIX threads check from threads.m4
This is shared between some projects (currently Apache 2.0, mhash, mcrypt)
2000-03-07 13:24:12 +00:00
Zeev Suraski
4765396846 .dsp updates 1999-12-31 16:20:04 +00:00
Sascha Schumann
701a00d391 THREAD_T refers to thread ids, not attributes 1999-12-30 15:52:08 +00:00
Sascha Schumann
9aef66711e Rewrite TSRM_CHECK_GCC_ARG to cache its result 1999-12-30 02:19:39 +00:00
Sascha Schumann
85a5a2873e Let check succeed on systems which don't need special flags for pthreads.
Also change the message to be more informative.
1999-12-30 00:48:45 +00:00
Sascha Schumann
4e1baf3a4e Save a few lines while checking for -pthread[s]? 1999-12-27 09:54:12 +00:00
Sascha Schumann
69f8907a29 Put -pthreads? into CFLAGS; libtool still filters it out during shared
library linking; need to find a way to prevent that.
1999-12-24 15:44:58 +00:00
Sascha Schumann
aa3737e6e1 Improved check for GCC's -pthread and -pthreads flag 1999-12-22 22:23:06 +00:00
Sascha Schumann
fa1f318d74 Enable TSRM to use Pth 1999-12-21 18:03:35 +00:00
Sascha Schumann
4fb1e2788f Improve Pthreads check 1999-12-21 16:29:30 +00:00
Zeev Suraski
469966917b Use Critical Sections under Win32 - shows roughly 40% performance increase under
multithreaded Win32!
1999-12-20 20:02:25 +00:00
Sascha Schumann
91549cfa4f Move config code into separate file 1999-12-17 13:36:15 +00:00
Sascha Schumann
4a445c1bb7 Fix leak in pthreads, and add initial support for GNU Pth 1999-12-05 21:55:43 +00:00
Sascha Schumann
e5d956dbac Add ts_allocate_dtor, use ts_allocate_[cd]tor where appropiate. 1999-12-05 16:21:37 +00:00
Sascha Schumann
2f10b7ede8 Close a resource leak. 1999-11-26 15:33:42 +00:00
Zeev Suraski
40cc9d9d7a This should fix the deadlock 1999-10-10 13:30:03 +00:00
Sascha Schumann
ea567a73f1 Add clean target which removes standard targets 1999-10-10 02:02:13 +00:00
Sascha Schumann
f2608c3fdb build.mk can be used to generate build tools. It is usually
faster than buildconf, since it rebuilds only components, if
it is necessary. To use it, run

    $ make -f build.mk
1999-10-10 01:23:15 +00:00
Sascha Schumann
f48a4916ea Explicit casts to ulong. Some compiler don't like pointers in % 1999-10-05 15:15:01 +00:00
Sascha Schumann
60d87e1914 Add $automake_flags, to allow propagation of --copy 1999-10-05 13:47:16 +00:00
Sascha Schumann
f18254e433 Forgot these.. 1999-10-04 15:22:18 +00:00
Sascha Schumann
e67005e748 Use libtool. 1999-10-04 15:21:39 +00:00
Sascha Schumann
ec01d01400 Whoops, OSF/1 has -lpthread and -lpthreads, but defines most
pthread_* as __pthread*. According to pthread(3), -lpthread is the
    correct choice.
1999-10-04 15:00:38 +00:00
Sascha Schumann
8266f8a515 -lpthreads is needed on OSF/1 aka Digital Unix aka Tru64 1999-10-04 12:34:04 +00:00
Sascha Schumann
8617cc60ad Make config executable 1999-10-03 16:10:15 +00:00
Sascha Schumann
9e4b5f7c3a Test commit II. 1999-10-02 21:16:34 +00:00
Sascha Schumann
9009c4481b Test commit. 1999-10-02 21:16:04 +00:00
Sascha Schumann
55218a98f2 Reactivate autoheader 1999-10-02 21:14:23 +00:00
Andi Gutmans
b7e248dd06 *** empty log message *** 1999-10-02 20:50:20 +00:00
Sascha Schumann
154663e9a2 Remove C++ style comments from C source file. 1999-09-27 15:37:00 +00:00
Sascha Schumann
a5dbe81a76 Do not let PACKAGE/VERSION escape from tsrm_config.h. 1999-09-26 19:47:35 +00:00
Sascha Schumann
feccd9f104 Undefine previously PACKAVE/VERSION macros. We should find a way
to suppress these from automake
1999-09-26 19:46:35 +00:00
Sascha Schumann
17df2892bd Use helper script to determine compile time configuration for TSRM 1999-09-26 19:09:24 +00:00
Sascha Schumann
a412eb08cb PTHREADS is a custom symbol 1999-09-24 20:52:46 +00:00
Sascha Schumann
5453d0be3c Additionally check libc_r (*BSD) for pthread functions 1999-09-24 20:14:44 +00:00
Sascha Schumann
8bf4fe02db Try to find ANSI/STDC compatible mode of host compiler 1999-09-23 19:34:42 +00:00
Stig S. Bakken
4d5491e285 Workaround to prevent TSRM from defining PACKAGE and VERSION.
No longer using autoheader.
1999-09-06 15:32:19 +00:00
Zeev Suraski
25829488c4 Add new-thread handlers 1999-08-14 09:35:52 +00:00
Stig S. Bakken
f5bfd16b0b identify ourselves 1999-07-22 20:20:11 +00:00
Zeev Suraski
df0906f7c0 Release fix 1999-05-13 16:48:49 +00:00
Zeev Suraski
0997fcdc2b Fix 1999-05-11 21:27:44 +00:00
Sascha Schumann
324593224d calloc et al need stdlib.h according to ANSI-C 1999-05-06 21:13:26 +00:00
Andi Gutmans
cef5243b64 - export patch 1999-04-28 18:35:42 +00:00
Andi Gutmans
8423f8f1d3 dsp update 1999-04-28 16:13:09 +00:00
Zeev Suraski
5974d84bc6 Fixes 1999-04-24 23:22:09 +00:00
Stig S. Bakken
3b516557f2 set up automake 1999-04-24 16:14:18 +00:00
Zeev Suraski
1e9ce9528d *** empty log message *** 1999-04-24 09:01:30 +00:00
Zeev Suraski
5be8dd9712 License 1999-04-23 11:00:02 +00:00
Zeev Suraski
37fe04b887 Thread Safe Resource Manager 1999-04-20 23:58:02 +00:00