Bug 129953

Summary: Nvidia video adaptor has misdetected video memory
Product: [Fedora] Fedora Reporter: David Elwell <elwell>
Component: xorg-x11Assignee: Mike A. Harris <mharris>
Status: CLOSED RAWHIDE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 4CC: mattdm, xgl-maint
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-01-27 10:55:19 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 150221    
Attachments:
Description Flags
log file none

Description David Elwell 2004-08-15 16:28:49 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.2)
Gecko/20040803

Description of problem:


Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
1. Message from X.Org X11 log instructs me tofile bug report
2.
3.
    

Additional info:

Comment 1 David Elwell 2004-08-15 16:35:22 UTC
Created attachment 102746 [details]
log file

X.Org log file instructed me to attach this file, as well as
/etc/X11/XF86Config (could not find it) and output of command lspci -vvn
(command not found)

Comment 2 Mike A. Harris 2004-08-18 14:59:28 UTC
Changing to "xorg-x11" component.

Comment 3 Mike A. Harris 2004-08-18 15:01:13 UTC
You have to be root to run "lspci" or you have to explicitly call it
in /sbin/lspci.  Additionally, the output is limited if you run
it as non-root.

Please attach lspci -vvn output.

Comment 5 David Elwell 2004-09-01 02:20:20 UTC
I think I got it:

[root@localhost sbin]# /sbin/lspci -vvn
00:00.0 Class 0600: 8086:7190 (rev 02)
        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: 64
        Region 0: Memory at f8000000 (32-bit, prefetchable)
        Capabilities: [a0] AGP version 1.0
                Status: RQ=32 Iso- ArqSz=0 Cal=0 SBA+ ITACoh- GART64-
HTrans- 64bit- FW- AGP3- Rate=x1,x2
                Command: RQ=1 ArqSz=0 Cal=0 SBA- AGP- GART64- 64bit-
FW- Rate=<none>
 
00:01.0 Class 0604: 8086:7191 (rev 02)
        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: 128
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
        Memory behind bridge: f5000000-f5ffffff
        Prefetchable memory behind bridge: fc000000-fcffffff
        BridgeCtl: Parity- SERR- NoISA+ VGA+ MAbort- >Reset- FastB2B+
 
00:07.0 Class 0601: 8086:7110 (rev 02)
        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: 0
 
00:07.1 Class 0101: 8086:7111 (rev 01) (prog-if 80 [Master])
        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: 64
        Region 4: I/O ports at 1060 [size=16]
 
00:07.2 Class 0c03: 8086:7112 (rev 01)
        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: 64
        Interrupt: pin D routed to IRQ 9
        Region 4: I/O ports at 1040 [size=32]
 
00:07.3 Class 0680: 8086:7113 (rev 02)
        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-
        Interrupt: pin ? routed to IRQ 9
 
00:0b.0 Class 0401: 1013:6001 (rev 01)
        Subsystem: 8086:8080
        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: 64 (1000ns min, 6000ns max)
        Interrupt: pin A routed to IRQ 9
        Region 0: Memory at f4100000 (32-bit, non-prefetchable)
        Region 1: Memory at f4000000 (32-bit, non-prefetchable) [size=1M]
 
00:0e.0 Class 0400: 11de:6120 (rev 03)
        Subsystem: 1328:f001
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 64 (500ns min, 4000ns max)
        Interrupt: pin A routed to IRQ 9
        Region 0: Memory at f4101000 (32-bit, non-prefetchable)
 
00:0f.0 Class 0401: 1274:5880 (rev 04)
        Subsystem: 1274:8001
        Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Stepping- SERR+ FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=slow >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 96 (3000ns min, 32000ns max)
        Interrupt: pin A routed to IRQ 9
        Region 0: I/O ports at 1000
        Capabilities: [dc] 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-
 
01:00.0 Class 0300: 12d2:0018 (rev 21)
        Subsystem: 10b4:222a
        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: 64 (750ns min, 250ns max)
        Interrupt: pin A routed to IRQ 11
        Region 0: Memory at f5000000 (32-bit, non-prefetchable)
        Region 1: Memory at fc000000 (32-bit, prefetchable) [size=16M]
        Capabilities: [44] AGP version 1.0
                Status: RQ=5 Iso- ArqSz=0 Cal=0 SBA- ITACoh- GART64-
HTrans- 64bit- FW- AGP3- Rate=x1,x2
                Command: RQ=1 ArqSz=0 Cal=0 SBA- AGP- GART64- 64bit-
FW- Rate=<none>
 

Comment 6 Mike A. Harris 2004-09-24 10:32:38 UTC
Ok, thanks for the info.  I'll update the "nv" driver to special
case this chip for future X.Org releases.  This will not fix
the autodetection, but rather will help to make the "nv" driver
more robust by only allowing videoram overrides where they are
truely needed. This also makes it explicit which cards the code
can not currently autodetect RAM on, in case someone knows how
to do it correctly in the future and can fix it to autodetect.

Once I've updated the driver, I'll close this.

Thanks again.

Comment 7 Mike A. Harris 2004-09-24 10:35:31 UTC
One more thing..  You didn't mention how much video memory this
card has on it.  Could you update the report with that info as
well?

Thanks in advance.

Comment 8 David Elwell 2004-09-25 02:51:35 UTC
According to the Dell User's Guide:

8MB

And I hope it lasts forever.

Thank you.

Comment 9 Mike A. Harris 2004-09-25 23:04:30 UTC
Cool, thanks.   On the bright side of things, even though the driver
can't detect the amount of video memory on this card currently, it
defaults to configuring it for 8Mb of memory, which will have the
same net result for your particular card.  ;o)

I'll add the card's PCI ID to a list of ID's allowed to manually
override the video ram amount however, in case there are other
models with the same PCI ID which have a different amount of memory.

Once I've had a chance to add the whitelist to the nv driver,
I'll update the status here and close the report.

Thanks for the info!

Comment 13 Mike A. Harris 2005-09-01 10:22:12 UTC
Doh, I just noticed the nv debugging message I had in the X server
was getting truncated at 1024.  Here's the full message (cut and
pasted from the patch, sorry for ugliness)

+"\n\tIMPORTANT NOTE - PLEASE READ:  This driver does not properly\n"
+"\tautodetect the correct amount of video memory on all of the\n"
+"\tcurrently supported Nvidia video hardware due to the required\n"
+"\ttechnical specifications not being available to developers.\n"
+"\tIn order to improve video memory autodetection in future\n"
+"\tdriver releases, this driver has had the above debugging\n"
+"\tinformation added in the autodetection logic by Red Hat.  If\n"
+"\tyou are seeing this message, please file a bug report in the\n"
+"\tRed Hat bugzilla at http://bugzilla.redhat.com indicating that\n");
+       xf86Msg(X_INFO,"\tyour Nvidia video adaptor has misdetected video
memory.  Make\n"
+"\tsure you attach the X config file \"/etc/X11/XF86Config\",\n"
+"\tX server log file \"/var/log/XFree86.0.log\", and the output\n"
+"\tof the command \"lspci -vvn\" to the bug report as individual\n"
+"\tuncompressed file attachments using the bugzilla file\n"
+"\tattachment feature.  In your bug report, be sure to mention\n"
+"\texactly how much video memory the card really does have, and\n"
+"\tbe sure this value is confirmed and not just a best guess.\n"
+"\tBy examining the data provided, we may be able to improve\n"
+"\tvideo memory autodetection in a future video driver update.\n\n");
+


The message got cut off in the X server log file at "and not just".
Me and my super-long C strings....  sheesh...  ;o)