ModuleTreeLinker.cpp(208) Check failed: ScriptModuleState::kUninstantiated == result->RecordStatus() (0 vs. 1) |
||||||||
Issue descriptionCompile current chromium (b856d1a5c9e4426f51500eebe7dd9c2ad1699fc8) and run the attached html file as webkit test, e.g. $ third_party/WebKit/Tools/Scripts/run-webkit-tests third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/instantiation-error-4.html --nocheck-sys-deps --no-retry-failures Sometimes the test passes, but sometimes it crashes as follows: [1:1:0725/162346.561820:3725289843104:FATAL:ModuleTreeLinker.cpp(208)] Check failed: ScriptModuleState::kUninstantiated == result->RecordStatus() (0 vs. 1) #0 0x7fa0b9e6fe87 base::debug::StackTrace::StackTrace() #1 0x7fa0b9e96ec1 logging::LogMessage::~LogMessage() #2 0x7fa0b67b38d4 blink::ModuleTreeLinker::NotifyModuleLoadFinished() #3 0x7fa0b9e706cb base::debug::TaskAnnotator::RunTask() #4 0x7fa0b512d615 blink::scheduler::TaskQueueManager::ProcessTaskFromWorkQueue() #5 0x7fa0b512b124 blink::scheduler::TaskQueueManager::DoWork() #6 0x7fa0b512f81e _ZN4base8internal12InvokeHelperILb1EvE8MakeItSoIRKMN5blink9scheduler16TaskQueueManagerEFvbERKNS_7WeakPtrIS6_EEJRKbEEEvOT_OT0_DpOT1_ #7 0x7fa0b9e706cb base::debug::TaskAnnotator::RunTask() #8 0x7fa0b9ea3a6a base::MessageLoop::RunTask() #9 0x7fa0b9ea3da2 base::MessageLoop::DeferOrRunPendingTask() #10 0x7fa0b9ea4104 base::MessageLoop::DoWork() #11 0x7fa0b9ea59d0 base::MessagePumpDefault::Run() #12 0x7fa0b9ea362f base::MessageLoop::Run() #13 0x7fa0b9ed7cc7 base::RunLoop::Run() #14 0x7fa0bb13e3dd content::RendererMain() #15 0x7fa0bb2ab29a content::RunZygote() #16 0x7fa0bb2abb7b content::RunNamedProcessTypeMain() #17 0x7fa0bb2ac4b8 content::ContentMainRunnerImpl::Run() #18 0x7fa0b8045fe6 service_manager::Main() #19 0x7fa0bb2aaf62 content::ContentMain() #20 0x000000478b4f main #21 0x7fa0b34b0f45 __libc_start_main #22 0x000000478a39 <unknown> For better understanding: After the first script load fails (cycle-error-a.js), three modules are (according to ES) supposed to have status "errored" (a, b, c), whereas two are still uninstantiated (d, e). The second script load (cycle-error-d.js) is supposed to fail immediately with the error recorded in a (as specified in HTML) -- without trying to instantiate d.
,
Jul 25 2017
I'm looking into the V8 side of this, I think there's a bug there.
,
Jul 25 2017
There is a large chance that this was introduced in https://chromium-review.googlesource.com/c/578531/
,
Jul 25 2017
Note to self: The graph is html references a then e. a imports b. b imports c, d. c imports c. d imports a, e. e imports e w/ error.
,
Jul 26 2017
This should fix the issue: https://chromium-review.googlesource.com/c/586602/
,
Jul 26 2017
,
Jul 26 2017
,
Jul 26 2017
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/e017463189d1e7346fa24210808e30c53115fd6d commit e017463189d1e7346fa24210808e30c53115fd6d Author: Georg Neis <neis@chromium.org> Date: Wed Jul 26 17:55:25 2017 [modules] Fix mapping of internal status to external status. Internally, the module status type has one additional value, namely PreInstantiating. I previously mapped this to Instantiating when crossing the API boundary but it really should be mapped to Uninstantiated. That's because when instantiation fails, typically all modules not yet visited will remain in the PreInstantiating state, yet they must appear Uninstantiated to the outside. A relevant test will be added to chromium shortly. Bug: v8:1569 , chromium:748544 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Icb33c7f90db5e62375b6c09d14e3d2d5342b0879 Reviewed-on: https://chromium-review.googlesource.com/586602 Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46911} [modify] https://crrev.com/e017463189d1e7346fa24210808e30c53115fd6d/src/api.cc
,
Jul 27 2017
,
Jul 27 2017
Please add appropriate OSs.
,
Jul 27 2017
,
Jul 28 2017
Your change meets the bar and is auto-approved for M61. Please go ahead and merge the CL to branch 3163 manually. Please contact milestone owner if you have questions. Owners: amineer@(Android), cmasso@(iOS), ketakid @(ChromeOS), govind@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Jul 28 2017
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/f9f392bcbe2ffe2352aff5b939d64f09740f1ff1 commit f9f392bcbe2ffe2352aff5b939d64f09740f1ff1 Author: Georg Neis <neis@chromium.org> Date: Fri Jul 28 10:32:27 2017 Merged: [modules] Fix mapping of internal status to external status. Revision: e017463189d1e7346fa24210808e30c53115fd6d BUG= chromium:748544 , v8:1569 LOG=N NOTRY=true NOPRESUBMIT=true NOTREECHECKS=true R=hablich@chromium.org Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I51eb27fdceecbaf976c9b8a7c3e369aea6676b30 Reviewed-on: https://chromium-review.googlesource.com/591108 Reviewed-by: Michael Hablich <hablich@chromium.org> Cr-Commit-Position: refs/branch-heads/6.1@{#24} Cr-Branched-From: 1bf2e10ddb194d4c2871a87a4732613419de892d-refs/heads/6.1.534@{#1} Cr-Branched-From: e825c4318eb2065ffdf9044aa6a5278635c36427-refs/heads/master@{#46746} [modify] https://crrev.com/f9f392bcbe2ffe2352aff5b939d64f09740f1ff1/src/api.cc
,
Jul 28 2017
,
Aug 4 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/92d17e224880ee353e6e95d1412572a580fea5b0 commit 92d17e224880ee353e6e95d1412572a580fea5b0 Author: Georg Neis <neis@chromium.org> Date: Fri Aug 04 08:55:33 2017 Add more tests of module instantiation errors. Bug: chromium:748544 Change-Id: I9458ea9c25d65bc31ff34dc8101936468ed2bf81 Reviewed-on: https://chromium-review.googlesource.com/589434 Reviewed-by: Kouhei Ueno <kouhei@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#491969} [add] https://crrev.com/92d17e224880ee353e6e95d1412572a580fea5b0/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/instantiation-error-4.html [add] https://crrev.com/92d17e224880ee353e6e95d1412572a580fea5b0/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/instantiation-error-4a.js [add] https://crrev.com/92d17e224880ee353e6e95d1412572a580fea5b0/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/instantiation-error-4b.js [add] https://crrev.com/92d17e224880ee353e6e95d1412572a580fea5b0/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/instantiation-error-4c.js [add] https://crrev.com/92d17e224880ee353e6e95d1412572a580fea5b0/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/instantiation-error-4d.js [add] https://crrev.com/92d17e224880ee353e6e95d1412572a580fea5b0/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/instantiation-error-5.html [add] https://crrev.com/92d17e224880ee353e6e95d1412572a580fea5b0/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/instantiation-error-5a.js [add] https://crrev.com/92d17e224880ee353e6e95d1412572a580fea5b0/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/instantiation-error-5b.js [add] https://crrev.com/92d17e224880ee353e6e95d1412572a580fea5b0/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/instantiation-error-5c.js [add] https://crrev.com/92d17e224880ee353e6e95d1412572a580fea5b0/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/instantiation-error-5d.js [add] https://crrev.com/92d17e224880ee353e6e95d1412572a580fea5b0/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/instantiation-error-5e.js |
||||||||
►
Sign in to add a comment |
||||||||
Comment 1 by neis@chromium.org
, Jul 25 2017