History log of /PHP-8.0/ext/opcache/ZendAccelerator.c (Results 1 – 25 of 420)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# e488f7b0 19-Sep-2022 Dmitry Stogov

Reorder conditions to avoid valgrind "Conditional jump or move depends on uninitialised value" warning.


# 8f5480e7 17-Feb-2022 Dmitry Stogov

Release lock and protect SHM before replaying warnings


# cd8e6f5f 14-Dec-2021 Dmitry Stogov

Preloading: don't remove INCLUDE_OE_EVAL nstructions with used result


# 45b127ad 08-Oct-2021 Dmitry Stogov

Flush error messages emitted during preloading


# 9ad8fadc 24-Sep-2021 Lin Yang

Fix bug #81472: Support large device major/minor number

Latest linux kernel use large number (12 bits for major device, 20
bits for minor device). Current code only supports previous sta

Fix bug #81472: Support large device major/minor number

Latest linux kernel use large number (12 bits for major device, 20
bits for minor device). Current code only supports previous standard
(5 chars), which means 8 bits for major and 8 bits for minor device.
It will fail if device number is out of that range. So this patch
increases device number read from /proc/self/maps file.

Closes GH-7512.

show more ...


# d1e956ff 16-Aug-2021 Nikita Popov

Fixed bug #81353

A user-defined error handler should not be invoked for preload
warnings. We are in a partially shut-down state at that point.


# ef77d3c8 17-Jul-2021 Christoph M. Becker

Fix #81206: Multiple PHP processes crash with JIT enabled

We need to avoid resetting the JIT for all SAPIs, but we need to
initialize the JIT handlers even when only reattaching on Windo

Fix #81206: Multiple PHP processes crash with JIT enabled

We need to avoid resetting the JIT for all SAPIs, but we need to
initialize the JIT handlers even when only reattaching on Windows.

Closes GH-7208.

show more ...


# 62a9f973 19-May-2021 Nikita Popov

Move preload_autoload assignment into preload_load()

We need to set the preload autoloader even if preloading happened
in a different process. accel_preload() will only run in one.

Move preload_autoload assignment into preload_load()

We need to set the preload autoloader even if preloading happened
in a different process. accel_preload() will only run in one.

In particular, this fixes the behavior if preload_user is used.

show more ...


# 8b7aaad7 07-Dec-2020 Nikita Popov

Try SIGTERM before SIGKILL in opcache restart

SIGTERM is subject to HANDLE_BLOCK_INTERRUPTIONS(), which will
allow code to exit critical sections before it gets terminated.

Clos

Try SIGTERM before SIGKILL in opcache restart

SIGTERM is subject to HANDLE_BLOCK_INTERRUPTIONS(), which will
allow code to exit critical sections before it gets terminated.

Closes GH-6493.

show more ...


# 1e6c7e77 14-Dec-2020 David Carlier

JIT disabled build fix.

Closes GH-6514.


# a12e7aff 14-Dec-2020 Dmitry Stogov

Fixed bug #80506 (Immediate SIGSEGV upon ini_set("opcache.jit_debug", 1))


# d5a82e2c 30-Nov-2020 Dmitry Stogov

Disable JIT with incompatible third-party extensions


Revision tags: php-8.0.0, php-7.3.25, php-7.4.13, php-8.0.0RC5, php-7.4.13RC1, php-8.0.0RC4, php-7.3.25RC1
# 6808968c 05-Nov-2020 Nikita Popov

Backport preloading trait fixup fixes

This cherry-picks 33969c2252b2c33a72c9039072af8862fd347a5f and
2effbfd8713936742ef46e6e85ce193b320ac005 from PHP-8.0.

The issues these comm

Backport preloading trait fixup fixes

This cherry-picks 33969c2252b2c33a72c9039072af8862fd347a5f and
2effbfd8713936742ef46e6e85ce193b320ac005 from PHP-8.0.

The issues these commits fix could also manifest in PHP 7.4, and
a commenter on bug #80307 reports this this might indeed be
happening.

show more ...


# 2effbfd8 05-Nov-2020 Nikita Popov

Fixup trait methods even if no traits are used

Trait methods might be non-trivially inherited, in which case we
may have to perform fixup in classes that do not directly use any
trai

Fixup trait methods even if no traits are used

Trait methods might be non-trivially inherited, in which case we
may have to perform fixup in classes that do not directly use any
traits.

