You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu/Linux下DP接口4K 120Hz主显示器无法正常显示(仅显光标、拖窗异常)求助

Ubuntu/Linux下DP接口4K 120Hz主显示器无法正常显示(仅显光标、拖窗异常)求助

TLDR

  • DP接口的主显示器默认无法工作
  • 发现可以通过nvidia-settings手动开启它
  • 开启后能显示鼠标光标,也能临时拖窗口过去,但桌面环境完全不加载,拖窗会留残影,松开后窗口自动跳回副屏
  • (异常表现:拖窗时会留下大量闪烁残影,画面复古感拉满,简直梦回Windows 95 😂)

问题详情

我的DP接口主显示器默认不被系统识别,只有在nvidia-settings里能找到它。手动强制开启后,显示器能亮,但桌面环境完全没显示——只能看到鼠标光标可以移过去,拖窗口到主显示器会留下闪瞎眼的残影,松开鼠标窗口还会自动跳回HDMI接口的副屏,甚至触发窗口贴边吸附的功能。

盼了好久终于把主力工作站迁到Linux,结果刚上手就卡在这里,真心求各位大佬给点思路!


硬件与系统背景

  • 专门买了新SSD装Linux,原来的Windows系统用同样的显示器配置完全没问题
  • 硬件配置:NVIDIA RTX 2070显卡,连接两台显示器:
    • DP 1.4(8K线)→ 4K 120Hz主显示器
    • HDMI 2.1(8K线)→ 1440p 60Hz副显示器
  • HDMI接口的副显示器完全正常;主显示器接HDMI也能工作,但它只有HDMI 2.0输入,只能跑60Hz,而且显卡只有一个HDMI口,所以这不是可行方案

我的操作流程

  1. 先装了PopOS,遇到一模一样的问题,又换了最新版Ubuntu 23.10,结果还是只有副屏能正常工作
  2. 系统自带的显示设置里只能看到副屏,主显示器完全没踪影
  3. 打开nvidia-settings
    • 两台显示器都能被列出,但主显示器的分辨率设为off
    • 把主显示器分辨率改成4K后,屏幕亮了,但全黑,只能看到鼠标能移过去
    • 拖窗口到主显示器会留下闪烁残影,松开鼠标窗口直接跳回副屏还自动贴边
  4. 系统显示设置里依然看不到主显示器

我尝试过的解决方案

  1. 试过了“附加驱动”里所有可用的NVIDIA驱动版本,都没用;用nouveau开源驱动的话,4K@120Hz会花屏,主显示器只显示下半部分
  2. 用arandr工具配置主显示器,结果和nvidia-settings完全一样
  3. 全程都关闭了Secure Boot(之前听说这个会影响闭源驱动的正常工作)

调试信息

刚安装完系统(未在nvidia-settings强制开屏)的输出

xrandr 命令结果:

$ xrandr
Screen 0: minimum 8 x 8, current 1440 x 2560, maximum 32767 x 32767
DVI-D-0 disconnected (normal left inverted right x axis y axis)
HDMI-0 connected primary 1440x2560+0+0 left (normal left inverted right x axis y axis) 597mm x 336mm
   2560x1440     59.95*+
   1920x1080     60.00    59.94    50.00  
   1680x1050     59.95  
   1600x900      60.00  
   1440x900      59.89  
   1280x1024     75.02    60.02  
   1280x800      59.81  
   1280x720      60.00    59.94    50.00  
   1152x864      75.00  
   1024x768      75.03    70.07    60.00  
   800x600       75.00    72.19    60.32    56.25  
   720x576       50.00  
   720x480       59.94  
   640x480       75.00    72.81    59.94  
