A way to crash xcompmgr

Alexander E. Patrakov patrakov at ums.usu.ru
Tue Feb 8 00:16:34 PST 2005


I tried to play with SDL apps and noticed that they don't work well with 
Composite enabled (usually the result is all-white or all-transparent, that's 
definitely a bug in SDL or in apps). To work around that, I tried forcing a 
different X11 visual to SDL apps, like this:

SDL_VIDEO_X11_VISUALID=0x32 dosbox

However, this DirectColor visual immediately crashes xcompmgr. TrueColor 
visuals (e.g. 0x2a) work. Please fix xcompmgr.

Some information about my system:

It's Debian Unstable with Xorg packages provided by Marc-Christian Petersen. 
The AGP video card is a Radeon 9200 (PCI ID 1002:5961), using the open-source 
"radeon" driver.

The output of xdpyinfo and gdb:

patrakov at debian:~$ xdpyinfo
name of display:    :0.0
version number:    11.0
vendor string:    The X.Org Foundation
vendor release number:    60801000
X.Org version: 6.8.1
maximum request size:  16777212 bytes
motion buffer size:  256
bitmap unit, bit order, padding:    32, LSBFirst, 32
image byte order:    LSBFirst
number of supported pixmap formats:    7
supported pixmap formats:
    depth 1, bits_per_pixel 1, scanline_pad 32
    depth 4, bits_per_pixel 8, scanline_pad 32
    depth 8, bits_per_pixel 8, scanline_pad 32
    depth 15, bits_per_pixel 16, scanline_pad 32
    depth 16, bits_per_pixel 16, scanline_pad 32
    depth 24, bits_per_pixel 32, scanline_pad 32
    depth 32, bits_per_pixel 32, scanline_pad 32
keycode range:    minimum 8, maximum 255
focus:  window 0x2200007, revert to PointerRoot
number of extensions:    33
    BIG-REQUESTS
    Composite
    DAMAGE
    DOUBLE-BUFFER
    DPMS
    Extended-Visual-Information
    FontCache
    GLX
    LBX
    MIT-SCREEN-SAVER
    MIT-SHM
    MIT-SUNDRY-NONSTANDARD
    RANDR
    RECORD
    RENDER
    SECURITY
    SGI-GLX
    SHAPE
    SYNC
    TOG-CUP
    X-Resource
    XC-APPGROUP
    XC-MISC
    XFIXES
    XFree86-Bigfont
    XFree86-DGA
    XFree86-DRI
    XFree86-Misc
    XFree86-VidModeExtension
    XInputExtension
    XKEYBOARD
    XTEST
    XVideo
default screen number:    0
number of screens:    1

screen #0:
  print screen:    no
  dimensions:    1024x768 pixels (283x212 millimeters)
  resolution:    92x92 dots per inch
  depths (7):    24, 1, 4, 8, 15, 16, 32
  root window id:    0x49
  depth of root window:    24 planes
  number of colormaps:    minimum 1, maximum 1
  default colormap:    0x20
  default number of colormap cells:    256
  preallocated pixels:    black 0, white 16777215
  options:    backing-store NO, save-unders NO
  largest cursor:    64x64
  current input event mask:    0xfa4031
    KeyPressMask             EnterWindowMask          LeaveWindowMask
    KeymapStateMask          StructureNotifyMask      SubstructureNotifyMask
    SubstructureRedirectMask FocusChangeMask          PropertyChangeMask
    ColormapChangeMask
  number of visuals:    17
  default visual id:  0x23
  visual:
    visual id:    0x23
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x24
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x25
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x26
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x27
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x28
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x29
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x2a
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x2b
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x2c
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x2d
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x2e
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x2f
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x30
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x31
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x32
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x47
    class:    TrueColor
    depth:    32 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits

patrakov at debian:~$ gdb xcompmgr
GNU gdb 6.3-debian
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-linux"...(no debugging symbols found)
Using host libthread_db library "/lib/tls/libthread_db.so.1".

(gdb) run
Starting program: /usr/X11R6/bin/xcompmgr 
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)

Program received signal SIGSEGV, Segmentation fault.
0xb7fd52b5 in XRenderCreatePicture () from /usr/lib/libXrender.so.1
(gdb) bt
#0  0xb7fd52b5 in XRenderCreatePicture () from /usr/lib/libXrender.so.1
#1  0x0804b2fd in ?? ()
#2  0x08053008 in ?? ()
#3  0x02c00674 in ?? ()
#4  0x00000000 in ?? ()
#5  0x00000100 in ?? ()
#6  0xbffff8e0 in ?? ()
#7  0x00000000 in ?? ()
#8  0x00000000 in ?? ()
#9  0x00000000 in ?? ()
#10 0x00000000 in ?? ()
#11 0x00000000 in ?? ()
#12 0x000002d2 in ?? ()
#13 0x00000400 in ?? ()
#14 0x0000002e in ?? ()
#15 0x08050a2e in _IO_stdin_used ()
#16 0x00000005 in ?? ()
#17 0x08052524 in ?? ()
#18 0x08053008 in ?? ()
#19 0x02c00670 in ?? ()
#20 0xbffff8e8 in ?? ()
#21 0x0804f5de in ?? ()
#22 0x08053008 in ?? ()
#23 0x08050a2e in _IO_stdin_used ()
---Type <return> to continue, or q <return> to quit---
#24 0x00000400 in ?? ()
#25 0x000002d2 in ?? ()
#26 0x00000000 in ?? ()
#27 0x0805cdc8 in ?? ()
#28 0x00000048 in ?? ()
#29 0x0804f1de in ?? ()
#30 0x08053008 in ?? ()
#31 0x02c00670 in ?? ()
#32 0xbffff908 in ?? ()
#33 0xb7ee0620 in __after_morecore_hook () from /lib/tls/libc.so.6
#34 0xb7edfc60 in ?? () from /lib/tls/libc.so.6
#35 0xb7ee0620 in __after_morecore_hook () from /lib/tls/libc.so.6
#36 0x08079150 in ?? ()
#37 0xbffff918 in ?? ()
#38 0x00000001 in ?? ()
#39 0xb7ee0620 in __after_morecore_hook () from /lib/tls/libc.so.6
#40 0x08079150 in ?? ()
#41 0x08079160 in ?? ()
#42 0x00003517 in ?? ()
#43 0xbffff990 in ?? ()
#44 0xbffff938 in ?? ()
#45 0x0804c4ee in ?? ()
#46 0x08053008 in ?? ()
#47 0x01403157 in ?? ()
---Type <return> to continue, or q <return> to quit---
#48 0x02c0066d in ?? ()
#49 0x00000000 in ?? ()
#50 0xbffff9f0 in ?? ()
#51 0xbffff990 in ?? ()
#52 0xbffffa68 in ?? ()
#53 0x0804d0c3 in ?? ()
#54 0x08053008 in ?? ()
#55 0x02c00667 in ?? ()
#56 0x00000000 in ?? ()
#57 0x00000001 in ?? ()
#58 0xbffff9a0 in ?? ()
#59 0xbffff9a4 in ?? ()
#60 0x00000000 in ?? ()
#61 0x00000000 in ?? ()
#62 0x00000000 in ?? ()
#63 0x00000000 in ?? ()
#64 0x00000001 in ?? ()
#65 0xbffff994 in ?? ()
#66 0x00000000 in ?? ()
#67 0x00000000 in ?? ()
#68 0xb7dba16c in ?? () from /lib/tls/libc.so.6
#69 0xbffff9d0 in ?? ()
#70 0xb7ff1a4c in _dl_unload_cache () from /lib/ld-linux.so.2
Previous frame inner to this frame (corrupt stack?)
(gdb) quit
The program is running.  Exit anyway? (y or n) y

-- 
Alexander E. Patrakov



More information about the xorg mailing list