← Back to team overview

ubuntu-x-swat team mailing list archive

[Bug 670016] Re: Xorg crashes when performing gesture

 

** Description changed:

- Maverick Xorg gesture handling writes events to clients in signal
- context. This causes corruption and eventual X server crash.
+ Justification:
+ =============
+ Regression from Ubuntu 10.04, causing an Xserver crash after performing a gesture. The X crash risks losing user data from unsaved documents in applications.
  
+ Fix:
+ ===
+ The cause is a call to WriteToClient in signal context during input event processing. The call was added for gesture event handling, but it appears that something in WriteToClient is unsafe in signal context. Patches have been added to xserver-xorg-input-evdev and xorg-server to queue gesture events in the X server and propagate them to clients in normal context.
+ 
+ Test case:
+ =========
+ Perform multitouch gestures in a gesture-enabled environment. The Unity window manager should suffice. However, this bug is indeterministic. Some users may never see the bug, others may see it multiple times per day.
+ 
+ Regression Potential:
  ====================
+ Moderate due to the changes to two interrelated packages and the size of the patches. A depends has been added to xserver-xorg-input-evdev to ensure it is installed with the correlated xorg-server packages. An X crash at the beginning of a gesture would occur if the packages are installed improperly. However, A newer X server with an old evdev input module would not pose any regression potential due to interdependencies.
+ 
+ The size of the patches may cause some concern, but they are the minimal
+ amount required to address the bug in a maintainable manner.
+ 
+ Original Report:
+ ===============
  Binary package hint: xorg
  
  I have X crashes a couple of times a day.
  Could not reproduce it deterministically.
  
  ProblemType: Bug
  DistroRelease: Ubuntu 10.10
  Package: xorg 1:7.5+6ubuntu3
  ProcVersionSignature: Ubuntu 2.6.35-23.36-generic-pae 2.6.35.7
  Uname: Linux 2.6.35-23-generic-pae i686
  NonfreeKernelModules: nvidia wl
  .proc.driver.nvidia.version:
   NVRM version: NVIDIA UNIX x86 Kernel Module  260.19.06  Mon Sep 13 06:35:06 PDT 2010
   GCC version:  gcc version 4.4.5 (Ubuntu/Linaro 4.4.4-14ubuntu5)
  Architecture: i386
  Date: Tue Nov  2 14:25:08 2010
  InstallationMedia: Ubuntu 10.04.1 LTS "Lucid Lynx" - Release i386 (20100816.1)
  MachineType: Apple Inc. MacBook5,1
  ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.35-23-generic-pae root=UUID=14caef4c-d30c-4e34-8e4f-94a6ce5fc47e ro quiet splash
  ProcEnviron:
   LANGUAGE=en
   LANG=en_US.utf8
   SHELL=/bin/bash
  SourcePackage: xorg
  dmi.bios.date: 04/27/09
  dmi.bios.vendor: Apple Inc.
  dmi.bios.version: MB51.88Z.007D.B03.0904271443
  dmi.board.asset.tag: Base Board Asset Tag#
  dmi.board.name: Mac-F42D89A9
  dmi.board.vendor: Apple Inc.
  dmi.board.version: Proto
  dmi.chassis.asset.tag: Asset Tag#
  dmi.chassis.type: 10
  dmi.chassis.vendor: Apple Inc.
  dmi.chassis.version: Mac-F42D89A9
  dmi.modalias: dmi:bvnAppleInc.:bvrMB51.88Z.007D.B03.0904271443:bd04/27/09:svnAppleInc.:pnMacBook5,1:pvr1.0:rvnAppleInc.:rnMac-F42D89A9:rvrProto:cvnAppleInc.:ct10:cvrMac-F42D89A9:
  dmi.product.name: MacBook5,1
  dmi.product.version: 1.0
  dmi.sys.vendor: Apple Inc.
  system:
   distro:             Ubuntu
   codename:           maverick
   architecture:       i686
   kernel:             2.6.35-23-generic-pae

