Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e698dda8251bff93d56d3df5601040aacbc36155
      
https://github.com/WebKit/WebKit/commit/e698dda8251bff93d56d3df5601040aacbc36155
  Author: Marcus Plutowski <[email protected]>
  Date:   2025-12-05 (Fri, 05 Dec 2025)

  Changed paths:
    M Source/bmalloc/libpas/src/libpas/pas_mte.h

  Log Message:
  -----------
  [libpas] Extend Adjacent-Tag-Exclusion to cover bitfit objects as well
https://bugs.webkit.org/show_bug.cgi?id=302810
rdar://164245530

Reviewed by Dan Hecht.

Due to how a single bitfit page can contain objects of varying size,
ensuring adjacent-tag-exclusion comes with a few extra challenges.
 1. We cannot use the parity trick to divide allocations into
    odd/even, so instead we directly ldg the previous/subsequent
    allocations and filter those tags out of the irg computation.
 2. We cannot ldg across pages, so we need to be a bit clever to ensure
    that adjacent allocations on different pages do not collide. We do
    so by having all bitfit page allocations be even-tagged, save for
    the allocation (if any) containing the last MTE granule in the page,
    which is odd-tagged.
Together, this ensures that the ATE property should apply to bitfit
objects both within and across allocator pages.

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to