Regression: black screen on VGA w/ nouveau in Linux 3.3

Nick Bowler nbowler at elliptictech.com
Tue Apr 3 18:27:52 PDT 2012


CCing Tom Bylander as he sent me a mail off-list saying he experiences
a similar issue on an FX 5200.

Tom, maybe you'll have better luck bisecting this than I did?

On 2012-03-19 10:35 -0400, Nick Bowler wrote:
> Just upgraded to Linux 3.3 on my desktop and noticed that the VGA output
> on my card w/ nouveau is totally black (both at the console and in X).
> Almost everything appears to work normally: DPMS works, modesetting
> works, DDC works... all messages indicate that things are working --
> just the image is completely black.

OK, so this is still reproducible on Linux 3.4-rc1+ (Linus' master).  I
captured the dmesg output before (3.2.13, which is a working kernel),
and after (3.3.1 and 3.4-rc1-00144-g01627d9 - both fail in an identical
manner).  All three logs are attached in full (gzipped).

One thing that immediately jumps out is the WARNING in the 3.4-rc1+ log
that occurs early and did not appear in either of the other logs:

------------[ cut here ]------------
WARNING: at /home/nick/misc/linux-2.6/arch/x86/pci/i386.c:60
pcibios_fwaddrmap_lookup+0x1d/0x3d()
Hardware name: K8N-E-Deluxe
Modules linked in:
Pid: 1, comm: swapper Not tainted 3.4.0-rc1-00144-g01627d9 #47
Call Trace:
 [<ffffffff81026baf>] warn_slowpath_common+0x80/0x98
 [<ffffffff81026bdc>] warn_slowpath_null+0x15/0x17
 [<ffffffff8129f79f>] pcibios_fwaddrmap_lookup+0x1d/0x3d
 [<ffffffff81687306>] pcibios_allocate_resources+0xd4/0x217
 [<ffffffff81688447>] ? pci_legacy_init+0x3e/0x3e
 [<ffffffff81687460>] pcibios_resource_survey+0x17/0x2d
 [<ffffffff81688dfd>] pcibios_init+0x28/0x3a
 [<ffffffff8168848e>] pci_subsys_init+0x47/0x4d
 [<ffffffff810002e2>] do_one_initcall+0x78/0x126
 [<ffffffff81662bab>] kernel_init+0xe9/0x17a
 [<ffffffff8166248a>] ? rdinit_setup+0x28/0x28
 [<ffffffff8131ac44>] kernel_thread_helper+0x4/0x10
 [<ffffffff81662ac2>] ? start_kernel+0x321/0x321
 [<ffffffff8131ac40>] ? gs_change+0xb/0xb
---[ end trace 4eaa2a86a8e2da22 ]---

Other than that, I diffed the 3.2.13 log and 3.4-rc1+ log and grepped
for nouveau-related differences.  I see no obvious errors, but I admit
that I don't really know what to look for.

% diff -u nouveau-3.2.13.log nouveau-3.4-rc1+.log | grep -C3 '\[drm\]'

@@ -418,19 +429,21 @@
 Real Time Clock Driver v1.12b
 Linux agpgart interface v0.103
 [drm] Initialized drm 1.1.0 20060810
+VGA switcheroo: detected Optimus DSM method \ handle
 ACPI: PCI Interrupt Link [LNKE] enabled at IRQ 19
-nouveau 0000:01:00.0: PCI INT A -> Link[LNKE] -> GSI 19 (level, low) -> IRQ 19
 [drm] nouveau 0000:01:00.0: Detected an NV30 generation card (0x436200a1)
-[drm] nouveau 0000:01:00.0: Attempting to load BIOS image from PRAMIN
+[drm] nouveau 0000:01:00.0: Checking PRAMIN for VBIOS
 [drm] nouveau 0000:01:00.0: ... appears to be valid
+[drm] nouveau 0000:01:00.0: Using VBIOS from PRAMIN
 [drm] nouveau 0000:01:00.0: BMP BIOS found
 [drm] nouveau 0000:01:00.0: BMP version 5.40
 [drm] nouveau 0000:01:00.0: Bios version 04.36.20.21
-[drm] nouveau 0000:01:00.0: Found Display Configuration Block version 2.2
-[drm] nouveau 0000:01:00.0: Raw DCB entry 0: 01000300 00009c40
-[drm] nouveau 0000:01:00.0: Raw DCB entry 1: 02010310 00009c40
-[drm] nouveau 0000:01:00.0: Raw DCB entry 2: 04000302 00000000
-[drm] nouveau 0000:01:00.0: Raw DCB entry 3: 02020321 00000303
+[drm] nouveau 0000:01:00.0: MXM: no VBIOS data, nothing to do
+[drm] nouveau 0000:01:00.0: DCB version 2.2
+[drm] nouveau 0000:01:00.0: DCB outp 00: 01000300 00009c40
+[drm] nouveau 0000:01:00.0: DCB outp 01: 02010310 00009c40
+[drm] nouveau 0000:01:00.0: DCB outp 02: 04000302 00000000
+[drm] nouveau 0000:01:00.0: DCB outp 03: 02020321 00000303
 [drm] nouveau 0000:01:00.0: Loading NV17 power sequencing microcode
 [drm] nouveau 0000:01:00.0: Parsing VBIOS init table 0 at offset 0xF01D
 [drm] nouveau 0000:01:00.0: Parsing VBIOS init table 1 at offset 0xF4E1
@@ -439,11 +452,10 @@
 [drm] nouveau 0000:01:00.0: Parsing VBIOS init table 4 at offset 0xF8B3
 [drm] nouveau 0000:01:00.0: Parsing VBIOS init table 5 at offset 0xF8D0
 [drm] nouveau 0000:01:00.0: Parsing VBIOS init table 6 at offset 0xF959
-[drm] nouveau 0000:01:00.0: 0 available performance level(s)
-[drm] nouveau 0000:01:00.0: c: core 425MHz memory 501MHz voltage 1350mV
-[TTM] Zone  kernel: Available graphics memory: 512160 kiB.
-[TTM] Initializing pool allocator.
-[drm] nouveau 0000:01:00.0: Detected 256MiB VRAM
+[TTM] Zone  kernel: Available graphics memory: 512142 kiB
+[TTM] Initializing pool allocator
+[TTM] Initializing DMA pool allocator
+[drm] nouveau 0000:01:00.0: Detected 256MiB VRAM (DDR1)
 agpgart-amd64 0000:00:00.0: AGP 3.0 bridge
 agpgart: swapper tried to set rate=x12. Setting to AGP3 x8 mode.
 agpgart-amd64 0000:00:00.0: putting AGP V3 device into 8x mode
@@ -452,11 +464,14 @@
 [drm] nouveau 0000:01:00.0: Saving VGA fonts
 [drm] Supports vblank timestamp caching Rev 1 (10.10.2010).
 [drm] No driver support for vblank timestamp query.
+[drm] nouveau 0000:01:00.0: 0 available performance level(s)
+[drm] nouveau 0000:01:00.0: c: core 425MHz memory 501MHz voltage 1350mV
+[drm] nouveau 0000:01:00.0: 0xE51A: Parsing digital output script table
 [drm] nouveau 0000:01:00.0: Setting dpms mode 3 on vga encoder (output 0)
 [drm] nouveau 0000:01:00.0: Setting dpms mode 3 on vga encoder (output 1)
 [drm] nouveau 0000:01:00.0: Setting dpms mode 3 on tmds encoder (output 2)
 [drm] nouveau 0000:01:00.0: Setting dpms mode 3 on TV encoder (output 3)
-[drm] nouveau 0000:01:00.0: allocated 1280x1024 fb: 0x49000, bo ffff88003da11400
+[drm] nouveau 0000:01:00.0: allocated 1280x1024 fb: 0x49000, bo ffff88003e314c00
 fbcon: nouveaufb (fb0) is primary device
 [drm] nouveau 0000:01:00.0: 0xE51A: Parsing digital output script table
 [drm] nouveau 0000:01:00.0: Setting dpms mode 0 on tmds encoder (output 2)
@@ -466,12 +481,11 @@
 Console: switching to colour frame buffer device 160x64
 fb0: nouveaufb frame buffer device
 drm: registered panic notifier
-[drm] Initialized nouveau 0.0.16 20090420 for 0000:01:00.0 on minor 0
+[drm] Initialized nouveau 1.0.0 20120316 for 0000:01:00.0 on minor 0
 brd: module loaded
 sata_nv 0000:00:0a.0: version 3.5
 ACPI: PCI Interrupt Link [LTID] BIOS reported IRQ 0, using IRQ 22
--
+NFS: Registering the id_resolver key type
 it87: Found IT8712F chip at 0xd00, revision 7
 it87: VID is disabled (pins used for GPIO)
 [drm] nouveau 0000:01:00.0: Setting dpms mode 3 on vga encoder (output 1)

> The VGA is one of two outputs in use: the other (DVI) output works
> normally.  The card also has an unused TV-out port, FWIW.
>
> The card is an NV36 generation (Geforce FX5700 AGP).  This is a
> regression from Linux 3.2 -- unfortunately, bisection has proved
> extremely difficult because the intermediate kernels git is asking me
> to test panic immediately on boot (and compiling Linux takes a fairly
> long time on this box too).  The failed attempt went like this:
>
>   git bisect start 'drivers/gpu'
>   # bad: [c16fa4f2ad19908a47c63d8fa436a1178438c7e7] Linux 3.3
>   git bisect bad c16fa4f2ad19908a47c63d8fa436a1178438c7e7
>   # good: [805a6af8dba5dfdd35ec35dc52ec0122400b2610] Linux 3.2
>   git bisect good 805a6af8dba5dfdd35ec35dc52ec0122400b2610
>   # skip: [5d56fe5fd794a98c4f446f8665fd06b82e93ff64] Merge branch 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-core-next
>   git bisect skip 5d56fe5fd794a98c4f446f8665fd06b82e93ff64
>   # good: [dffc9ceb55695f121adc57dd1fde7304c3afe81e] gma500: kill virtual mapping support
>   git bisect good dffc9ceb55695f121adc57dd1fde7304c3afe81e
>   # skip: [5c2a5ce689c99037771a6c110374461781a6f042] drm: add missing exports for i810 driver.
>   git bisect skip 5c2a5ce689c99037771a6c110374461781a6f042
>   # skip: [44517c44496062180a6376cc704b33129441ce60] drm/radeon/kms: Add an MSI quirk for Dell RS690
>   git bisect skip 44517c44496062180a6376cc704b33129441ce60
>
>   (I stopped at this point)
>
> I'm running the latest git xf86-video-nouveau, but since the issue
> occurs at the console it's probably not too important...

Please let me know if you need any more info,
-- 
Nick Bowler, Elliptic Technologies (http://www.elliptictech.com/)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: nouveau-3.2.13.log.gz
Type: application/octet-stream
Size: 10448 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/dri-devel/attachments/20120403/88cf954a/attachment-0003.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: nouveau-3.3.1.log.gz
Type: application/octet-stream
Size: 10298 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/dri-devel/attachments/20120403/88cf954a/attachment-0004.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: nouveau-3.4-rc1+.log.gz
Type: application/octet-stream
Size: 10747 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/dri-devel/attachments/20120403/88cf954a/attachment-0005.obj>


More information about the dri-devel mailing list