Nvidia RTX 3090 Support

Hi all, I’m a complete novice at Manjaro and Linux in general and have tried quite a few things to get my 3090 to output to my monitor:
I am currently running a dual-card system with a 3090 and 1080. I want to use the 3090 for the host and pass the 1080 to a VM, which I already know how to do (and did successfully with the 3090). I have already removed the 3090 IDs from the vfio.conf so that’s not the issue here.

I simply cannot get my 3090 to output to my monitor on Manjaro. I am on kernel 5.9.16-1-MANJARO and have tried it on 5.4 as well. I also attempted to do this on 5.10. I have one card plugged into a monitor (1080 is working) and the 3090 into another. Both cards are detected on nvidia-settings as well as the monitors, and I have also tried both HDMI and DP connections. I am not sure what will be useful to add so here are some things:

inxi -Fazy
System:
  Kernel: 5.9.16-1-MANJARO x86_64 bits: 64 compiler: gcc v: 10.2.0 
  parameters: BOOT_IMAGE=/boot/vmlinuz-5.9-x86_64 
  root=UUID=ce932a00-7e27-4a77-a62d-4845433772cf rw quiet amd_iommu=on 
  cryptdevice=UUID=0cd38d91-17b6-4a56-8148-cf8b41b2c2a3:luks-0cd38d91-17b6-4a56-8148-cf8b41b2c2a3 
  root=/dev/mapper/luks-0cd38d91-17b6-4a56-8148-cf8b41b2c2a3 apparmor=1 
  security=apparmor 
  resume=/dev/mapper/luks-20ff52e9-11c0-42fc-9dcb-eab150b6b6e5 
  udev.log_priority=3 
  Desktop: KDE Plasma 5.20.4 tk: Qt 5.15.2 wm: kwin_x11 dm: SDDM 
  Distro: Manjaro Linux 
Machine:
  Type: Desktop Mobo: ASUSTeK model: ROG STRIX X570-F GAMING v: Rev X.0x 
  serial: <filter> BIOS: American Megatrends v: 3001 date: 12/04/2020 
CPU:
  Info: 8-Core model: AMD Ryzen 7 3800X bits: 64 type: MT MCP arch: Zen 2 
  family: 17 (23) model-id: 71 (113) stepping: N/A microcode: 8701021 
  L2 cache: 4 MiB 
  flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm 
  bogomips: 124610 
  Speed: 2195 MHz min/max: 2200/3900 MHz boost: enabled Core speeds (MHz): 
  1: 2195 2: 2195 3: 2196 4: 2196 5: 4524 6: 2016 7: 2010 8: 2105 9: 2196 
  10: 2196 11: 4540 12: 2017 13: 2012 14: 2387 15: 2196 16: 2196 
  Vulnerabilities: Type: itlb_multihit status: Not affected 
  Type: l1tf status: Not affected 
  Type: mds status: Not affected 
  Type: meltdown status: Not affected 
  Type: spec_store_bypass 
  mitigation: Speculative Store Bypass disabled via prctl and seccomp 
  Type: spectre_v1 
  mitigation: usercopy/swapgs barriers and __user pointer sanitization 
  Type: spectre_v2 mitigation: Full AMD retpoline, IBPB: conditional, STIBP: 
  conditional, RSB filling 
  Type: srbds status: Not affected 
  Type: tsx_async_abort status: Not affected 
