Xserver crash on resume

Robert Gerlach khnz at gmx.de
Wed Nov 7 11:34:24 PST 2007


Hi,

I'm using a tablet notebook with a rotable screen. A small (self written) 
daemon rotates the desktop if I rotate the display. All works fine, except I 
rotate the display while the notebook is in standby. On resume, the daemon 
makes the randr calls to rotate the desktop and X crashed with SEGV (using 
i810, 1.7.4 - Ubuntu Gutsy).

Backtrace:
0: X(xf86SigHandler+0x81) [0x80bf361]
1: [0xffffe420]
2: /usr/lib/xorg/modules//libfb.so(fbFillRegionSolid+0xd5) [0xb7bf8d75]
3: /usr/lib/xorg/modules//libfb.so(fbPaintWindow+0xb3) [0xb7bf8ed3]
4: /usr/lib/xorg/modules//libxaa.so(XAAPaintWindow+0x150) [0xb7b9e1a0]
5: X [0x817ca5e]
6: X [0x8178121]
7: X(compPaintWindowBackground+0x6d) [0x810a77d]
8: X(miWindowExposures+0xfa) [0x81265ea]
9: X [0x80db81c]
10: X(miHandleValidateExposures+0x78) [0x813e168]
11: X [0x80cf8f8]
12: /usr/lib/xorg/modules//libxaa.so [0xb7b87ad3]
13: X [0x8100973]
14: /usr/lib/xorg/modules/drivers//i810_drv.so(I830RandRSetConfig+0x2bf) 
[0xb7e4334f]
15: X(RRCrtcSet+0x15c) [0x816f3cc]
16: X(ProcRRSetScreenConfig+0x4fa) [0x8173eda]
17: X [0x816dc95]
18: X [0x815754e]
19: X(Dispatch+0x1aa) [0x808f47a]
20: X(main+0x495) [0x8076f05]
21: /lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe0) [0x49418050]
22: X(FontFileCompleteXLFD+0x1e1) [0x8076241]

Fatal server error:
Caught signal 11.  Server aborting

A simple sleep in my rotate function solved this issue. Is there a clean way 
to detect this resume phase and delay the randr calls?

Thanks,
  Robert



More information about the xorg mailing list