[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#206907: xserver-xfree86: hangs on screensaver



On Mon, Aug 25, 2003 at 11:24:24AM +0200, David N. Welton wrote:
> Sven Luther <sven.luther@wanadoo.fr> writes:
> 
> > > Well, that certainly looks like a good way to fuck yourself.
> > > Whoever wrote this code has a lot of confidence in the underlying
> > > hardware.
> 
> > > Since I happen to know that Sven Luther does a lot of glint driver
> > > work, I'm CCing him on this message.
> 
> > Yep, i did write part of this code, altough i mostly worked for the
> > permedia3, but it is the same code. Could you try building the glint
> > module with the DEBUG #define at the start of pm2_accel.c set to 1,
> > in order to see the call trace in the /var/log/XFree86.0.log.
> 
> I don't have the X sources or bandwidth to sit around compiling this
> stuff, but I will test out glint.o's that you guys send me.

Ok, i will see what i can do, what X are you using ? Mmm, forget thta, i
will find it from your original bugreport.

(BTW, one more reason for us to ship the SDK package, that way people
could easily rebuild the drivers, without needing the whole X server
tree, and the hours of compile time, not counting the 4+ Go needed to
build the debian packages.

> Something I failed to mention in my original bug report is that this
> machine has always worked just fine in the past.  I don't think it's a
> hardware problem unless it just started for some weird reason.

Well, i suppose that the hardware could start failing after a period of
time or somethign such, it is rather old hardware anyway. Or maybe you
added another pci card or something, which eats your bandwith away, or
you have a faster processor which fills the fifo queue quickly or
something. My pm2 board used to work fine for month, and now i have
duplication of the mouse cursor after rebooting it. But then, it is this
funny bvision, which is found in my apus amiga which was not really
designed for such additional expansions. Over heating and failing
powersupply may also cause this kind of problems.

One thing you could do is check if there is the possibility of using the
pciretry option, and if it changes anything to your behavior. pci retry
or pci disconnect it is called i think, not sure, read the glint
manpage, it should disable the pci bus when the fifo is full.

> 
> 01:00.0 Class 0380: 104c:3d07 (rev 01)
>         Subsystem: 1092:0149
>         Flags: 66Mhz, medium devsel, IRQ 11
>         Memory at fcfe0000 (32-bit, non-prefetchable) [size=128K]
>         Memory at fc000000 (32-bit, non-prefetchable) [size=8M]
>         Memory at fb800000 (32-bit, non-prefetchable) [size=8M]
>         Expansion ROM at 80000000 [disabled] [size=64K]
>         Capabilities: [40] AGP version 1.0

Huh ? What is that, do you have a second pci bus or something ?
> 02:0a.0 Class 0100: 9005:001f
> 02:0e.0 Class 0100: 9004:8078 (rev 01)
> 
> Here is lspci -v for this device:
> 
> 01:00.0 Display controller: Texas Instruments TVP4020 [Permedia 2] (rev 01)
>         Subsystem: Diamond Multimedia Systems FIRE GL 1000 PRO
>         Flags: 66Mhz, medium devsel, IRQ 11
>         Memory at fcfe0000 (32-bit, non-prefetchable) [size=128K]
>         Memory at fc000000 (32-bit, non-prefetchable) [size=8M]
>         Memory at fb800000 (32-bit, non-prefetchable) [size=8M]
>         Expansion ROM at 80000000 [disabled] [size=64K]
>         Capabilities: [40] AGP version 1.0

Ok, so you have a TI permedia2, in an agp slot.

> > My first guess would either be a previous call did make the graphic
> > pipeline die, or maybe even hog the bus. Does the machine stay
> > accessible under ssh or something, i guess yes since you were able
> > to to gdb work on it. What happens if you kill and restart the X
> > server, which should reinitialize the pipeline.
> 
> Killing and restarting the X server doesn't seem to do anything.  I
> still have a blank screen, and I haven't been able to get the hardware
> 'back to normal' without rebooting.  You are correct in assuming that
> the machine itself is not hanging, the load goes to one and X is dead
> but I am able to ssh just fine.

Mmm, strange, the driver should be able to reinitialize the whole
graphic pipeline, my diagnostic is that the card is deadlocked somehow,
and that only a resest can revive it. I don't know if we are able to
revive it without rebooting, but anyway, best let us try to solve the
problem instead.

> > > Sven, any ideas?
> 
> > I hope this gives some ideas, altough the randomness of this
> > happening might well be the input fifo overflowing and thus loosing
> > the sync command or something such. Tricky thing to hunt down if
> > this is the case.
> 
> Well, I'm willing to try stuff out for you guys, but I would like to
> avoid downloading and compiling X.  I don't really have the time for
> that.

I will try to build a debugging glint.o this evening. That said, you
will not be able to gdb it, since the debugging server is statically
built, err, that is not using the module loader.

> As for the machine itself:
> 
> Linux eugene 2.4.21 #2 Fri Jun 27 15:58:56 CEST 2003 i686 GNU/Linux
> 
> Although I thought that stuff was in the bug report.

Do you use pm2fb or something such ?

Friendly,

Sven Luther




Reply to: