Nomi dei dispositivi per schede grafiche non deterministici


8

Il mio sistema contiene tre schede grafiche, una radeon e due nvidia.

Sto provando a configurare una configurazione multiseat, ma il "nome del dispositivo" delle schede grafiche non è stabile, cambia da un avvio all'altro.

exemple

  • avvio 1

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

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

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

  • avvio 2

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

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

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

eccetera...

Questo problema rende instabile qualsiasi configurazione multiseat (utilizzo loginctl) perché l'assegnazione di un dispositivo a un posto si basa su questi nomi di dispositivo. Un altro vero problema è che questo altera i nomi dei connettori delle schede grafiche (cioè VGA-1 diventa VGA-2 ecc.) Sia a livello di kernel che a livello di Xorg, quindi non posso eseguire alcuna configurazione del monitor tramite xorg.conf né usare " video = "opzione del kernel, che è necessaria nella mia configurazione per forzare l'abilitazione di un vecchio monitor crt senza EDID.

È normale che questo "card0" "card1" .. non sia deterministico, è un bug o qualcosa che può essere configurato (udev o qualcosa del genere)?

MODIFICA :

Come ha detto l'utente @dirkt nei commenti, a livello di systemd non è deterministico e in effetti la configurazione multiseat in sé è OK. Il mio problema principale è l'inaffidabilità dei nomi di output. Mi servono a livello di kernel per specificare "video = VGA-1: e" per forzare l'abilitazione dell'output. E ho bisogno a livello di xorg da usare Option "Monitor-VGA-1" "Monitor-x".


Per Xorg dovresti essere in grado di usare BusID, il che è stabile ... non sono sicuro di nessuno degli altri però ...
Derobert

Ciao @derobert, sì ma rende inutilizzabile la direttiva "Opzione" Monitor-VGA-1 "" Monitor1 "perché il nome del connettore è incluso nella chiave dell'opzione.
sgt-hartman,

Sotto systemd, praticamente tutto non è deterministico. Se il problema principale sono i nomi di output, vorrei presentare un bug con Xorg e vedere se ne hanno idea. Almeno dovrebbero essere informati del problema.
Dirkt

@dirkt sì, questo è il mio problema. Ho modificato la mia domanda per aggiungere alcuni chiarimenti. Penso che il problema non sia a livello di Xorg ma a livello di kernel
sgt-hartman,

Potresti trovare questo link pertinente: devtalk.nvidia.com/default/topic/773204/…
Jakub Klinkovský

Risposte:


1

Non sono riuscito a risolvere il problema, ma ho trovato una soluzione alternativa per i nomi di output:

  • Nelle opzioni di avvio del kernel, attivo entrambi i tre connettori VGA:

    video=VGA-1:e video=VGA-2:e video=VGA-3:e
    
  • Nella sezione del dispositivo xorg.confdefinisco l'opzione monitor per tutte le uscite possibili, quelle irrilevanti vengono semplicemente ignorate:

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

Questo è un trucco ma risolve i miei problemi principali.

Non accetto ancora questa risposta ora perché sono interessato a una soluzione migliore e più pulita.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.