Graphics:
  Device-1: NVIDIA GP104 [GeForce GTX 1080] vendor: eVga.com. driver: nvidia 
  v: 455.45.01 alternate: nouveau,nvidia_drm bus ID: 08:00.0 
  chip ID: 10de:1b80 
  Device-2: NVIDIA vendor: eVga.com. driver: nvidia v: 455.45.01 
  alternate: nouveau,nvidia_drm bus ID: 09:00.0 chip ID: 10de:2204 
  Display: x11 server: X.Org 1.20.10 compositor: kwin_x11 driver: nvidia 
  display ID: :0 screens: 1 
  Screen-1: 0 s-res: 1920x1080 s-dpi: 91 s-size: 535x301mm (21.1x11.9") 
  s-diag: 614mm (24.2") 
  Monitor-1: DP-0 res: 1920x1080 dpi: 92 size: 531x299mm (20.9x11.8") 
  diag: 609mm (24") 
  OpenGL: renderer: GeForce GTX 1080/PCIe/SSE2 v: 4.6.0 NVIDIA 455.45.01 
  direct render: Yes 
Audio:
  Device-1: NVIDIA GP104 High Definition Audio vendor: eVga.com. 
  driver: snd_hda_intel v: kernel bus ID: 08:00.1 chip ID: 10de:10f0 
  Device-2: NVIDIA vendor: eVga.com. driver: snd_hda_intel v: kernel 
  bus ID: 09:00.1 chip ID: 10de:1aef 
  Device-3: AMD Starship/Matisse HD Audio vendor: ASUSTeK 
  driver: snd_hda_intel v: kernel bus ID: 0b:00.4 chip ID: 1022:1487 
  Device-4: SteelSeries ApS Arctis Pro Wireless type: USB 
  driver: hid-generic,snd-usb-audio,usbhid bus ID: 5-1.3:13 chip ID: 1038:1294 
  Sound Server: ALSA v: k5.9.16-1-MANJARO 
Network:
  Device-1: Intel I211 Gigabit Network vendor: ASUSTeK driver: igb v: kernel 
  port: f000 bus ID: 04:00.0 chip ID: 8086:1539 
  IF: enp4s0 state: up speed: 1000 Mbps duplex: full mac: <filter> 
  IF-ID-1: virbr0 state: down mac: <filter> 
  IF-ID-2: virbr0-nic state: down mac: <filter> 
Drives:
  Local Storage: total: 5.11 TiB used: 99.86 GiB (1.9%) 
  SMART Message: Unable to run smartctl. Root privileges required. 
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung 
  model: SSD 970 EVO Plus 1TB size: 931.51 GiB block size: physical: 512 B 
  logical: 512 B speed: 31.6 Gb/s lanes: 4 serial: <filter> rev: 2B2QEXM7 
  temp: 50.9 C 
  ID-2: /dev/sda maj-min: 8:0 vendor: Western Digital 
  model: WD3003FZEX-00Z4SA0 size: 2.73 TiB block size: physical: 4096 B 
  logical: 512 B speed: 6.0 Gb/s serial: <filter> rev: 1A01 
  ID-3: /dev/sdb maj-min: 8:16 vendor: Samsung model: SSD 850 EVO 500GB 
  size: 465.76 GiB block size: physical: 512 B logical: 512 B speed: 6.0 Gb/s 
  serial: <filter> rev: 2B6Q 
  ID-4: /dev/sdc maj-min: 8:32 vendor: Samsung model: SSD 840 EVO 120GB 
  size: 111.79 GiB block size: physical: 512 B logical: 512 B speed: 6.0 Gb/s 
  serial: <filter> rev: DB6Q 
  ID-5: /dev/sdd maj-min: 8:48 vendor: Western Digital 
  model: WDS500G2B0A-00SM50 size: 465.76 GiB block size: physical: 512 B 
  logical: 512 B speed: 6.0 Gb/s serial: <filter> rev: 90WD 
  ID-6: /dev/sde maj-min: 8:64 vendor: Western Digital 
  model: WDS500G2B0A-00SM50 size: 465.76 GiB block size: physical: 512 B 
  logical: 512 B speed: 6.0 Gb/s serial: <filter> rev: 90WD 
Partition:
  ID-1: / raw size: 922.71 GiB size: 907.23 GiB (98.32%) 
  used: 99.86 GiB (11.0%) fs: ext4 dev: /dev/dm-0 maj-min: 254:0 
  mapped: luks-0cd38d91-17b6-4a56-8148-cf8b41b2c2a3 
Swap:
  Kernel: swappiness: 60 (default) cache pressure: 100 (default) 
  ID-1: swap-1 type: partition size: 8.8 GiB used: 0 KiB (0.0%) priority: -2 
  dev: /dev/dm-1 maj-min: 254:1 
  mapped: luks-20ff52e9-11c0-42fc-9dcb-eab150b6b6e5 
Sensors:
  System Temperatures: cpu: 39.1 C mobo: N/A gpu: nvidia temp: 50 C 
  Fan Speeds (RPM): N/A gpu: nvidia fan: 0% 
Info:
  Processes: 343 Uptime: 48m wakeups: 0 Memory: 31.33 GiB 
  used: 3.8 GiB (12.1%) Init: systemd v: 247 Compilers: gcc: 10.2.0 Packages: 
  pacman: 1328 lib: 399 flatpak: 0 Shell: Bash v: 5.1.0 running in: konsole 
  inxi: 3.2.01 
 pacman -Qs nvidia
     local/egl-wayland 1.1.6-1
         EGLStream-based Wayland external platform
     local/lib32-libvdpau 1.4-1
         Nvidia VDPAU library
     local/lib32-nvidia-utils 455.45.01-3
         NVIDIA drivers utilities (32-bit)
     local/libvdpau 1.4-1
         Nvidia VDPAU library
     local/linux54-nvidia 455.45.01-6 (linux54-extramodules)
         NVIDIA drivers for linux.
     local/linux59-nvidia 455.45.01-6 (linux59-extramodules)
         NVIDIA drivers for linux.
     local/mhwd-nvidia 455.45.01-3
         MHWD module-ids for nvidia 455.45.01
     local/mhwd-nvidia-340xx 340.108-1
         MHWD module-ids for nvidia 340.108
     local/mhwd-nvidia-390xx 390.138-1
         MHWD module-ids for nvidia 390.138
     local/nvidia-utils 455.45.01-2
         NVIDIA drivers utilities
     local/xf86-video-nouveau 1.0.16-2 (xorg-drivers)
         Open Source 3D acceleration driver for nVidia cards
 pacman -Q | grep linux
 archlinux-appstream-data 20201128-1
 archlinux-keyring 20201210-1
 lib32-util-linux 2.36.1-1
 linux-api-headers 5.8-1
 linux-firmware 20201218.r1803.646f159-1
 linux54 5.4.85-1
 linux54-headers 5.4.85-1
 linux54-nvidia 455.45.01-6
 linux59 5.9.16-1
 linux59-headers 5.9.16-1
 linux59-nvidia 455.45.01-6
 util-linux 2.36.1-4
 util-linux-libs 2.36.1-4

I also tried uninstalling linux59-nvidia and linux54-nvidia packages and installed nvidia-dkms 460.32.03-1 and nvidia-util 460.32.03-1 packages and booted up fine on linux 54 but would hang on a black screen on linux 59 but could still boot into text console.

I booted to black screen on latest updates. I solved my problem by removing

 local/mhwd-nvidia-340xx 340.108-1
         MHWD module-ids for nvidia 340.108
     local/mhwd-nvidia-390xx 390.138-1
         MHWD module-ids for nvidia 390.138

I had to do that through pamac gui (for some reason I couldn’t get terminal to find those packages)

I did this and it gave me the problem of freezing the screen after logging in. Could still log in to root so I had to make a new user and delete the old one. Removing 390xx required me to remove mhwd, mhwd-db, and mhwd-nvidia.

Then I had different problem and I am sorry for giving you bad advice. This is then above my knowledge.

Do you have an Nvidia 30 series card?

Unfortunately no. I have an older architecture than that.

Please post the output of xrandr -q, xrandr --listproviders. Have you tried blacklisting the GTX 1080 from the NVIDIA driver? Have you tried configuring Xorg to explicitly use the RTX 3090?

xrandr -q
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
DVI-D-0 disconnected (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
DP-0 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 531mm x 299mm
   1920x1080     60.00 + 144.00*  119.98    99.93    84.90    59.94    50.00  
   1680x1050     59.95  
   1440x900      59.89  
   1280x1024     75.02    60.02  
   1280x960      60.00  
   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    59.93    59.94  
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 disconnected (normal left inverted right x axis y axis)
DP-4 disconnected (normal left inverted right x axis y axis)
DP-5 disconnected (normal left inverted right x axis y axis)
HDMI-1-0 disconnected
DP-1-0 connected
   2560x1440     59.95 + 143.86   119.88    99.95  
   1920x1080    143.85    60.00    59.94    50.00  
   1680x1050     59.95  
   1440x900      59.89  
   1280x1024     75.02    60.02  
   1280x960      60.00  
   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.93    59.94  
DP-1-1 disconnected
DP-1-2 disconnected
DP-1-3 disconnected
DP-1-4 disconnected
DP-1-5 disconnected
  1920x1080 (0x1c0) 148.500MHz +HSync +VSync
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.50KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  60.00Hz
  1920x1080 (0x1c5) 148.350MHz +HSync +VSync
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.43KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  59.94Hz
  1920x1080 (0x1c6) 148.500MHz +HSync +VSync
        h: width  1920 start 2448 end 2492 total 2640 skew    0 clock  56.25KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  50.00Hz
  1680x1050 (0x1c7) 146.250MHz -HSync +VSync
        h: width  1680 start 1784 end 1960 total 2240 skew    0 clock  65.29KHz
        v: height 1050 start 1053 end 1059 total 1089           clock  59.95Hz
  1440x900 (0x1c8) 106.500MHz -HSync +VSync
        h: width  1440 start 1520 end 1672 total 1904 skew    0 clock  55.93KHz
        v: height  900 start  903 end  909 total  934           clock  59.89Hz
  1280x1024 (0x1c9) 135.000MHz +HSync +VSync
        h: width  1280 start 1296 end 1440 total 1688 skew    0 clock  79.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  75.02Hz
  1280x1024 (0x1ca) 108.000MHz +HSync +VSync
        h: width  1280 start 1328 end 1440 total 1688 skew    0 clock  63.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  60.02Hz
  1280x960 (0x1cb) 108.000MHz +HSync +VSync
        h: width  1280 start 1376 end 1488 total 1800 skew    0 clock  60.00KHz
        v: height  960 start  961 end  964 total 1000           clock  60.00Hz
  1280x800 (0x1cc) 83.500MHz -HSync +VSync
        h: width  1280 start 1352 end 1480 total 1680 skew    0 clock  49.70KHz
        v: height  800 start  803 end  809 total  831           clock  59.81Hz
  1280x720 (0x1cd) 74.250MHz +HSync +VSync
        h: width  1280 start 1390 end 1430 total 1650 skew    0 clock  45.00KHz
        v: height  720 start  725 end  730 total  750           clock  60.00Hz
  1280x720 (0x1ce) 74.180MHz +HSync +VSync
        h: width  1280 start 1390 end 1430 total 1650 skew    0 clock  44.96KHz
        v: height  720 start  725 end  730 total  750           clock  59.94Hz
  1280x720 (0x1cf) 74.250MHz +HSync +VSync
        h: width  1280 start 1720 end 1760 total 1980 skew    0 clock  37.50KHz
        v: height  720 start  725 end  730 total  750           clock  50.00Hz
  1152x864 (0x1d0) 108.000MHz +HSync +VSync
        h: width  1152 start 1216 end 1344 total 1600 skew    0 clock  67.50KHz
        v: height  864 start  865 end  868 total  900           clock  75.00Hz
  1024x768 (0x1d1) 78.750MHz +HSync +VSync
        h: width  1024 start 1040 end 1136 total 1312 skew    0 clock  60.02KHz
        v: height  768 start  769 end  772 total  800           clock  75.03Hz
  1024x768 (0x1d2) 75.000MHz -HSync -VSync
        h: width  1024 start 1048 end 1184 total 1328 skew    0 clock  56.48KHz
        v: height  768 start  771 end  777 total  806           clock  70.07Hz
  1024x768 (0x1d3) 65.000MHz -HSync -VSync
        h: width  1024 start 1048 end 1184 total 1344 skew    0 clock  48.36KHz
        v: height  768 start  771 end  777 total  806           clock  60.00Hz
  800x600 (0x1d4) 49.500MHz +HSync +VSync
        h: width   800 start  816 end  896 total 1056 skew    0 clock  46.88KHz
        v: height  600 start  601 end  604 total  625           clock  75.00Hz
  800x600 (0x1d5) 50.000MHz +HSync +VSync
        h: width   800 start  856 end  976 total 1040 skew    0 clock  48.08KHz
        v: height  600 start  637 end  643 total  666           clock  72.19Hz
  800x600 (0x1d6) 40.000MHz +HSync +VSync
        h: width   800 start  840 end  968 total 1056 skew    0 clock  37.88KHz
        v: height  600 start  601 end  605 total  628           clock  60.32Hz
  800x600 (0x1d7) 36.000MHz +HSync +VSync
        h: width   800 start  824 end  896 total 1024 skew    0 clock  35.16KHz
        v: height  600 start  601 end  603 total  625           clock  56.25Hz
  720x576 (0x1d8) 27.000MHz -HSync -VSync
        h: width   720 start  732 end  796 total  864 skew    0 clock  31.25KHz
        v: height  576 start  581 end  586 total  625           clock  50.00Hz
  720x480 (0x1d9) 27.000MHz -HSync -VSync
        h: width   720 start  736 end  798 total  858 skew    0 clock  31.47KHz
        v: height  480 start  489 end  495 total  525           clock  59.94Hz
  640x480 (0x1da) 31.500MHz -HSync -VSync
        h: width   640 start  656 end  720 total  840 skew    0 clock  37.50KHz
        v: height  480 start  481 end  484 total  500           clock  75.00Hz
  640x480 (0x1db) 25.170MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.46KHz
        v: height  480 start  490 end  492 total  525           clock  59.93Hz
  640x480 (0x1dc) 25.175MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.47KHz
        v: height  480 start  490 end  492 total  525           clock  59.94Hz
xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x1b8 cap: 0x1, Source Output crtcs: 4 outputs: 8 associated providers: 1 name:NVIDIA-0
Provider 1: id: 0x37a cap: 0x2, Sink Output crtcs: 4 outputs: 7 associated providers: 1 name:NVIDIA-G0

I’m not quite sure how to blacklist the GTX 1080 specifically from using the driver. Can you point me to a resource? Also how would I configure xorg to explicitly use the RTX 3090?

Use an Xorg configuration like this:

Section "Files"
	ModulePath "/usr/lib/nvidia"
	ModulePath "/usr/lib32/nvidia"
	ModulePath "/usr/lib32/nvidia/xorg/modules"
	ModulePath "/usr/lib32/xorg/modules"
	ModulePath "/usr/lib64/nvidia/xorg/modules"
	ModulePath "/usr/lib64/nvidia/xorg"
	ModulePath "/usr/lib64/xorg/modules"
EndSection

Section "ServerLayout"
	Identifier "layout"
	Screen 0 "nvidia"
EndSection

Section "Device"
	Identifier "nvidia"
	Driver "nvidia"
	BusID "PCI:1:0:0" ### change the bus id as needed ###
EndSection

Section "Screen"
	Identifier "nvidia"
	Device "nvidia"
	Option "AllowEmptyInitialConfiguration"
EndSection

You need to change “BusID” parameter of the device to that of the RTX 3090. You can use lspci -nn -d ::0300 to get the necessary numbers. For example, 01:00.0 becomes PCI:1:0:0.

1 Like

I tried creating a similar xorg config, completely removed the 1080 and only used the 3090. Didn’t get any of the boot screens on display with the 1080 unplugged. When it was plugged in, I was able to get the login screen on the display with the 3090 connected. After entering my password, it goes completely black and I can only bring up the TTY on the 1080 display.

Have you tried putting the RTX 3090 in the slot the GTX 1080 was in?

No, I have not and most likely would not willing to try that setup because that would give too little clearance for the 1080 in the other slot.

I gather that you get absolutely no display output when only the RTX 3090 is in the machine?

Correct. I’d also like to note I’m able to successfully pass the 3090 to a windows VM, so the card itself isn’t defective.

Please post the output of head -n999 /etc/X11/xorg.conf /etc/X11/xorg.conf.d/* /etc/X11/mhwd.d/*.

Nvidia.conf is what I’m currently using to get output on the 1080 monitor. I tried adding a second screen for the 3090 to not much success.
Nvidia.conf.old is what gave me the login screen on the 3090, and then black screen after login.

head -n999 /etc/X11/xorg.conf /etc/X11/xorg.conf.d/* /etc/X11/mhwd.d/*
head: cannot open '/etc/X11/xorg.conf' for reading: No such file or directory
==> /etc/X11/xorg.conf.d/00-keyboard.conf <==
# Read and parsed by systemd-localed. It's probably wise not to edit this file
# manually too freely.
Section "InputClass"
        Identifier "system-keyboard"
        MatchIsKeyboard "on"
        Option "XkbLayout" "us"
        Option "XkbModel" "pc105"
EndSection

==> /etc/X11/xorg.conf.d/30-touchpad.conf <==
Section "InputClass"
    Identifier "touchpad"
    Driver "libinput"
    MatchIsTouchpad "on"
    Option "Tapping" "on"
EndSection

==> /etc/X11/xorg.conf.d/90-mhwd.conf <==
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 455.45.01

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

Section "Files"
        ModulePath "/usr/lib/nvidia"
        ModulePath "/usr/lib32/nvidia"
        ModulePath "/usr/lib32/nvidia/xorg/modules"
        ModulePath "/usr/lib32/xorg/modules"
        ModulePath "/usr/lib64/nvidia/xorg/modules"
        ModulePath "/usr/lib64/nvidia/xorg"
        ModulePath "/usr/lib64/xorg/modules"
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      "Ancor Communications Inc VG248"
    HorizSync       30.0 - 160.0
    VertRefresh     50.0 - 150.0
    Option         "DPMS"
EndSection

Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "Acer XG270HU"
    HorizSync       222.0 - 222.0
    VertRefresh     40.0 - 144.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 1080"
    BusID          "PCI:8:0:0"
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce RTX 3090"
    BusID          "PCI:9:0:0"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "DFP-2"
    Option         "metamodes" "1920x1080_144 +0+0"
    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

==> /etc/X11/mhwd.d/nvidia.conf <==
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 455.45.01

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

Section "Files"
        ModulePath "/usr/lib/nvidia"
        ModulePath "/usr/lib32/nvidia"
        ModulePath "/usr/lib32/nvidia/xorg/modules"
        ModulePath "/usr/lib32/xorg/modules"
        ModulePath "/usr/lib64/nvidia/xorg/modules"
        ModulePath "/usr/lib64/nvidia/xorg"
        ModulePath "/usr/lib64/xorg/modules"
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      "Ancor Communications Inc VG248"
    HorizSync       30.0 - 160.0
    VertRefresh     50.0 - 150.0
    Option         "DPMS"
EndSection

Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "Acer XG270HU"
    HorizSync       222.0 - 222.0
    VertRefresh     40.0 - 144.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 1080"
    BusID          "PCI:8:0:0"
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce RTX 3090"
    BusID          "PCI:9:0:0"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "DFP-2"
    Option         "metamodes" "1920x1080_144 +0+0"
    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

==> /etc/X11/mhwd.d/nvidia.conf.backup <==
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 455.45.01

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

Section "Files"
        ModulePath "/usr/lib/nvidia"
        ModulePath "/usr/lib32/nvidia"
        ModulePath "/usr/lib32/nvidia/xorg/modules"
        ModulePath "/usr/lib32/xorg/modules"
        ModulePath "/usr/lib64/nvidia/xorg/modules"
        ModulePath "/usr/lib64/nvidia/xorg"
        ModulePath "/usr/lib64/xorg/modules"
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      "Ancor Communications Inc VG248"
    HorizSync       30.0 - 160.0
    VertRefresh     50.0 - 150.0
    Option         "DPMS"
EndSection

Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "Acer XG270HU"
    HorizSync       222.0 - 222.0
    VertRefresh     40.0 - 144.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 1080"
    BusID          "PCI:8:0:0"
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce RTX 3090"
    BusID          "PCI:9:0:0"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "DFP-2"
    Option         "metamodes" "1920x1080_144 +0+0"
    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

==> /etc/X11/mhwd.d/nvidia.conf.nvidia-xconfig-original <==

==> /etc/X11/mhwd.d/nvidia.conf.old <==
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 455.45.01

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

Section "Files"
        ModulePath "/usr/lib/nvidia"
        ModulePath "/usr/lib32/nvidia"
        ModulePath "/usr/lib32/nvidia/xorg/modules"
        ModulePath "/usr/lib32/xorg/modules"
        ModulePath "/usr/lib64/nvidia/xorg/modules"
        ModulePath "/usr/lib64/nvidia/xorg"
        ModulePath "/usr/lib64/xorg/modules"
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      "Ancor Communications Inc VG248"
    HorizSync       30.0 - 160.0
    VertRefresh     50.0 - 150.0
    Option         "DPMS"
EndSection

Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "Acer XG270HU"
    HorizSync       222.0 - 222.0
    VertRefresh     40.0 - 144.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce RTX 3090"
    BusID          "PCI:9:0:0"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
    Option         "AllowEmptyInitialConfiguration"
EndSection

Please run sudo unlink /etc/X11/xorg.conf.d/90-mhwd.conf. Then save the configuration I suggested as /etc/X11/xorg.conf.d/10-nvidia.conf with appropriately modified bus id, and reboot.

1 Like

Did so, same issue as described before. Login screen on 3090 display, black after login.

I think this could be caused by some user-level configuration, can you create a new user and try to log in with that?

1 Like

You were absolutely correct, creating a new user and using the xorg config you posted works. Any idea how I can replicate this behavior on the other user?

Edit: Funnily enough, this now reverses the behavior. Can’t get the 1080 to output display to its monitor. That’s okay because I plan on passing it through to a VM, but I do wonder if there’s a way to use both for the host machine.