** Description changed:

  Justification:
  =============
  Regression from Ubuntu 10.04, causing an Xserver crash after performing a gesture. The X crash risks losing user data from unsaved documents in applications.
  
  Fix:
  ===
  The cause is a call to WriteToClient in signal context during input event processing. The call was added for gesture event handling, but it appears that something in WriteToClient is unsafe in signal context. Patches have been added to xserver-xorg-input-evdev and xorg-server to queue gesture events in the X server and propagate them to clients in normal context.
+ 
+ Note that the fix is not proposed for Natty because the gesture stack
+ will be removed from Natty and moved to the X client side. The Natty
+ gesture code will likely be removed in the next few weeks during the
+ transition to X server 1.10.
  
  Test case:
  =========
  Perform multitouch gestures in a gesture-enabled environment. The Unity window manager should suffice. However, this bug is indeterministic. Some users may never see the bug, others may see it multiple times per day.
  
  Regression Potential:
  ====================
  Moderate due to the changes to two interrelated packages and the size of the patches. A depends has been added to xserver-xorg-input-evdev to ensure it is installed with the correlated xorg-server packages. An X crash at the beginning of a gesture would occur if the packages are installed improperly. However, A newer X server with an old evdev input module would not pose any regression potential due to interdependencies.
  
  The size of the patches may cause some concern, but they are the minimal
  amount required to address the bug in a maintainable manner.
  
  Original Report:
  ===============
  Binary package hint: xorg
  
  I have X crashes a couple of times a day.
  Could not reproduce it deterministically.
  
  ProblemType: Bug
  DistroRelease: Ubuntu 10.10
  Package: xorg 1:7.5+6ubuntu3
  ProcVersionSignature: Ubuntu 2.6.35-23.36-generic-pae 2.6.35.7
  Uname: Linux 2.6.35-23-generic-pae i686
  NonfreeKernelModules: nvidia wl
  .proc.driver.nvidia.version:
   NVRM version: NVIDIA UNIX x86 Kernel Module  260.19.06  Mon Sep 13 06:35:06 PDT 2010
   GCC version:  gcc version 4.4.5 (Ubuntu/Linaro 4.4.4-14ubuntu5)
  Architecture: i386
  Date: Tue Nov  2 14:25:08 2010
  InstallationMedia: Ubuntu 10.04.1 LTS "Lucid Lynx" - Release i386 (20100816.1)
  MachineType: Apple Inc. MacBook5,1
  ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.35-23-generic-pae root=UUID=14caef4c-d30c-4e34-8e4f-94a6ce5fc47e ro quiet splash
  ProcEnviron:
   LANGUAGE=en
   LANG=en_US.utf8
   SHELL=/bin/bash
  SourcePackage: xorg
  dmi.bios.date: 04/27/09
  dmi.bios.vendor: Apple Inc.
  dmi.bios.version: MB51.88Z.007D.B03.0904271443
  dmi.board.asset.tag: Base Board Asset Tag#
  dmi.board.name: Mac-F42D89A9
  dmi.board.vendor: Apple Inc.
  dmi.board.version: Proto
  dmi.chassis.asset.tag: Asset Tag#
  dmi.chassis.type: 10
  dmi.chassis.vendor: Apple Inc.
  dmi.chassis.version: Mac-F42D89A9
  dmi.modalias: dmi:bvnAppleInc.:bvrMB51.88Z.007D.B03.0904271443:bd04/27/09:svnAppleInc.:pnMacBook5,1:pvr1.0:rvnAppleInc.:rnMac-F42D89A9:rvrProto:cvnAppleInc.:ct10:cvrMac-F42D89A9:
  dmi.product.name: MacBook5,1
  dmi.product.version: 1.0
  dmi.sys.vendor: Apple Inc.
  system:
   distro:             Ubuntu
   codename:           maverick
   architecture:       i686
   kernel:             2.6.35-23-generic-pae

-- 
You received this bug notification because you are a member of Ubuntu-X,
which is subscribed to xserver-xorg-input-evdev in ubuntu.
https://bugs.launchpad.net/bugs/670016

Title:
  Xorg crashes when performing gesture



References