Xorg crashed with SIGSEGV in XIGetDeviceProperty()
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
xserver-xorg-input-synaptics (Ubuntu) |
Fix Released
|
Medium
|
Chase Douglas |
Bug Description
If the device is turned off, usually by syndaemon to disable the touchpad while the typing, the touch state will not be updated with the latest hardware state changes. If a touch begins while the device is off and ends while the device is on, then the touch count will be decremented without any previous increment. A similar effect will occur if the device is on when the touch begins, but off when the touch ends.
If the touch count goes negative, the index into the touch slot mask array will be out of bounds. This can corrupt memory and cause random crashes.
Original bug report
===================
No idea what happened.
ProblemType: Crash
DistroRelease: Ubuntu 12.04
Package: xserver-xorg-core 2:1.11.4-0ubuntu1
ProcVersionSign
Uname: Linux 3.2.0-15-generic x86_64
.tmp.unity.
ApportVersion: 1.91-0ubuntu1
Architecture: amd64
CheckboxSubmission: 2f383a1679e8525
CheckboxSystem: bb422ca46d02494
CompizPlugins: No value set for `/apps/
CompositorRunning: compiz
Date: Mon Feb 13 11:29:44 2012
DistUpgraded: Log time: 2011-12-02 10:42:12.615728
DistroCodename: precise
DistroVariant: ubuntu
ExecutablePath: /usr/bin/Xorg
ExecutableTimes
ExtraDebuggingI
GraphicsCard:
Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0126] (rev 09) (prog-if 00 [VGA controller])
Subsystem: Lenovo Device [17aa:21da]
InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Alpha amd64 (20110817)
MachineType: LENOVO 429149G
ProcCmdline: /usr/bin/X :0 -auth /var/run/
ProcCwd: /etc/X11
ProcEnviron:
ProcKernelCmdLine: BOOT_IMAGE=
SegvAnalysis:
Segfault happened at: 0x7f2934a65b88 <XIChangeDevice
PC (0x7f2934a65b88) ok
source "0x10(%r12)" (0x7f2900000010) not located in a known VMA region (needed readable region)!
destination "%rax" ok
SegvReason: reading unknown VMA
Signal: 11
SourcePackage: xorg-server
StacktraceTop:
XIGetDevicePro
?? ()
?? ()
?? ()
?? ()
Title: Xorg crashed with SIGSEGV in XIGetDeviceProp
UpgradeStatus: Upgraded to precise on 2012-01-12 (31 days ago)
UserGroups:
dmi.bios.date: 05/18/2011
dmi.bios.vendor: LENOVO
dmi.bios.version: 8DET46WW (1.16 )
dmi.board.
dmi.board.name: 429149G
dmi.board.vendor: LENOVO
dmi.board.version: Not Available
dmi.chassis.
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.
dmi.modalias: dmi:bvnLENOVO:
dmi.product.name: 429149G
dmi.product.
dmi.sys.vendor: LENOVO
version.compiz: compiz 1:0.9.6+
version.ia32-libs: ia32-libs N/A
version.libdrm2: libdrm2 2.4.30-1ubuntu1
version.
version.
version.
version.
version.
version.
version.
version.
Related branches
visibility: | private → public |
Changed in xorg-server (Ubuntu): | |
assignee: | nobody → Chase Douglas (chasedouglas) |
affects: | xorg-server (Ubuntu) → xserver-xorg-input-synaptics (Ubuntu) |
Changed in xserver-xorg-input-synaptics (Ubuntu): | |
status: | Confirmed → In Progress |
description: | updated |
StacktraceTop: perty (dev=0x7f293627 96b0, property=<optimized out>, value=0x7fff3cf af9b8) at ../../Xi/ xiproperty. c:852 0x7fff3cfafa88, type_return= 0x7fff3cfafa8c, format= 0x7fff3cfafa80, nitems= 0x7fff3cfafa84, length_ return= 0x7fff3cfafa7c, data=0x7fff3cfa fa70, delete=<optimized out>, client=<optimized out>) at ../../Xi/ xiproperty. c:290 afa70, length_ return= 0x7fff3cfafa7c, nitems= 0x7fff3cfafa84, format= 0x7fff3cfafa80, type_return= 0x7fff3cfafa8c, bytes_after= 0x7fff3cfafa88, length=1, offset=0, delete=0 '\000', type=19, property=278, dev=0x7f29362796b0, client=<optimized out>) at ../../Xi/ xiproperty. c:272 Property (client= 0x7f293629a600) at ../../Xi/ xiproperty. c:991 dispatch. c:439
XIGetDevicePro
get_property (dev=<optimized out>, property=278, type=19, offset=<optimized out>, length=<optimized out>, bytes_after=
get_property (data=0x7fff3cf
ProcXGetDevice
Dispatch () at ../../dix/