#
07d81592 |
| 17-Oct-2023 |
Ilija Tovilo |
Avoid JIT warning with opcache.jit_buffer_size=0 Closes GH-12460
|
#
71774611 |
| 10-Oct-2023 |
Daniil Gentili |
Report warning if JIT cannot be enabled Closes GH-12404
|
#
f4ab4949 |
| 29-Sep-2023 |
Mikhail Galanin |
Invalidate path even if the file was deleted Closes GH-12323
|
#
bdc87b0f |
| 27-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix #80092: ZTS + preload = segfault on shutdown After preloading has executed, the executor globals for class_table and function_table are still referring to the values during preloadin
Fix #80092: ZTS + preload = segfault on shutdown After preloading has executed, the executor globals for class_table and function_table are still referring to the values during preloading. If no request happens after that then these values will remain dangling pointers. If then the -v option on CLI or -h option (and possibly others) on CGI is provided, there is a double free. Fix it by nulling the pointers explicitly after preloading has finished to fix it for all SAPIs. Closes GH-12311.
show more ...
|
#
5e8c992c |
| 23-Sep-2023 |
Jakub Zelenka |
Reduce impact of stream file path check in filestat Fix for #76857 introduced slight perf regression so this is an attempt to fix it. The idea is to re-use stream path check from ZendAcc
Reduce impact of stream file path check in filestat Fix for #76857 introduced slight perf regression so this is an attempt to fix it. The idea is to re-use stream path check from ZendAccelerator that should be quicker than strstr. Signed-off-by: Jakub Zelenka <bukka@php.net>
show more ...
|
#
b2dbf0a2 |
| 31-Jul-2023 |
Ilija Tovilo |
Remove opcache.consistency_checks This feature has been broken at least since the tracing JIT and inheritance cache have been introduced. The attempted fix (GH-10798) was too complex. We
Remove opcache.consistency_checks This feature has been broken at least since the tracing JIT and inheritance cache have been introduced. The attempted fix (GH-10798) was too complex. We have thus decided to remove this feature for now. Closes GH-11832
show more ...
|
#
ee3f9323 |
| 17-Jul-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-11715: opcache.interned_strings_buffer either has no effect or opcache_get_status() / phpinfo() is wrong There are a couple of oddities. 1) The interned strings buffer compri
Fix GH-11715: opcache.interned_strings_buffer either has no effect or opcache_get_status() / phpinfo() is wrong There are a couple of oddities. 1) The interned strings buffer comprises the whole hashtable datastructure. Therefore, it seems that the interned strings buffer size is the size of only said table. However, in the current code it also includes the size of the zend_accel_shared_globals. 2) ZCSG(interned_strings).end is computed starting from the accelerator globals struct itself. I would expect it to start from the part where the interned strings table starts. 3) When computing the used size, it is done using ZCSG(interned_strings).end - ZCSG(interned_strings).start. However, this does not include the uin32_t slots array because ZCSG(interned_strings).start pointers after that array. This patch corrrects these 3 points. Closes GH-11717.
show more ...
|
#
1a0ef2c1 |
| 06-Jul-2023 |
Ilija Tovilo |
Revert "Remove name field from the zend_constant struct (#10954)" This reverts commit f42992f580343931434dff2e4b2042ff945b48a1. Closes GH-11604
|
#
b0bc057e |
| 17-Jul-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Prevent potential deadlock if accelerated globals cannot be allocated Not sure if this is possible to hit in practice, zend_accel_error_noreturn doesn't return so the unlock isn't called
Prevent potential deadlock if accelerated globals cannot be allocated Not sure if this is possible to hit in practice, zend_accel_error_noreturn doesn't return so the unlock isn't called. Other callsites that use both zend_accel_error_noreturn and zend_shared_alloc_unlock first perform the unlocking. Closes GH-11718.
show more ...
|
#
ad1b70d6 |
| 04-Jul-2023 |
Ilija Tovilo |
Revert "Revert "Remove name field from the zend_constant struct (#10954)"" This reverts commit 9f4bd3040d2809f209d73f696b21302f311665b7.
|
#
9f4bd304 |
| 03-Jul-2023 |
Máté Kocsis |
Revert "Remove name field from the zend_constant struct (#10954)" This reverts commit f42992f580343931434dff2e4b2042ff945b48a1. Fix GH-11423
|
#
9c59d22a |
| 29-May-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-11336: php still tries to unlock the shared memory ZendSem with opcache.file_cache_only=1 but it was never locked I chose to check for the value of lock_file instead of checking the
Fix GH-11336: php still tries to unlock the shared memory ZendSem with opcache.file_cache_only=1 but it was never locked I chose to check for the value of lock_file instead of checking the file_cache_only, because it is probably a little bit faster and we're going to access the lock_file variable anyway. It's also more generic. Closes GH-11341.
show more ...
|
#
414f71a9 |
| 16-Apr-2023 |
Máté Kocsis |
Typed class constants (#10444) RFC: https://wiki.php.net/rfc/typed_class_constants Co-Authored-By: Ben <7127204+moliata@users.noreply.github.com> Co-Authored-By: Bob Weinand <31
Typed class constants (#10444) RFC: https://wiki.php.net/rfc/typed_class_constants Co-Authored-By: Ben <7127204+moliata@users.noreply.github.com> Co-Authored-By: Bob Weinand <3154871+bwoebi@users.noreply.github.com> Co-Authored-By: Ilija Tovilo <ilija.tovilo@me.com>
show more ...
|
#
9e861423 |
| 04-Apr-2023 |
Joan Miquel |
Add ngx-php to opcache supported sapis (#11013) This SAPI embed PHP in Nginx server. https://github.com/rryqszq4/ngx-php And in the Techempower benchmarks, it's the fastest PHP
Add ngx-php to opcache supported sapis (#11013) This SAPI embed PHP in Nginx server. https://github.com/rryqszq4/ngx-php And in the Techempower benchmarks, it's the fastest PHP SAPI. https://www.techempower.com/benchmarks/#section=data-r20
show more ...
|
#
f42992f5 |
| 03-Apr-2023 |
Máté Kocsis |
Remove name field from the zend_constant struct (#10954) As global constant names are case-sensitive now, we don't have to store them separately above the constant table.
|
#
9d5f2f13 |
| 20-Mar-2023 |
Ilija Tovilo |
Use new ZSTR_INIT_LITERAL macro (#10879)
|
#
18b43d29 |
| 28-Feb-2023 |
Dmitry Stogov |
Fix Zend/tests/type_declarations/variance/class_order_autoload1.phpt test failre introduced by 44e5c04e5546e60cdbc31360adf3876b7c706152 This ASSERT-ion path was never reached becuase of
Fix Zend/tests/type_declarations/variance/class_order_autoload1.phpt test failre introduced by 44e5c04e5546e60cdbc31360adf3876b7c706152 This ASSERT-ion path was never reached becuase of the bug fixed by 44e5c04e5546e60cdbc31360adf3876b7c706152. It's possible in case of circular class dependencies that may resolved by __autoload(). Unfortunately these circular dependencies can't be stored in the inheritace cahce.
show more ...
|
#
44e5c04e |
| 27-Feb-2023 |
Dmitry Stogov |
Fix incorrect inheritance cache update (#10719)
|
#
2e3fc8c0 |
| 27-Feb-2023 |
Dmitry Stogov |
Fix incorrect inheritance cache update (#10719)
|
#
375e7402 |
| 26-Feb-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Change implicit enum return value checks to explicit checks (#10703)
|
#
eb7bb343 |
| 25-Feb-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix format string mistake in accel_move_code_to_huge_pages() inode is unsigned, so use %lu instead of %ld
|
#
263b22f3 |
| 21-Feb-2023 |
Max Kellermann |
Make lots of string pointers `const` (#10646) This allows using string literals without implicitly casting away the `const`.
|
#
04c85a33 |
| 14-Feb-2023 |
Max Kellermann |
ext/opcache/ZendAccelerator: fix functions to return zend_result If a function returns SUCCESS or FAILURE, it should be declared to return the enum that defines those values.
|
#
a50de370 |
| 14-Feb-2023 |
Max Kellermann |
ext/opcache/ZendAccelerator: accel_is_inactive() returns bool It was declared to be `int`, but actually returned `zend_result` enum values. However the name of the function suggests it
ext/opcache/ZendAccelerator: accel_is_inactive() returns bool It was declared to be `int`, but actually returned `zend_result` enum values. However the name of the function suggests it should be `bool`, so returning something else is error prone. The function definition is difficult enough already because the name is negated...
show more ...
|
#
413844d6 |
| 18-Feb-2023 |
Max Kellermann |
Zend/zend_types.h: deprecate zend_bool, zend_intptr_t, zend_uintptr_t (#10597) These types are standard C99. For compatibility with out-of-tree extensions, keep the typedefs in
Zend/zend_types.h: deprecate zend_bool, zend_intptr_t, zend_uintptr_t (#10597) These types are standard C99. For compatibility with out-of-tree extensions, keep the typedefs in main/php.h.
show more ...
|