Closed
Bug 813831
Opened 12 years ago
Closed 7 years ago
Hang in UsbCableObserver() at dom/system/gonk/AutoMounter.cpp:509
Categories
(Core :: DOM: Device Interfaces, defect)
Tracking
()
RESOLVED
INCOMPLETE
People
(Reporter: cjones, Unassigned)
References
Details
Matt saw this in an opt build with a patch applied, by starting b2g as follows
$ adb shell stop b2g
$ adb shell
# cd /system/b2g
# ./b2g.sh
It's reproducible for him. Backtrace is
(gdb) bt
#0 __futex_syscall3 () at bionic/libc/arch-arm/bionic/atomics_arm.S:182
#1 0x400d355c in __pthread_cond_timedwait_relative (cond=0x440ce2b4, mutex=0x4405b380, reltime=0x0) at bionic/libc/bionic/pthread.c:1477
#2 0x400d3610 in __pthread_cond_timedwait (cond=0x440ce2b4, mutex=0x4405b380, abstime=0x0, clock=0) at bionic/libc/bionic/pthread.c:1500
#3 0x40271220 in PR_WaitCondVar (cvar=0x440ce2b0, timeout=4294967295) at /home/matt/b2g/gecko/nsprpub/pr/src/pthreads/ptsynch.c:385
#4 0x40e6622e in mozilla::CondVar::Wait (aDevice=mozilla::hal::SWITCH_USB) at ../dist/include/mozilla/CondVar.h:71
#5 mozilla::Monitor::Wait (aDevice=mozilla::hal::SWITCH_USB) at ../dist/include/mozilla/Monitor.h:47
#6 mozilla::MonitorAutoLock::Wait (aDevice=mozilla::hal::SWITCH_USB) at ../dist/include/mozilla/Monitor.h:102
#7 mozilla::hal_impl::EnableSwitchNotifications (aDevice=mozilla::hal::SWITCH_USB) at /home/matt/b2g/gecko/hal/gonk/GonkSwitch.cpp:391
#8 0x40e61682 in mozilla::hal::EnableSwitchNotifications (aDevice=mozilla::hal::SWITCH_USB) at /home/matt/b2g/gecko/hal/Hal.cpp:725
#9 0x40e62298 in mozilla::hal::RegisterSwitchObserver (aDevice=mozilla::hal::SWITCH_USB, aObserver=0x40301d30) at /home/matt/b2g/gecko/hal/Hal.cpp:772
#10 0x40b7716a in UsbCableObserver () at /home/matt/b2g/gecko/dom/system/gonk/AutoMounter.cpp:509
#11 mozilla::system::InitAutoMounter () at /home/matt/b2g/gecko/dom/system/gonk/AutoMounter.cpp:543
#12 0x40b75f7c in mozilla::dom::gonk::SystemWorkerManager::Init (this=0x4352f1a0) at /home/matt/b2g/gecko/dom/system/gonk/SystemWorkerManager.cpp:381
#13 0x40b76012 in mozilla::dom::gonk::SystemWorkerManager::FactoryCreate () at /home/matt/b2g/gecko/dom/system/gonk/SystemWorkerManager.cpp:447
#14 0x407eeb74 in SystemWorkerManagerConstructor (aOuter=0x0, aIID=..., aResult=0x413b849c) at /home/matt/b2g/gecko/layout/build/nsLayoutModule.cpp:286
#15 0x40ead2d8 in mozilla::GenericFactory::CreateInstance (this=<value optimized out>, aOuter=<value optimized out>, aIID=<value optimized out>, aResult=0x219)
at /home/matt/b2g/objdir-gecko/xpcom/build/GenericFactory.cpp:16
#16 0x40ec7c74 in nsComponentManagerImpl::CreateInstanceByContractID (this=<value optimized out>, aContractID=0x428e6f10 "@mozilla.org/telephony/system-worker-manager;1", aDelegate=0x0,
aIID=..., aResult=0xbebb9670) at /home/matt/b2g/gecko/xpcom/components/nsComponentManager.cpp:1035
#17 0x40ec8d8a in nsComponentManagerImpl::GetServiceByContractID (this=0x40341030, aContractID=0x428e6f10 "@mozilla.org/telephony/system-worker-manager;1", aIID=..., result=0xbebb96c4)
at /home/matt/b2g/gecko/xpcom/components/nsComponentManager.cpp:1427
#18 0x40ea996e in CallGetService (aContractID=0x428e6f10 "@mozilla.org/telephony/system-worker-manager;1", aIID=..., aResult=0x219)
at /home/matt/b2g/objdir-gecko/xpcom/build/nsComponentManagerUtils.cpp:62
#19 0x40ea999e in nsGetServiceByContractID::operator() (this=<value optimized out>, aIID=..., aInstancePtr=0x413b849c) at /home/matt/b2g/objdir-gecko/xpcom/build/nsComponentManagerUtils.cpp:246
#20 0x40ea9246 in nsCOMPtr_base::assign_from_gs_contractid (this=0xbebb974c, gs=..., iid=<value optimized out>) at /home/matt/b2g/objdir-gecko/xpcom/build/nsCOMPtr.cpp:92
#21 0x40ec60da in nsCOMPtr (category=0x4136db08 "profile-after-change", origin=<value optimized out>, observerTopic=<value optimized out>) at ../../dist/include/nsCOMPtr.h:912
#22 NS_CreateServicesFromCategory (category=0x4136db08 "profile-after-change", origin=<value optimized out>, observerTopic=<value optimized out>)
at /home/matt/b2g/gecko/xpcom/components/nsCategoryManager.cpp:837
#23 0x4070fe62 in nsXREDirProvider::DoStartup (this=<value optimized out>) at /home/matt/b2g/gecko/toolkit/xre/nsXREDirProvider.cpp:816
#24 0x4070b9a2 in XREMain::XRE_mainRun (this=0xbebb9904) at /home/matt/b2g/gecko/toolkit/xre/nsAppRunner.cpp:3717
#25 0x4070e31c in XREMain::XRE_main (this=0xbebb9904, argc=<value optimized out>, argv=0xbebbbae4, aAppData=<value optimized out>) at /home/matt/b2g/gecko/toolkit/xre/nsAppRunner.cpp:3890
#26 0x4070e478 in XRE_main (argc=1, argv=0xbebbbae4, aAppData=0xa9a4, aFlags=<value optimized out>) at /home/matt/b2g/gecko/toolkit/xre/nsAppRunner.cpp:4084
#27 0x0000898a in do_main (argc=1, argv=0xbebbbae4) at /home/matt/b2g/gecko/b2g/app/nsBrowserApp.cpp:154
#28 main (argc=1, argv=0xbebbbae4) at /home/matt/b2g/gecko/b2g/app/nsBrowserApp.cpp:239
Comment 1•12 years ago
|
||
So this backtrace shows the main thread hanging. The EnableSwitchNotifications routine has done a PostTask to the IOThread to perform the actual initialization on the IOThread, and when it runs it will unlock the main thread.
This tells me that the IOThread is hung for some reason. So we'd need a backtrace of the IOThread in order to figure out what's happening.
Comment 2•12 years ago
|
||
(In reply to Dave Hylands [:dhylands] from comment #1)
> This tells me that the IOThread is hung for some reason. So we'd need a
> backtrace of the IOThread in order to figure out what's happening.
Hi Dave,
Can you reproduce this problem? I cannot reproduce it on my unagi. Should I try otoro?
Comment 3•12 years ago
|
||
I'm not able to reproduce on my otoro (Although my otoro also doesn't boot to the home screen right now either)
Comment 4•12 years ago
|
||
I filed bug 813842 to fix GonkSwitch properly
Comment 5•7 years ago
|
||
FxOS/Gonk has been removed from the codebase. Mass-invalidating FxOS related Device Interface bugs to clean up the component.
If I incorrectly invalidated something, please let me know.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → INVALID
Comment 6•7 years ago
|
||
Bulk correction of resolution of B2G bugs to INCOMPLETE.
Resolution: INVALID → INCOMPLETE
You need to log in
before you can comment on or make changes to this bug.
Description
•