[systemd-devel] seat-master example

Floris jkfloris at dds.nl
Sun Jun 2 15:33:57 PDT 2013


Op Sun, 02 Jun 2013 18:29:13 +0200 schreef Floris <jkfloris at dds.nl>:

> Op Sun, 02 Jun 2013 15:32:15 +0200 schreef Tom Gundersen <teg at jklm.no>:
>
>> On Sun, Jun 2, 2013 at 3:07 PM, Floris <jkfloris at dds.nl> wrote:
>>> And what should I add if I didn't use a mainline graphics driver or a  
>>> driver
>>> that taints the kernel?
>>
>> Then you'll need to add a rule equivalent to
>>
>> SUBSYSTEM=="graphics", KERNEL=="fb[0-9]*", TAG+="seat",  
>> TAG+="master-of-seat"
>>
>> but replace fb[0-9] with whatever your device is (which depends on
>> your hardware/driver). Ideally your distro would ship the correct
>> rules file with the driver...
>>
>
> after a couple of hours playing around your example isn't that clear.
>
> udevadm info -a -p  
> /sys/devices/pci0000\:00/0000\:00\:03.0/0000\:01\:00.0/
> doesn't show a "graphics" neither a "framebuffer" so I tried:
>
> $ cat /etc/udev/rules.d/99-seat.rules
> SUBSYSTEM=="pci", KERNEL=="0000:02:00.0", TAG+="seat",  
> TAG+="master-of-seat"
> SUBSYSTEM=="pci", KERNEL=="0000:01:00.0", TAG+="seat",  
> TAG+="master-of-seat"
>
> $ systemd-loginctl seat-status seat0
>   does show the devices, but there isn't another seat created.
>
some more information:
# udevadm info --query=all --path
/sys/devices/pci0000\:00/0000\:00\:03.0/0000\:01\:00.0/
P: /devices/pci0000:00/0000:00:03.0/0000:01:00.0
E: DEVPATH=/devices/pci0000:00/0000:00:03.0/0000:01:00.0
E: DRIVER=nvidia
E: ID_FOR_SEAT=pci-pci-0000_01_00_0
E: ID_PATH=pci-0000:01:00.0
E: ID_PATH_TAG=pci-0000_01_00_0
E: MODALIAS=pci:v000010DEd00000615sv00001043sd000082FBbc03sc00i00
E: PCI_CLASS=30000
E: PCI_ID=10DE:0615
E: PCI_SLOT_NAME=0000:01:00.0
E: PCI_SUBSYS_ID=1043:82FB
E: SUBSYSTEM=pci
E: TAGS=:master-of-seat:seat:
E: UDEV_LOG=3
E: USEC_INITIALIZED=9232997

# udevadm info --query=all --path
/sys/devices/pci0000\:00/0000\:00\:05.0/0000\:02\:00.0/
P: /devices/pci0000:00/0000:00:05.0/0000:02:00.0
E: DEVPATH=/devices/pci0000:00/0000:00:05.0/0000:02:00.0
E: DRIVER=nvidia
E: ID_FOR_SEAT=pci-pci-0000_02_00_0
E: ID_PATH=pci-0000:02:00.0
E: ID_PATH_TAG=pci-0000_02_00_0
E: MODALIAS=pci:v000010DEd0000104Asv00003842sd00002615bc03sc00i00
E: PCI_CLASS=30000
E: PCI_ID=10DE:104A
E: PCI_SLOT_NAME=0000:02:00.0
E: PCI_SUBSYS_ID=3842:2615
E: SUBSYSTEM=pci
E: TAGS=:master-of-seat:seat:
E: UDEV_LOG=3
E: USEC_INITIALIZED=9232683

the TAG master-of-seat is set

$ systemd-loginctl seat-status seat0

  ├ /sys/devices/pci0000:00/0000:00:03.0/0000:01:00.0
  │ (pci:0000:01:00.0)
  ├ /sys/devices/pci0000:00/0000:00:05.0/0000:02:00.0
  │ (pci:0000:02:00.0)

# systemd-loginctl attach seat1  
/sys/devices/pci0000\:00/0000\:00\:03.0/0000\:01\:00.0

$ systemd-loginctl seat-status seat0

  ├ /sys/devices/pci0000:00/0000:00:05.0/0000:02:00.0
  │ (pci:0000:02:00.0)

$ systemd-loginctl seat-status seat1
Failed to issue method call: No such file or directory

One card is moved from seat0, but seat1 is still not available

any more help is welcome,

thanks

floris


More information about the systemd-devel mailing list