Closed
Bug 1339513
Opened 9 years ago
Closed 9 years ago
Intermittent test_timeouts.py TestTimeouts.test_reset_timeout | application crashed [@ PK11PasswordPromptRunnable::RunOnTargetThread]
Categories
(Core :: Security: PSM, defect)
Core
Security: PSM
Tracking
()
RESOLVED
INCOMPLETE
| Tracking | Status | |
|---|---|---|
| firefox54 | --- | affected |
People
(Reporter: intermittent-bug-filer, Unassigned)
References
Details
(Keywords: bulk-close-intermittents, crash, intermittent-failure)
Comment 2•9 years ago
|
||
First 5 crash frames:
[task 2017-02-14T17:31:58.453449Z] 17:31:58 INFO - Crash reason: SIGSEGV
[task 2017-02-14T17:31:58.454768Z] 17:31:58 INFO - Crash address: 0x0
[task 2017-02-14T17:31:58.456038Z] 17:31:58 INFO - Process uptime: not available
[task 2017-02-14T17:31:58.457505Z] 17:31:58 INFO -
[task 2017-02-14T17:31:58.458557Z] 17:31:58 INFO - Thread 0 (crashed)
[task 2017-02-14T17:31:58.459866Z] 17:31:58 INFO - 0 libxul.so!PK11PasswordPromptRunnable::RunOnTargetThread [nsNSSCallbacks.cpp:2a6dd743f395 : 782 + 0x19]
[task 2017-02-14T17:31:58.461273Z] 17:31:58 INFO - eip = 0xf30e9f14 esp = 0xffd2f450 ebp = 0xffd2f5d8 ebx = 0xf56458f8
[task 2017-02-14T17:31:58.463009Z] 17:31:58 INFO - esi = 0xffd2f478 edi = 0xceeb3cb4 eax = 0x00000000 ecx = 0xf757d864
[task 2017-02-14T17:31:58.464604Z] 17:31:58 INFO - edx = 0x00000000 efl = 0x00010282
[task 2017-02-14T17:31:58.466280Z] 17:31:58 INFO - Found by: given as instruction pointer in context
[task 2017-02-14T17:31:58.467597Z] 17:31:58 INFO - 1 libxul.so!mozilla::psm::SyncRunnableBase::Run [PSMRunnable.cpp:2a6dd743f395 : 35 + 0x4]
[task 2017-02-14T17:31:58.469197Z] 17:31:58 INFO - eip = 0xf30c5190 esp = 0xffd2f5e0 ebp = 0xffd2f608 ebx = 0xf56458f8
[task 2017-02-14T17:31:58.470855Z] 17:31:58 INFO - esi = 0xceeb3ca0 edi = 0xceeb3cb4
[task 2017-02-14T17:31:58.472417Z] 17:31:58 INFO - Found by: call frame info
[task 2017-02-14T17:31:58.473787Z] 17:31:58 INFO - 2 libxul.so!nsThread::ProcessNextEvent [nsThread.cpp:2a6dd743f395 : 1264 + 0x9]
[task 2017-02-14T17:31:58.475043Z] 17:31:58 INFO - eip = 0xf09cd6ea esp = 0xffd2f610 ebp = 0xffd2f6a8 ebx = 0xf56458f8
[task 2017-02-14T17:31:58.476614Z] 17:31:58 INFO - esi = 0xf714db70 edi = 0xffd2f648
[task 2017-02-14T17:31:58.477829Z] 17:31:58 INFO - Found by: call frame info
[task 2017-02-14T17:31:58.479068Z] 17:31:58 INFO - 3 libxul.so!NS_ProcessNextEvent [nsThreadUtils.cpp:2a6dd743f395 : 389 + 0x10]
[task 2017-02-14T17:31:58.480469Z] 17:31:58 INFO - eip = 0xf09cfa3b esp = 0xffd2f6b0 ebp = 0xffd2f6e8 ebx = 0xf56458f8
[task 2017-02-14T17:31:58.482038Z] 17:31:58 INFO - esi = 0xf714db70 edi = 0xf71238a0
[task 2017-02-14T17:31:58.483614Z] 17:31:58 INFO - Found by: call frame info
[task 2017-02-14T17:31:58.485181Z] 17:31:58 INFO - 4 libxul.so!mozilla::ipc::MessagePump::Run [MessagePump.cpp:2a6dd743f395 : 96 + 0xc]
[task 2017-02-14T17:31:58.486917Z] 17:31:58 INFO - eip = 0xf0d77e4a esp = 0xffd2f6f0 ebp = 0xffd2f738 ebx = 0xf56458f8
[task 2017-02-14T17:31:58.488637Z] 17:31:58 INFO - esi = 0xf71f20d0 edi = 0xf71238a0
[task 2017-02-14T17:31:58.489864Z] 17:31:58 INFO - Found by: call frame info
[task 2017-02-14T17:31:58.491266Z] 17:31:58 INFO - 5 libxul.so!MessageLoop::RunInternal [message_loop.cc:2a6dd743f395 : 238 + 0x14]
[task 2017-02-14T17:31:58.492509Z] 17:31:58 INFO - eip = 0xf0d55304 esp = 0xffd2f740 ebp = 0xffd2f768 ebx = 0xf56458f8
[task 2017-02-14T17:31:58.493748Z] 17:31:58 INFO - esi = 0xf71238a0 edi = 0xf714db70
[task 2017-02-14T17:31:58.494988Z] 17:31:58 INFO - Found by: call frame info
Source:
https://dxr.mozilla.org/mozilla-central/rev/0eef1d5a39366059677c6d7944cfe8a97265a011/security/manager/ssl/nsNSSCallbacks.cpp#780-783
Severity: normal → critical
status-firefox54:
--- → affected
Component: Marionette → Security: PSM
Keywords: crash
Product: Testing → Core
Version: Version 3 → unspecified
Comment 3•9 years ago
|
||
See also thread 4, which is where the PK11PasswordPromptRunnable gets created:
[task 2017-02-14T17:31:58.811836Z] 17:31:58 INFO - 5 libxul.so!mozilla::psm::SyncRunnableBase::DispatchToMainThreadAndWait [Monitor.h:2a6dd743f395 : 40 + 0xd]
[task 2017-02-14T17:31:58.812236Z] 17:31:58 INFO - eip = 0xf30c6ddf esp = 0xe9e5f8a0 ebp = 0xe9e5f8c8 ebx = 0xf56458f8
[task 2017-02-14T17:31:58.812600Z] 17:31:58 INFO - esi = 0xceeb3cc8 edi = 0x00000000
[task 2017-02-14T17:31:58.812956Z] 17:31:58 INFO - Found by: call frame info
[task 2017-02-14T17:31:58.813325Z] 17:31:58 INFO - 6 libxul.so!PK11PasswordPrompt [nsNSSCallbacks.cpp:2a6dd743f395 : 833 + 0x10]
[task 2017-02-14T17:31:58.813698Z] 17:31:58 INFO - eip = 0xf30e1285 esp = 0xe9e5f8d0 ebp = 0xe9e5f8f8 ebx = 0xf56458f8
[task 2017-02-14T17:31:58.814967Z] 17:31:58 INFO - esi = 0xe9e5f8ec edi = 0x00000000
[task 2017-02-14T17:31:58.815337Z] 17:31:58 INFO - Found by: call frame info
[task 2017-02-14T17:31:58.815736Z] 17:31:58 INFO - 7 libnss3.so!PK11_DoPassword [pk11auth.c:2a6dd743f395 : 532 + 0xa]
[task 2017-02-14T17:31:58.817327Z] 17:31:58 INFO - eip = 0xf70bdf2e esp = 0xe9e5f900 ebp = 0xe9e5f948 ebx = 0xf70fe628
[task 2017-02-14T17:31:58.817700Z] 17:31:58 INFO - esi = 0xffffffff edi = 0x00000000
[task 2017-02-14T17:31:58.818053Z] 17:31:58 INFO - Found by: call frame info
[task 2017-02-14T17:31:58.818425Z] 17:31:58 INFO - 8 libnss3.so!PK11_Authenticate [pk11auth.c:2a6dd743f395 : 324 + 0x13]
[task 2017-02-14T17:31:58.819434Z] 17:31:58 INFO - eip = 0xf70be1d9 esp = 0xe9e5f950 ebp = 0xe9e5f988 ebx = 0xf70fe628
[task 2017-02-14T17:31:58.819806Z] 17:31:58 INFO - esi = 0xe3d97800 edi = 0xdc245f24
[task 2017-02-14T17:31:58.822936Z] 17:31:58 INFO - Found by: call frame info
[task 2017-02-14T17:31:58.823375Z] 17:31:58 INFO - 9 libnss3.so!PK11_GetBestSlotMultipleWithAttributes [pk11slot.c:2a6dd743f395 : 2178 + 0xc]
[task 2017-02-14T17:31:58.823791Z] 17:31:58 INFO - eip = 0xf70dd066 esp = 0xe9e5f990 ebp = 0xe9e5f9c8 ebx = 0xf70fe628
[task 2017-02-14T17:31:58.824154Z] 17:31:58 INFO - esi = 0x00000001 edi = 0xceb08d10
[task 2017-02-14T17:31:58.824509Z] 17:31:58 INFO - Found by: call frame info
[task 2017-02-14T17:31:58.824954Z] 17:31:58 INFO - 10 libnss3.so!PK11_GetBestSlot [pk11slot.c:2a6dd743f395 : 2212 + 0xf]
[task 2017-02-14T17:31:58.825332Z] 17:31:58 INFO - eip = 0xf70dd129 esp = 0xe9e5f9d0 ebp = 0xe9e5f9f8 ebx = 0xf70fe628
[task 2017-02-14T17:31:58.825696Z] 17:31:58 INFO - esi = 0xceead000 edi = 0xceead8e8
[task 2017-02-14T17:31:58.827559Z] 17:31:58 INFO - Found by: call frame info
[task 2017-02-14T17:31:58.828805Z] 17:31:58 INFO - 11 libssl3.so!ssl_IsECCEnabled [ssl3ecc.c:2a6dd743f395 : 877 + 0x10]
[task 2017-02-14T17:31:58.830157Z] 17:31:58 INFO - eip = 0xf6f5fc5a esp = 0xe9e5fa00 ebp = 0xe9e5fa18 ebx = 0xf6f93e3c
[task 2017-02-14T17:31:58.831500Z] 17:31:58 INFO - esi = 0xceead000 edi = 0xceead8e8
[task 2017-02-14T17:31:58.832984Z] 17:31:58 INFO - Found by: call frame info
[task 2017-02-14T17:31:58.834203Z] 17:31:58 INFO - 12 libssl3.so!ssl3_SendSupportedPointFormatsXtn [ssl3ecc.c:2a6dd743f395 : 995 + 0x9]
[task 2017-02-14T17:31:58.835621Z] 17:31:58 INFO - eip = 0xf6f5fe27 esp = 0xe9e5fa20 ebp = 0xe9e5fa48 ebx = 0xf6f93e3c
[task 2017-02-14T17:31:58.837522Z] 17:31:58 INFO - esi = 0xceead000 edi = 0xceead8e8
[task 2017-02-14T17:31:58.839399Z] 17:31:58 INFO - Found by: call frame info
<snip>
[task 2017-02-14T17:31:58.865501Z] 17:31:58 INFO - 17 libssl3.so!SSL_ForceHandshake [sslsecur.c:2a6dd743f395 : 414 + 0x9]
[task 2017-02-14T17:31:58.866529Z] 17:31:58 INFO - eip = 0xf6f6954d esp = 0xe9e5fb70 ebp = 0xe9e5fba8 ebx = 0xf6f93e3c
[task 2017-02-14T17:31:58.867578Z] 17:31:58 INFO - esi = 0xceead000 edi = 0xcdd97080
[task 2017-02-14T17:31:58.868569Z] 17:31:58 INFO - Found by: call frame info
[task 2017-02-14T17:31:58.869604Z] 17:31:58 INFO - 18 libxul.so!nsNSSSocketInfo::DriveHandshake [nsNSSIOLayer.cpp:2a6dd743f395 : 369 + 0xb]
[task 2017-02-14T17:31:58.870646Z] 17:31:58 INFO - eip = 0xf30fce9b esp = 0xe9e5fbb0 ebp = 0xe9e5fbe8 ebx = 0xf56458f8
[task 2017-02-14T17:31:58.871677Z] 17:31:58 INFO - esi = 0x00000000 edi = 0xdc245f20
[task 2017-02-14T17:31:58.872713Z] 17:31:58 INFO - Found by: call frame info
[task 2017-02-14T17:31:58.873754Z] 17:31:58 INFO - 19 libxul.so!mozilla::net::nsHttpConnection::EnsureNPNComplete [nsHttpConnection.cpp:2a6dd743f395 : 334 + 0x17]
[task 2017-02-14T17:31:58.875734Z] 17:31:58 INFO - eip = 0xf0cb2b85 esp = 0xe9e5fbf0 ebp = 0xe9e5fcf8 ebx = 0xf56458f8
[task 2017-02-14T17:31:58.876865Z] 17:31:58 INFO - esi = 0xf564ade4 edi = 0xcead7300
[task 2017-02-14T17:31:58.879382Z] 17:31:58 INFO - Found by: call frame info
[task 2017-02-14T17:31:58.880506Z] 17:31:58 INFO - 20 libxul.so!mozilla::net::nsHttpConnection::OnSocketWritable [nsHttpConnection.cpp:2a6dd743f395 : 1717 + 0xc]
[task 2017-02-14T17:31:58.881558Z] 17:31:58 INFO - eip = 0xf0cb3346 esp = 0xe9e5fd00 ebp = 0xe9e5fd48 ebx = 0xf56458f8
[task 2017-02-14T17:31:58.882588Z] 17:31:58 INFO - esi = 0xcead7300 edi = 0xf564ade4
[task 2017-02-14T17:31:58.883597Z] 17:31:58 INFO - Found by: call frame info
<snip>
[task 2017-02-14T17:31:58.930152Z] 17:31:58 INFO - 29 libxul.so!mozilla::net::nsSocketTransportService::Run [nsSocketTransportService2.cpp:2a6dd743f395 : 908 + 0x14]
[task 2017-02-14T17:31:58.931226Z] 17:31:58 INFO - eip = 0xf0a8287e esp = 0xe9e60060 ebp = 0xe9e60128 ebx = 0xf56458f8
[task 2017-02-14T17:31:58.932242Z] 17:31:58 INFO - esi = 0xe9e600c8 edi = 0xf7159690
[task 2017-02-14T17:31:58.933268Z] 17:31:58 INFO - Found by: call frame info
The thing that doesn't implement nsIPrompt comes from an sslSocket's pkcs11PinArg (see frame 11), which I believe gets set here:
https://dxr.mozilla.org/mozilla-central/rev/0eef1d5a39366059677c6d7944cfe8a97265a011/security/manager/ssl/nsNSSIOLayer.cpp#2307
Note that infoObject is an nsNSSSocketInfo, which lo and behold does not appear to implement nsIPrompt. Looking at history, this appears to have been wrong as long as we've been using mercurial:
https://hg.mozilla.org/mozilla-central/annotate/4a432c2d1b41/security/manager/ssl/src/nsNSSIOLayer.cpp#l2355
https://hg.mozilla.org/mozilla-central/annotate/e7854b4d29ba/security/manager/ssl/src/nsNSSCallbacks.cpp#l776
Of course, this all only happens if the NSS DB Firefox is using has a token that requires a password, which is generally not the case (except for tests that specifically test that, and this doesn't seem to be one of them). Henrik, do you know if that's the case for this test?
Flags: needinfo?(hskupin)
Comment 4•9 years ago
|
||
First a link to the test itself:
https://dxr.mozilla.org/mozilla-central/rev/0eef1d5a39366059677c6d7944cfe8a97265a011/testing/marionette/harness/marionette_harness/tests/unit/test_timeouts.py#58
I don't see anything in this test which would be related to a prompt. But maybe it's a general issue with Marionette in some cases because of our custom certificate override? This is installed all the time, and might be interfering here?
https://dxr.mozilla.org/mozilla-central/rev/0eef1d5a39366059677c6d7944cfe8a97265a011/testing/marionette/cert.js
But given that this crash happened only once so far, I would expect it's caused by a combination of other reasons?
CC'ing Andreas who did the implementation of that override in Marionette.
Flags: needinfo?(hskupin)
Comment 5•9 years ago
|
||
Actually, it looks like I misinterpreted the implementation in comment 3. nsNSSSocketInfo is an nsIInterfaceRequestor (by way of TransportSecurityInfo). The nsIInterfaceRequestor::GetInterface implementation is what has to succeed if given nsIPrompt. In this case, the implementation is here: https://dxr.mozilla.org/mozilla-central/rev/d0462b0948e0b1147dcce615bddcc46379bdadb2/security/manager/ssl/TransportSecurityInfo.cpp#286 and it may or may not succeed given nsIPrompt, depending on mCallbacks.
Status: NEW → RESOLVED
Closed: 9 years ago
Keywords: bulk-close-intermittents
Resolution: --- → INCOMPLETE
You need to log in
before you can comment on or make changes to this bug.
Description
•