gtg-contributors team mailing list archive
-
gtg-contributors team
-
Mailing list archive
-
Message #00559
Re: weird X bug
On Thu, Dec 23, 2010 at 10:48:49AM -0800, Bryce Harrington wrote:
> On Thu, Dec 23, 2010 at 05:28:38PM +0100, invernizzi.l@xxxxxxxxx wrote:
> > Hello people,
> > first of all, merry Christmas!
> > I found a weird gtk bug, which seems to show that the crash "Fatal IO
> > error 0 (Success) on X server" is not due to liblarch-gtk.
> > In lp:~gtg-user/gtg/weird-X-crash there is a gtg version where
> > liblarch-gtk has been rendered a simple layer, with no reference
> > whatsoever to liblarch (that is, no task is ever shown). However, it
> > still crashes with the "bryce" dataset. Any clue?
>
> Crashing on a success message seems odd. ;-)
>
> This appears to match an error message in libx11:
>
> "XIO: fatal IO error %d (%s) on X server \"%s\"\r\n",
>
> (I assume you're seeing the 'XIO' in your error message?)
>
> This is in the routine _XDefaultIOError(), which is the default fatal
> system error reporting routine. Says it's called whenever an X internal
> system error is encountered.
>
> So... the error message by itself doesn't tell you very much.
>
> However, I bet if you installed debugging symbols for the libx11 package
> (sudo apt-get install libx11-6-dbg libx11-xcb1-dbg) and then ran in gdb
> with a breakpoint on that function, repro'd the crash, and then got a
> full backtrace from that point, it'd point to how the crash is
> originating.
It occurs to me that running python apps in gdb is not going to work!
Well, there might be some way of debugging python to get down to the C
layers. But beyond my python know-how.
Two other methods that might work...
If the process is still running you can attach to it by finding the
process's pid and then starting gdb and connecting to that pid.
The other approach would be to use strace on the python program. I
expect the output to be very messy but it might show some clues as to
what it's doing prior to the crash.
You should also doublecheck the tail end of your /var/log/Xorg.0.log and
/var/log/gdm/:0.log files. I don't expect there'd be error messages
there, but if the source of the error is something wrong with your X
server, it is possible an error would show there.
Bryce
References