Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use an isb as a pause instruction on arm64 platforms. #441

Open
wants to merge 1 commit into
base: main_pre_flash
Choose a base branch
from

Commits on Jun 2, 2022

  1. Use an isb as a pause instruction on arm64 platforms.

    In other projects spinlock implementations and focused testing we've
    found that an isb pauses execution for about the same time as an x86
    pause instruction. The yield instruction behaves as a nop and thus
    doesn't pause the CPU at all which leads to both more contention on the
    lock that is being spun on and also a much lower spin-time vs. x86 for
    the same spin loop constants. Given this is userspace code, using a wfe
    isn't advisable.
    AGSaidi committed Jun 2, 2022
    Configuration menu
    Copy the full SHA
    b5234e5 View commit details
    Browse the repository at this point in the history