Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f880a138724d2d31485d83b359f1fee597068e40
      
https://github.com/WebKit/WebKit/commit/f880a138724d2d31485d83b359f1fee597068e40
  Author: Zak Ridouh <z...@apple.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M Source/JavaScriptCore/API/PASReportCrashPrivate.cpp
    M Source/JavaScriptCore/API/PASReportCrashPrivate.h
    M 
Source/bmalloc/libpas/src/libpas/pas_probabilistic_guard_malloc_allocator.c
    M 
Source/bmalloc/libpas/src/libpas/pas_probabilistic_guard_malloc_allocator.h

  Log Message:
  -----------
  [libpas] Add a signal for if PGM is enabled on a process
https://bugs.webkit.org/show_bug.cgi?id=287056
rdar://144202533

Reviewed by Yusuke Suzuki.

This patch adds a new function to be exposed that checks if the
`pas_probabilistic_guard_malloc_can_use` value is true or false, which
is what modulates if PGM is enabled on this process during initalization
of the heap.

It also exposes this function through a JSC SPI that allows us to use
this in other places to know if PGM was enabled at all in this process,
regardless of if we made any guarded allocations or not.

This approach is better than putting additional information in the
metadata, because metadata is only generated on PGM allocations and
deallocations, which we are not guaranteed to have due to how unlikely
they are. By exposing whether or not PGM was enabled for this process
deterministically, it can help us catch bugs or crashes in the actual
implementation.

* Source/JavaScriptCore/API/PASReportCrashPrivate.cpp:
(PASPGMEnabledOnProcess):
* Source/JavaScriptCore/API/PASReportCrashPrivate.h:
* Source/bmalloc/libpas/src/libpas/pas_probabilistic_guard_malloc_allocator.c:
(pas_probabilistic_guard_malloc_deallocate):
(pas_probabilistic_guard_malloc_enabled_on_process):
(pas_probabilistic_guard_malloc_initialize_pgm_as_enabled):
* Source/bmalloc/libpas/src/libpas/pas_probabilistic_guard_malloc_allocator.h:

Canonical link: https://commits.webkit.org/293336@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to