Zeev Suraski
0e50ac4b2c
MFZE1
2002-08-08 08:42:22 +00:00
Harald Radi
99c90db11a
make win32 debug output more verbose
2002-08-07 14:47:42 +00:00
Andi Gutmans
b55a20abf4
- Fix problem with scope's not changing correctly during method calls.
...
- Reapply a tiny optimization to the allocator so that in non-debug mode
- we clean memory without detecting leaks.
2002-06-26 11:07:35 +00:00
Andi Gutmans
c6b39eb50d
- More fixes (warnings, bug fixes etc.)
2002-06-24 18:49:13 +00:00
Andi Gutmans
8fd5e70e2d
- Fix crash bug and clean up a bit.
2002-06-24 17:47:46 +00:00
Andi Gutmans
95e0bb6a4b
- MFZE1
2002-06-24 13:45:21 +00:00
Andi Gutmans
2172abcb0a
- Don't use cache if we're using ZEND_MM
2002-06-24 13:41:26 +00:00
Andi Gutmans
1c20bf27da
- Don't keep allocated blocks in a linked list if we're in non-debug mode
...
- as now the memory manager takes care to nuke all leaking blocks.
2002-06-24 07:22:25 +00:00
Andi Gutmans
7f226a6b19
- Fix crash when zend_mm_shutdown is called more than once.
2002-06-22 16:09:15 +00:00
Andi Gutmans
e2f57d0fcc
- MFZE1
2002-06-22 14:37:49 +00:00
Andi Gutmans
b53569c9e8
- Nuke persist_alloc().
2002-06-22 13:52:07 +00:00
Andi Gutmans
ad9bed0edd
- Oops, this was supposed to be part of the previous #ifdef ZEND_MM change
2002-06-19 16:53:06 +00:00
Andi Gutmans
1e4a2dc6a9
- Fix a bug and add code which frees actual allocated segments at the end
...
- of execution (this still doesn't work because some blocks remain
- referenced after the memory manager is killed.
2002-06-17 19:00:37 +00:00
Andi Gutmans
380c082e32
- Commit an initial version of a home made memory manager.
...
- It's just for seeing if this would be an advantage to PHP in MT
- environments. If this is to become production material there is still
- a long way to go.
2002-06-16 17:17:47 +00:00
Sebastian Bergmann
8463225b49
Revert.
2002-04-28 06:24:15 +00:00
Sebastian Bergmann
90bad130a9
MFZE1: If the size-operands of memset are constants, the compiler can turn them into fast inline code. So, instead of using ecalloc, we use emalloc + memset in macro form now. emalloc will not return NULL, so the chosen macro form is safe. This is not true for malloc(3). An inline function accomodates our needs here. Suggested by: http://www.mail-archive.com/dev%40httpd.apache.org/msg02492.html (Sascha)
2002-04-27 15:23:46 +00:00
Andi Gutmans
7df1601239
- MFZE1
2002-02-26 19:17:26 +00:00
Sebastian Bergmann
62dc854bb0
Happy New Year.
2002-01-06 15:21:36 +00:00
Sebastian Bergmann
d863d52a5d
Update headers.
2001-12-11 15:16:21 +00:00
Zeev Suraski
b02df6f4ac
MFZE1
2001-08-17 14:53:55 +00:00
Zeev Suraski
4f6c95d17a
Whitespace
2001-08-11 15:56:40 +00:00
Zeev Suraski
c06dbe23bb
Fix buglet
2001-08-03 16:08:01 +00:00
Zeev Suraski
e206bd3374
Fix macro
2001-08-03 08:15:16 +00:00
Zeev Suraski
66d9314b60
Implement fast memory allocation and reduced fragmentation under Windows.
2001-08-03 07:06:05 +00:00
Zeev Suraski
b4f3b9d3ce
Redesigned thread safety mechanism - nua nua
2001-07-28 10:51:54 +00:00
Sascha Schumann
b677af2265
tsrm_error is only available, if TSRM_DEBUG is defined.
2001-07-23 04:21:11 +00:00
Sascha Schumann
28ecbb213c
tsrm_error is only available, if TSRM_DEBUG is defined.
2001-07-23 04:19:32 +00:00
Andi Gutmans
55687ca216
- Fix the memory limit fix.
2001-06-30 07:58:34 +00:00
Zeev Suraski
3eb6d65ece
Fix memory_limit, kill warning
2001-06-29 00:36:34 +00:00
Andi Gutmans
34e0c392e8
- Fix memory fragmention problem which could lead to web server processes
...
growing much more than they should. (bug #11344?)
2001-06-19 17:59:07 +00:00
Thies C. Arntzen
473d3eae45
reset allocated_memory_peak after each request.
2001-05-18 14:32:11 +00:00
Zeev Suraski
c7464b7d6a
Fix build
2001-05-17 12:51:24 +00:00
Zeev Suraski
41fbc95fe1
Fix build
2001-05-17 11:22:49 +00:00
Zeev Suraski
260b4d0dbf
Merge memory usage into memory limit
2001-05-16 15:02:30 +00:00
Thies C. Arntzen
8ca106bffc
added --enable-memory-usage-info
2001-05-11 18:16:41 +00:00
Andi Gutmans
aa1c46b3d8
- Try to solve crash on OS400. There is actually no reason I can see for
...
why his fix should solve a crash but it doesn't harm.
2001-04-30 05:39:37 +00:00
Andi Gutmans
277ab5f223
- Improve overwrite detection in debug mode.
2001-04-29 13:00:46 +00:00
Andi Gutmans
1df2271224
- Just some little whitespace stuff.
2001-04-28 15:59:39 +00:00
Andi Gutmans
429aed9066
- Don't add/remove cached memory blocks from blocks list as this will slow
...
- down performance a bit.
2001-04-28 15:45:50 +00:00
Andi Gutmans
0971ff99cb
- Whitespace changes to be standard like the rest of Zend
2001-04-27 18:51:56 +00:00
Zeev Suraski
1078e61c74
small beautification
2001-04-17 15:19:14 +00:00
Andi Gutmans
d2c9e8074c
- Update copyright year
2001-02-26 05:43:27 +00:00
Zeev Suraski
903018ef36
- Remove backward dependency from PHP -> Zend
...
- Rename get_ini_entry() as get_configuration_directive() for clarity
(it doesn't use the INI subsystem, but the module-supplied function for
retrieving configuration directives)
2001-01-07 18:39:11 +00:00
Zeev Suraski
42b0e1cb1f
Forgot to commit the non-debug build fix yesterday...
2000-11-18 11:43:08 +00:00
Zeev Suraski
9a0b61a619
Add thread-safety debugging information (idea - Dmitri Dmitrienko)
2000-11-18 02:43:23 +00:00
Andi Gutmans
6d92ac275d
- Fix fprintf
2000-10-04 19:29:28 +00:00
Zeev Suraski
79b0a56c51
Fix build with no memory_limit
2000-08-19 16:51:30 +00:00
Zeev Suraski
07b5d74022
Fix memory_limit
2000-08-19 16:35:02 +00:00
Zeev Suraski
b896825e8f
Nuke a warning
2000-06-24 22:11:11 +00:00
Andi Gutmans
93e9520314
- Change cache size and only initialize part of it.
2000-06-22 18:33:09 +00:00
Stanislav Malyshev
bb57053f76
Cached-freed memory blocks should not be in "occupied" list
2000-06-22 17:51:14 +00:00
Stanislav Malyshev
7f87a319aa
Make cache counters to be unsigned int
...
Start collecting statistics after cache pre-fill
2000-06-22 09:17:38 +00:00
Andi Gutmans
988435cf04
- More correct way of doing bit mask
2000-06-14 19:10:30 +00:00
Andi Gutmans
ae19180641
- Forgot to remove the FIXME
2000-06-09 17:52:09 +00:00
Andi Gutmans
717acfe9c5
- Make the memory limit accurate
2000-06-09 17:51:37 +00:00
Andi Gutmans
605b1aa394
- Fix cache initialization
2000-06-09 16:08:30 +00:00
Andi Gutmans
9fb095b50e
- Allocate and cache in 8 byte blocks. Most allocators anyway use 8 byte
...
- blocks. This should help fragmentation and cache hits.
- The old tree is tagged as PRE_EIGHT_BYTE_ALLOC_PATCH
2000-06-09 15:54:14 +00:00
Zeev Suraski
957327e8bc
Do it in thread unsafe mode for now.
2000-05-18 14:51:19 +00:00
Sascha Schumann
86c03cceb0
Kill warnings
2000-05-18 12:07:15 +00:00
Andi Gutmans
a786fc4ab7
- Do this someplace else.
2000-05-18 11:25:03 +00:00
Zeev Suraski
ac0e07ecda
- Small optimization. Filling up the Cache helps performance.
2000-05-16 15:42:16 +00:00
Andi Gutmans
a9ec11476c
- Return real size allocated
2000-05-08 16:18:20 +00:00
Andi Gutmans
2572b088d0
*** empty log message ***
2000-03-25 19:23:16 +00:00
Zeev Suraski
5e55e47f7f
It's official now...
2000-03-06 05:26:39 +00:00
Zeev Suraski
0ac9536d99
(c) patch
2000-02-19 22:46:42 +00:00
Zeev Suraski
80bdd19e03
Fine tune Andi's patch
2000-02-11 15:59:30 +00:00
Andi Gutmans
bc5c9d8d7b
- Finally beautify those WIN32|WINNT checks
2000-02-10 17:03:53 +00:00
Zeev Suraski
0517436bf9
- Fix foreach()
...
- Fix indirect reference with object properties
2000-01-31 18:21:54 +00:00
Zeev Suraski
5864b57eec
This should enable people to use ALLOC_ZVAL() in code outside the php4.dll
1999-12-30 05:25:44 +00:00
Zeev Suraski
8f88443aba
time_t is an int under Linux... this should always work.
1999-12-29 17:22:47 +00:00
Sascha Schumann
32ef59b290
Fix warnings
1999-12-28 20:33:02 +00:00
Zeev Suraski
b7a5b3c309
- Generalize the fast cache mechanism
...
- Add the HashTable struct to the fast cache mechanism
1999-12-27 19:07:33 +00:00
Zeev Suraski
1ad06e428d
*** empty log message ***
1999-12-27 17:24:33 +00:00
Zeev Suraski
ebd4445ba2
Add cache statistics support
1999-12-27 16:42:59 +00:00
Zeev Suraski
3c50b7ee45
- Enable the new zval cache on debug too. No real reason not to, and it keeps
...
the code cleaner.
- ZTS compile fixes
1999-12-26 23:20:18 +00:00
Zeev Suraski
b90bc0b15c
Fix buglet
1999-12-26 22:50:08 +00:00
Zeev Suraski
aec33aa753
Introduce a zval-specific cache - 5-15% speed improvement
1999-12-26 21:56:59 +00:00
Zeev Suraski
c517633b49
namespace protection
1999-12-26 20:45:42 +00:00
Zeev Suraski
3a47431122
No need to block for interruptions so early
1999-12-21 15:48:56 +00:00
Zeev Suraski
4481898ff7
Add ability to disable the memory cache
1999-11-27 00:04:36 +00:00
Zeev Suraski
b264733bc1
Fix compile problem with enable-memory-limit
1999-11-22 22:27:04 +00:00
Stig S. Bakken
009025e00d
* header file cleanup
...
* fixed --enable-thread-safety build for UNIX
I don't have a Win32 environment available, could someone please try
compiling on Win32 to see if I got all the header file stuff right there?
1999-09-06 16:14:08 +00:00
Andi Gutmans
99947a251e
- Shift around header files.
1999-09-05 19:03:35 +00:00
Zeev Suraski
81e0131bc9
*** empty log message ***
1999-08-28 21:43:24 +00:00
Zeev Suraski
cda27ae9ac
Beef up debug macros
1999-08-28 10:18:54 +00:00
Zeev Suraski
aa8b27ba1d
Better debug macros
1999-08-27 19:17:19 +00:00
Zeev Suraski
8d1de13aef
0.91 update
1999-07-19 20:02:12 +00:00
Zeev Suraski
b5b1117760
License update
1999-07-16 14:58:16 +00:00
Zeev Suraski
3b037ebbe9
Oh, that dumb bug.
1999-07-10 22:50:44 +00:00
Zeev Suraski
cccd2445ee
Get rid of AiCount completely
1999-07-10 11:45:23 +00:00
Zeev Suraski
cdce334c56
*** empty log message ***
1999-07-09 11:19:38 +00:00
Zeev Suraski
cc26d0e609
Send a SIGSEGV instead of exiting, to trigger a core dump
1999-07-09 11:10:19 +00:00
Zeev Suraski
6abe9c34d9
* Support recoverable failure from erealloc()
...
* Fix the shutdown code on an unrecoverable erealloc() failure
1999-07-09 11:03:56 +00:00
Zeev Suraski
98b6ddda90
* Make the memory leak reporting code much better with repeats
...
* Remove useless variables
1999-06-26 11:48:22 +00:00
Zeev Suraski
3eac45ea80
* Fix concatenation of arrays (it was PHP 3.0 style, copying zval's instead
...
of zval *, and it wasn't using reference counting)
* Fix a memory leak in static array()'s with textual indices
1999-06-22 19:05:40 +00:00
Zeev Suraski
63f2cc9fe9
*** empty log message ***
1999-05-31 18:39:29 +00:00
Sascha Schumann
88029643d0
* fix some casts
...
* introduce unary_op_type - cleaner than casting data voids to function ptrs
1999-05-30 13:28:56 +00:00
Zeev Suraski
741b816136
* Support getThis() for internal functions.
...
* Fix 'new object or die' and AiCount issue thoroughly (earlier fix didn't
work with the optimizer).
* Add new macros for standardized definition of classes.
* Only report AiCount problems if shutdown was not silent.
1999-05-28 12:06:59 +00:00
Zeev Suraski
05f6cf54f0
Warn about AiCount not zeroing out
1999-05-22 16:48:23 +00:00
Zeev Suraski
1250c43a39
* Add struct name to all typedef's so that they can be debugged with MSVC
...
* Fix an AiCount bug - list(...) = $var was using $var multiple times, and thus
causing AiCount to be decreased multiple times even though it was increased only
once for $var. Mark all FETCH_DIM's so that they won't decrease AiCount, and only
decrease AiCount on the last FETCH_DIM.
* Fix a stupid bug - forgot to pass CLS_C to some compiler function. For some reason
MSVC doesn't report these :I
1999-05-22 16:10:51 +00:00
Zeev Suraski
080105f79f
Give more information and save log lines in memory leak reports
1999-05-22 11:20:56 +00:00
Zeev Suraski
e22cce0dda
Easier Win32 debug code
1999-05-11 21:38:39 +00:00
Zeev Suraski
74a9ed7b3f
Weed out all BoundsChecker-found bugs (including a serious file descriptor leak
...
in the C++ scanner)
1999-05-10 20:46:42 +00:00
Zeev Suraski
7c4a08381e
Various thread safety fixes and DLL updates
1999-04-26 14:10:42 +00:00
Andi Gutmans
df6134bc42
-More commits
1999-04-26 03:03:39 +00:00
Zeev Suraski
1aa2c5c0b4
Ok, call me crazy, because I probably am.
...
Thread safe version now uses a C++ scanner object. Works fully.
1999-04-23 03:32:33 +00:00
Zeev Suraski
7a87fcbbda
Thread safety patch. We're still not quite there but it compiles again, and
...
more logic has been implemented.
1999-04-21 03:49:09 +00:00
Zeev Suraski
342c6e0b23
Whatnot:
...
* updated alloc_persist to use critical sections
* changed extension shutdown to two-phase
* updated dependencies
* PR support (don't remember if there was any really)
1999-04-18 15:11:52 +00:00
Zeev Suraski
4472d05025
Allow runtime setting of the memory limit
1999-04-10 16:24:28 +00:00
Zeev Suraski
2e9886de3c
Get rid of php3_ini in Zend
1999-04-10 14:44:35 +00:00
Andi Gutmans
573b46022c
Zend Library
1999-04-07 18:10:10 +00:00