Problem with xorg tryng to dual head setup with two graphics cards (intel and nvidia)

Mario Marietto marietto2008 at gmail.com
Fri Jul 29 09:50:39 UTC 2022


Hello.

What I'm trying to do is to correctly configure the file xorg.conf because
I want to use two gpus at the same time connected to two different monitors
while using FreeBSD 13.1. It could be useful when I want to make some 3d
modelling using Blender on one monitor / gpu and using the second one
(nvidia 1060 or Intel UHD graphics 630) to watch some tutorial. I've also
got a third gpu (geforce RTX 2080 ti) ,but I want to keep it free to be
passed through on a bhyve linux virtual machine. On the BIOS I can set up
the Nvidia Geforce 1060 or the Intel gpu as the GPU with which the PC
boots. I'm not sure which is the correct gpu to choose as default. So,this
is the scheme that I want to follow :

   1.

   monitor AOC -> hdmi cable ---> gpu nvidia geforce 1060
   2.

   monitor Samsung SynchMaster ---> hdmi cable ---> gpu intel 'CoffeeLake-S
   GT2 [UHD Graphics 630]'
   3.

   gpu geforce RTX 2080 ti connected to another monitor that I will buy
   later


Actually I'm using this xorg.conf :
https://pastebin.ubuntu.com/p/DhW6RHS3zb/

instead this is the Xorg.0.log file :
https://pastebin.ubuntu.com/p/YtdPq9fngQ/


In front of me I have the AOC monitor connected to the HDMI port of the
Geforce 1060. On my right I have the monitor samsung syncmaster,that's
connected to the HDMI port of the intel GPU. What happens is that the
samsung monitor works partially. The only 2 apps which can be directed to
it (it is attached to the Intel GPU with the HDMI cable) are :


[marietto at marietto ~]$ export DISPLAY=:0.1 ; konsole

and :

[marietto at marietto ~]$ export DISPLAY=:0.1 ; chrome

(firefox can be displayed only on the screen 0.0 : don't know why)

Here you can find the list of every PCI device attached to my PC :

https://pastebin.ubuntu.com/p/Gx5DqckFQP/


I can export some applications to the DISPLAY=:0.1 (monitor Samsung
SynchMaster ---> hdmi cable ---> gpu intel 'CoffeeLake-S GT2 [UHD Graphics
630]). But this kind of usage is not comfortable at all. Infact I can't run
another session of xorg because it says that one session is already
running. And I'm not able to run another xfce4 session. Only some
applications are displayed over it and If I invert the cable and the
drivers on the xorg.conf file,placing as primary GPU the intel gpu attached
to the AOC monitor and as secondary GPU the nvidia 1060 attached to the
samsung syncmaster,the behavior is the same,with the difference that I've
inverted the monitors. I've tried to enable xinerama,but it does not work
well. It freezes the mouse and anyway,attaching virtually two screens into
only one is ridiculous,because they aren't attached physically. What I want
to do is to be able to do some tasks on monitor 1 and some different tasks
on monitor 2.

# 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)
DP-0 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-0 connected 1920x1080+0+0 (normal left inverted right x axis y
axis) 598mm x 336mm
   1920x1080     60.00*+  59.94    50.00    60.00    50.04
   1680x1050     59.95
   1440x900      59.89
   1280x1024     75.02    60.02
   1280x960      60.00
   1280x720      60.00    59.94    50.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    59.93
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)

arandr says that the only monitor connected is the HDMI-0,the monitor AOC
connected to the nVidia 1060 gpu. But if I invert the drivers on xorg.conf
and the cables,the only monitor connected will again be the HDMI-0,but this
time it will be the Samsung Synchmaster.

The problem could be caused by the NVidia driver because it actually
replaced some Xorg libraries. Nowadays this is solved by clever use of
libmap.conf(5). But this doesn't change the fact Xorg itself may not like
having two different video cards working simultaneously. The NVidia driver
uses a modified version of libEGL.so for example. Xorg (well, mesa
actually) supplies the exact same library but the NVidia driver requires
the NVidia modified version. Back in the olden days the NVidia driver
installation would simply overwrite/replace the Xorg libEGL.so. It's not
allowed to do this anymore (one package overwriting another package's files
is not allowed). This was solved by saving the NVidia modified version of
libEGL.so as NVidia-libEGL.so and configuring libmap.conf(5) accordingly.
Now, if the Nvidia driver requests to load libEGL.so it actually loads
NVidia-libEGL.so (because of the mappings in libmap.conf(5)).

I don't have a solution. Do you ?
-- 
Mario.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.x.org/archives/xorg/attachments/20220729/778ab356/attachment.htm>


More information about the xorg mailing list