Unity8 completely frozen (unable to unlock, receive calls, etc)
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| Canonical System Image |
Undecided
|
Unassigned | |||
| Mir |
Invalid
|
Critical
|
Unassigned | ||
| mir (Ubuntu) |
Undecided
|
Unassigned | |||
| unity8 (Ubuntu RTM) |
Undecided
|
Unassigned | |||
Bug Description
phablet@
current build number: 224
device name: krillin
channel: ubuntu-
last update: 2015-01-29 18:53:09
version version: 224
version ubuntu: 20150129
version device: 20150129-c75dcfb
version custom: 20150129-528-26-182
Was driving around with my car, and noticed once I got back home that my clock was stuck in a previous time (~20min before getting home), and after trying to use the phone I noticed unity8 was completely stuck, but the underling OS was still running fine.
The worst here is that we're unable to notify the user about calls, as the interface is completely stuck. Another bad thing is that this could as well happen when the user is sleeping or something, without an easy way to know until he tries to use the phone.
| Ricardo Salveti (rsalveti) wrote : | #2 |
The stacktrace:
#0 __libc_do_syscall () at ../ports/
No locals.
#1 0xb60021e4 in __lll_lock_wait (futex=
_a2 = 128
_a3 = 2
_a1 = 13180184
_a1tmp = 13180184
_a4 = 0
_name = 240
__ret = 13180184
oldval = <optimized out>
#2 0xb5ffe9a6 in __GI___
__futex = 0xc91d18
id = <optimized out>
type = <optimized out>
id = <optimized out>
#3 0xb387c532 in _dbus_connectio
No locals.
#4 0xb3889cfe in _dbus_pending_
No locals.
#5 0xb387efcc in reply_handler_
connection = <optimized out>
status = <optimized out>
pending = 0x9d6b3bc0
#6 0xb3c9b28e in q_dbus_
No locals.
#7 QDBusConnection
locker = {<QDBusMutexLocker> = {<QDBusLockerBase> = {<No data fields>}, self = 0xc907f0, mutex = 0xc9081c, action = TimerEventAction}, <No data fields>}
#8 0xb64f9ef2 in QObject::event (this=0xc907f0, e=0xbed6f0f4) at kernel/
No locals.
#9 0xb64d9318 in QCoreApplicatio
d = <optimized out>
#10 0xb64d93f4 in QCoreApplicatio
threadData = 0xbd4c30
result = false
cbdata = {0xc907f0, 0xbed6f0f4, 0xbed6f08f}
d = <optimized out>
#11 0xb6513c2e in sendEvent (event=0xbed6f0f4, receiver=<optimized out>) at ../../include/
No locals.
#12 QTimerInfoList:
e = {<QEvent> = {_vptr.QEvent = 0xb668ff38 <vtable for QTimerEvent+8>, static staticMetaObject = {d = {superdata = 0x0, stringdata = 0xb6653118 <qt_meta_
n_act = 3
maxCount = <optimized out>
currentTime = {tv_sec = 43455, tv_nsec = <optimized out>}
#13 0xb6513f64 in timerSourceDispatch (source=<optimized out>) at kernel/
timerSource = <optimized out>
#14 idleTimerSource
timerSource = <optimized out>
#15 0xb5ce1f50 in g_main_d...
| Ricardo Salveti (rsalveti) wrote : | #3 |
Stacktrace looks similar with the one reported by bug 1415141 (but in that case just the dash was stuck).
| Michał Sawicz (saviq) wrote : | #4 |
Here's a "t a a bt" out of a frozen unity8 instance. Not seeing an entry similar to yours, suspect are threads 25 and 2... Although a bunch of others look blocked, that might just be a result, not a cause.
| Michał Sawicz (saviq) wrote : | #5 |
Got a lockup on boot, here's a another gdb "t a a bt".
| Michał Sawicz (saviq) wrote : | #6 |
<duflu> Fun. Looks like some kind of deadlock in Mir's GlibMainLoop with Mir's framedropping logic
| Changed in mir: | |
| status: | New → Triaged |
| importance: | Undecided → Critical |
| milestone: | none → 0.12.0 |
| Daniel van Vugt (vanvugt) wrote : | #7 |
I think we might have two unrelated deadlocks here.
rsalveti's is a dbus deadlock.
saviq's is a Mir deadlock.
| Alexandros Frantzis (afrantzis) wrote : | #8 |
> <duflu> Fun. Looks like some kind of deadlock in Mir's GlibMainLoop with Mir's framedropping logic
I see no indication of this in the backtraces.
> I think we might have two unrelated deadlocks here.
>
> rsalveti's is a dbus deadlock.
> saviq's is a Mir deadlock.
Not sure if Saviq's issue is a pure Mir deadlock. In Saviq's backtrace, threads 1 and 11(both Qt related) and 15 (Mir waiting for a reply) seem suspicious.
| kevin gunn (kgunn72) wrote : | #9 |
spawing Mir bug 1421255 for the vivid findings
| Alexandros Frantzis (afrantzis) wrote : | #10 |
> <duflu> Fun. Looks like some kind of deadlock in Mir's GlibMainLoop with Mir's framedropping logic
>
> I see no indication of this in the backtraces.
Looking again, this could indeed be happening (in Saviq's traces).
| Alexandros Frantzis (afrantzis) wrote : | #11 |
> Looking again, this could indeed be happening (in Saviq's traces).
Thanks Alberto ;)
| Cemil Azizoglu (cemil-azizoglu) wrote : | #12 |
Spawned another Mir bug for Saviq's second backtrace as it looks unrelated to the first one.
| Cemil Azizoglu (cemil-azizoglu) wrote : | #13 |
rsalveti's original bug doesn't seem to be related to Mir. Marking it as Invalid for Mir.
| Changed in mir: | |
| status: | Triaged → Invalid |
| Changed in mir (Ubuntu): | |
| status: | New → Invalid |
| Changed in mir: | |
| milestone: | 0.12.0 → none |
| Ricardo Salveti (rsalveti) wrote : | #14 |
Got the same crash, output of 't a a bt' attached.
current build number: 234
device name: krillin
channel: ubuntu-
last update: 2015-02-14 00:43:00
version version: 234
version ubuntu: 20150211.1
version device: 20150211-74c2df2
version custom: 20150207-538-29-183
| Daniel van Vugt (vanvugt) wrote : | #15 |
Did we just split this bug into two; bug 1421255, bug 1421308
and leave this one representing nothing? :)
Is this now a duplicate?
| Daniel van Vugt (vanvugt) wrote : | #16 |
OK then, based on comment #14 we have three different deadlocks now :)
This one is roughly:
(hung in some dbus calls)
from:
QNetworkManag
| Alberto Aguirre (albaguirre) wrote : | #17 |
Right Thread#1 and Thread#15 seem deadlock. There must be at least a couple of different mutexes used by the Qt DBus abstraction that are causing this but have not inspected the code fully yet.
| Michał Sawicz (saviq) wrote : | #18 |
OK the underlying cause for all of those seems to be a Qt dbus bug, marking dupe of one that has the most complete trace of all threads.

Looking at my syslog at the exact minute that got stuck (time presented by the greeter), I wasn't really using the phone (it was trying to suspend), and I also noticed the GPS was reporting issues, not sure if related or not though: 707790] [pm_notifier_ call_chain] : there are 4 notify callbacks, event = 4 delayed_ work ret= 1 delayed_ work ret= 1 747749] [pm_notifier_ call_chain] : there are 4 notify callbacks, event = 3 747780] Freezing user space processes ... [GPS] GPS_read: signaled by -ERESTARTSYS(-512) 748856] Freezing of tasks aborted after 0.001 seconds (38 tasks refusing to freeze, wq_busy=0): 748876] Restarting tasks ... done. 757297] [pm_notifier_ call_chain] : there are 4 notify callbacks, event = 4 delayed_ work ret= 1 delayed_ work ret= 1 802887] [pm_notifier_ call_chain] : there are 4 notify callbacks, event = 3 802918] Freezing user space processes ... [GPS] GPS_read: signaled by -ERESTARTSYS(-512) 804256] Freezing of tasks aborted after 0.001 seconds (38 tasks refusing to freeze, wq_busy=0): 804276] Restarting tasks ... done. 811308] [pm_notifier_ call_chain] : there are 4 notify callbacks, event = 4 delayed_ work ret= 1 delayed_ work ret= ...
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.707853]msdc: 0,mmc_schedule_
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.707918]msdc: 1,mmc_schedule_
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.709977]PM: suspend exit 2015-02-03 20:27:08.594582999 UTC
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.710031]PM: suspend entry 2015-02-03 20:27:08.594646769 UTC
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.710042]PM: Syncing filesystems ... done.
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.748746]
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.748831]last active wakeup source: eventpoll
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.748843]
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.748870]
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.757363]msdc: 0,mmc_schedule_
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.757431]msdc: 1,mmc_schedule_
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.759542]PM: suspend exit 2015-02-03 20:27:08.644146461 UTC
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.759598]PM: suspend entry 2015-02-03 20:27:08.644212999 UTC
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.759609]PM: Syncing filesystems ... done.
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.804001]
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.804230]last active wakeup source: eventpoll
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.804243]
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.804270]
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.811369]msdc: 0,mmc_schedule_
Feb 3 18:27:08 ubuntu-phablet kernel: [43408.811433]msdc: 1,mmc_schedule_