Regression: black screen on VGA w/ nouveau in Linux 3.3
Nick Bowler
nbowler at elliptictech.com
Tue Apr 17 19:01:28 PDT 2012
On 2012-04-03 21:27 -0400, Nick Bowler wrote:
> 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).
Ping? I'm still seeing this on 3.4-rc3+. Is there any other info that
I need to provide?
> 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...
Thanks,
--
Nick Bowler, Elliptic Technologies (http://www.elliptictech.com/)
More information about the dri-devel
mailing list