| Summary: | Xorg crashes in mieqProcessDeviceEvent | ||
|---|---|---|---|
| Product: | xorg | Reporter: | Sung-Jin Park <graphia> |
| Component: | Server/Input/Core | Assignee: | Xorg Project Team <xorg-team> |
| Status: | RESOLVED DUPLICATE | QA Contact: | Xorg Project Team <xorg-team> |
| Severity: | critical | ||
| Priority: | high | Keywords: | have-backtrace |
| Version: | 7.5 (2009.10) | ||
| Hardware: | ARM | ||
| OS: | Linux (All) | ||
| Whiteboard: | |||
| i915 platform: | i915 features: | ||
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.
Hello, Xorg server crashed in mieqProcessDeviceEvent() in my armel environment. Callstack is like following: 0: gsignal+0x40(0x41dbc12c) [/lib/libc.so.6]+0x2c12c 1: abort+0x1b0(0x41dc19f8) [/lib/libc.so.6]+0x319f8 2: FatalError+0x68(0x6b20c) [/usr/bin/Xorg]+0x6320c 3: mieqProcessDeviceEvent+0x3c(0x62ed4) [/usr/bin/Xorg]+0x5aed4 4: mieqProcessInputEvents+0xa0(0x630c0) [/usr/bin/Xorg]+0x5b0c0 5: ProcessInputEvents+0x10(0x79090) [/usr/bin/Xorg]+0x71090 6: (0x400d9628) [/usr/lib/xorg/modules/input/evdev_drv.so]+0x3628 : EvdevDeleteSubDevice() 7: (0x400db404) [/usr/lib/xorg/modules/input/evdev_drv.so]+0x5404 : EvdevProc() 8: DisableDevice+0x128(0x39eac) [/usr/bin/Xorg]+0x31eac 9: RemoveDevice+0x200(0x3a214) [/usr/bin/Xorg]+0x32214 10: DeleteInputDeviceRequest+0x3c(0x74ac4) [/usr/bin/Xorg]+0x6cac4 11: (0x39934) [/usr/bin/Xorg]+0x31934 : CloseDownDevices() 12: (0x6acec) [/usr/bin/Xorg]+0x62cec : AbortServer() 13: FatalError+0x94(0x6b238) [/usr/bin/Xorg]+0x63238 14: __default_rt_sa_restorer_v2+0x0(0x41dbd4c0) [/lib/libc.so.6]+0x2d4c0 15: OsVendorFatalError+0x5c(0x7566c) [/usr/bin/Xorg]+0x6d66c 16: FatalError+0x7c(0x6b220) [/usr/bin/Xorg]+0x63220 17: mieqProcessDeviceEvent+0x3c(0x62ed4) [/usr/bin/Xorg]+0x5aed4 18: mieqProcessInputEvents+0xa0(0x630c0) [/usr/bin/Xorg]+0x5b0c0 19: ProcessInputEvents+0x10(0x79090) [/usr/bin/Xorg]+0x71090 20: (0x33c08) [/usr/bin/Xorg]+0x2bc08 : Dispatch 21: (0x26cc0) [/usr/bin/Xorg]+0x1ecc0 : main() 22: __libc_start_main+0x118(0x41da5364) [/lib/libc.so.6]+0x15364 In 16th frame FatalError() was called in CHECKEEVENT(ev) in mieqProcessDeviceEvent(). #define CHECKEVENT(ev) if (ev && ((InternalEvent*)(ev))->any.header != 0xFF) \ FatalError("Wrong event type %d.\n", \ ((InternalEvent*)(ev))->any.header); If the header of an event was wrong, FatalError() will be called. But the event was picked from the miEventQueue and every event was also checked by CHECKEVENT macro when queueing @miEventQueue. Is there any guys who can explain about this problem ?