Mir

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

Bug #1493721 reported by Daniel van Vugt on 2015-09-09
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mir
Fix Released
High
Daniel van Vugt
mir (Ubuntu)
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

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
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
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  Edit
Everyone can see this information.

Other bug subscribers