Closed Bug 1379994 Opened 7 years ago Closed 7 years ago

Crash in AsyncShutdownTimeout | profile-change-teardown | Extension Shutdown: forecastfox@s3_fix_version (Forecastfox (fix version)),Extension Shutdown: {d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d} (Web Extensions I/O backend)

Categories

(SeaMonkey :: General, defect)

Unspecified
All
defect
Not set
major

Tracking

(seamonkey2.53 fixed)

RESOLVED DUPLICATE of bug 1380267
Tracking Status
seamonkey2.53 --- fixed

People

(Reporter: tonymec, Unassigned)

References

Details

(Keywords: crash, Whiteboard: [seamonkey-2.53-affected] [toolkit-56.0-affected])

Crash Data

This bug was filed from the Socorro interface and is report bp-c5f8eca3-8d88-47d0-813f-d5b650170711. ============================================================= I'm reporting this in Toolkit::Add-ons Manager because of the extension mentioned by Socorro in the crash report. This extension is not working anyway, I disabled it after restart (it is a restartless extension, without "LEGACY" on its add-ons manager line, and disabling it didn't cause a crash. Since the crashing bug was an hourly (without symbols) I painstakingly interpreted the addresses by means of the crashreporter-symbols.zip. The presence of a PUBLIC line means that the last public symbol before the address on the stack didn't match the last function name before that same address, mentioned on the line following the PUBLIC line below. (N.B. After XREMain::XRE_main there are 10 more earlier stack addresses which I didn't take the trouble to decode.) N.B. 1. I notice that this extension version (3.4) and the following (4.1, of which I wasn't aware) don't officially support SeaMonkey. Maybe I'll downgrade to version 2.4.8, which does, but I think it had problems (needed entry points removed in trunk toolkit, or something). 2. I can't find the Bugzilla email address of record of Oleksandr Popov, the extension's author (there are several Oleksandr, some with no last name and some with a last name other than Popov). And now... 1) Build ID and Mercurial CSIDs ------------------------------- 20170710032403 https://hg.mozilla.org/comm-central/rev/18217986ac6a0d930b6dc7d693045c2eb7045b50 https://hg.mozilla.org/mozilla-central/rev/91c943f73737 2) Socorro report header ------------------------ Signature AsyncShutdownTimeout | profile-change-teardown | Extension Shutdown: forecastfox@s3_fix_version (Forecastfox (fix version)),Extension Shutdown: {d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d} (Web Extensions I/O backend) More Reports Search UUID c5f8eca3-8d88-47d0-813f-d5b650170711 Date Processed 2017-07-11 11:22:19 Uptime 78,817 seconds (21 hours, 53 minutes and 37 seconds) Last Crash 3,980,332 seconds before submission (6 weeks, 4 days and 1 hour) Install Age 78,817 seconds since version was first installed (21 hours, 53 minutes and 37 seconds) Install Time 2017-07-10 13:27:55 Product SeaMonkey Release Channel default Version 2.53a1 Build ID 20170710032403 OS Linux OS Version 0.0.0 Linux 4.4.74-18.20-default #1 SMP Fri Jun 30 19:01:19 UTC 2017 (b5079b8) x86_64 Build Architecture amd64 Build Architecture Info family 6 model 23 stepping 10 | 2 Adapter Vendor ID Adapter Device ID Startup Crash False MOZ_CRASH Reason MOZ_CRASH() Crash Reason SIGSEGV Crash Address 0x0 User Comments while closing down (after Ctrl+Q) EMCheckCompatibility False App Notes openSUSE Leap 42.2FP(D00-L1000-W00000000-T000) OpenGL: Intel Open Source Technology Center -- Mesa DRI Intel(R) Q45/Q43 -- 2.1 Mesa 11.2.2 -- texture_from_pixmap WR? WR- xpcom_runtime_abort(###!!! ABORT: file resource://gre/modules/Extension.jsm, line 1170) Processor Notes processor_ip-172-31-9-29_1324; MozillaProcessorAlgorithm2015; Signature replaced with a Shutdown Timeout signature, was: "Abort | seamonkey@0x6bb6"; skunk_classifier: reject - not a plugin hang 3) Stack, as decoded by hand ---------------------------- seamonkey PUBLIC 66b0 0 std::__detail::_Prime_rehash_policy::_M_next_bkt(unsigned long) const 0 seamonkey@0x6bb6 mozalloc_abort 1 libxul.so@0xd96ae0 NS_DebugBreak 2 libxul.so@0xd96ea7 nsDebugImpl::Abort(char const*, int) libxul PUBLIC e19768 0 NS_InvokeByIndex 3 libxul.so@0xe197f5 NS_SizeOfIncludingThisXPTCallStub 4 libxul.so@0x16c12b7 XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) 5 libxul.so@0x16c68a1 XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*) 6 libxul.so@0x4190746 js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) 7 libxul.so@0x4183dd8 Interpret(JSContext*, js::RunState&) 8 libxul.so@0x419016f js::RunScript(JSContext*, js::RunState&) 9 libxul.so@0x419084f js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) 10 libxul.so@0x4190d08 js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>) 11 libxul.so@0x4517bee js::Wrapper::call(JSContext*, JS::Handle<JSObject*>, JS::CallArgs const&) const 12 libxul.so@0x450a069 js::CrossCompartmentWrapper::call(JSContext*, JS::Handle<JSObject*>, JS::CallArgs const&) const 13 libxul.so@0x450de63 js::proxy_Call(JSContext*, unsigned int, JS::Value*) 14 libxul.so@0x419090f js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) 15 libxul.so@0x4190d08 js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>) 16 libxul.so@0x420c52d PromiseReactionJob(JSContext*, unsigned int, JS::Value*) 17 libxul.so@0x4190746 js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) 18 libxul.so@0x4190d08 js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>) 19 libxul.so@0x4452e8c JS::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::HandleValueArray const&, JS::MutableHandle<JS::Value>) 20 libxul.so@0x1f1ab6d mozilla::dom::PromiseJobCallback::Call(JSContext*, JS::Handle<JS::Value>, mozilla::ErrorResult&) 21 libxul.so@0xd99613 mozilla::dom::PromiseJobCallback::Call(mozilla::ErrorResult&, char const*, mozilla::dom::CallbackObject::ExceptionHandling, JSCompartment*) 22 libxul.so@0xd9967e mozilla::PromiseJobRunnable::Run() 23 libxul.so@0x2ba0ae7 mozilla::dom::Promise::PerformMicroTaskCheckpoint() 24 libxul.so@0xda1959 mozilla::CycleCollectedJSContext::AfterProcessTask(unsigned int) 25 libxul.so@0x16aa42e XPCJSContext::AfterProcessTask(unsigned int) 26 libxul.so@0xe164b9 nsThread::ProcessNextEvent(bool, bool*) [clone .part.134] libxul PUBLIC e19768 0 NS_InvokeByIndex 27 libxul.so@0xe197f5 NS_SizeOfIncludingThisXPTCallStub 28 libxul.so@0x16c12b7 XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) 29 libxul.so@0x16c68a1 XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*) 30 @0x197e9026737 31 @0x7f7f4714ef07 32 @0x197e71258a9 33 libxul.so@0x4214bd7 EnterBaseline(JSContext*, js::jit::EnterJitData&) 34 libxul.so@0x422502c js::jit::EnterBaselineAtBranch(JSContext*, js::InterpreterFrame*, unsigned char*) 35 libxul.so@0x418d38a Interpret(JSContext*, js::RunState&) 36 libxul.so@0x419016f js::RunScript(JSContext*, js::RunState&) 37 libxul.so@0x419084f js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) 38 libxul.so@0x4190d08 js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>) 39 libxul.so@0x44531f7 JS_CallFunctionValue(JSContext*, JS::Handle<JSObject*>, JS::Handle<JS::Value>, JS::HandleValueArray const&, JS::MutableHandle<JS::Value>) 40 libxul.so@0x16c4cd5 nsXPCWrappedJSClass::CallMethod(nsXPCWrappedJS*, unsigned short, XPTMethodDescriptor const*, nsXPTCMiniVariant*) 41 libxul.so@0xe1a4d2 PrepareAndDispatch libxul PUBLIC e1996a 0 SharedStub 42 libxul.so@0xe199c4 InvokeCopyToStack 43 libxul.so@0xdc9f6d nsObserverList::NotifyObservers(nsISupports*, char const*, char16_t const*) 44 libxul.so@0xdca110 nsObserverService::NotifyObservers(nsISupports*, char const*, char16_t const*) 45 libxul.so@0x3fc2ccf nsXREDirProvider::DoShutdown() 46 libxul.so@0x3fb5cb8 ScopedXPCOMStartup::~ScopedXPCOMStartup() 47 libxul.so@0x3fbb962 XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) …etc…
Oops: first PUBLIC line is wrong. For seamonkey@6bb6 there is a public symbol at 6b80, mozalloc_abort(char const*)
This is not an addons manager bug.
Component: Add-ons Manager → General
Product: Toolkit → SeaMonkey
Depends on: 1379831
Bug 1379831 is fixed but the problem still occurs if you install Forcastfox 4.1. When you shutdown SeaMonkey it hangs. The ui closes but you can still see the process until it crashes later. Probably caused by bug 1357486. Not high priority. The extension is not working in SeaMonkey. I just need a testbed for seeing what is needed to make webextensions work. Uninstalling it worked.
OS: Linux → All
Severity: critical → normal
After disabling the weather extension, I still get a similar crash, but this time Socorro mentions {d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d} i.e. Adblock Plus, and I am not going to disable that one, especially now that it works again without the need to reinstall the filters at every startup. BTW this extension's ID was already in the crash signature. My version of Adblock Plus is 2.9.1, installed June 7; and my latest crash is bp-69578802-7842-4d4f-943d-0439b0170714 but that one is again in an hourly (i.e. symbols not known to Socorro). Let's see if I can find a nightly (built with symbols)... Ah, there: bp-4931bbc9-714b-4c5f-bce4-48f1c0170713 -- in the following build: 20170712003001 https://hg.mozilla.org/comm-central/rev/873ddce7e8e6f9b9272789154752207cb6556652 https://hg.mozilla.org/mozilla-central/rev/6fec4855b534 Let's paste the Socorro report (unlike the one in comment #0 which I decoded by hand, this one even has source line numbers): Signature AsyncShutdownTimeout | profile-change-teardown | Extension Shutdown: {d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d} (Web Extensions I/O backend) More Reports Search UUID 4931bbc9-714b-4c5f-bce4-48f1c0170713 Date Processed 2017-07-13 14:46:53 Uptime 56,740 seconds (15 hours, 45 minutes and 40 seconds) Last Crash 57,709 seconds before submission (16 hours, 1 minute and 49 seconds) Install Age 99,155 seconds since version was first installed (1 day, 3 hours and 32 minutes) Install Time 2017-07-12 11:13:57 Product SeaMonkey Release Channel nightly Version 2.53a1 Build ID 20170712003001 OS Linux OS Version 0.0.0 Linux 4.4.74-18.20-default #1 SMP Fri Jun 30 19:01:19 UTC 2017 (b5079b8) x86_64 Build Architecture amd64 Build Architecture Info family 6 model 23 stepping 10 | 2 Adapter Vendor ID Adapter Device ID Startup Crash False MOZ_CRASH Reason MOZ_CRASH() Crash Reason SIGSEGV Crash Address 0x0 User Comments while closing down EMCheckCompatibility False App Notes openSUSE Leap 42.2FP(D00-L1000-W00000000-T000) OpenGL: Intel Open Source Technology Center -- Mesa DRI Intel(R) Q45/Q43 -- 2.1 Mesa 11.2.2 -- texture_from_pixmap WR? WR- WebGL? libGL.so.1? libGL.so.1+ GL Context? GL Context+ WebGL+ WebGL- xpcom_runtime_abort(###!!! ABORT: file resource://gre/modules/Extension.jsm, line 1172) Processor Notes processor_ip-172-31-8-91_1326; MozillaProcessorAlgorithm2015; Signature replaced with a Shutdown Timeout signature, was: "Abort | mozalloc_abort | NS_DebugBreak | nsDebugImpl::Abort | NS_InvokeByIndex"; skunk_classifier: reject - not a plugin hang Bugzilla - Report this bug in SeaMonkey Core External Software Affecting Firefox Toolkit Related Bugs Crashing Thread (0) Frame Module Signature Source 0 seamonkey mozalloc_abort memory/mozalloc/mozalloc_abort.cpp:33 1 libxul.so NS_DebugBreak xpcom/base/nsDebugImpl.cpp:451 2 libxul.so nsDebugImpl::Abort xpcom/base/nsDebugImpl.cpp:147 3 libxul.so NS_InvokeByIndex 4 libxul.so XPCWrappedNative::CallMethod js/xpconnect/src/XPCWrappedNative.cpp:1996 5 libxul.so XPC_WN_CallMethod js/xpconnect/src/XPCWrappedNativeJSOps.cpp:967 6 libxul.so js::InternalCallOrConstruct js/src/jscntxtinlines.h:293 7 libxul.so Interpret js/src/vm/Interpreter.cpp:521 8 libxul.so js::RunScript js/src/vm/Interpreter.cpp:410 9 libxul.so js::InternalCallOrConstruct js/src/vm/Interpreter.cpp:488 10 libxul.so js::Call js/src/vm/Interpreter.cpp:534 11 libxul.so js::Wrapper::call js/src/proxy/Wrapper.cpp:169 12 libxul.so js::CrossCompartmentWrapper::call js/src/proxy/CrossCompartmentWrapper.cpp:359 13 libxul.so js::proxy_Call js/src/proxy/Proxy.cpp:481 14 libxul.so js::InternalCallOrConstruct js/src/jscntxtinlines.h:293 15 libxul.so js::Call js/src/vm/Interpreter.cpp:534 16 libxul.so PromiseReactionJob js/src/builtin/Promise.cpp:1001 17 libxul.so js::InternalCallOrConstruct js/src/jscntxtinlines.h:293 18 libxul.so js::Call js/src/vm/Interpreter.cpp:534 19 libxul.so JS::Call js/src/jsapi.cpp:2948 20 libxul.so mozilla::dom::PromiseJobCallback::Call /builds/slave/c-cen-t-lnx64-ntly/build/objdir/dom/bindings/PromiseBinding.cpp:22 21 libxul.so mozilla::dom::PromiseJobCallback::Call /builds/slave/c-cen-t-lnx64-ntly/build/objdir/dist/include/mozilla/dom/PromiseBinding.h:89 22 libxul.so mozilla::PromiseJobRunnable::Run /builds/slave/c-cen-t-lnx64-ntly/build/objdir/dist/include/mozilla/dom/PromiseBinding.h:104 23 libxul.so mozilla::dom::Promise::PerformMicroTaskCheckpoint dom/promise/Promise.cpp:535 24 libxul.so mozilla::CycleCollectedJSContext::AfterProcessTask xpcom/base/CycleCollectedJSContext.cpp:362 25 libxul.so XPCJSContext::AfterProcessTask js/xpconnect/src/XPCJSContext.cpp:1007 26 libxul.so nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:1453 27 libxul.so NS_InvokeByIndex 28 libxul.so XPCWrappedNative::CallMethod js/xpconnect/src/XPCWrappedNative.cpp:1996 29 libxul.so XPC_WN_CallMethod js/xpconnect/src/XPCWrappedNativeJSOps.cpp:967 30 @0x5b3eb06e527 31 @0x7efdb0298f07 32 @0x5b3ea58d8a9 33 libxul.so EnterBaseline js/src/jit/BaselineJIT.cpp:162 34 libxul.so js::jit::EnterBaselineAtBranch js/src/jit/BaselineJIT.cpp:268 35 libxul.so Interpret js/src/vm/Interpreter.cpp:2015 36 libxul.so js::RunScript js/src/vm/Interpreter.cpp:410 37 libxul.so js::InternalCallOrConstruct js/src/vm/Interpreter.cpp:488 38 libxul.so js::Call js/src/vm/Interpreter.cpp:534 39 libxul.so JS_CallFunctionValue js/src/jsapi.cpp:2889 40 libxul.so nsXPCWrappedJSClass::CallMethod js/xpconnect/src/XPCWrappedJSClass.cpp:1215 41 libxul.so PrepareAndDispatch xpcom/reflect/xptcall/md/unix/xptcstubs_x86_64_linux.cpp:120 42 libxul.so SharedStub 43 libxul.so nsObserverList::NotifyObservers xpcom/ds/nsObserverList.cpp:112 44 libxul.so nsObserverService::NotifyObservers xpcom/ds/nsObserverService.cpp:295 45 libxul.so nsXREDirProvider::DoShutdown toolkit/xre/nsXREDirProvider.cpp:1137 46 libxul.so ScopedXPCOMStartup::~ScopedXPCOMStartup toolkit/xre/nsAppRunner.cpp:1461 47 libxul.so XREMain::XRE_main mfbt/UniquePtr.h:528 48 libxul.so XRE_main toolkit/xre/nsAppRunner.cpp:4873 49 seamonkey do_main /builds/slave/c-cen-t-lnx64-ntly/build/suite/app/nsSuiteApp.cpp:238 50 seamonkey main /builds/slave/c-cen-t-lnx64-ntly/build/suite/app/nsSuiteApp.cpp:312 Ø 51 libc-2.22.so libc-2.22.so@0x206e4 52 seamonkey seamonkey@0x5bbf 53 seamonkey seamonkey@0x5f1b 54 seamonkey __libc_csu_fini 55 seamonkey seamonkey@0x5f1b 56 seamonkey _start Show other threads
Blocks: abp
Severity: normal → major
Hmm. I uninstalled 2.9.1 some time ago because I had serious performance problems. The new storage api seems to be sloooow.... 2.8.2 works fine for now. Please try when a new Nightly becomes available because of bug 1379831 which was just fixed yesterday. If you need a new test version from me let me know.
Forecastfox is a Web Extension. So if I have to guess, the issue is related to browser.storage.local implementation (which is also what makes Adblock Plus 2.9 slow). What confuses me is this bug being filed for SeaMonkey, last I checked SeaMonkey wasn't initializing any of the Web Extensions APIs. How come Forecastfox 3.4 even installed in SeaMonkey? It isn't marked as compatible. And Adblock Plus 2.9.1 wouldn't normally use Web Extensions I/O in SeaMonkey.
(In reply to Frank-Rainer Grahl (:frg) from comment #5) > Hmm. I uninstalled 2.9.1 some time ago because I had serious performance > problems. The new storage api seems to be sloooow.... 2.8.2 works fine for > now. Please try when a new Nightly becomes available because of bug 1379831 > which was just fixed yesterday. If you need a new test version from me let > me know. The latest nightly was dated July 12. The latest hourly has buildID=20170713163255 (while the one I'm using now has 20170713024855). Normally I wouldn't have bothered getting a second hourly built so soon after, but since 16:32 is after bug 1379831 comment #13 and 02:48 isn't I'll try that "latest hourly" after I post this comment. It won't have symbols, but if it crashes and the crash looks similar to those in comment #0 and comment #4 I might mention it but I won't feel the need to manually decode it, which is possible, and not even difficult once you get the hang of it, but it is long and hard work. (In reply to Wladimir Palant from comment #6) > Forecastfox is a Web Extension. So if I have to guess, the issue is related > to browser.storage.local implementation (which is also what makes Adblock > Plus 2.9 slow). What confuses me is this bug being filed for SeaMonkey, last > I checked SeaMonkey wasn't initializing any of the Web Extensions APIs. How > come Forecastfox 3.4 even installed in SeaMonkey? It isn't marked as > compatible. And Adblock Plus 2.9.1 wouldn't normally use Web Extensions I/O > in SeaMonkey. I filed this bug for Toolkit but it was redirected to SeaMonkey at comment #2. Forecastfox isn't marked as compatible, yet when I tried (afer downloading to my HD), the install succeeded, even though the addon hasn't got an install.rdf. I guess (without being competent to check) that SeaMonkey inherited WebExtensions functionality from Gecko/Toolkit, i.e. from its mozilla-central (as opposed to comm-central) bits. But Frank-Rainer might know more about this aspect of the question than I do.
Closing down the earlier hourly had the expected crash, bp-a4a66d61-36fb-48a0-9e82-2e7ab0170715 ; now let's see what this new one does.
Crash, bp-20900e62-1b31-4c7f-8eec-a0bef0170715 The last step is downgrading ABP to 2.8.2 but IIUC this means that every single sime I look for add-on updates, the Add-ons Manager will tell me that there is one for Adblock Plus.
Before downgrading, I tried the development version ABP 2.9.1.4258-beta and had a shutdown crash, bp-af0bc0b5-ed1d-4568-aed9-394240170715
After downgrading to 2.8.2, it still crashes, bp-f1cd6b0a-f705-4950-b676-95f7a0170715 Let's try restarting, just in case the fact that this lates crash was in a session started with ABP 2.9.1.4258-beta makes a difference (ABP is restartless).
This time there was no crash, and ABP filters are still enabled; so there is a shutdown crash if the session was _started_ with ABP 2.9.1 or later but not if it was _started_ with 2.8.2. Downgrading to 2.8.2 _during_ the session does not prevent the shutdown crash.
N.B. The "See also" bug 1379518 is a VERIFIED DUPLICATE
(In reply to Tony Mechelynck [:tonymec]. (NEEDINFO me if you want my attention) from comment #13) > N.B. The "See also" bug 1379518 is a VERIFIED DUPLICATE of bug 1379831. I'm leaving it because the "see also" and the dependency were both added at about the same time by frg. Frank-Rainer, if you want to remove the "see also", it's your pigeon.
Now showing up in Thunderbird too after the telemetry bug was fixed: https://crash-stats.mozilla.com/report/index/ec646ee5-69cd-4714-9181-144b00170716 I am quite sure it started after bug 1357486. Probably any web extension or hybrid extension in the profile working or not will cause it the two products. Just a theory of course.
I beliveve this was fixed in bug 1380267 but to be sure I need to fix up a few new regressions in 2.54 first.
Ok 2.54 is a little bit too unstable right now but it is fixed in 2.53 too. Please reopen if you get this in a Nightly from today on.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.