← Back to team overview

tiomap-dev team mailing list archive

[Bug 1015292] Re: QT5 based applications fails with a segmentation fault with Pandaboard and the SGX driver

 

** Description changed:

  [Impact]
- <fill me in with explanation of severity and frequency of bug on users and justification for backporting the fix to the stable release>
+ Segmentation fault at X11 where the randr code could use the randr screen private data without checking for null first. This happens when the X server is running with multiple screens, some of which are randr enabled and some of which are not. Applications making protocol requests to the non-randr screens can cause segfaults where the server touches the unset private structure.
+ 
+ This happened initially while running Precise on a Pandaboard, as with
+ the driver auto-load, it starts 2 different screens, one backed up by
+ the PVR SGX driver, and the other by fbdev. In this case, the issue can
+ easily be reproduced by running any QT5 based application, as by default
+ it'll try to initialize the internal structures for all screens
+ available at the system.
+ 
+ The bug can also happen on cases where the user is running one screen
+ with the nvidia/ati driver, and the other with fbdev (external usb video
+ device, for example).
  
  [Test Case]
- <fill me in with detailed *instructions* on how to reproduce the bug.  This will be used by people later on to verify the updated package fixes the problem.>
- 1.
- 2.
- 3.
- Broken Behavior: 
- Fixed Behavior: 
+ How to reproduce the issue, on a Pandaboard:
+ 1) Install Precise at a Pandaboard;
+ 2) Enable the PVR SGX driver from the "Additional Driver" screen;
+ 1) Enable https://launchpad.net/~canonical-qt5-edgers/+archive/qt5-daily
+ 2) Install 'snowshoe-mobile' package
+ 3) Run snowshoe: $ PATH=/opt/qt5/bin:$PATH; snowshoe
+ 
+ Broken Behavior: X11 will exit with a seg fault
+ Fixed Behavior: The QT5 based application (snowshoe) will open without crashing X11.
  
  [Regression Potential]
- <fill me in with a discussion of how regressions would typically manifest as a result of this change.  It's assumed that all candidate patches are well-tested and have low overall risk of regression; but if there's an area of concern be sure to call it out so testers can check it.>
+ Both patches are already applied at upstream, and they are simply just checking the pointers for NULL results, which would already cause a seg fault in case of NULL value, so it's safe to be applied as SRU.
  
  [Original Report]
  
  While testing Qt 5 support on Ubuntu, and validating the support for
  OpenGL ES2.0 with Pandaboard, I couldn't start Snowshoe (Qt 5 - webkit
  based browser) as it gives a segmentation fault and also breaks the X11
  server (with the pvr driver).
  
  After a quick check with Snowball (Mali 400), it worked properly and as
  expected, so this could probably be related with the current SGX driver
  available for Pandaboard.
  
  How to reproduce the issue:
  1) Enable https://launchpad.net/~canonical-qt5-edgers/+archive/qt5-daily
  2) Install 'snowshoe-mobile' package
  3) Run snowshoe: $ PATH=/opt/qt5/bin:$PATH; snowshoe
  
  This is with Ubuntu 12.04 with pvr-omap4 1.7.10.0.1.21-0ubuntu1 (from
  archive) and also 1.7.15.0.1.57-1 from TI's PPA.

** Patch added: "debdiff covering the SRU for Precise"
   https://bugs.launchpad.net/ubuntu-omap4-extras-graphics/+bug/1015292/+attachment/3229083/+files/xorg-server_1.11.4-0ubuntu10.7.debdiff

** Summary changed:

- QT5 based applications fails with a segmentation fault with Pandaboard and the SGX driver
+ X11 crashes with seg fault when running QT5 based applications on a Pandaboard with the SGX driver

-- 
You received this bug notification because you are a member of TI OMAP
Developers, which is subscribed to ubuntu-omap4-extras-graphics.
https://bugs.launchpad.net/bugs/1015292

Title:
  X11 crashes with seg fault when running QT5 based applications on a
  Pandaboard with the SGX driver

Status in Ubuntu OMAP4 graphics addons:
  New
Status in “pvr-omap4” package in Ubuntu:
  Confirmed
Status in “xorg-server” package in Ubuntu:
  Fix Committed
Status in “pvr-omap4” source package in Precise:
  New
Status in “xorg-server” source package in Precise:
  In Progress
Status in “pvr-omap4” source package in Quantal:
  Confirmed
Status in “xorg-server” source package in Quantal:
  Fix Committed

Bug description:
  [Impact]
  Segmentation fault at X11 where the randr code could use the randr screen private data without checking for null first. This happens when the X server is running with multiple screens, some of which are randr enabled and some of which are not. Applications making protocol requests to the non-randr screens can cause segfaults where the server touches the unset private structure.

  This happened initially while running Precise on a Pandaboard, as with
  the driver auto-load, it starts 2 different screens, one backed up by
  the PVR SGX driver, and the other by fbdev. In this case, the issue
  can easily be reproduced by running any QT5 based application, as by
  default it'll try to initialize the internal structures for all
  screens available at the system.

  The bug can also happen on cases where the user is running one screen
  with the nvidia/ati driver, and the other with fbdev (external usb
  video device, for example).

  [Test Case]
  How to reproduce the issue, on a Pandaboard:
  1) Install Precise at a Pandaboard;
  2) Enable the PVR SGX driver from the "Additional Driver" screen;
  1) Enable https://launchpad.net/~canonical-qt5-edgers/+archive/qt5-daily
  2) Install 'snowshoe-mobile' package
  3) Run snowshoe: $ PATH=/opt/qt5/bin:$PATH; snowshoe

  Broken Behavior: X11 will exit with a seg fault
  Fixed Behavior: The QT5 based application (snowshoe) will open without crashing X11.

  [Regression Potential]
  Both patches are already applied at upstream, and they are simply just checking the pointers for NULL results, which would already cause a seg fault in case of NULL value, so it's safe to be applied as SRU.

  [Original Report]

  While testing Qt 5 support on Ubuntu, and validating the support for
  OpenGL ES2.0 with Pandaboard, I couldn't start Snowshoe (Qt 5 - webkit
  based browser) as it gives a segmentation fault and also breaks the
  X11 server (with the pvr driver).

  After a quick check with Snowball (Mali 400), it worked properly and
  as expected, so this could probably be related with the current SGX
  driver available for Pandaboard.

  How to reproduce the issue:
  1) Enable https://launchpad.net/~canonical-qt5-edgers/+archive/qt5-daily
  2) Install 'snowshoe-mobile' package
  3) Run snowshoe: $ PATH=/opt/qt5/bin:$PATH; snowshoe

  This is with Ubuntu 12.04 with pvr-omap4 1.7.10.0.1.21-0ubuntu1 (from
  archive) and also 1.7.15.0.1.57-1 from TI's PPA.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-omap4-extras-graphics/+bug/1015292/+subscriptions


References