nouveau GF108 kernel crash in optimus mode when enabling external display output

Pasi Kärkkäinen pasik at iki.fi
Sun May 5 14:06:04 PDT 2013


Hello,

Lenovo T430 laptop with intel+nvidia hybrid graphics, optimus enabled in BIOS:

$ lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation GF108 [Quadro NVS 5400M] (rev a1)

$ uname -a
Linux localhost.localdomain 3.8.11-200.fc18.x86_64 #1 SMP Wed May 1 19:44:27 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

I boot up the system with only laptop internal LVDS active on intel gpu, and when in X session,
I enable the second display on nouveau gpu connected to the dock DP2/DVI connector.
At this point the kernel crashes immediately. 

Screenshots of the kernel crash/stacktrace here:
http://pasik.reaktio.net/nouveau/debug/nouveau-kernel-crash01.jpg
http://pasik.reaktio.net/nouveau/debug/nouveau-kernel-crash02.jpg

hand-written bits from the kernel crash:

Pid: 1208, comm: Xorg Not tainted 3.8.11-200.fc18.x86_64 #1 LENOVO 2349H2G/2349H2G
RIP: 0010:[<ffffffffa01abb7e>] [<ffffffffa01abb7e>] nvc0_vm_map_sg+0x8e/0x110 [nouveau]
RSP: 0018:ffff8803298357c8 EFLAGS: 00010206
..
Process Xorg (pid: 1208,..)
..
Call Trace:
.. nouveau_vm_map_sg+0xc2/0x130 [nouveau]
.. nouveau_vma_getmap.isra.11+0x68/0xa0 [nouveau]
.. nouveau_bo_move_m2mf.isra.12+0x85/0x140 [nouveau]
.. ? nouveau_vm_map_at+0x153/0x1c0 [nouveau]
.. nouveau_bo_move+0xa5/0x400 [nouveau]
.. ttm_bo_handle_move_mem+0x245/0x610 [ttm]

More info from the screenshots above.. 


dmesg drm bits before the crash:

[    0.137586] vgaarb: device added: PCI:0000:00:02.0,decodes=io+mem,owns=io+mem,locks=none
[    0.137590] vgaarb: device added: PCI:0000:01:00.0,decodes=io+mem,owns=none,locks=none
[    0.137591] vgaarb: loaded
[    0.137591] vgaarb: bridge control possible 0000:01:00.0
[    0.137592] vgaarb: no bridge control possible 0000:00:02.0
[    0.529802] fb0: VESA VGA frame buffer device
[    0.877212] ata1.00: supports DRM functions and may not be fully accessible
[    0.878010] ata1.00: supports DRM functions and may not be fully accessible
[    1.969486] [drm] Initialized drm 1.1.0 20060810
[    1.990584] VGA switcheroo: detected Optimus DSM method \_SB_.PCI0.PEG_.VID_ handle
[    1.990610] nouveau 0000:01:00.0: enabling device (0004 -> 0007)
[    1.990874] nouveau  [  DEVICE][0000:01:00.0] BOOT0  : 0x0c1780a1
[    1.990877] nouveau  [  DEVICE][0000:01:00.0] Chipset: GF108 (NVC1)
[    1.990878] nouveau  [  DEVICE][0000:01:00.0] Family : NVC0
[    1.992485] nouveau  [   VBIOS][0000:01:00.0] checking PRAMIN for image...
[    2.002182] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
[    2.002184] nouveau  [   VBIOS][0000:01:00.0] checking PROM for image...
[    2.002243] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
[    2.002245] nouveau  [   VBIOS][0000:01:00.0] checking ACPI for image...
[    2.189928] nouveau  [   VBIOS][0000:01:00.0] ... appears to be valid
[    2.189935] nouveau  [   VBIOS][0000:01:00.0] using image from ACPI
[    2.190143] nouveau  [   VBIOS][0000:01:00.0] BIT signature found
[    2.190149] nouveau  [   VBIOS][0000:01:00.0] version 70.08.b7.02.02
[    2.190467] nouveau  [ DEVINIT][0000:01:00.0] adaptor not initialised
[    2.190470] nouveau  [   VBIOS][0000:01:00.0] running init tables
[    2.278184] nouveau  [     PFB][0000:01:00.0] RAM type: DDR3
[    2.278189] nouveau  [     PFB][0000:01:00.0] RAM size: 512 MiB
[    2.278192] nouveau  [     PFB][0000:01:00.0]    ZCOMP: 0 tags
[    2.311802] nouveau  [     DRM] VRAM: 512 MiB
[    2.311805] nouveau  [     DRM] GART: 512 MiB
[    2.311810] nouveau  [     DRM] BIT BIOS found
[    2.311814] nouveau  [     DRM] Bios version 70.08.b7.02
[    2.311831] nouveau  [     DRM] TMDS table version 2.0
[    2.311832] nouveau  [     DRM] DCB version 4.0
[    2.311833] nouveau  [     DRM] DCB outp 00: 01800323 00010034
[    2.311834] nouveau  [     DRM] DCB outp 01: 02811300 00000000
[    2.311835] nouveau  [     DRM] DCB outp 02: 028223a6 0f220010
[    2.311836] nouveau  [     DRM] DCB outp 03: 02822362 00020010
[    2.311837] nouveau  [     DRM] DCB outp 04: 048333b6 0f220010
[    2.311838] nouveau  [     DRM] DCB outp 05: 04833372 00020010
[    2.311839] nouveau  [     DRM] DCB outp 06: 088443c6 0f220010
[    2.311840] nouveau  [     DRM] DCB outp 07: 08844382 00020010
[    2.311841] nouveau  [     DRM] DCB conn 00: 00000040
[    2.311842] nouveau  [     DRM] DCB conn 01: 00000100
[    2.311843] nouveau  [     DRM] DCB conn 02: 00110246
[    2.311844] nouveau  [     DRM] DCB conn 03: 00220346
[    2.311845] nouveau  [     DRM] DCB conn 04: 01400446
[    2.312502] [drm] Supports vblank timestamp caching Rev 1 (10.10.2010).
[    2.312503] [drm] No driver support for vblank timestamp query.
[    2.312575] nouveau  [     DRM] ACPI backlight interface available, not registering our own
[    2.312612] nouveau W[     DRM] voltage table 0x50 unknown
[    2.312769] nouveau  [     DRM] 2 available performance level(s)
[    2.312771] nouveau  [     DRM] 1: core 270MHz shader 540MHz memory 405MHz
[    2.312772] nouveau  [     DRM] 3: core 475MHz shader 950MHz memory 900MHz voltage 10mV
[    2.312774] nouveau  [     DRM] c: core 270MHz shader 540MHz memory 405MHz
[    2.316569] nouveau  [     DRM] MM: using COPY1 for buffer copies
[    2.352568] nouveau 0000:01:00.0: No connectors reported connected with modes
[    2.352570] [drm] Cannot find any crtc or sizes - going 1024x768
[    2.385026] nouveau  [     DRM] allocated 1024x768 fb: 0x60000, bo ffff88032849b000
[    2.385136] nouveau 0000:01:00.0: fb1: nouveaufb frame buffer device
[    2.385139] nouveau 0000:01:00.0: registered panic notifier
[    2.385146] [drm] Initialized nouveau 1.1.0 20120801 for 0000:01:00.0 on minor 0
[    2.386528] [drm] Memory usable by graphics device = 2048M
[    2.386532] fb: conflicting fb hw usage inteldrmfb vs VESA VGA - removing generic driver
[    2.386606] i915 0000:00:02.0: setting latency timer to 64
[    2.442334] i915 0000:00:02.0: irq 43 for MSI/MSI-X
[    2.442351] [drm] Supports vblank timestamp caching Rev 1 (10.10.2010).
[    2.442353] [drm] Driver supports precise vblank timestamp query.
[    2.442720] vga_switcheroo: enabled
[    2.442763] vgaarb: device changed decodes: PCI:0000:01:00.0,olddecodes=io+mem,decodes=none:owns=none
[    2.442768] vgaarb: device changed decodes: PCI:0000:00:02.0,olddecodes=io+mem,decodes=none:owns=io+mem
[    2.508974] fbcon: inteldrmfb (fb0) is primary device
[    3.292775] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
[    3.319164] [drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 1
[    3.698310] [drm] Enabling RC6 states: RC6 on, RC6p on, RC6pp off


Thanks,

-- Pasi



More information about the dri-devel mailing list