7

My system contains three graphic cards, one radeon and two nvidia.

I'm trying to configure a multiseat setup but the "device name" of the graphic cards is not stable, it change from one boot to another.

exemple

  • boot 1

    Radeon card /sys/devices/pci0000:00/0000:00:03.0/0000:01:00.0/drm/card1

    Nvidia 1 card /sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/drm/card0

    Nvidia 2 card /sys/devices/pci0000:00/0000:00:1c.4/0000:04:00.0/drm/card2

  • boot 2

    Radeon card /sys/devices/pci0000:00/0000:00:03.0/0000:01:00.0/drm/card0

    Nvidia 1 card /sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/drm/card1

    Nvidia 2 card /sys/devices/pci0000:00/0000:00:1c.4/0000:04:00.0/drm/card2

etc...

This problem make any multiseat configuration unstable (i use loginctl) because assigning a device to a seat is based on these device names. Another real issue is that this alters the connector names of the graphic cards (ie VGA-1 becomes VGA-2 etc..) both at the kernel level and Xorg level so i cannot do any monitor configuration through xorg.conf nor use the "video=" kernel option, which is needed in my setup to force to enable an old crt monitor without EDID.

Is it normal that this "card0" "card1".. is nondeterministic, is it a bug or something that can be configured (udev or something like that) ?

EDIT:

As user @dirkt said on the comments, at systemd level it is nondeterministic and in fact the multiseat configuration in itself is OK. My main issue is the unreliability of the output names. I need them at the kernel level to specify "video=VGA-1:e" to force output to be enabled. And i need at xorg level to use Option "Monitor-VGA-1" "Monitor-x".

  • For Xorg you should be able to use BusID, which is stable... not sure about any of the others though... – derobert May 10 '17 at 18:53
  • Hi @derobert, yes but it make the directive "Option "Monitor-VGA-1" "Monitor1" unusable because the connector name is included on the option key. – sgt-hartman May 10 '17 at 19:15
  • Under systemd, pretty much everything is nondeterministic. If the main problem is output names, I'd file a bug with Xorg and see if they have some idea. At least they should be told about the problem. – dirkt May 11 '17 at 11:26
  • @dirkt yes that's my problem. I edited my question to add some clarifications. I think the issue is not at Xorg level but at the kernel – sgt-hartman May 11 '17 at 12:21
  • You might find this link relevant: devtalk.nvidia.com/default/topic/773204/… – Jakub Klinkovský Oct 31 '18 at 21:28
1

I have not managed to fix the issue but I've found a workaround for output names:

  • In the kernel boot options, I activate both three VGA connectors:

    video=VGA-1:e video=VGA-2:e video=VGA-3:e
    
  • In the device section of xorg.conf i define monitor option for all possible outputs, unrelevant ones are simply ignored:

    Option "Monitor-VGA-1"  "my-monitor"
    Option "Monitor-VGA-2"  "my-monitor"
    Option "Monitor-VGA-3"  "my-monitor"
    

This is hackish but it solves my main issues.

I still not accept this answer now because I'm interested in a better, cleaner solution.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.