show more ...


# 33969c22 05-Nov-2020 Nikita Popov

Fix multiple trait fixup

If a trait method is inherited, preloading trait fixup might be
performed on it multiple times. Usually this is fine, because
the opcodes pointer will have a

Fix multiple trait fixup

If a trait method is inherited, preloading trait fixup might be
performed on it multiple times. Usually this is fine, because
the opcodes pointer will have already been updated, and will thus
not be found in the xlat table.

However, it can happen that the new opcodes pointer is the same
as one of the old opcodes pointers, if the pointer has been reused
by the allocator. In this case we will look up the wrong op array
and overwrite the trait method with an unrelated trait method.

We fix this by indexing the xlat table not by the opcodes pointer,
but by the refcount pointer. The refcount pointer is not changed
during optimization, and accurately represents which op arrays
should use the same opcodes.

Fixes bug #80307. The test case does not reproduce the bug, because
this depends on a lot of "luck" with the allocator. The test case
merely illustrates a case where orig_op_array would have been NULL
in the original code.

show more ...


# 7c7c6b0d 04-Nov-2020 Nikita Popov

End output handlers in preload shutdown

Same as in php_request_shutdown(), we need to end any active
output handlers, as these may no longer be safe to execute
lateron.


# b009573f 03-Nov-2020 Nikita Popov

Report parse errors during preloading


# 51b5f7d6 03-Nov-2020 Nikita Popov

Don't ignore internal classes during preloading

When preloading, it's fine to make use of internal class information,
as we do not support Windows. It is also necessary to allow proper

Don't ignore internal classes during preloading

When preloading, it's fine to make use of internal class information,
as we do not support Windows. It is also necessary to allow proper
variance checks against internal classes.

show more ...


# 6f243186 03-Nov-2020 Nikita Popov

Preserve trait method alias name during preloading


Revision tags: php-7.4.12, php-8.0.0RC3, php-7.3.24, php-8.0.0RC2, php-7.4.12RC1, php-7.3.24RC1, php-7.2.34, php-8.0.0rc1, php-7.4.11, php-7.3.23, php-8.0.0beta4, php-7.4.11RC1, php-7.3.23RC1, php-8.0.0beta3, php-7.4.10, php-7.3.22, php-8.0.0beta2, php-7.3.22RC1, php-7.4.10RC1, php-8.0.0beta1, php-7.4.9, php-7.2.33, php-7.3.21, php-8.0.0alpha3, php-7.4.9RC1, php-7.3.21RC1, php-7.4.8, php-7.2.32, php-8.0.0alpha2, php-7.3.20, php-8.0.0alpha1, php-7.4.8RC1, php-7.3.20RC1, php-7.4.7, php-7.3.19
# d134c0ac 09-Jun-2020 twosee

Fix bug #79643: Invalid memory read when opcache.interned_strings_buffer is 0


# 2a545ba9 03-Oct-2020 Christoph M. Becker

Fix #80175: PHP8 RC1 - JIT Buffer not working

On Windows, `SUCCESSFULLY_REATTACHED` does not imply that the process
has already been properly initialized; thus we must not skip some setu

Fix #80175: PHP8 RC1 - JIT Buffer not working

On Windows, `SUCCESSFULLY_REATTACHED` does not imply that the process
has already been properly initialized; thus we must not skip some setup
steps in `zend_jit_startup()`.

Closes GH-6268.

show more ...


# 739eb435 29-Sep-2020 Dmitry Stogov

Tracing JIT support for preloaded scripts


# 3928b6b4 29-Sep-2020 Dmitry Stogov

Fixed unintended disabling of Optimizer for preloaded scripts introduced by 4a2646cf459


# 12306728 16-Jul-2020 Sammy Kaye Powers

Add system ID entropy API

The `zend_system_id` is a (true global) system ID that fingerprints a process state. When extensions add engine hooks during MINIT/startup, entropy is added the sys

Add system ID entropy API

The `zend_system_id` is a (true global) system ID that fingerprints a process state. When extensions add engine hooks during MINIT/startup, entropy is added the system ID for each hook. This allows extensions to identify that changes have been made to the engine since the last PHP process restart.

Closes GH-5871

show more ...


# d5d31ea3 18-Sep-2020 Dmitry Stogov

Cleanup observer API and add JIT support


12345678910>>...17