Mir

[regression] Deadlock in TimeoutFrameDroppingPolicy logic results in frozen unity8

Bug #1421255 reported by kevin gunn
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mir
Fix Released
Critical
Alberto Aguirre
mir (Ubuntu)
Fix Released
Critical
Unassigned

Bug Description

spawning from bug 1417773 "Unity8 completely frozen (unable to unlock, receive calls, etc)"

See Saviq's comment #4 & 5, duflu's comment #7 in bug 1417773

Tags: regression

Related branches

kevin gunn (kgunn72)
Changed in mir:
importance: Undecided → Critical
Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

Is there any reason to believe that Saviq's comment #4 and Saviq's comment #5 relate to the same problem?

duflu's comment makes sense for https://bugs.launchpad.net/ubuntu-rtm/+source/unity8/+bug/1417773/comments/4 but not for https://bugs.launchpad.net/ubuntu-rtm/+source/unity8/+bug/1417773/comments/5 or the earlier comment by rsalveti.

Revision history for this message
Cemil Azizoglu (cemil-azizoglu) wrote :

Adding AlbertA's analysis.

<AlbertA> @vogons: looks like the issue is the TimerGSource aquires a read-lock, dispatches it (i.e. alarm fired), gets pre-empted
--> JohnLea_ (<email address hidden>) has joined #mir
<AlbertA> @vogons: compositor_release fires (from compositor thread), acquires buffer queue mutex
 @vogons: attempts to cancel alarm but deadlocks because the previous alarm handler is waiting for the buffer queue mutex and cannot aquire a write lock to the GTimerSource mutex

Revision history for this message
Cemil Azizoglu (cemil-azizoglu) wrote :

Attaching the relevant backtrace :

Changed in mir:
milestone: none → 0.12.0
summary: - mir deadlock results in frozen unity8
+ Deadlock in TimeoutFrameDroppingPolicy logic results in frozen unity8
Changed in mir:
assignee: nobody → Alberto Aguirre (albaguirre)
Changed in mir:
status: New → In Progress
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote : Re: Deadlock in TimeoutFrameDroppingPolicy logic results in frozen unity8

Fix committed into lp:mir at revision None, scheduled for release in mir, milestone 0.12.0

Changed in mir:
status: In Progress → Fix Committed
no longer affects: mir/0.11
Changed in mir (Ubuntu):
importance: Undecided → Critical
status: New → Triaged
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Alberto says this was a regression, introduced in 0.9.0 with glib main loop.

summary: - Deadlock in TimeoutFrameDroppingPolicy logic results in frozen unity8
+ [regression] Deadlock in TimeoutFrameDroppingPolicy logic results in
+ frozen unity8
tags: added: regression
Changed in mir:
milestone: 0.12.0 → 0.13.0
Kevin DuBois (kdub)
Changed in mir:
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package mir - 0.12.0+15.04.20150228-0ubuntu1

---------------
mir (0.12.0+15.04.20150228-0ubuntu1) vivid; urgency=medium

  [ Alberto Aguirre ]
  * New upstream release 0.12.0 (https://launchpad.net/mir/+milestone/0.12.0)
    - Packaging changes:
      . Client platform packages now include the Mir client platform ABI
        number. Thusly, mir-client-platform-(mesa|android) is replaced by
        mir-client-platform-(mesa|android)2
      . Server graphics platform packages now include the Mir graphics
        platform ABI number. Thusly, mir-platform-graphics-(mesa|android)
        is replaced by mir-platform-graphics-(mesa|android)1
    - ABI summary: Servers need rebuilding, but clients do not;
      . Mirclient ABI unchanged at 8
      . Mircommon ABI unchanged at 3
      . Mirplatform ABI unchanged at 6
      . Mirserver ABI bumped to 30
    - Bug fixes:
      . [regression] Platform libraries and packages are not versioned thus
        are not installable in parallel (LP: #1423591)
      . [regression] Deadlock in TimeoutFrameDroppingPolicy logic (LP: #1421255)

  [ CI Train Bot ]
  * New rebuild forced.
 -- CI Train Bot <email address hidden> Sat, 28 Feb 2015 10:30:53 +0000

Changed in mir (Ubuntu):
status: Triaged → Fix Released
Changed in mir:
status: Fix Released → Fix Committed
milestone: 0.13.0 → 0.12.0
status: Fix Committed → Fix Released
no longer affects: mir/0.12
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.