Using xorg-x11-server 1.20.1-5.2.el7_6 , I am wondering if I am making a simple configuration error?
The following segfaults:
Section "ServerLayout"
Identifier "Example"
Screen 0 "A"
Screen 1 "B"
EndSection
Section "Device"
Identifier "A Card"
Driver "modesetting"
Screen 0
BusID "PCI:16@0:0:0"
Option "kmsdev" "/dev/dri/card1"
Option "Monitor-DVI-D-1"
EndSection
Section "Monitor"
Identifier "A Monitor"
EndSection
Section "Screen"
Identifier "A"
Device "A Card"
Monitor "A Monitor"
EndSection
Section "Device"
Identifier "B Card"
Driver "modesetting"
Screen 1
BusID "PCI:56@0:0:0"
Option "kmsdev" "/dev/dri/card0"
Option "Monitor-HDMI-1"
EndSection
Section "Monitor"
Identifier "B Monitor"
EndSection
Section "Screen"
Identifier "B"
Device "B Card"
Monitor "B Monitor"
EndSection
sudo cat /var/log/Xorg.0.log | grep -E '(EE)|(WW)'
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 70484.038] (WW) xf86OpenConsole: setpgid failed: Operation not permitted
[ 70484.038] (WW) xf86OpenConsole: setsid failed: Operation not permitted
[ 70484.038] (EE)
[ 70484.038] (EE) Backtrace:
[ 70484.038] (EE) 0: /usr/bin/X (xorg_backtrace+0x55) [0x5571eeac9185]
[ 70484.039] (EE) 1: /usr/bin/X (0x5571ee918000+0x1b4e09) [0x5571eeacce09]
[ 70484.039] (EE) 2: /lib64/libpthread.so.0 (0x7f1aecfb9000+0xf5d0) [0x7f1aecfc85d0]
[ 70484.039] (EE) 3: /usr/lib64/xorg/modules/drivers/modesetting_drv.so (0x7f1ae91b8000+0xa144) [0x7f1ae91c2144]
[ 70484.039] (EE) 4: /usr/bin/X (0x5571ee918000+0xb0049) [0x5571ee9c8049]
[ 70484.039] (EE) 5: /usr/bin/X (xf86CallDriverProbe+0x4b) [0x5571ee9a700b]
[ 70484.039] (EE) 6: /usr/bin/X (xf86BusConfig+0x46) [0x5571ee9a7966]
[ 70484.039] (EE) 7: /usr/bin/X (InitOutput+0x8ac) [0x5571ee9b4f0c]
[ 70484.039] (EE) 8: /usr/bin/X (0x5571ee918000+0x601b0) [0x5571ee9781b0]
[ 70484.039] (EE) 9: /lib64/libc.so.6 (__libc_start_main+0xf5) [0x7f1aecc0e3d5]
[ 70484.039] (EE) 10: /usr/bin/X (0x5571ee918000+0x4a4ce) [0x5571ee9624ce]
[ 70484.039] (EE)
[ 70484.039] (EE) Segmentation fault at address 0x2ba
[ 70484.039] (EE)
[ 70484.039] (EE) Caught signal 11 (Segmentation fault). Server aborting
[ 70484.039] (EE)
[ 70484.039] (EE)
[ 70484.039] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[ 70484.039] (EE)
[ 70484.039] (EE) Server terminated with error (1). Closing log file.
However, each individual section is fine. Both of the following work:
Section "ServerLayout"
Identifier "Example"
Screen 0 "A"
EndSection
Section "Device"
Identifier "A Card"
Driver "modesetting"
Screen 0
BusID "PCI:16@0:0:0"
Option "kmsdev" "/dev/dri/card1"
Option "Monitor-DVI-D-1"
EndSection
Section "Monitor"
Identifier "A Monitor"
EndSection
Section "Screen"
Identifier "A"
Device "A Card"
Monitor "A Monitor"
EndSection
Section "ServerLayout"
Identifier "Example"
Screen 0 "B"
EndSection
Section "Device"
Identifier "B Card"
Driver "modesetting"
Screen 0
BusID "PCI:56@0:0:0"
Option "kmsdev" "/dev/dri/card0"
Option "Monitor-HDMI-1"
EndSection
Section "Monitor"
Identifier "B Monitor"
EndSection
Section "Screen"
Identifier "B"
Device "B Card"
Monitor "B Monitor"
EndSection
Is there additional configuration that needs to be added to utilize multiple cards with the modesetting driver? If it makes a difference, I intend to use ZaphodHeads, and I do not require acceleration on one of the cards. I just removed any excess configuration to demonstrate the problem more clearly.