• Clemens Backes's avatar
    Reland "[wasm][debug] Fix tier down for multiple isolates" · e62a7f76
    Clemens Backes authored
    This is a reland of 902f48bd, fixed
    to avoid lock inversion problems detected by TSan.
    
    Original change's description:
    > [wasm][debug] Fix tier down for multiple isolates
    >
    > If multiple isolates are using the same module, we need to keep it
    > tiered down as long as any isolate still has a debugger open.
    > Also, we cannot short-cut the {NativeModule::TierDown} method, since the
    > previously triggered tier down might not have finished yet.
    > For now, each isolate starts an independent tier down (i.e. a full
    > recompilation). We could optimize this later by skipping functions that
    > are already tiered down, or are already scheduled for tier down, but we
    > still need to wait for tier-down to finish on each isolate.
    >
    > R=thibaudm@chromium.org
    >
    > Bug: v8:10359
    > Change-Id: I7ea6a6f5d3977e48718ac5bc94f9831541f6173f
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2190758
    > Commit-Queue: Clemens Backes <clemensb@chromium.org>
    > Reviewed-by: Thibaud Michaud <thibaudm@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#67716}
    
    Bug: v8:10359
    Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel
    Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng
    Change-Id: Ie98cf073fc79e5c6991df6d4466de7b560274070
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2194451
    Commit-Queue: Clemens Backes <clemensb@chromium.org>
    Reviewed-by: 's avatarThibaud Michaud <thibaudm@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#67754}
    e62a7f76
Name
Last commit
Last update
..
compiler Loading commit data...
es6 Loading commit data...
es8 Loading commit data...
harmony Loading commit data...
ignition Loading commit data...
regress Loading commit data...
side-effect Loading commit data...
wasm Loading commit data...
debug-allscopes-on-debugger.js Loading commit data...
debug-backtrace.js Loading commit data...
debug-bigint.js Loading commit data...
debug-break-class-fields.js Loading commit data...
debug-break-inline.js Loading commit data...
debug-break-microtask.js Loading commit data...
debug-break-native.js Loading commit data...
debug-break-return.js Loading commit data...
debug-breakpoints.js Loading commit data...
debug-clearbreakpoint.js Loading commit data...
debug-compile-event.js Loading commit data...
debug-compile-optimized.js Loading commit data...
debug-conditional-breakpoints.js Loading commit data...
debug-constructor.js Loading commit data...
debug-enable-disable-breakpoints.js Loading commit data...
debug-eval-scope.js Loading commit data...
debug-evaluate-arguments.js Loading commit data...
debug-evaluate-bool-constructor.js Loading commit data...
debug-evaluate-closure.js Loading commit data...
debug-evaluate-dead-function-fails.js Loading commit data...
debug-evaluate-declaration.js Loading commit data...
debug-evaluate-function-var.js Loading commit data...
debug-evaluate-local-repl-hole.js Loading commit data...
debug-evaluate-locals-capturing.js Loading commit data...
debug-evaluate-locals-optimized-double.js Loading commit data...
debug-evaluate-locals-optimized.js Loading commit data...
debug-evaluate-locals.js Loading commit data...
debug-evaluate-modify-catch-block-scope.js Loading commit data...
debug-evaluate-modify-this.js Loading commit data...
debug-evaluate-nested-let.js Loading commit data...
debug-evaluate-repl-mode-await.js Loading commit data...
debug-evaluate-repl-mode-optimized.js Loading commit data...
debug-evaluate-repl-mode.js Loading commit data...
debug-evaluate-shadowed-context-2.js Loading commit data...
debug-evaluate-shadowed-context-3.js Loading commit data...
debug-evaluate-shadowed-context.js Loading commit data...
debug-evaluate-with.js Loading commit data...
debug-evaluate.js Loading commit data...
debug-event-listener.js Loading commit data...
debug-exceptions.js Loading commit data...
debug-function-scopes.js Loading commit data...
debug-generator-break-on-stack.js Loading commit data...
debug-generator-break.js Loading commit data...
debug-liveedit-1.js Loading commit data...
debug-liveedit-2.js Loading commit data...
debug-liveedit-3.js Loading commit data...
debug-liveedit-4.js Loading commit data...
debug-liveedit-arrow-function-at-start.js Loading commit data...
debug-liveedit-check-stack.js Loading commit data...
debug-liveedit-compile-error.js Loading commit data...
debug-liveedit-double-call.js Loading commit data...
debug-liveedit-exceptions.js Loading commit data...
debug-liveedit-inline.js Loading commit data...
debug-liveedit-literals.js Loading commit data...
debug-liveedit-newsource.js Loading commit data...
debug-liveedit-patch-positions-replace.js Loading commit data...
debug-liveedit-recursion.js Loading commit data...
debug-liveedit-replace-code.js Loading commit data...
debug-liveedit-restart-frame.js Loading commit data...
debug-liveedit-stepin.js Loading commit data...
debug-materialized.js Loading commit data...
debug-modules-set-variable-value.mjs Loading commit data...
debug-multiple-breakpoints.js Loading commit data...
debug-multiple-var-decl.js Loading commit data...
debug-negative-break-points.js Loading commit data...
debug-optimize.js Loading commit data...
debug-print.js Loading commit data...
debug-receiver.js Loading commit data...
debug-return-value.js Loading commit data...
debug-scopes-suspended-generators.js Loading commit data...
debug-scopes.js Loading commit data...
debug-set-variable-value.js Loading commit data...
debug-stack-check-position.js Loading commit data...
debug-step-2.js Loading commit data...
debug-step-3.js Loading commit data...
debug-step-4.js Loading commit data...
debug-step-end-of-script.js Loading commit data...
debug-step-into-json.js Loading commit data...
debug-step-into-valueof.js Loading commit data...
debug-step-microtask.js Loading commit data...
debug-step-stub-callfunction.js Loading commit data...
debug-step-turbofan.js Loading commit data...
debug-step.js Loading commit data...
debug-stepin-accessor-ic.js Loading commit data...
debug-stepin-accessor.js Loading commit data...
debug-stepin-builtin-callback-opt.js Loading commit data...
debug-stepin-builtin-callback.js Loading commit data...
debug-stepin-builtin.js Loading commit data...
debug-stepin-call-function-stub.js Loading commit data...
debug-stepin-construct-call.js Loading commit data...
debug-stepin-constructor.js Loading commit data...
debug-stepin-foreach.js Loading commit data...
debug-stepin-function-call.js Loading commit data...
debug-stepin-property-function-call.js Loading commit data...
debug-stepnext-do-while.js Loading commit data...
debug-stepout-recursive-function.js Loading commit data...
debug-stepout-scope-part1.js Loading commit data...
debug-stepout-scope-part2.js Loading commit data...
debug-stepout-scope-part3.js Loading commit data...
debug-stepout-scope-part4.js Loading commit data...
debug-stepout-scope-part5.js Loading commit data...
debug-stepout-scope-part6.js Loading commit data...
debug-stepout-scope-part7.js Loading commit data...
debug-stepout-scope-part8.js Loading commit data...
debug-stepout-to-builtin.js Loading commit data...
deserialize-script-id.js Loading commit data...
for-in-opt.js Loading commit data...
function-source.js Loading commit data...
lazy-deopt-then-flush-bytecode.js Loading commit data...
regress-3225.js Loading commit data...
regress-5207.js Loading commit data...