I'm having a problem with both the 5.8 and 5.9 kernels using the nouveau DRM
driver. I have a laptop with a VGA card (specs below) connected to a 5120x1440
screen. At boot time, the card correctly detects the screen, tries to allocate
fbdev fb0, then the video hangs completely for 15-30 seconds until it goes
blank.
This used to work in Linux 5.7 and earlier, although it allocated a 3840x1080
fb instead of a 5120x1440. I've attached the full dmesg. I tried commands like
video=DP-2:3840x1080 but it doesn't help.
Linux 5.8 boots without hanging if the laptop is not connected to the 5120x1440
screen.
PCI specs:
01:00.0 0300: 10de:0dfc (rev a1)
01:00.0 VGA compatible controller: NVIDIA Corporation GF108GLM [NVS 5200M] (rev a1)
xrandr available resolutions reported (from Linux 5.7 using Xorg):
Screen 0: minimum 320 x 200, current 5120 x 1440, maximum 16384 x 16384
LVDS-1 unknown connection (normal left inverted right x axis y axis)
1600x900 59.99 + 40.00
5120x1440 60.00
1360x1020 73.97
1152x864 59.97
1024x768 59.95
800x600 59.96
640x480 59.94
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 connected primary 5120x1440+0+0 (normal left inverted right x axis y axis) 1200mm x 340mm panning 5120x1440+0+0
3840x1080 59.97 +
5120x1440 29.98*
2560x1080 60.00 59.94 59.98
1920x1080 60.00 60.00 50.00 59.94
1920x1080i 60.00 50.00 59.94
1600x1200 60.00
1280x1024 75.02 60.02
1280x800 59.81
1152x864 75.00
1280x720 60.00 50.00 59.94
1024x768 75.03 60.00
800x600 75.00 60.32
720x576 50.00
720x480 60.00 59.94
640x480 75.00 60.00 59.94
720x400 70.08
HDMI-1 disconnected (normal left inverted right x axis y axis)
VGA-1 disconnected (normal left inverted right x axis y axis)
I'm currently using 5120x1440@30. 60 Hz isn't available. But look below:
xrandr resolutions from Linux 5.9 (even though screen is still blank):
Screen 0: minimum 320 x 200, current 5120 x 1440, maximum 16384 x 16384
LVDS-1 unknown connection (normal left inverted right x axis y axis)
1600x900 59.99 + 40.00
5120x1440 60.00
1360x1020 73.97
1152x864 59.97
1024x768 59.95
800x600 59.96
640x480 59.94
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 connected primary 5120x1440+0+0 (normal left inverted right x axis y axis) 1200mm x 340mm panning 5120x1440+0+0
5120x1440 59.98 + 29.98*
3840x1080 59.97 +
2560x1080 60.00 59.94 59.98
1920x1080 60.00 60.00 50.00 59.94
1920x1080i 60.00 50.00 59.94
1600x1200 60.00
1280x1024 75.02 60.02
1280x800 59.81
1152x864 75.00
1280x720 60.00 50.00 59.94
1024x768 75.03 60.00
800x600 75.00 60.32
720x576 50.00
720x480 60.00 59.94
640x480 75.00 60.00 59.94
720x400 70.08
HDMI-1 disconnected (normal left inverted right x axis y axis)
VGA-1 disconnected (normal left inverted right x axis y axis)
Let me know if you need additional debug information/etc.
Thanks,
-Byron
On Tue, 13 Oct 2020, Byron Stanoszek wrote:
> I'm having a problem with both the 5.8 and 5.9 kernels using the nouveau DRM
> driver. I have a laptop with a VGA card (specs below) connected to a
> 5120x1440 screen. At boot time, the card correctly detects the screen, tries
> to allocate fbdev fb0, then the video hangs completely for 15-30 seconds
> until it goes blank.
This message eventually displays after a while:
Workqueue: nvkm-disp nv50_disp_super
RIP: 0010:nv50_disp_super_2_2+0x1b0/0x470
Code: 69 00 00 48 69 c0 d3 4d 62 10 48 c1 e8 26 49 89 c5 0f b7 43 40 44 89 e9 8d 44 02 f9 0f b7 53 46 29 d0 31 d2 48 98 49 0f af c4 <48> f7 f1 48 89 c6 0f b7 43 4e 0f b7 53 4c 83 e8 19 29 d0 31 d2 48
RSP: 0018:ffffc900005e3e08 EFLAGS: 00010206
RAX: 0000000000000000 RBX: ffff88841b08ed20 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffc90003614200 RDI: ffffffff820c1140
RBP: ffff88841b202060 R08: 0000000000000000 R09: 00000000000061ce
R10: 0000000000000018 R11: 0000000000000018 R12: 0000000000000000
R13: 0000000000000000 R14: ffff88841b96b800 R15: ffff88841b975000
FS: 0000000000000000(0000) GS:ffff88841dc00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f922e61e000 CR3: 000000000240a004 CR4: 00000000001706b0
Call Trace:
? nvkm_dp_disable+0x5d/0x70
? nv50_disp_super+0x137/0x220
? process_one_work+0x19c/0x2c0
? worker_thread+0x48/0x350
? process_one_work+0x2c0/0x2c0
? kthread+0x129/0x150
? __kthread_create_worker+0x100/0x100
? ret_from_fork+0x22/0x30
---[ end trace dbb0d14fd1ddb445 ]---
nouveau 0000:01:00.0: DRM: core notifier timeout
Thanks,
-Byron