Mir

[regression] Fullscreen software surfaces (like Xmir -sw) can crash the Mir server

Bug #1493721 reported by Daniel van Vugt
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mir
Fix Released
High
Daniel van Vugt
mir (Ubuntu)
Fix Released
High
Unassigned

Bug Description

Xmir -sw (software) mode crashes the Mir server. If not immediately on startup then soon after running a few X clients...

/usr/bin/mir_demo_server_minimal:
(gdb) bt
#0 0x00007f8586f64cc0 in gbm_bo_get_user_data ()
   from /usr/lib/x86_64-linux-gnu/libgbm.so.1
#1 0x00007f85858212af in ?? ()
   from /usr/lib/x86_64-linux-gnu/mir/server-platform/graphics-mesa-kms.so.4
#2 0x00007f8585822099 in ?? ()
   from /usr/lib/x86_64-linux-gnu/mir/server-platform/graphics-mesa-kms.so.4
#3 0x00007f858ac980ac in ?? ()
   from /usr/lib/x86_64-linux-gnu/libmirserver.so.33
#4 0x00007f858aca1176 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libmirserver.so.33
#5 0x00007f858ad23431 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libmirserver.so.33
#6 0x00007f858a910ed0 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#7 0x00007f858821d6aa in start_thread (arg=0x7f8583bab700)
    at pthread_create.c:333
#8 0x00007f858a37deed in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Related branches

description: updated
Changed in xorg-server (Ubuntu):
status: New → Invalid
Changed in mir:
assignee: nobody → Daniel van Vugt (vanvugt)
Changed in mir:
milestone: none → 0.17.0
status: New → In Progress
summary: - Xmir -sw (software) mode crashes the Mir server
+ [regression] Xmir -sw (software) mode crashes the Mir server
tags: added: bufferstream-regression regression
Revision history for this message
Daniel van Vugt (vanvugt) wrote : Re: [regression] Xmir -sw (software) mode crashes the Mir server

Apparently the GBM bypass logic was quite safe for a couple of years. The offending regression only happened fairly recently in:

------------------------------------------------------------
revno: 2337 [merge]
author: Kevin DuBois <email address hidden>
committer: Tarmac
branch nick: development-branch
timestamp: Mon 2015-02-23 14:50:14 +0000
message:
  graphics: move the post() command from the DisplayBuffers to the new DisplayGr
oup interface. This allows platforms to designate which DisplayBuffers must be p
osted in a common function.

  Approved by PS Jenkins bot, Alberto Aguirre, Andreas Pokorny, Alan Griffiths,
Alexandros Frantzis.
------------------------------------------------------------

summary: - [regression] Xmir -sw (software) mode crashes the Mir server
+ [regression] Fullscreen software surfaces (like Xmir -sw) can crash the
+ Mir server
tags: removed: bufferstream-regression
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

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

Changed in mir:
status: In Progress → Fix Committed
affects: xorg-server (Ubuntu) → mir (Ubuntu)
Changed in mir (Ubuntu):
status: Invalid → Triaged
importance: Undecided → High
Changed in mir:
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (3.2 KiB)

This bug was fixed in the package mir - 0.17.0+15.10.20151008.2-0ubuntu1

---------------
mir (0.17.0+15.10.20151008.2-0ubuntu1) wily; urgency=medium

  [ Alexandros Frantzis ]
  * New upstream release 0.17.0 (https://launchpad.net/mir/+milestone/0.17.0)
    - ABI summary: Only servers and graphics drivers need rebuilding;
      . Mirclient ABI unchanged at 9
      . Mirserver ABI bumped to 35
      . Mircommon ABI unchanged at 5
      . Mirplatform ABI bumped to 11
      . Mirprotobuf ABI bumped to 3
      . Mirplatformgraphics ABI bumped to 6
      . Mirclientplatform ABI unchanged at 3
    - Enhancements:
      . Introduce libmircookie, a simple mechanism for a group of cooperating
        processes to hand out and verify difficult-to-forge timestamps to
        untrusted 3rd parties.
      . More refactorings to support renderers other than GL.
      . Add MirBlob to the client API - a tool for serializing and
        deserializing data.
      . Introduce a libinput based input platform, not yet used by default.
      . Provide a mechanism for the shell to send events on surface
        construction.
      . Provide mir::shell::DisplayConfigurationController allowing shells
        to correctly change the display configuration, notifying clients
        as appropriate.
      . New DSO versioning guide.
      . Send events pertaining to the output a surface is currently on (dpi,
        form factor, scale) to clients.
    - Bug fixes:
      . [enhancement] XMir specific documentation should live in its own
        subsection (LP: #1200114)
      . Nested servers need cursor support (LP: #1289072)
      . Mir cursor is missing/invisible until the client sets it multiple
        times (LP: #1308133)
      . [regression] Fullscreen software surfaces (like Xmir -sw) can crash
        the Mir server (LP: #1493721)
      . [usc] Mir gives up and shuts down due to input with multimonitor qtmir
        (std::exception::what: Failure sending input event) (LP: #1496069)
      . Mouse cursor disappears upon entering the surface area of a nested
        client (LP: #1496849)
      . [android] input is not dispatched when attaching an external monitor
        (LP: #1498045)
      . [android] input coordinates are scaled incorrectly when an external
        display is connected (LP: #1498540)
      . [android] std::exception::what: error during hwc set() when unplugging
        external monitor (LP: #1498550)
      . tests do not compile without precompiled headers (LP: #1498829)
      . [android] std::exception::what: Failed to monitor fd: Operation not
        permitted when unplugging external display in a nested configuration
        (LP: #1499042)
      . Mir suddenly no longer builds since 'mesa (11.0.0-1ubuntu1) wily':
        /usr/include/EGL/eglplatform.h:100:35: fatal error:
        android/native_window.h: No such file or directory (LP: #1499134)
      . [android] various crashes when unplugging external display on a
        nested configuration (LP: #1501927)
      . Cursor becomes visible by itself when an external monitor is connected
        (LP: #1502200)
      . mesa FTBFS due to missing Requires in mirclient (LP: #1503450)

  [ CI Trai...

Read more...

Changed in mir (Ubuntu):
status: Triaged → Fix Released
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.