Bling!

David Malcolm dmalcolm at redhat.com
Wed Feb 22 18:36:48 UTC 2006


On Wed, 2006-02-22 at 10:56 -0500, Adam Jackson wrote:
> On Feb 21, 2006, at 10:30 PM, Christopher Blizzard wrote:
> 
> > David Malcolm wrote:
> >> On Wed, 2006-02-08 at 23:05 -0500, Ray Strode wrote:
> >> [snip]
> >>> Things are still quite raw, so expect things to crash, your system to
> >>> lock up, effects to be unpolished, etc.
> >> Is there a bugzilla component I should file problems against?
> >
> > Probably against x.org, or just mail ajax.  Adam, does that sound OK 
> > with you?  Also update the wiki if you can...
> 
> Just poking me directly is best for now.
> 
> > --Chris
> >
> >> Are there debuginfo packages for the repo?
> >> I'm getting the Xair server apparently crashing during the login.  
> >> Upon
> >> investigation, it's an exit here:
> >> (gdb) bt
> >> #0  0x00b718c6 in exit () from /lib/libc.so.6
> >> #1  0x00f4cb96 in intelAllocateMemoryMESA ()
> >> from /usr/lib/dri/i915_dri.so
> >> #2  0x00f4d708 in intelWaitForIdle () from /usr/lib/dri/i915_dri.so
> 
> Is there anything printed on X's stderr before this happens?  (telinit 
> 3, startx from one ssh session, gdb attach from another to find out).
> 

It's exiting at line 88 below:
68      static void intelWaitIrq( intelContextPtr intel, int seq )
69      {
70         drmI830IrqWait iw;
71         int ret;
72
73         if (0)
74            fprintf(stderr, "%s %d\n", __FUNCTION__, seq );
75
76         iw.irq_seq = seq;
77
78         do {
79            ret = drmCommandWrite( intel->driFd, DRM_I830_IRQ_WAIT,
&iw, sizeof(iw) );
80         } while (ret == -EAGAIN || ret == -EINTR);
81
82         if ( ret ) {
83            fprintf( stderr, "%s: drmI830IrqWait: %d\n", __FUNCTION__,
ret );
84            if (0)
85               intel_dump_batchbuffer( intel->alloc.offset,
86                                       intel->alloc.ptr,
87                                       intel->alloc.size );
88            exit(1);
(gdb) print intel->alloc
$1 = {ptr = 0xa405b000, size = 262144, offset = 197361664, active_buf =
0, irq_emitted = 20}
(gdb) print ret
$2 = 36

(BTW I'm booting this laptop with "acpi=noirq" in order to get wireless
working, maybe that's it?)


> I suspect the hackaround I did for libcwrapper braindamage didn't make 
> its way into our Xair package.  The only thing I can see on this exit 
> path that would cause this kind of error is libdrm calls failing with 
> exotic errno values, which happens all the time if you hit the 
> libcwrapper'd libdrm.
> 
> >> Top tip for debugging:  ssh into the test machine from another host,
> >> locate the Xair process, and run a "gdb attach" onto that process from
> >> there, type "cont" to get the X server to continue.  You then have a
> >> vaguely sane debug environment, and can "break exit" (how I got the
> >> above). Should these notes be on the wiki?
> 
> Better would be to link to the canonical set:
> 
> http://xorg.freedesktop.org/wiki/DebuggingTheXserver
> 

Unfortunately, the wiki page has been marked "Immutable"




More information about the fedora-test-list mailing list