Closed Bug 1481084 Opened 6 years ago Closed 6 years ago

Intermittent GECKO(970) | Assertion failure: OnSocketThread(), at /builds/worker/workspace/build/src/netwerk/protocol/http/HttpBackgroundChannelChild.cpp:184

Categories

(Core :: Networking: HTTP, defect, P5)

defect

Tracking

()

RESOLVED FIXED
mozilla64
Tracking Status
firefox-esr60 --- wontfix
firefox62 --- wontfix
firefox63 --- wontfix
firefox64 --- fixed

People

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

Details

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

Crash Data

Attachments

(1 file)

Filed by: ncsoregi [at] mozilla.com

https://treeherder.mozilla.org/logviewer.html#?job_id=192145380&repo=autoland

https://queue.taskcluster.net/v1/task/dhi5DMfaQbCl0-SgNjQ9QA/runs/0/artifacts/public/logs/live_backing.log

08:39:50     INFO - GECKO(970) | Assertion failure: OnSocketThread(), at /builds/worker/workspace/build/src/netwerk/protocol/http/HttpBackgroundChannelChild.cpp:184
08:39:50     INFO - GECKO(970) | #01: mozilla::net::PHttpBackgroundChannelChild::OnMessageReceived(IPC::Message const&) [ipc/glue/ProtocolUtils.h:388]
08:39:50     INFO - 
08:39:50     INFO - GECKO(970) | #02: mozilla::ipc::PBackgroundChild::OnMessageReceived(IPC::Message const&) [s3:gecko-generated-sources:c6fe72022e637e29ce88839e10aa83287f7077de3c85453ad54856a5fb20b54071ab5994bac21c74285b6659e98c6043ffb929f5f8580de9f634ff1a7ffd2ba1/ipc/ipdl/PBackgroundChild.cpp::2214]
08:39:50     INFO - 
08:39:50     INFO - GECKO(970) | #03: mozilla::ipc::MessageChannel::DispatchAsyncMessage(IPC::Message const&) [ipc/glue/MessageChannel.h:673]
08:39:50     INFO - 
08:39:50     INFO - GECKO(970) | #04: mozilla::ipc::MessageChannel::DispatchMessage(IPC::Message&&) [ipc/glue/MessageChannel.cpp:2168]
08:39:50     INFO - 
08:39:50     INFO - GECKO(970) | #05: mozilla::ipc::MessageChannel::RunMessage(mozilla::ipc::MessageChannel::MessageTask&) [ipc/glue/MessageChannel.cpp:2015]
08:39:50     INFO - 
08:39:50     INFO - GECKO(970) | #06: mozilla::ipc::MessageChannel::MessageTask::Run() [xpcom/threads/Monitor.h:37]
08:39:50     INFO - 
08:39:50     INFO - GECKO(970) | #07: nsThread::ProcessNextEvent(bool, bool*) [mfbt/Atomics.h:576]
08:39:50     INFO - 
08:39:50     INFO - GECKO(970) | #08: NS_ProcessNextEvent(nsIThread*, bool) [xpcom/threads/nsThreadUtils.cpp:519]
08:39:50     INFO - 
08:39:50     INFO - GECKO(970) | #09: mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate*) [ipc/glue/MessagePump.cpp:364]
08:39:50     INFO - 
08:39:50     INFO - GECKO(970) | #10: MessageLoop::Run() [ipc/chromium/src/base/message_loop.cc:598]
08:39:50     INFO - 
08:39:50     INFO - GECKO(970) | #11: nsThread::ThreadFunc(void*) [xpcom/threads/nsThread.cpp:469]
08:39:50     INFO - 
08:39:51     INFO - GECKO(970) | #12: _pt_root [nsprpub/pr/src/pthreads/ptthread.c:204]
08:39:51     INFO - 
08:39:51     INFO - GECKO(970) | #13: libsystem_pthread.dylib + 0x405a
08:39:51     INFO - 
08:39:51     INFO - GECKO(970) | #14: libsystem_pthread.dylib + 0x3fd7
08:39:51     INFO - 
08:39:51     INFO - GECKO(970) | *** WIFI GEO: Use request cache:true reason:New req. is GeoIP.
08:39:51     INFO - GECKO(970) | Console message: *** WIFI GEO: Use request cache:true reason:New req. is GeoIP.
08:39:51     INFO - GECKO(970) | MEMORY STAT | vsize 4142MB | residentFast 182MB | heapAllocated 23MB
08:39:51     INFO - Buffered messages logged at 08:39:46
08:39:51     INFO - AddTask.js | Entering test setup
08:39:51     INFO - AddTask.js | Leaving test setup
08:39:51     INFO - AddTask.js | Entering test test_noPermission
08:39:51     INFO - Extension loaded
08:39:51     INFO - TEST-PASS | toolkit/components/extensions/test/mochitest/test_ext_identity.html | No identity api without permission - Expected: undefined, Actual: undefined
Crash Signature: [@ mozilla::net::HttpBackgroundChannelChild::RecvOnStopRequest(nsresult const&, mozilla::net::ResourceTimingStruct const&, mozilla::TimeStamp const&, mozilla::net::nsHttpHeaderArray const&)]
Odds are that the IPC message is received after we shut down the socketTransportService which is why we trigger the assert - if gSocketThread == nullptr then OnSocketThread() will always return false.
Assignee: nobody → valentin.gosu
Whiteboard: [TV-bf pass:pass] → [TV-bf pass:pass][necko-triaged]
OnSocketTread doesn't work properly during shutdown because nsSocketTransportService2.cpp::gSocketThread is null.
We call gSocketTransportService->IsOnCurrentThreadInfallible() instead, just like we already do in HttpBackgroundChannelChild::ActorDestroy()
Comment on attachment 9006609 [details]
Bug 1481084 - Assertion OnSocketThread() in HttpBackgroundChannelChild::RecvOnStopRequest during shutdown r=dragana!

Dragana Damjanovic [:dragana] has approved the revision.
Attachment #9006609 - Flags: review+
Pushed by valentin.gosu@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/f8e617bb6473
Assertion OnSocketThread() in HttpBackgroundChannelChild::RecvOnStopRequest during shutdown r=dragana
https://hg.mozilla.org/mozilla-central/rev/f8e617bb6473
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: