I usually have my ThinkPad P50 in a dock and use an external monitor that is connected to the dock with the laptop sceen disabled.
A couple of driver releases ago IIRC (a number of months ago anyway), 3D apps started running really slow. glxgears, Steam UI, mpv and VLC, games, were all going at a very low and juddery fps.
I then realised that if I had the external monitor be a clone of the laptop screen then 3D fps wouldn’t tank. But then X11 started pausing for a few seconds on the external screen and then catching up, but crashing eventually, or sometimes the external screen image would freeze but the laptop screen could still be used.
The Xorg error on crash is below.
nvidia-bug-report.log.gz (2.2 MB)
% inxi -F n
System:
Host: red Kernel: 6.1.10-zen1-1-zen arch: x86_64 bits: 64 Desktop: awesome
v: 4.3 Distro: Arch Linux
Machine:
Type: Laptop System: LENOVO product: 20EN0006UK v: ThinkPad P50
serial: <superuser required>
Mobo: LENOVO model: 20EN0006UK v: SDK0J40705 WIN
serial: <superuser required> UEFI-[Legacy]: LENOVO v: N1EET94W (1.67 )
date: 12/10/2021
Battery:
ID-1: BAT0 charge: 59.1 Wh (76.0%) condition: 77.8/90.0 Wh (86.4%)
volts: 11.4 min: 11.2
ID-2: hidpp_battery_0 charge: 98% condition: N/A
CPU:
Info: quad core model: Intel Core i7-6820HQ bits: 64 type: MT MCP cache:
L2: 1024 KiB
Speed (MHz): avg: 2700 min/max: 800/2700 cores: 1: 2701 2: 2700 3: 2700
4: 2700 5: 2700 6: 2704 7: 2700 8: 2700
Graphics:
Device-1: Intel HD Graphics 530 driver: i915 v: kernel
Device-2: NVIDIA GM107GLM [Quadro M2000M] driver: nvidia v: 525.85.05
Device-3: Acer ThinkPad P50 Integrated Camera type: USB driver: uvcvideo
Display: server: X.Org v: 21.1.7 with: Xwayland v: 22.1.7 driver: X:
loaded: modesetting,nvidia dri: iris gpu: i915,nvidia,nvidia-nvswitch
resolution: 1: N/A 2: 1920x1080~60Hz 3: N/A
API: OpenGL v: 4.6.0 NVIDIA 525.85.05 renderer: Quadro M2000M/PCIe/SSE2
Audio:
Device-1: Intel 100 Series/C230 Series Family HD Audio driver: snd_hda_intel
Device-2: NVIDIA GM107 High Definition Audio [GeForce 940MX]
driver: snd_hda_intel
Sound API: ALSA v: k6.1.10-zen1-1-zen running: yes
Sound Server-1: PipeWire v: 0.3.65 running: yes
Network:
Device-1: Intel Ethernet I219-LM driver: e1000e
IF: net0 state: up speed: 100 Mbps duplex: full mac: c8:5b:76:bf:43:96
Device-2: Intel Wireless 8260 driver: iwlwifi
IF: wlan0 state: up mac: f4:8c:50:5a:fc:8f
Bluetooth:
Device-1: Intel Bluetooth wireless interface type: USB driver: btusb
Report: bt-adapter ID: hci0 state: up address: F4:8C:50:5A:FC:93
Drives:
Local Storage: total: 1.14 TiB used: 840.02 GiB (71.8%)
ID-1: /dev/sda vendor: SanDisk model: SD8TN8U256G1001 size: 238.47 GiB
ID-2: /dev/sdb vendor: Crucial model: CT1000MX500SSD1 size: 931.51 GiB
Partition:
ID-1: / size: 1.08 TiB used: 840.02 GiB (76.0%) fs: btrfs dev: /dev/sda1
Swap:
ID-1: swap-1 type: partition size: 64 GiB used: 0 KiB (0.0%) dev: /dev/sdb1
Sensors:
System Temperatures: cpu: 55.0 C pch: 48.0 C mobo: N/A
Fan Speeds (RPM): fan-1: 3087 fan-2: 3083
Info:
Processes: 314 Uptime: 10m Memory: 62.19 GiB used: 7.44 GiB (12.0%)
Shell: Zsh inxi: 3.3.25
% glxinfo | grep direct
direct rendering: Yes
GL_AMD_multi_draw_indirect, GL_AMD_seamless_cubemap_per_texture,
GL_ARB_direct_state_access, GL_ARB_draw_buffers,
GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts,
GL_ARB_half_float_vertex, GL_ARB_imaging, GL_ARB_indirect_parameters,
GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture,
GL_EXT_depth_bounds_test, GL_EXT_direct_state_access,
GL_NV_alpha_to_coverage_dither_control, GL_NV_bindless_multi_draw_indirect,
GL_NV_bindless_multi_draw_indirect_count, GL_NV_bindless_texture,
GL_AMD_multi_draw_indirect, GL_AMD_seamless_cubemap_per_texture,
GL_ARB_direct_state_access, GL_ARB_draw_buffers,
GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts,
GL_ARB_half_float_vertex, GL_ARB_imaging, GL_ARB_indirect_parameters,
GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture,
GL_EXT_depth_bounds_test, GL_EXT_direct_state_access,
GL_NV_alpha_to_coverage_dither_control, GL_NV_bindless_multi_draw_indirect,
GL_NV_bindless_multi_draw_indirect_count, GL_NV_bindless_texture,
GL_EXT_memory_object, GL_EXT_memory_object_fd, GL_EXT_multi_draw_indirect,
% glxinfo | grep "OpenGL renderer"
OpenGL renderer string: Quadro M2000M/PCIe/SSE2
Xorg log:
...
[ 38.832] (II) NVIDIA(G0): Setting mode "DP-1-3.1: nvidia-auto-select @1920x1080 +0+0 {AllowGSYNC=Off, ViewPortIn=1920x1080, ViewPortOut=1920x1080+0+0}"
[ 38.915] (II) NVIDIA(G0): Setting mode "DP-1-3.1: nvidia-auto-select @1920x1080 +0+0 {AllowGSYNC=Off, ViewPortIn=1920x1080, ViewPortOut=1920x1080+0+0}, DP-1-1: nvidia-auto-select @1920x1080 +0+0 {AllowGSYNC=Off, ViewPortIn=1920x1080, ViewPortOut=1920x1080+0+0}"
[ 39.234] (II) modeset(0): EDID vendor "LGD", prod id 1359
[ 39.234] (II) modeset(0): Printing DDC gathered Modelines:
[ 39.234] (II) modeset(0): Modeline "1920x1080"x0.0 138.70 1920 1968 2000 2080 1080 1083 1088 1111 +hsync -vsync (66.7 kHz eP)
[ 39.234] (II) modeset(0): Modeline "1920x1080"x0.0 114.46 1920 1968 2000 2164 1080 1083 1088 1102 +hsync -vsync (52.9 kHz e)
[ 39.250] (II) modeset(0): EDID vendor "LGD", prod id 1359
[ 39.250] (II) modeset(0): Printing DDC gathered Modelines:
[ 39.251] (II) modeset(0): Modeline "1920x1080"x0.0 138.70 1920 1968 2000 2080 1080 1083 1088 1111 +hsync -vsync (66.7 kHz eP)
[ 39.251] (II) modeset(0): Modeline "1920x1080"x0.0 114.46 1920 1968 2000 2164 1080 1083 1088 1102 +hsync -vsync (52.9 kHz e)
[ 39.251] (--) NVIDIA(GPU-0): SFX2K8 4TO2 (DFP-3.1): connected
[ 39.251] (--) NVIDIA(GPU-0): SFX2K8 4TO2 (DFP-3.1): Internal DisplayPort
[ 39.251] (--) NVIDIA(GPU-0): SFX2K8 4TO2 (DFP-3.1): 960.0 MHz maximum pixel clock
[ 39.251] (--) NVIDIA(GPU-0):
[ 39.253] (--) NVIDIA(GPU-0): DFP-0: disconnected
[ 39.253] (--) NVIDIA(GPU-0): DFP-0: Internal TMDS
[ 39.254] (--) NVIDIA(GPU-0): DFP-0: 165.0 MHz maximum pixel clock
[ 39.254] (--) NVIDIA(GPU-0):
[ 39.443] (--) NVIDIA(GPU-0): DELL P2719H (DFP-1): connected
[ 39.443] (--) NVIDIA(GPU-0): DELL P2719H (DFP-1): Internal TMDS
[ 39.443] (--) NVIDIA(GPU-0): DELL P2719H (DFP-1): 300.0 MHz maximum pixel clock
[ 39.443] (--) NVIDIA(GPU-0):
[ 39.443] (--) NVIDIA(GPU-0): DFP-2: disconnected
[ 39.443] (--) NVIDIA(GPU-0): DFP-2: Internal TMDS
[ 39.443] (--) NVIDIA(GPU-0): DFP-2: 165.0 MHz maximum pixel clock
[ 39.443] (--) NVIDIA(GPU-0):
[ 39.443] (--) NVIDIA(GPU-0): DFP-3: disconnected
[ 39.443] (--) NVIDIA(GPU-0): DFP-3: Internal DisplayPort
[ 39.443] (--) NVIDIA(GPU-0): DFP-3: 960.0 MHz maximum pixel clock
[ 39.443] (--) NVIDIA(GPU-0):
[ 39.443] (--) NVIDIA(GPU-0): DFP-4: disconnected
[ 39.443] (--) NVIDIA(GPU-0): DFP-4: Internal DisplayPort
[ 39.443] (--) NVIDIA(GPU-0): DFP-4: 960.0 MHz maximum pixel clock
[ 39.443] (--) NVIDIA(GPU-0):
[ 39.443] (--) NVIDIA(GPU-0): DFP-5: disconnected
[ 39.443] (--) NVIDIA(GPU-0): DFP-5: Internal DisplayPort
[ 39.443] (--) NVIDIA(GPU-0): DFP-5: 960.0 MHz maximum pixel clock
[ 39.443] (--) NVIDIA(GPU-0):
[ 393.440] (II) NVIDIA(G0): Setting mode "DP-1-3.1: nvidia-auto-select @1920x1080 +0+0 {AllowGSYNC=Off, ViewPortIn=1920x1080, ViewPortOut=1920x1080+0+0}"
[ 479.722] (EE)
[ 479.722] (EE) Backtrace:
[ 479.723] (EE) 0: /usr/lib/Xorg (dri3_send_open_reply+0xdd) [0x55861cc8a9ad]
[ 479.723] (EE) 1: /usr/lib/libc.so.6 (__sigaction+0x50) [0x7fb7a139cf50]
[ 479.724] (EE) 2: /usr/lib/libc.so.6 (pthread_key_delete+0x14c) [0x7fb7a13eb8ec]
[ 479.725] (EE) 3: /usr/lib/libc.so.6 (gsignal+0x18) [0x7fb7a139cea8]
[ 479.725] (EE) 4: /usr/lib/libc.so.6 (abort+0xd7) [0x7fb7a138653d]
[ 479.726] (EE) unw_get_proc_name failed: no unwind info found [-10]
[ 479.726] (EE) 5: /usr/lib/dri/iris_dri.so (?+0x0) [0x7fb79e099aa3]
[ 479.726] (EE) 6: /usr/lib/dri/iris_dri.so (nouveau_drm_screen_create+0x489890) [0x7fb79eddffd0]
[ 479.727] (EE) 7: /usr/lib/dri/iris_dri.so (__driDriverGetExtensions_d3d12+0xb7e36) [0x7fb79e161356]
[ 479.727] (EE) 8: /usr/lib/xorg/modules/libglamoregl.so (glamor_block_handler+0xe4) [0x7fb7a066ddd4]
[ 479.727] (EE) unw_get_proc_name failed: no unwind info found [-10]
[ 479.727] (EE) 9: /usr/lib/xorg/modules/drivers/modesetting_drv.so (?+0x0) [0x7fb7a09f41b7]
[ 479.728] (EE) 10: /usr/lib/Xorg (BlockHandler+0xb4) [0x55861cbab6a4]
[ 479.728] (EE) 11: /usr/lib/Xorg (WaitForSomething+0x197) [0x55861cc7de67]
[ 479.728] (EE) 12: /usr/lib/Xorg (SProcXkbDispatch+0x1c93) [0x55861cb6d36f]
[ 479.729] (EE) 13: /usr/lib/libc.so.6 (__libc_init_first+0x90) [0x7fb7a1387790]
[ 479.729] (EE) 14: /usr/lib/libc.so.6 (__libc_start_main+0x8a) [0x7fb7a138784a]
[ 479.729] (EE) 15: /usr/lib/Xorg (_start+0x25) [0x55861cb6e2b5]
journald:
...
Feb 10 00:30:40 red kernel: nvidia-modeset: ERROR: GPU:0: Idling display engine timed out: 0x0000947d:0:0:1119
Feb 10 00:30:42 red kernel: nvidia-modeset: ERROR: GPU:0: Idling display engine timed out: 0x0000927c:0:0:1128
Feb 10 00:30:44 red kernel: nvidia-modeset: ERROR: GPU:0: Idling display engine timed out: 0x0000947d:0:0:1119
Feb 10 00:30:46 red kernel: nvidia-modeset: ERROR: GPU:0: Idling display engine timed out: 0x0000927c:0:0:1128
Feb 10 00:30:52 red root[2355]: ACPI group/action undefined: jack/lineout / LINEOUT
Feb 10 00:30:52 red root[2357]: ACPI group/action undefined: jack/videoout / VIDEOOUT
Feb 10 00:30:52 red root[2359]: ACPI group/action undefined: jack/lineout / LINEOUT
Feb 10 00:30:52 red root[2361]: ACPI group/action undefined: jack/videoout / VIDEOOUT
Feb 10 00:30:52 red root[2363]: ACPI group/action undefined: jack/lineout / LINEOUT
Feb 10 00:30:52 red root[2365]: ACPI group/action undefined: jack/videoout / VIDEOOUT
Feb 10 00:30:52 red root[2367]: ACPI group/action undefined: jack/lineout / LINEOUT
Feb 10 00:30:52 red root[2369]: ACPI group/action undefined: jack/videoout / VIDEOOUT
Feb 10 00:31:42 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:31:42 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:31:43 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:31:43 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:33:52 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:33:52 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:33:52 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:33:52 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:33:52 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:33:52 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:33:52 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:33:52 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:33:52 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:33:52 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:33:52 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:33:52 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:33:52 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:33:52 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:34:19 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:34:19 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:34:54 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
Feb 10 00:34:54 red kernel: [drm:nv_drm_fence_context_create_ioctl [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate fence signaling event
...