WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
314598
Use isb in ParkingLot spinloop on ARM64
https://bugs.webkit.org/show_bug.cgi?id=314598
Summary
Use isb in ParkingLot spinloop on ARM64
Marcus Plutowski
Reported
2026-05-11 18:34:00 PDT
Currently, ParkingLot on ARM64 uses `yield` instruction. External experimentation has shown that it’s preferable to use an `isb` instruction instead.
https://github.com/rust-lang/rust/commit/c064b6560b7ce0adeb9bbf5d7dcf12b1acb0c807
The explantation there is not 100% accurate — an isb does not “put the core to sleep” per se, but by draining the out-of-order buffer and preventing the dispatch of younger instructions, it does effectively throttle execution until fetch gets past the block of isb instructions. The core continues executing but fully in-order. The upside is more determinism and generally less power consumption. This will require retuning the nop-counts.
Attachments
Add attachment
proposed patch, testcase, etc.
Marcus Plutowski
Comment 1
2026-05-11 22:23:13 PDT
<
rdar://problem/176840292
>
Marcus Plutowski
Comment 2
2026-05-11 22:23:32 PDT
Pull request:
https://github.com/WebKit/WebKit/pull/64733
EWS
Comment 3
2026-05-12 08:36:11 PDT
Committed
313082@main
(1e389bdbdcc4): <
https://commits.webkit.org/313082@main
> Reviewed commits have been landed. Closing PR #64733 and removing active labels.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug