Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: c0121e11c12f57c279705344e09bc1270491df97
https://github.com/WebKit/WebKit/commit/c0121e11c12f57c279705344e09bc1270491df97
Author: Mark Lam <[email protected]>
Date: 2026-09-04 (Fri, 04 Sep 2026)
Changed paths:
M Source/bmalloc/libpas/src/libpas/bmalloc_heap_flex_internal.h
M Source/bmalloc/libpas/src/libpas/bmalloc_heap_inlines.h
M Source/bmalloc/libpas/src/libpas/bmalloc_heap_iso_internal.h
M Source/bmalloc/libpas/src/libpas/hotbit_heap_inlines.h
M Source/bmalloc/libpas/src/libpas/iso_heap_inlines.h
M Source/bmalloc/libpas/src/libpas/pas_local_allocator_inlines.h
M Source/bmalloc/libpas/src/libpas/pas_try_allocate_intrinsic.h
M Source/bmalloc/libpas/src/libpas/pas_try_reallocate.h
M Source/bmalloc/libpas/src/libpas/tagged_bmalloc_heap_inlines.h
M Source/bmalloc/libpas/src/libpas/thingy_heap.c
Log Message:
-----------
Make SystemHeap-enabled failure actions equivalent to SystemHeap-disabled
failure actions.
https://bugs.webkit.org/show_bug.cgi?id=323456
rdar://185783006
Reviewed by Marcus Plutowski.
This means:
1. non-"try" allocators should crash on failure to allocate memory.
2. "try" allocators just return a nullptr on failure to allocate memory. See
exception in (3) below.
3. For iso_try_reallocate allocators, existing SystemHeap-disabled allocators
will also set errno
to ENOMEM in addition to returning nullptr. Make the SystemHeap-enabled
path do the same
No new tests because failures to allocate memory is not a condition we can
force, and the expected
behavior is to crash in some cases (which is not testable).
* Source/bmalloc/libpas/src/libpas/bmalloc_heap_flex_internal.h:
(bmalloc_try_reallocate_flex_inline):
(bmalloc_reallocate_flex_inline):
* Source/bmalloc/libpas/src/libpas/bmalloc_heap_inlines.h:
(bmalloc_try_reallocate_auxiliary_inline):
(bmalloc_reallocate_auxiliary_inline):
(bmalloc_try_reallocate_inline):
(bmalloc_reallocate_inline):
* Source/bmalloc/libpas/src/libpas/bmalloc_heap_iso_internal.h:
(bmalloc_try_iso_reallocate_array_by_size_inline):
(bmalloc_iso_reallocate_array_by_size_inline):
(bmalloc_try_iso_reallocate_array_by_count_inline):
(bmalloc_iso_reallocate_array_by_count_inline):
* Source/bmalloc/libpas/src/libpas/hotbit_heap_inlines.h:
(hotbit_try_reallocate_inline):
* Source/bmalloc/libpas/src/libpas/iso_heap_inlines.h:
(iso_try_reallocate_common_primitive_inline):
(iso_reallocate_common_primitive_inline):
(iso_try_reallocate_array_by_count_inline):
(iso_reallocate_array_by_count_inline):
(iso_try_reallocate_primitive_inline):
(iso_reallocate_primitive_inline):
* Source/bmalloc/libpas/src/libpas/pas_local_allocator_inlines.h:
(pas_local_allocator_try_allocate):
* Source/bmalloc/libpas/src/libpas/pas_try_allocate_intrinsic.h:
(pas_try_allocate_intrinsic_impl_casual_case):
* Source/bmalloc/libpas/src/libpas/pas_try_reallocate.h:
(pas_try_reallocate):
(pas_try_reallocate_intrinsic):
(pas_try_reallocate_single):
(pas_try_reallocate_array_by_size):
(pas_try_reallocate_array_by_count):
(pas_try_reallocate_primitive):
* Source/bmalloc/libpas/src/libpas/tagged_bmalloc_heap_inlines.h:
(tagged_bmalloc_try_reallocate_inline):
(tagged_bmalloc_reallocate_inline):
* Source/bmalloc/libpas/src/libpas/thingy_heap.c:
(thingy_try_reallocate_primitive):
(thingy_try_reallocate_array):
Canonical link: https://commits.webkit.org/320539@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications