Re: hangs using opengl

Nix N. Nix (nix@go-nix.ca)
17 Jan 2002 16:38:32 -0500


On Thu, 2002-01-17 at 18:26, Denis Vlasenko wrote:
> On 17 January 2002 17:03, Nix N. Nix wrote:
> > > Via has recently released a patch to Via-chipset based boards that
> > > addresses issues Windows XP users have been experiencing (BSODs and
> > > friends) while playing OpenGL games, especially with NVidia chips. The
> > > problem and the description of the fix (as taken from the Readme.txt
> > > from Via's patch) are as follow:
> > >
> > > So what does it do? It closes the RX55 memory register in BIOS. The RX55
> > > register's official name and function is Memory Write Queue (MWQ) timer.
> > > The MWQ timer is actually a timing device included in the memory host
> > > controller to prevent write data being held in the memory queue too
> > > long. After the data has been in the queue too long it times out. This
> > > timed out data is then given a higher write request priority. Now that
> > > might sound nice a bit of extra performance BUT the procedure fails when
> > > overloaded. 3D games and Win XP put too much load on the memory queuing
> > > timer procedure. The nVidia new driver exaggerates the problem even more
> > > as the driver enables nVidia cards to use even more memory than previous
> > > driver versions.
>
> [snip]
>
> > > In light of VIAs discoveries, and the fact that the patch that they now
> > > have available for Windows is not available for Linux also, I was
> > > wondering if somebody on this list may be kind enough to help us with
> > > what may very well be the symptoms of the same problem, but on Linux.
> > > Could the code that accomplishes the above (turn off the RX55 register)
> > > be made into a patch that can be applied to the kernel, thus providing
> > > an equivalent patch for Linux systems ?
>
> Athlon bug stomper is already in mainline. If latest kernel does not work for
> you, check that register (man lspci) and 0x95 also. Try to disable them (man

I did lspci -vv -xxx
Each entry is followed by a table of hex. Is it entries 0x55 and 0x95
in that table that you're referring to ? If so, well, they're both 0:

01:00.0 VGA compatible controller: nVidia Corporation NV11 (rev a1)
(prog-if 00 [VGA])
Subsystem: Asustek Computer, Inc.: Unknown device 4015
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Stepping- SERR- FastB2B-
Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 248 (1250ns min, 250ns max)
Interrupt: pin A routed to IRQ 11
Region 0: Memory at ee000000 (32-bit, non-prefetchable)
[size=16M]
Region 1: Memory at f0000000 (32-bit, prefetchable) [size=128M]
Expansion ROM at efff0000 [disabled] [size=64K]
Capabilities: [60] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [44] AGP version 2.0
Status: RQ=31 SBA- 64bit- FW+ Rate=x1,x2
Command: RQ=31 SBA- AGP+ 64bit- FW- Rate=x2
00: de 10 10 01 07 00 b0 02 a1 00 00 03 00 f8 00 00
10: 00 00 00 ee 08 00 00 f0 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 43 10 15 40
30: 00 00 00 00 60 00 00 00 00 00 00 00 0b 01 05 01
40: 43 10 15 40 02 00 20 00 17 00 00 1f 02 01 00 1f
50: 01 00 00 00 01 [00] 00 00 ce d6 23 00 0f 00 00 00
60: 01 44 02 00 00 00 00 00 00 00 00 00 00 00 00 00
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
90: 00 00 00 00 00 [00] 00 00 00 00 00 00 00 00 00 00
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

> setpci). Report back - we may need to further improve stomper.
> --
> vda
>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/