-
Dominik Inführ authored
It could happen (e.g. with --stress-background-compile) that the main thread blocks for a background thread but the background thread requests a GC from the main thread. This would result in a deadlock. Avoid this by parking the main thread for potentially blocking operations and allow allocations while the main thread is parked. This CL introduces new states for the main thread: CollectionRequested and ParkedCollectionRequested. These states will force Safepoint(), Park() and Unpark() on the main thread into slow paths. The slow path can then perform a GC on the main thread - right before parking or after the main thread got unparked. Bug: v8:10315 Change-Id: If7ef31622d27320613139a0b7f79086fe3200f99 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2731528Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/master@{#73707}
28d5f133
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
benchmarks | ||
cctest | ||
common | ||
debugger | ||
debugging | ||
fuzzer | ||
fuzzilli | ||
inspector | ||
intl | ||
js-perf-test | ||
memory | ||
message | ||
mjsunit | ||
mkgrokdump | ||
mozilla | ||
test262 | ||
torque | ||
unittests | ||
wasm-api-tests | ||
wasm-js | ||
wasm-spec-tests | ||
webkit | ||
BUILD.gn | ||
OWNERS |