File tree 2 files changed +11
-0
lines changed
2 files changed +11
-0
lines changed Original file line number Diff line number Diff line change @@ -6,6 +6,10 @@ PHP NEWS
6
6
. Fixed bug GH-13772 (Invalid execute_data->opline pointers in observer fcall
7
7
handlers when JIT is enabled). (Bob)
8
8
9
+ - Fibers:
10
+ . Fixed bug GH-13903 (ASAN false positive underflow when executing copy()).
11
+ (nielsdos)
12
+
9
13
- FPM:
10
14
. Fixed bug GH-13563 (Setting bool values via env in FPM config fails).
11
15
(Jakub Zelenka)
Original file line number Diff line number Diff line change 62
62
#endif
63
63
64
64
#ifdef __SANITIZE_ADDRESS__
65
+ # include <sanitizer/asan_interface.h>
65
66
# include <sanitizer/common_interface_defs.h>
66
67
#endif
67
68
@@ -257,6 +258,12 @@ static void zend_fiber_stack_free(zend_fiber_stack *stack)
257
258
258
259
void * pointer = (void * ) ((uintptr_t ) stack -> pointer - ZEND_FIBER_GUARD_PAGES * page_size );
259
260
261
+ #ifdef __SANITIZE_ADDRESS__
262
+ /* If another mmap happens after unmapping, it may trigger the stale stack red zones
263
+ * so we have to unpoison it before unmapping. */
264
+ ASAN_UNPOISON_MEMORY_REGION (pointer , stack -> size + ZEND_FIBER_GUARD_PAGES * page_size );
265
+ #endif
266
+
260
267
#ifdef ZEND_WIN32
261
268
VirtualFree (pointer , 0 , MEM_RELEASE );
262
269
#else
You can’t perform that action at this time.
0 commit comments