DP-0 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 connected (normal left inverted right x axis y axis)
   3840x2160     60.00 + 119.91    59.94    50.00    30.00    29.97    25.00    23.98  
   2560x1440    120.00  
   1920x2160    143.84  
   1920x1080    119.88    60.00    59.94    50.00  
   1680x1050     59.95  
   1440x900      59.89  
   1280x1024     60.02  
   1280x960      60.00  
   1280x800      59.81  
   1280x720      60.00    59.94    50.00  
   1024x768      60.00  
   800x600       75.00    60.32    56.25  
   720x576       50.00  
   720x480       59.94  
   640x480       59.94    59.93  
DP-3 disconnected (normal left inverted right x axis y axis)
USB-C-0 disconnected (normal left inverted right x axis y axis)

sudo dmesg | grep nvidia 命令结果:

$ sudo dmesg | grep nvidia
[    6.759834] nvidia-gpu 0000:2b:00.3: enabling device (0000 -> 0002)
[    7.154534] nvidia-nvlink: Nvlink Core is being initialized, major device number 236
[    7.155955] nvidia 0000:2b:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=none
[    7.320920] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  535.113.01  Tue Sep 12 19:45:42 UTC 2023
[    7.332442] [drm] [nvidia-drm] [GPU ID 0x00002b00] Loading driver
[    8.402918] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:2b:00.0 on minor 0
[    8.562022] nvidia_uvm: module uses symbols nvUvmInterfaceDisableAccessCntr from proprietary module nvidia, inheriting taint.
[    8.586552] nvidia-uvm: Loaded the UVM driver, major device number 511.
[ 3464.800039] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002b00] Failed to grab modeset ownership
[ 3464.800102] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002b00] Failed to grab modeset ownership
[ 3464.800141] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002b00] Failed to grab modeset ownership
[ 3464.800173] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002b00] Failed to grab modeset ownership
[ 3464.874065] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002b00] Failed to grab modeset ownership
[ 3464.874126] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002b00] Failed to grab modeset ownership
[ 3464.874159] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002b00] Failed to grab modeset ownership
[ 3464.874190] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002b00] Failed to grab modeset ownership
[ 3464.950322] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002b00] Failed to grab modeset ownership
[ 3464.950383] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002b00] Failed to grab modeset ownership
[ 3464.950417] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002b00] Failed to grab modeset ownership
[ 3464.950448] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002b00] Failed to grab modeset ownership

nvidia-smi 命令结果:

$ nvidia-smi
Sat Mar 16 15:41:21 2024       
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.113.01             Driver Version: 535.113.01   CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  NVIDIA GeForce RTX 2070        Off | 00000000:2B:00.0  On |                  N/A |
|  0%   45C    P8              22W / 175W |    418MiB /  8192MiB |     18%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+
                                                                                         
+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|    0   N/A  N/A      4391      G   /usr/lib/xorg/Xorg                          138MiB |
|    0   N/A  N/A      4632      G   /usr/bin/gnome-shell                         63MiB |
|    0   N/A  N/A      5567      G   /usr/bin/gnome-control-center                11MiB |
|    0   N/A  N/A      5713      G   ...irefox/3216/usr/lib/firefox/firefox      141MiB |
|    0   N/A  N/A      7164      G   /usr/bin/gnome-text-editor                   11MiB |
+---------------------------------------------------------------------------------------+

在nvidia-settings里强制开启主显示器后的/etc/X11/xorg.conf内容:

$ cat /etc/X11/xorg.conf
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 510.47.03

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "0"
EndSection

Section "Files"
EndSection

Section "Module"
    Load           "dbe"
    Load           "extmod"
    Load           "type1"
    Load           "freetype"
    Load           "glx"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Samsung S27H85x"
    HorizSync       27.0 - 89.0
    VertRefresh     50.0 - 75.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "NVIDIA GeForce RTX 2070"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "DFP-4"
    Option         "metamodes" "HDMI-0: nvidia-auto-select +0+0 {rotation=left}, DP-2: 3840x2160_120 +1440+0"
    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

备注:内容来源于stack exchange,提问作者Erling T

火山引擎 最新活动