Closed Bug 1486228 Opened 7 years ago Closed 7 years ago

Intermittent PID 5324 | Assertion failure: mEntryStore.Get(), at z:/build/build/src/xpcom/ds/PLDHashTable.cpp:372

Categories

(Core :: Networking: DNS, defect, P2)

defect

Tracking

()

RESOLVED FIXED
mozilla63
Tracking Status
firefox-esr52 --- unaffected
firefox-esr60 --- unaffected
firefox61 --- wontfix
firefox62 --- wontfix
firefox63 --- fixed

People

(Reporter: intermittent-bug-filer, Assigned: valentin)

Details

(Keywords: assertion, intermittent-failure, Whiteboard: [necko-triaged])

Attachments

(1 file)

Filed by: ncsoregi [at] mozilla.com https://treeherder.mozilla.org/logviewer.html#?job_id=195902828&repo=mozilla-central https://queue.taskcluster.net/v1/task/ci2_Aa88TO2W3GhxDytPAg/runs/0/artifacts/public/logs/live_backing.log 05:47:35 INFO - TEST-PASS | security/manager/ssl/tests/unit/test_pinning.js | - Should have received ASCII '0' from server - "0" == "0" 05:47:35 INFO - "handling unknownissuer.test-mode.pinning.example.com" 05:47:35 INFO - TEST-PASS | security/manager/ssl/tests/unit/test_pinning.js | - Actual and expected connection result should match - 0 == 0 05:47:35 INFO - TEST-PASS | security/manager/ssl/tests/unit/test_pinning.js | - Cert override flag should be set on the security state - 67108864 == true 05:47:35 INFO - (xpcshell/head.js) | test run_next_test 41 pending (2) 05:47:35 INFO - (xpcshell/head.js) | test finished (2) 05:47:35 INFO - security/manager/ssl/tests/unit/test_pinning.js | Starting 05:47:35 INFO - (xpcshell/head.js) | test pending (2) 05:47:35 INFO - (xpcshell/head.js) | test run_next_test 42 pending (3) 05:47:35 INFO - (xpcshell/head.js) | test finished (3) 05:47:35 INFO - (xpcshell/head.js) | test run_next_test 41 finished (2) 05:47:35 INFO - security/manager/ssl/tests/unit/test_pinning.js | Starting 05:47:35 INFO - (xpcshell/head.js) | test pending (2) 05:47:35 INFO - (xpcshell/head.js) | test run_next_test 43 pending (3) 05:47:35 INFO - (xpcshell/head.js) | test finished (3) 05:47:35 INFO - (xpcshell/head.js) | test run_next_test 42 finished (2) 05:47:35 INFO - security/manager/ssl/tests/unit/test_pinning.js | Starting 05:47:35 INFO - (xpcshell/head.js) | test pending (2) 05:47:35 INFO - (xpcshell/head.js) | test run_next_test 43 finished (2) 05:47:35 INFO - PID 5324 | Assertion failure: mEntryStore.Get(), at z:/build/build/src/xpcom/ds/PLDHashTable.cpp:372 05:47:47 INFO - PID 5324 | #01: nsDNSService::AsyncResolveNative(nsTSubstring<char> const &,unsigned int,nsIDNSListener *,nsIEventTarget *,mozilla::OriginAttributes const &,nsICancelable * *) [netwerk/dns/nsDNSService2.cpp:847] 05:47:47 INFO - PID 5324 | #02: mozilla::net::nsSocketTransport::ResolveHost() [netwerk/base/nsSocketTransport2.cpp:1139] 05:47:47 INFO - PID 5324 | #03: mozilla::net::nsSocketTransport::OnSocketEvent(unsigned int,nsresult,nsISupports *) [netwerk/base/nsSocketTransport2.cpp:2121] 05:47:47 INFO - PID 5324 | #04: mozilla::net::nsSocketEvent::Run() [netwerk/base/nsSocketTransport2.cpp:91] 05:47:47 INFO - PID 5324 | #05: nsThread::ProcessNextEvent(bool,bool *) [xpcom/threads/nsThread.cpp:1170] 05:47:47 INFO - PID 5324 | #06: NS_ProcessNextEvent(nsIThread *,bool) [xpcom/threads/nsThreadUtils.cpp:519] 05:47:47 INFO - PID 5324 | #07: mozilla::net::nsSocketTransportService::Run() [netwerk/base/nsSocketTransportService2.cpp:1066] 05:47:47 INFO - PID 5324 | #08: nsThread::ProcessNextEvent(bool,bool *) [xpcom/threads/nsThread.cpp:1170] 05:47:47 INFO - PID 5324 | #09: NS_ProcessNextEvent(nsIThread *,bool) [xpcom/threads/nsThreadUtils.cpp:519] 05:47:47 INFO - PID 5324 | #10: mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate *) [ipc/glue/MessagePump.cpp:364] 05:47:47 INFO - PID 5324 | #11: MessageLoop::RunInternal() [ipc/chromium/src/base/message_loop.cc:325] 05:47:47 INFO - PID 5324 | #12: MessageLoop::RunHandler() [ipc/chromium/src/base/message_loop.cc:319] 05:47:47 INFO - PID 5324 | #13: MessageLoop::Run() [ipc/chromium/src/base/message_loop.cc:299] 05:47:47 INFO - PID 5324 | #14: nsThread::ThreadFunc(void *) [xpcom/threads/nsThread.cpp:466] 05:47:47 INFO - PID 5324 | #15: PR_NativeRunThread [nsprpub/pr/src/threads/combined/pruthr.c:406] 05:47:47 INFO - PID 5324 | #16: static unsigned int pr_root(void *) [nsprpub/pr/src/md/windows/w95thred.c:138] 05:47:47 INFO - PID 5324 | #17: ucrtbase.dll + 0x20369 05:47:47 INFO - PID 5324 | #18: KERNEL32.DLL + 0x12774 05:47:47 INFO - PID 5324 | #19: static void patched_BaseThreadInitThunk(int, void *, void *) [mozglue/build/WindowsDllBlocklist.cpp:663] 05:47:47 INFO - PID 5324 | #20: ntdll.dll + 0x70d61 05:47:47 INFO - <<<<<<< 05:47:47 INFO - mozcrash kill_pid(): unable to terminate pid 5324: 5 05:47:47 INFO - xpcshell return code: None 06:04:28 INFO - Automation Error: mozprocess timed out after 1000 seconds running ['Z:\\task_1535173619\\build\\venv\\Scripts\\python', '-u', 'Z:\\task_1535173619\\build\\tests\\xpcshell\\runxpcshelltests.py', '--total-chunks', '8', '--this-chunk', '5', '--symbols-path=Z:\\task_1535173619\\build\\symbols', '--test-plugin-path=Z:\\task_1535173619\\build\\application\\firefox\\plugins', '--log-raw=Z:\\task_1535173619\\build\\blobber_upload_dir\\xpcshell_raw.log', '--log-errorsummary=Z:\\task_1535173619\\build\\blobber_upload_dir\\xpcshell_errorsummary.log', '--utility-path=tests/bin', '--xpcshell=Z:\\task_1535173619\\build\\application\\firefox/xpcshell.exe', '--manifest=tests/xpcshell/tests/xpcshell.ini'] 06:04:28 ERROR - timed out after 1000 seconds of no output 06:04:28 ERROR - Return code: 572 06:04:28 ERROR - No tests run or test summary not found 06:04:28 INFO - TinderboxPrint: xpcshell-xpcshell<br/><em class="testfail">T-FAIL</em>
This maybe a necko bug.
Component: Security: PSM → Networking: DNS
Valentin, can you take a look if this is important or not? Please change the bug priority accordingly.
Flags: needinfo?(valentin.gosu)
Priority: P5 → P2
Whiteboard: [necko-triaged]
#0 PLDHashTable::SearchTable MOZ_ASSERT(mEntryStore.Get()); #1 PLDHashTable::Search mEntryStore.Get() ? SearchTable<ForSearchOrRemove>(aKey, ComputeKeyHash(aKey)) : nullptr; #2 nsTHashtable::GetEntry mTable.Search(EntryType::KeyToPointer(aKey)) #3 nsDNSService::AsyncResolveNative mLocalDomains.GetEntry(aHostname) So mEntryStore.Get() is not null at #1, but it is null at #0 The only way I see this happening is if mLocalDomains is changed by nsDNSService::ReadPrefs on the main thread, while we call .GetEntry on the socket thread. We should grab the lock before changing mLocalDomains with the prefs.
Assignee: nobody → valentin.gosu
Flags: needinfo?(valentin.gosu)
Comment on attachment 9004572 [details] Bug 1486228 - Grab mutex when accessing nsDNSService::mLocalDomains r=mayhemer! Honza Bambas (:mayhemer) has approved the revision.
Attachment #9004572 - Flags: review+
Pushed by valentin.gosu@gmail.com: https://hg.mozilla.org/integration/autoland/rev/19caa87ed595 Grab mutex when accessing nsDNSService::mLocalDomains r=mayhemer!
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla63
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: