[Cairo] Odd crash in cairo-demo/xrspline

Eric Christopherson rakko at charter.net
Thu Aug 28 13:08:45 PDT 2003


I'm not sure why I haven't gotten around to posting this until now. Anyway,
I built Kdrive (Xfbdev and Xvesa) in order to see if the xrspline demo would
crash them, as it did the standard XFree86 server. It turns out both of the
Kdrive servers crashed as well.

I have attached logs of my gdb sessions on each X server. The Kdrive ones
have debugging info available, but I was not able to figure out how to
enable it when compiling the regular XFree86 server. Could someone help me
with what options I need to enable to do that, and what files to put them in
(e.g. host.def, etc.)?

To summarize the logs, the Kdrive servers seem to segfault in
fbBuildCompositeOperand, which is called in the rasterization routine. I'd
like to assume that the XFree86 one crashes there as well, but without
debugging symbols I can't tell.

The png examples run correctly. Also, it seems that whether xrspline or
cairo-spline crash the server immediately depends on which spline is defined
as the DEFAULT_SPLINE in the source. Some of them stay running at first, but
if I change settings in certain ways, they crash the server (I haven't
discovered which types of changes trigger it). Others cause the crash right
when the program starts. Interestingly, the ones which do NOT trigger a
crash right off the bat also do not show up in the window. It's all white.

Well, I hope this gets the ball rolling again on what's wrong here...

-- 
Furrfu!		r a k k o  at  c h a r t e r  dot  n e t
-------------- next part --------------
eric at raych [ ~ ] $ sudo gdb /usr/local/X11R6/bin/XFree86 
GNU gdb 5.3.90_2003-06-29-cvs-debian
Copyright 2003 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"...
(gdb) run vt8 -dpi 100 -layout medium-nv -bestRefresh -nolisten tcp
Starting program: /site/usr/X11R6/bin/XFree86 vt8 -dpi 100 -layout medium-nv -bestRefresh -nolisten tcp

This is a pre-release version of XFree86, and is not supported in any
way.  Bugs may be reported to XFree86 at XFree86.Org and patches submitted
to fixes at XFree86.Org.  Before reporting bugs in pre-release versions,
please check the latest version in the XFree86 CVS repository
(http://www.XFree86.Org/cvs).

XFree86 Version 4.3.99.10
Release Date: 10 August 2003
X Protocol Version 11, Revision 0, Release 6.6
Build Operating System: Linux 2.4.21-ck-badmem i686 [ELF] 
Build Date: 14 August 2003
Changelog Date: 12 August 2003
        Before reporting problems, check http://www.XFree86.Org/
        to make sure that you have the latest version.
Module Loader present
Markers: (--) probed, (**) from config file, (==) default setting,
         (++) from command line, (!!) notice, (II) informational,
         (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/XFree86.0.log", Time: Thu Aug 14 21:45:49 2003
(==) Using config file: "/etc/X11/XF86Config-4"
Warning: font renderer for ".pcf" already registered at priority 0
Warning: font renderer for ".pcf.Z" already registered at priority 0
Warning: font renderer for ".pcf.gz" already registered at priority 0
Warning: font renderer for ".snf" already registered at priority 0
Warning: font renderer for ".snf.Z" already registered at priority 0
Warning: font renderer for ".snf.gz" already registered at priority 0
Warning: font renderer for ".bdf" already registered at priority 0
Warning: font renderer for ".bdf.Z" already registered at priority 0
Warning: font renderer for ".bdf.gz" already registered at priority 0
Warning: font renderer for ".pmf" already registered at priority 0
Could not init font path element /usr/lib/X11/fonts/cyrillic, removing from list!
Could not init font path element /usr/local/share/fonts/truetype, removing from list!
Could not init font path element /var/lib/defoma/x-ttcidfont-conf.d/dirs/CID, removing from list!

Program received signal SIGSEGV, Segmentation fault.
0x087171d2 in ?? ()
(gdb) bt
#0  0x087171d2 in ?? ()
#1  0xbfffee38 in ?? ()
#2  0x00a70000 in ?? ()
(gdb) quit
-------------- next part --------------
eric at raych [ ~ ] $ sudo modprobe rivafb
eric at raych [ ~ ] $ sudo fbset -a 1280x1024-75
eric at raych [ ~ ] $ sudo gdb /usr/local/X11R6/bin/Xfbdev 
GNU gdb 5.3.90_2003-06-29-cvs-debian
Copyright 2003 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"...
(gdb) run -dpi 100 -nolisten tcp -nolisten inet6
Starting program: /site/usr/X11R6/bin/Xfbdev -dpi 100 -nolisten tcp -nolisten inet6

Program received signal SIGSEGV, Segmentation fault.
0x080b70c2 in fbBuildCompositeOperand (pPict=0x82b7770, op=0xbfffef90, x=0, y=0, transform=0, alpha=0) at fbcompose.c:2786
2786                                   xoff, yoff);
(gdb) bt
#0  0x080b70c2 in fbBuildCompositeOperand (pPict=0x82b7770, op=0xbfffef90, x=0, y=0, transform=0, alpha=0) at fbcompose.c:2786
#1  0x080bfa8b in fbRasterizeTrapezoid (pMask=0x82b7770, pTrap=0x82b9e00, x_off=-49, y_off=32768) at fbtrap.c:1058
#2  0x0810af37 in miTrapezoids (op=3 '\003', pSrc=0x82b7578, pDst=0x82b7408, maskFormat=0x813f5b8, xSrc=49, ySrc=-32767, ntrap=18, traps=0x82b9e00) at mitrap.c:173
#3  0x080a2ec3 in CompositeTrapezoids (op=3 '\003', pSrc=0x82b7578, pDst=0x82b7408, maskFormat=0x813f5b8, xSrc=49, ySrc=-32767, ntrap=33, traps=0x82b9ba8) at picture.c:1212
#4  0x0810d4a6 in ProcRenderTrapezoids (client=0x82b6fc8) at render.c:778
#5  0x0810f820 in ProcRenderDispatch (client=0x82b6fc8) at render.c:1812
#6  0x08061097 in Dispatch () at dispatch.c:450
#7  0x0804ab67 in main (argc=7, argv=0xbffff5d4, envp=0xbffff5f4) at main.c:435
(gdb) quit
-------------- next part --------------
eric at raych [ ~ ] $ sudo gdb /usr/local/X11R6/bin/Xvesa 
GNU gdb 5.3.90_2003-06-29-cvs-debian
Copyright 2003 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"...
(gdb) run -screen 1280x1024x32 -dpi 100 -nolisten tcp -nolisten inet6
Starting program: /site/usr/X11R6/bin/Xvesa -screen 1280x1024x32 -dpi 100 -nolisten tcp -nolisten inet6
Switching to mouse protocol "imps/2"

Program received signal SIGSEGV, Segmentation fault.
0x080bd22a in fbBuildCompositeOperand (pPict=0x828bae8, op=0xbfffef70, x=0, y=0, transform=0, alpha=0) at fbcompose.c:2786
2786                                   xoff, yoff);
(gdb) bt
#0  0x080bd22a in fbBuildCompositeOperand (pPict=0x828bae8, op=0xbfffef70, x=0, y=0, transform=0, alpha=0) at fbcompose.c:2786
#1  0x080c5bf3 in fbRasterizeTrapezoid (pMask=0x828bae8, pTrap=0x82cf1c8, x_off=-49, y_off=32768) at fbtrap.c:1058
#2  0x0811109f in miTrapezoids (op=3 '\003', pSrc=0x828b8f0, pDst=0x828db20, maskFormat=0x8158000, xSrc=49, ySrc=-32767, ntrap=18, traps=0x82cf1c8) at mitrap.c:173
#3  0x080a902b in CompositeTrapezoids (op=3 '\003', pSrc=0x828b8f0, pDst=0x828db20, maskFormat=0x8158000, xSrc=49, ySrc=-32767, ntrap=33, traps=0x82cef70) at picture.c:1212
#4  0x0811360e in ProcRenderTrapezoids (client=0x828b6d0) at render.c:778
#5  0x08115988 in ProcRenderDispatch (client=0x828b6d0) at render.c:1812
#6  0x080610cb in Dispatch () at dispatch.c:450
#7  0x0804ab9b in main (argc=9, argv=0xbffff5b4, envp=0xbffff5dc) at main.c:435
(gdb) quit


More information about the cairo mailing list