-
Adam Klein authored
This reverts commit 8218c061. Reason for revert: compile failures, e.g.: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Mac%20-%20arm64%20-%20release%20builder/11040/overview Original change's description: > [wasm] Reset PKRU before spawning new threads > > We sometimes hit the DCHECK in the wasm code manager: > DCHECK_IMPLIES(writable, !MemoryProtectionKeyWritable()); > > This is because we spawn new threads while having a > {CodeSpaceWriteScope} open. In the case of PKU, this changes the PKRU > register to allow writes to the code space, and the value of that > register is inherited by any new thread. If this thread then tries to > switch to writable code spaces, it hits the DCHECK. It would hit a > similar DCHECK when trying to execute code. > > We fix this issue by temporarily resetting the PKRU register to > non-writable while we call the {NotifyConcurrencyIncrease} method. This > is not a very robust solution, as any new call that potentially happens > inside a {CodeSpaceWriteScope} needs to do the same, but refactoring the > code to avoid spawning new threads while being in writable state would > be a lot of work with other downsides. > > R=jkummerow@chromium.org > > Bug: v8:13075 > Change-Id: Ibc7270aa597902dc6d9649cb6bcdfce8b1a9bafc > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3762579 > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Cr-Commit-Position: refs/heads/main@{#81729} Bug: v8:13075 Change-Id: I235e7263856a37cf0f4aa1c27493aac8e6db7910 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3763587 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/main@{#81730}
5ada213c