Re: [systemd-devel] Multi seats setup How-to
On Sun, Sep 6, 2015 at 6:53 PM, Lennart Poettering wrote: > On Sun, 06.09.15 18:24, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > >> On Sun, Sep 6, 2015 at 5:22 PM, Lennart Poettering >> wrote: >> > On Sun, 06.09.15 16:31, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: >> > >> > I fear this newer Plugable device is not as carefully designed as the >> > older ones, and uses non-recognizable vendor/product ids... Thus we >> > cannot really add an ID_AUTO_SEAT rule from upstream for it. Pity. >> >> I am afraid you are right. I have tried all kind of possibilities and >> with nouveau driver. All tests point to the creation of seat but left >> me with a black screen for monitor of seat1. > > Hmm? the ID_AUTO_SEAT stuff is just sugar on top, to make sure that > the multiseat hw just works, without requiring any configuration. Yes, I understood that and try to configure by hand > > Without it it just means you have to manually assign devices to a > seat, that's all. $ loginctl attache ... That's what I tried > > Nouveau is a driver for PCI hardware, not for the usb displaylink. So good, I booted back to Nvidia driver and blacklisted nouveau. > > Before thinking of putting together seats, try to make the displaylink > hw work at all, so that you get something on screen. Yes I will How to do that is > out of scope for systemd I fear though, can't help you much with that. > > In general: systemd just keeps a database of what hw belongs to which > seat, that's all. Drivers and access to the devices are done in the > kernel and X11, and systemd has nothing to do with that really. Looking at this thread[0], it seems the udev rules I use is not good. I decompressed the Ubuntu package[1] to see how I can modify the rule. [0]http://support.displaylink.com/forums/287786-displaylink-feature-suggestions/suggestions/7988955-support-linux-on-all-your-devices?page=1&per_page=20 [1]http://support.displaylink.com/knowledgebase/articles/683482 > > Lennart > > -- > Lennart Poettering, Red Hat -- google.com/+arnaudgabourygabx ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
On Sun, 06.09.15 18:24, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > On Sun, Sep 6, 2015 at 5:22 PM, Lennart Poettering > wrote: > > On Sun, 06.09.15 16:31, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > > > > I fear this newer Plugable device is not as carefully designed as the > > older ones, and uses non-recognizable vendor/product ids... Thus we > > cannot really add an ID_AUTO_SEAT rule from upstream for it. Pity. > > I am afraid you are right. I have tried all kind of possibilities and > with nouveau driver. All tests point to the creation of seat but left > me with a black screen for monitor of seat1. Hmm? the ID_AUTO_SEAT stuff is just sugar on top, to make sure that the multiseat hw just works, without requiring any configuration. Without it it just means you have to manually assign devices to a seat, that's all. Nouveau is a driver for PCI hardware, not for the usb displaylink. Before thinking of putting together seats, try to make the displaylink hw work at all, so that you get something on screen. How to do that is out of scope for systemd I fear though, can't help you much with that. In general: systemd just keeps a database of what hw belongs to which seat, that's all. Drivers and access to the devices are done in the kernel and X11, and systemd has nothing to do with that really. Lennart -- Lennart Poettering, Red Hat ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
On Sun, Sep 6, 2015 at 5:22 PM, Lennart Poettering wrote: > On Sun, 06.09.15 16:31, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > > I fear this newer Plugable device is not as carefully designed as the > older ones, and uses non-recognizable vendor/product ids... Thus we > cannot really add an ID_AUTO_SEAT rule from upstream for it. Pity. I am afraid you are right. I have tried all kind of possibilities and with nouveau driver. All tests point to the creation of seat but left me with a black screen for monitor of seat1. The Fedora box is not at hand ans can't play with udev rules. Thank you for your help, as usual. > > Lennart > > -- > Lennart Poettering, Red Hat -- google.com/+arnaudgabourygabx ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
On Sun, 06.09.15 16:31, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: I fear this newer Plugable device is not as carefully designed as the older ones, and uses non-recognizable vendor/product ids... Thus we cannot really add an ID_AUTO_SEAT rule from upstream for it. Pity. Lennart -- Lennart Poettering, Red Hat ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
On Sun, Sep 6, 2015 at 4:19 PM, Lennart Poettering wrote: > On Sun, 06.09.15 16:02, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > >> > That's awfully generic... >> > >> > I'd really just be interested in vendor/product ids if the usb hub >> > that is built into your docking station, where the display link is >> > connected to. >> > >> > If in doubt, please run "lsusb" once before you plug in the device, >> > and once after you plug it in, and let me know the difference: all the >> > lines that appeared in the output by plugging it in. >> >> unplu/plug, diff of $ lsusb >> >> Bus 002 Device 005: ID 17e9:4323 DisplayLink >> Bus 002 Device 004: ID 2109:8110 VIA Labs, Inc. Hub >> Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub >> Bus 001 Device 008: ID 1a40:0101 Terminus Technology Inc. Hub >> Bus 001 Device 007: ID 2109:2811 VIA Labs, Inc. Hub > > Ah, hmm, interesting. Which device is this precisely? Have an amazon > link or so? The output above suggests the device is not nicely > recognizable unfortunately. amazon[0] > > Could you redo the output, and do this with "lsusb -v" this time? That > shows more information about the USB descriptor of the device. Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Couldn't open device, some information will be missing Device Descriptor: bLength18 bDescriptorType 1 bcdUSB 3.00 bDeviceClass9 Hub bDeviceSubClass 0 Unused bDeviceProtocol 3 bMaxPacketSize0 9 idVendor 0x1d6b Linux Foundation idProduct 0x0003 3.0 root hub bcdDevice4.01 iManufacturer 3 iProduct2 iSerial 1 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 31 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xe0 Self Powered Remote Wakeup MaxPower0mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 9 Hub bInterfaceSubClass 0 Unused bInterfaceProtocol 0 Full speed (or root) hub iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes3 Transfer TypeInterrupt Synch Type None Usage Type Data wMaxPacketSize 0x0004 1x 4 bytes bInterval 12 bMaxBurst - Bus 002 Device 009: ID 17e9:4323 DisplayLink Device Descriptor: bLength18 bDescriptorType 1 bcdUSB 3.00 bDeviceClass 239 Miscellaneous Device bDeviceSubClass 2 ? bDeviceProtocol 1 Interface Association bMaxPacketSize0 9 idVendor 0x17e9 DisplayLink idProduct 0x4323 bcdDevice1.00 iManufacturer 1 iProduct2 iSerial 3 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 627 bNumInterfaces 7 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xe0 Self Powered Remote Wakeup MaxPower2mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber0 bAlternateSetting 0 bNumEndpoints 4 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 0 bInterfaceProtocol 3 iInterface 0 ** UNRECOGNIZED: 0c 5f 01 00 0a 00 04 04 01 00 04 00 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x02 EP 2 OUT bmAttributes2 Transfer TypeBulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x08 EP 8 OUT bmAttributes2 Transfer TypeBulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 0 Endpoint Descriptor: bLength 7 bDescripto
Re: [systemd-devel] Multi seats setup How-to
On Sun, 06.09.15 16:02, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > > That's awfully generic... > > > > I'd really just be interested in vendor/product ids if the usb hub > > that is built into your docking station, where the display link is > > connected to. > > > > If in doubt, please run "lsusb" once before you plug in the device, > > and once after you plug it in, and let me know the difference: all the > > lines that appeared in the output by plugging it in. > > unplu/plug, diff of $ lsusb > > Bus 002 Device 005: ID 17e9:4323 DisplayLink > Bus 002 Device 004: ID 2109:8110 VIA Labs, Inc. Hub > Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub > Bus 001 Device 008: ID 1a40:0101 Terminus Technology Inc. Hub > Bus 001 Device 007: ID 2109:2811 VIA Labs, Inc. Hub Ah, hmm, interesting. Which device is this precisely? Have an amazon link or so? The output above suggests the device is not nicely recognizable unfortunately. Could you redo the output, and do this with "lsusb -v" this time? That shows more information about the USB descriptor of the device. Lennart -- Lennart Poettering, Red Hat ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
On Sun, Sep 6, 2015 at 3:36 PM, Lennart Poettering wrote: > On Sun, 06.09.15 13:14, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > >> On Sun, Sep 6, 2015 at 1:08 PM, Lennart Poettering >> wrote: >> > On Sun, 06.09.15 13:01, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: >> > >> >> On Sun, Sep 6, 2015 at 12:53 PM, Lennart Poettering >> >> wrote: >> >> > On Thu, 03.09.15 13:26, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: >> >> > >> >> >> I plan to use the systemd mutli-seat features, but I am not sure at >> >> >> all how I must proceed and in waht order. I understand the main >> >> >> principle for mouse and keyboard: detect the device then >> >> >> $ loginctl attach seatNumber DevicePath >> >> >> As for the graphic card, I am lost. >> >> >> >> >> >> OS: Fedora 22 >> >> >> gdm >> >> >> 1 nvidia card >> >> >> 1 USB3 plugable dockin station for the second monitor >> >> > >> >> > I presume this hardware is not marked for "auto seat" yet, using >> >> > udev's ID_AUTO_SEAT property. If you let me know USB product and >> >> > vendor id of this device (as reported by lsusb in hex) I'll add it to >> >> > the default rules files. If that's done then just plugging in the >> >> > device will make it a new seat, without any configuration. >> >> >> >> >> >> Bus 002 Device 005: ID 17e9:4323 DisplayLink >> > >> > The docking station probably is an USB hub with the displaylink device >> > connected to it. the vendor/product ID i am interested in is the id of >> > that hub, i.e. the top-level device in the docking station device. >> >> If it can help, here is the udev rule and service shipped with the rpm: >> >> displaylink.service >> --- >> [Unit] >> Description=DisplayLink Manager Service >> After=display-manager.service >> Conflicts=getty@tty7.service >> >> [Service] >> ExecStartPre=/sbin/modprobe evdi >> ExecStart=/usr/lib/displaylink/DisplayLinkManager >> Restart=always >> WorkingDirectory=/usr/lib/displaylink >> RestartSec=5 >> >> >> /etc/udev/rules.d/99-displaylink.rules >> ACTION=="add", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", >> MODE="0660", RUN+="/bin/systemctl start displaylink.service" >> ACTION=="remove", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", >> RUN+="/bin/systemctl stop displaylink.service" > > That's awfully generic... > > I'd really just be interested in vendor/product ids if the usb hub > that is built into your docking station, where the display link is > connected to. > > If in doubt, please run "lsusb" once before you plug in the device, > and once after you plug it in, and let me know the difference: all the > lines that appeared in the output by plugging it in. unplu/plug, diff of $ lsusb Bus 002 Device 005: ID 17e9:4323 DisplayLink Bus 002 Device 004: ID 2109:8110 VIA Labs, Inc. Hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 008: ID 1a40:0101 Terminus Technology Inc. Hub Bus 001 Device 007: ID 2109:2811 VIA Labs, Inc. Hub > > Thanks, > > Lennart > > -- > Lennart Poettering, Red Hat -- google.com/+arnaudgabourygabx ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
On Sun, 06.09.15 13:14, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > On Sun, Sep 6, 2015 at 1:08 PM, Lennart Poettering > wrote: > > On Sun, 06.09.15 13:01, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > > > >> On Sun, Sep 6, 2015 at 12:53 PM, Lennart Poettering > >> wrote: > >> > On Thu, 03.09.15 13:26, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > >> > > >> >> I plan to use the systemd mutli-seat features, but I am not sure at > >> >> all how I must proceed and in waht order. I understand the main > >> >> principle for mouse and keyboard: detect the device then > >> >> $ loginctl attach seatNumber DevicePath > >> >> As for the graphic card, I am lost. > >> >> > >> >> OS: Fedora 22 > >> >> gdm > >> >> 1 nvidia card > >> >> 1 USB3 plugable dockin station for the second monitor > >> > > >> > I presume this hardware is not marked for "auto seat" yet, using > >> > udev's ID_AUTO_SEAT property. If you let me know USB product and > >> > vendor id of this device (as reported by lsusb in hex) I'll add it to > >> > the default rules files. If that's done then just plugging in the > >> > device will make it a new seat, without any configuration. > >> > >> > >> Bus 002 Device 005: ID 17e9:4323 DisplayLink > > > > The docking station probably is an USB hub with the displaylink device > > connected to it. the vendor/product ID i am interested in is the id of > > that hub, i.e. the top-level device in the docking station device. > > If it can help, here is the udev rule and service shipped with the rpm: > > displaylink.service > --- > [Unit] > Description=DisplayLink Manager Service > After=display-manager.service > Conflicts=getty@tty7.service > > [Service] > ExecStartPre=/sbin/modprobe evdi > ExecStart=/usr/lib/displaylink/DisplayLinkManager > Restart=always > WorkingDirectory=/usr/lib/displaylink > RestartSec=5 > > > /etc/udev/rules.d/99-displaylink.rules > ACTION=="add", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", > MODE="0660", RUN+="/bin/systemctl start displaylink.service" > ACTION=="remove", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", > RUN+="/bin/systemctl stop displaylink.service" That's awfully generic... I'd really just be interested in vendor/product ids if the usb hub that is built into your docking station, where the display link is connected to. If in doubt, please run "lsusb" once before you plug in the device, and once after you plug it in, and let me know the difference: all the lines that appeared in the output by plugging it in. Thanks, Lennart -- Lennart Poettering, Red Hat ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
On Sun, Sep 6, 2015 at 1:08 PM, Lennart Poettering wrote: > On Sun, 06.09.15 13:01, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > >> On Sun, Sep 6, 2015 at 12:53 PM, Lennart Poettering >> wrote: >> > On Thu, 03.09.15 13:26, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: >> > >> >> I plan to use the systemd mutli-seat features, but I am not sure at >> >> all how I must proceed and in waht order. I understand the main >> >> principle for mouse and keyboard: detect the device then >> >> $ loginctl attach seatNumber DevicePath >> >> As for the graphic card, I am lost. >> >> >> >> OS: Fedora 22 >> >> gdm >> >> 1 nvidia card >> >> 1 USB3 plugable dockin station for the second monitor >> > >> > I presume this hardware is not marked for "auto seat" yet, using >> > udev's ID_AUTO_SEAT property. If you let me know USB product and >> > vendor id of this device (as reported by lsusb in hex) I'll add it to >> > the default rules files. If that's done then just plugging in the >> > device will make it a new seat, without any configuration. >> >> >> Bus 002 Device 005: ID 17e9:4323 DisplayLink > > The docking station probably is an USB hub with the displaylink device > connected to it. the vendor/product ID i am interested in is the id of > that hub, i.e. the top-level device in the docking station device. If it can help, here is the udev rule and service shipped with the rpm: displaylink.service --- [Unit] Description=DisplayLink Manager Service After=display-manager.service Conflicts=getty@tty7.service [Service] ExecStartPre=/sbin/modprobe evdi ExecStart=/usr/lib/displaylink/DisplayLinkManager Restart=always WorkingDirectory=/usr/lib/displaylink RestartSec=5 /etc/udev/rules.d/99-displaylink.rules ACTION=="add", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", MODE="0660", RUN+="/bin/systemctl start displaylink.service" ACTION=="remove", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", RUN+="/bin/systemctl stop displaylink.service" I don't have right now acsess to the box. Will post $ lsusb output later > > Lennart > > -- > Lennart Poettering, Red Hat -- google.com/+arnaudgabourygabx ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
On Sun, 06.09.15 13:01, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > On Sun, Sep 6, 2015 at 12:53 PM, Lennart Poettering > wrote: > > On Thu, 03.09.15 13:26, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > > > >> I plan to use the systemd mutli-seat features, but I am not sure at > >> all how I must proceed and in waht order. I understand the main > >> principle for mouse and keyboard: detect the device then > >> $ loginctl attach seatNumber DevicePath > >> As for the graphic card, I am lost. > >> > >> OS: Fedora 22 > >> gdm > >> 1 nvidia card > >> 1 USB3 plugable dockin station for the second monitor > > > > I presume this hardware is not marked for "auto seat" yet, using > > udev's ID_AUTO_SEAT property. If you let me know USB product and > > vendor id of this device (as reported by lsusb in hex) I'll add it to > > the default rules files. If that's done then just plugging in the > > device will make it a new seat, without any configuration. > > > Bus 002 Device 005: ID 17e9:4323 DisplayLink The docking station probably is an USB hub with the displaylink device connected to it. the vendor/product ID i am interested in is the id of that hub, i.e. the top-level device in the docking station device. Lennart -- Lennart Poettering, Red Hat ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
On Sun, Sep 6, 2015 at 12:53 PM, Lennart Poettering wrote: > On Thu, 03.09.15 13:26, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > >> I plan to use the systemd mutli-seat features, but I am not sure at >> all how I must proceed and in waht order. I understand the main >> principle for mouse and keyboard: detect the device then >> $ loginctl attach seatNumber DevicePath >> As for the graphic card, I am lost. >> >> OS: Fedora 22 >> gdm >> 1 nvidia card >> 1 USB3 plugable dockin station for the second monitor > > I presume this hardware is not marked for "auto seat" yet, using > udev's ID_AUTO_SEAT property. If you let me know USB product and > vendor id of this device (as reported by lsusb in hex) I'll add it to > the default rules files. If that's done then just plugging in the > device will make it a new seat, without any configuration. Bus 002 Device 005: ID 17e9:4323 DisplayLink I installed a .rpm package proposed in this Fedora forum thread[0], as there was no Linux driver for the USB3 plugable dockin station[1] > >> Nvidia driver (I would like to avoid using Nouveau if possible). > > Well, the closed source nvidia driver won't work out of the box. Only > the DRM driver is supported nicely with logind, as it exposes proper > DRM APIs. > > Lennart > > -- > Lennart Poettering, Red Hat [0]http://www.displaylink.org/forum/showthread.php?t=64026 [1]http://www.amazon.com/gp/product/B00ECDM78E?redirect=true&ref_=cm_cr_ryp_prd_ttl_sol_0 -- google.com/+arnaudgabourygabx ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
On Thu, 03.09.15 13:26, arnaud gaboury (arnaud.gabo...@gmail.com) wrote: > I plan to use the systemd mutli-seat features, but I am not sure at > all how I must proceed and in waht order. I understand the main > principle for mouse and keyboard: detect the device then > $ loginctl attach seatNumber DevicePath > As for the graphic card, I am lost. > > OS: Fedora 22 > gdm > 1 nvidia card > 1 USB3 plugable dockin station for the second monitor I presume this hardware is not marked for "auto seat" yet, using udev's ID_AUTO_SEAT property. If you let me know USB product and vendor id of this device (as reported by lsusb in hex) I'll add it to the default rules files. If that's done then just plugging in the device will make it a new seat, without any configuration. > Nvidia driver (I would like to avoid using Nouveau if possible). Well, the closed source nvidia driver won't work out of the box. Only the DRM driver is supported nicely with logind, as it exposes proper DRM APIs. Lennart -- Lennart Poettering, Red Hat ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
On Fri, Sep 4, 2015 at 9:36 PM, Floris wrote: > >> I can't create a new seat1, no idea why. >> >> Here is my current configuration: >> >> -nvidia card + nvidia driver + nouveau blacklisted >> - USB 3 dock station with displaylink driver + systemd service >> - gdm >> - systemd 219 >> >> >> --- >> $ loginctl seat-status >> Sessions: *1 c1 >> Devices: >> >> >> ├─/sys/devices/pci:00/:00:01.0/:01:00.0/drm/card0 >> │ drm:card0 >> >> ├─/sys/devices/pci:00/:00:01.0/:01:00.0/drm/renderD128 >> │ drm:renderD128 >> >> ├─/sys/devices/pci:00/:00:01.0/:01:00.0/graphics/fb0 >> │ [MASTER] graphics:fb0 "nouveaufb" > > > there is still some nouveau on your system, but if this belongs to seat0 > this isn't a problem for now. Unfortunately, I didn't care at first which nvidia driver was installed by default in Fedora22. And of course, nouveau was the one indeed. So I installed nvidia driver and blacklisted nouveau. > >> >> >> ├─/sys/devices/platform/evdi.0/graphics/fb1 >> │ [MASTER] graphics:fb1 "evdidrmfb" [*] > > > >> ├─/sys/devices/platform/evdi.1/drm/card2 >> │ drm:card2 >> ├─/sys/devices/platform/evdi.1/graphics/fb2 >> │ [MASTER] graphics:fb2 "evdidrmfb" [*] > > > [*] attach these two also to seat1, or maybe seat1 and seat2. Your the usb3 > displaylink has two monitor outputs, so you can create three seats ;-) After nvidia driver was intalled: # loginctl attach seat1 /sys/devices/platform/evdi.0/graphics/fb1 # systemctl restart systemd-udev-trigger.service $ loginctl list-seats SEAT seat0 seat1 2 seats listed. AT LEAST Thank you for your help and advices. > >> ├─/sys/devices/virtual/misc/kvm >> │ misc:kvm >> └─/sys/devices/virtual/misc/rfkill >> misc:rfkill >> >> - >> >> # loginctl attach seat1 /sys/devices/platform/evdi.1/drm/card2 >> then same for usb devices >> >> >> $ ls /etc/udev/rules.d >> 72-seat-drm-platform-evdi_0.rules >> 72-seat-drm-platform-evdi_1.rules >> 72-seat-input-pci-_00_14_0-usb-0_10_4_1_1_1.rules >> 72-seat-input-pci-_00_14_0-usb-0_10_4_2_1_2.rules >> 72-seat-usb-pci-_00_14_0.rules >> 72-seat-usb-pci-_00_14_0-usb-0_10_4.rules >> 99-displaylink.rules > > > >> 99-nvidia_seats.rules I cleaned the /etc/udev/rules.d directory. > > > If your nvidia card is only for seat0, you can remove this rule. > (everything without a rule belongs to seat0) > > >> >> NB: All the 72-seat* have been created when I run $ loginctl attache >> seat1 MyDevice >> >> >> $ udevadmn info /sys/devices/platform/evdi.1/drm/card2 >> >> P: /devices/platform/evdi.1/drm/card2 >> N: dri/card2 >> E: DEVNAME=/dev/dri/card2 >> E: DEVPATH=/devices/platform/evdi.1/drm/card2 >> E: DEVTYPE=drm_minor >> E: ID_FOR_SEAT=drm-platform-evdi_1 >> E: ID_PATH=platform-evdi.1 >> E: ID_PATH_TAG=platform-evdi_1 >> E: ID_SEAT=seat1 >> E: MAJOR=226 >> E: MINOR=2 >> E: SUBSYSTEM=drm >> E: TAGS=:seat:seat1:uaccess: >> E: USEC_INITIALIZED=160111782 >> >> >> $ cat /etc/udev/rules.d/99-displaylink.rules >> (shipped with the displaylink .rmp driver) >> --- >> ACTION=="add", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", >> MODE="0660", RUN+="/bin/systemctl start displaylink.service" >> ACTION=="remove", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", >> RUN+="/bin/systemctl stop displaylink.service" >> -- >> >> $ cat /etc/udev/rules.d/99-nvidia_seats.rules >> -- >> # provide a suitable udev rule to tag your NVIDIA card as "master-of-seat" >> SUBSYSTEM=="drm", KERNEL=="card[0-9]*", ATTRS{vendor}=="0x10de", >> DRIVERS=="nvidia", TAG+="master-of-seat" >> >> SUBSYSTEM=="pci", ATTRS{vendor}=="0x10de", DRIVER=="nvidia", >> TAG+="seat", TAG+="master-of-seat" >> >> >> cat /etc/udev/rules.d/72-seat-drm-platform-evdi_1.rules >> --- >> TAG=="seat", ENV{ID_FOR_SEAT}=="drm-platform-evdi_1", ENV{ID_SEAT}="seat1" >> - >> >> cat >> /etc/udev/rules.d/72-seat-input-pci-_00_14_0-usb-0_10_4_1_1_1.rules >> -- >> >> TAG=="seat", ENV{ID_FOR_SEAT}=="input-pci-_00_14_0-usb-0_10_4_1_1_1", >> ENV{ID_SEAT}="seat1" >> --- >> >> >> >> # systemctl restart systemd-udev-trigger.service
Re: [systemd-devel] Multi seats setup How-to
I can't create a new seat1, no idea why. Here is my current configuration: -nvidia card + nvidia driver + nouveau blacklisted - USB 3 dock station with displaylink driver + systemd service - gdm - systemd 219 --- $ loginctl seat-status Sessions: *1 c1 Devices: ├─/sys/devices/pci:00/:00:01.0/:01:00.0/drm/card0 │ drm:card0 ├─/sys/devices/pci:00/:00:01.0/:01:00.0/drm/renderD128 │ drm:renderD128 ├─/sys/devices/pci:00/:00:01.0/:01:00.0/graphics/fb0 │ [MASTER] graphics:fb0 "nouveaufb" there is still some nouveau on your system, but if this belongs to seat0 this isn't a problem for now. ├─/sys/devices/platform/evdi.0/graphics/fb1 │ [MASTER] graphics:fb1 "evdidrmfb" [*] ├─/sys/devices/platform/evdi.1/drm/card2 │ drm:card2 ├─/sys/devices/platform/evdi.1/graphics/fb2 │ [MASTER] graphics:fb2 "evdidrmfb" [*] [*] attach these two also to seat1, or maybe seat1 and seat2. Your the usb3 displaylink has two monitor outputs, so you can create three seats ;-) ├─/sys/devices/virtual/misc/kvm │ misc:kvm └─/sys/devices/virtual/misc/rfkill misc:rfkill - # loginctl attach seat1 /sys/devices/platform/evdi.1/drm/card2 then same for usb devices $ ls /etc/udev/rules.d 72-seat-drm-platform-evdi_0.rules 72-seat-drm-platform-evdi_1.rules 72-seat-input-pci-_00_14_0-usb-0_10_4_1_1_1.rules 72-seat-input-pci-_00_14_0-usb-0_10_4_2_1_2.rules 72-seat-usb-pci-_00_14_0.rules 72-seat-usb-pci-_00_14_0-usb-0_10_4.rules 99-displaylink.rules 99-nvidia_seats.rules If your nvidia card is only for seat0, you can remove this rule. (everything without a rule belongs to seat0) NB: All the 72-seat* have been created when I run $ loginctl attache seat1 MyDevice $ udevadmn info /sys/devices/platform/evdi.1/drm/card2 P: /devices/platform/evdi.1/drm/card2 N: dri/card2 E: DEVNAME=/dev/dri/card2 E: DEVPATH=/devices/platform/evdi.1/drm/card2 E: DEVTYPE=drm_minor E: ID_FOR_SEAT=drm-platform-evdi_1 E: ID_PATH=platform-evdi.1 E: ID_PATH_TAG=platform-evdi_1 E: ID_SEAT=seat1 E: MAJOR=226 E: MINOR=2 E: SUBSYSTEM=drm E: TAGS=:seat:seat1:uaccess: E: USEC_INITIALIZED=160111782 $ cat /etc/udev/rules.d/99-displaylink.rules (shipped with the displaylink .rmp driver) --- ACTION=="add", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", MODE="0660", RUN+="/bin/systemctl start displaylink.service" ACTION=="remove", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", RUN+="/bin/systemctl stop displaylink.service" -- $ cat /etc/udev/rules.d/99-nvidia_seats.rules -- # provide a suitable udev rule to tag your NVIDIA card as "master-of-seat" SUBSYSTEM=="drm", KERNEL=="card[0-9]*", ATTRS{vendor}=="0x10de", DRIVERS=="nvidia", TAG+="master-of-seat" SUBSYSTEM=="pci", ATTRS{vendor}=="0x10de", DRIVER=="nvidia", TAG+="seat", TAG+="master-of-seat" cat /etc/udev/rules.d/72-seat-drm-platform-evdi_1.rules --- TAG=="seat", ENV{ID_FOR_SEAT}=="drm-platform-evdi_1", ENV{ID_SEAT}="seat1" - cat /etc/udev/rules.d/72-seat-input-pci-_00_14_0-usb-0_10_4_1_1_1.rules -- TAG=="seat", ENV{ID_FOR_SEAT}=="input-pci-_00_14_0-usb-0_10_4_1_1_1", ENV{ID_SEAT}="seat1" --- # systemctl restart systemd-udev-trigger.service (or even reboot) $ loginctl show-session (two users logged in) SESSIONUID USER SEAT 2 1001 Martin seat0 1 1000 Louisseat0 c1 42 gdm seat0 3 sessions listed. $ loginctl list-seats SEAT seat0 1 seats listed. xx What am I missing? Why can't I create seat1 ? Maybe # rm /etc/udev/rules.d/72* and try again ? attach the [MASTER] graphics:fb* to seat1 and it should work. success, floris ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
Arnaud, You must focus on the graphics/fb* syspaths (since they are tagged as [MASTER] in udev/logind), not the drm/card* ones. You must attach the [MASTER] devnode to a new seat in order to create it. BTW, systemd already ships udev rules to set property ID_AUTOSEAT for DisplayLink USB 2.0 Docking Stations, so that you don't need to attach them manually. Maybe these rules should be updated to include USB 3.0 Docking Stations as well. 2015-09-04 13:00 GMT-03:00 arnaud gaboury : > On Thu, Sep 3, 2015 at 5:06 PM, arnaud gaboury > wrote: > > > > On Thu, Sep 3, 2015, 3:46 PM Floris wrote: > > > >> > >> I was missing one piece of the puzzle. My USB dock station is > >> Plugable® UD-3900 USB 3.0 > >> > >> > >> 1- > >> I had to install the kernel driver for it, following instructions per > >> this displaylink forum[0]. Once the .rpm package installed, I could > >> verify: > >> $ lsmod | grep evdi > >> > >> evdi 36864 0 > >> drm_kms_helper122880 2 evdi,nouveau > >> drm 331776 10 ttm,evdi,drm_kms_helper,nouveau > >> > >> > >> # ll /lib/modules/$(uname -r)/extra/evdi.ko > >> -rw-r--r--. 1 root root 63072 3 sept. 14:29 > >> /lib/modules/4.1.6-200.fc22.x86_64/extra/evdi.ko > >> > >> > >> 2- > >> Now $ loginctl seat-status seat0 returns something more interesting: > >> > >> ├─/sys/devices/platform/evdi.0/drm/card1 > >> │ drm:card1 > >> > >> So I guess now I have indeed two cards. > >> > > > > Lets make things clear. The usb dock will be your second seat. I think > > the next steps will be enough: > > > > loginctl attach seat1 /sys/devices/platform/evdi.0/drm/card1 > > loginctl attach seat1 /the path to the usb3 hub > > > > everything you didn't attach with loginctl or with an udev rule will > > be part of seat0. So if your nvidia card is for seat0 you don't have > > to write a rule for it. > > > > Ok. So it would be indeed much simpler than first thought. > > x > I can't create a new seat1, no idea why. > > Here is my current configuration: > > -nvidia card + nvidia driver + nouveau blacklisted > - USB 3 dock station with displaylink driver + systemd service > - gdm > - systemd 219 > > --- > $ loginctl seat-status > Sessions: *1 c1 > Devices: > > > ├─/sys/devices/pci:00/:00:01.0/:01:00.0/drm/card0 > │ drm:card0 > > ├─/sys/devices/pci:00/:00:01.0/:01:00.0/drm/renderD128 > │ drm:renderD128 > > ├─/sys/devices/pci:00/:00:01.0/:01:00.0/graphics/fb0 > │ [MASTER] graphics:fb0 "nouveaufb" > > > ├─/sys/devices/platform/evdi.0/graphics/fb1 > │ [MASTER] graphics:fb1 "evdidrmfb" > ├─/sys/devices/platform/evdi.1/drm/card2 > │ drm:card2 > ├─/sys/devices/platform/evdi.1/graphics/fb2 > │ [MASTER] graphics:fb2 "evdidrmfb" > ├─/sys/devices/virtual/misc/kvm > │ misc:kvm > └─/sys/devices/virtual/misc/rfkill > misc:rfkill > > - > > # loginctl attach seat1 /sys/devices/platform/evdi.1/drm/card2 > then same for usb devices > > > $ ls /etc/udev/rules.d > 72-seat-drm-platform-evdi_0.rules > 72-seat-drm-platform-evdi_1.rules > 72-seat-input-pci-_00_14_0-usb-0_10_4_1_1_1.rules > 72-seat-input-pci-_00_14_0-usb-0_10_4_2_1_2.rules > 72-seat-usb-pci-_00_14_0.rules > 72-seat-usb-pci-_00_14_0-usb-0_10_4.rules > 99-displaylink.rules > 99-nvidia_seats.rules > > NB: All the 72-seat* have been created when I run $ loginctl attache > seat1 MyDevice > > > $ udevadmn info /sys/devices/platform/evdi.1/drm/card2 > > P: /devices/platform/evdi.1/drm/card2 > N: dri/card2 > E: DEVNAME=/dev/dri/card2 > E: DEVPATH=/devices/platform/evdi.1/drm/card2 > E: DEVTYPE=drm_minor > E: ID_FOR_SEAT=drm-platform-evdi_1 > E: ID_PATH=platform-evdi.1 > E: ID_PATH_TAG=platform-evdi_1 > E: ID_SEAT=seat1 > E: MAJOR=226 > E: MINOR=2 > E: SUBSYSTEM=drm > E: TAGS=:seat:seat1:uaccess: > E: USEC_INITIALIZED=160111782 > > > $ cat /etc/udev/rules.d/99-displaylink.rules > (shipped with the displaylink .rmp driver) > --- > ACTION=="add", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", > MODE="0660", RUN+="/bin/systemctl start displaylink.service" > ACTION=="remove", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", > RUN+="/bin/systemctl stop displaylink.service" > -- > > $ cat /et
Re: [systemd-devel] Multi seats setup How-to
On Thu, Sep 3, 2015 at 5:06 PM, arnaud gaboury wrote: > > On Thu, Sep 3, 2015, 3:46 PM Floris wrote: > >> >> I was missing one piece of the puzzle. My USB dock station is >> Plugable® UD-3900 USB 3.0 >> >> >> 1- >> I had to install the kernel driver for it, following instructions per >> this displaylink forum[0]. Once the .rpm package installed, I could >> verify: >> $ lsmod | grep evdi >> >> evdi 36864 0 >> drm_kms_helper122880 2 evdi,nouveau >> drm 331776 10 ttm,evdi,drm_kms_helper,nouveau >> >> >> # ll /lib/modules/$(uname -r)/extra/evdi.ko >> -rw-r--r--. 1 root root 63072 3 sept. 14:29 >> /lib/modules/4.1.6-200.fc22.x86_64/extra/evdi.ko >> >> >> 2- >> Now $ loginctl seat-status seat0 returns something more interesting: >> >> ├─/sys/devices/platform/evdi.0/drm/card1 >> │ drm:card1 >> >> So I guess now I have indeed two cards. >> > > Lets make things clear. The usb dock will be your second seat. I think > the next steps will be enough: > > loginctl attach seat1 /sys/devices/platform/evdi.0/drm/card1 > loginctl attach seat1 /the path to the usb3 hub > > everything you didn't attach with loginctl or with an udev rule will > be part of seat0. So if your nvidia card is for seat0 you don't have > to write a rule for it. > > Ok. So it would be indeed much simpler than first thought. x I can't create a new seat1, no idea why. Here is my current configuration: -nvidia card + nvidia driver + nouveau blacklisted - USB 3 dock station with displaylink driver + systemd service - gdm - systemd 219 --- $ loginctl seat-status Sessions: *1 c1 Devices: ├─/sys/devices/pci:00/:00:01.0/:01:00.0/drm/card0 │ drm:card0 ├─/sys/devices/pci:00/:00:01.0/:01:00.0/drm/renderD128 │ drm:renderD128 ├─/sys/devices/pci:00/:00:01.0/:01:00.0/graphics/fb0 │ [MASTER] graphics:fb0 "nouveaufb" ├─/sys/devices/platform/evdi.0/graphics/fb1 │ [MASTER] graphics:fb1 "evdidrmfb" ├─/sys/devices/platform/evdi.1/drm/card2 │ drm:card2 ├─/sys/devices/platform/evdi.1/graphics/fb2 │ [MASTER] graphics:fb2 "evdidrmfb" ├─/sys/devices/virtual/misc/kvm │ misc:kvm └─/sys/devices/virtual/misc/rfkill misc:rfkill - # loginctl attach seat1 /sys/devices/platform/evdi.1/drm/card2 then same for usb devices $ ls /etc/udev/rules.d 72-seat-drm-platform-evdi_0.rules 72-seat-drm-platform-evdi_1.rules 72-seat-input-pci-_00_14_0-usb-0_10_4_1_1_1.rules 72-seat-input-pci-_00_14_0-usb-0_10_4_2_1_2.rules 72-seat-usb-pci-_00_14_0.rules 72-seat-usb-pci-_00_14_0-usb-0_10_4.rules 99-displaylink.rules 99-nvidia_seats.rules NB: All the 72-seat* have been created when I run $ loginctl attache seat1 MyDevice $ udevadmn info /sys/devices/platform/evdi.1/drm/card2 P: /devices/platform/evdi.1/drm/card2 N: dri/card2 E: DEVNAME=/dev/dri/card2 E: DEVPATH=/devices/platform/evdi.1/drm/card2 E: DEVTYPE=drm_minor E: ID_FOR_SEAT=drm-platform-evdi_1 E: ID_PATH=platform-evdi.1 E: ID_PATH_TAG=platform-evdi_1 E: ID_SEAT=seat1 E: MAJOR=226 E: MINOR=2 E: SUBSYSTEM=drm E: TAGS=:seat:seat1:uaccess: E: USEC_INITIALIZED=160111782 $ cat /etc/udev/rules.d/99-displaylink.rules (shipped with the displaylink .rmp driver) --- ACTION=="add", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", MODE="0660", RUN+="/bin/systemctl start displaylink.service" ACTION=="remove", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", RUN+="/bin/systemctl stop displaylink.service" -- $ cat /etc/udev/rules.d/99-nvidia_seats.rules -- # provide a suitable udev rule to tag your NVIDIA card as "master-of-seat" SUBSYSTEM=="drm", KERNEL=="card[0-9]*", ATTRS{vendor}=="0x10de", DRIVERS=="nvidia", TAG+="master-of-seat" SUBSYSTEM=="pci", ATTRS{vendor}=="0x10de", DRIVER=="nvidia", TAG+="seat", TAG+="master-of-seat" cat /etc/udev/rules.d/72-seat-drm-platform-evdi_1.rules --- TAG=="seat", ENV{ID_FOR_SEAT}=="drm-platform-evdi_1", ENV{ID_SEAT}="seat1" - cat /etc/udev/rules.d/72-seat-input-pci-
Re: [systemd-devel] Multi seats setup How-to
On Thu, Sep 3, 2015, 3:46 PM Floris wrote: > > I was missing one piece of the puzzle. My USB dock station is > Plugable® UD-3900 USB 3.0 > > > 1- > I had to install the kernel driver for it, following instructions per > this displaylink forum[0]. Once the .rpm package installed, I could > verify: > $ lsmod | grep evdi > > evdi 36864 0 > drm_kms_helper122880 2 evdi,nouveau > drm 331776 10 ttm,evdi,drm_kms_helper,nouveau > > > # ll /lib/modules/$(uname -r)/extra/evdi.ko > -rw-r--r--. 1 root root 63072 3 sept. 14:29 > /lib/modules/4.1.6-200.fc22.x86_64/extra/evdi.ko > > > 2- > Now $ loginctl seat-status seat0 returns something more interesting: > > ├─/sys/devices/platform/evdi.0/drm/card1 > │ drm:card1 > > So I guess now I have indeed two cards. > Lets make things clear. The usb dock will be your second seat. I think the next steps will be enough: loginctl attach seat1 /sys/devices/platform/evdi.0/drm/card1 loginctl attach seat1 /the path to the usb3 hub everything you didn't attach with loginctl or with an udev rule will be part of seat0. So if your nvidia card is for seat0 you don't have to write a rule for it. Ok. So it would be indeed much simpler than first thought. Will try this later when I will get hand on the Fedora box. Thank you so much for your clarifications. success, floris ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
I was missing one piece of the puzzle. My USB dock station is Plugable® UD-3900 USB 3.0 1- I had to install the kernel driver for it, following instructions per this displaylink forum[0]. Once the .rpm package installed, I could verify: $ lsmod | grep evdi evdi 36864 0 drm_kms_helper122880 2 evdi,nouveau drm 331776 10 ttm,evdi,drm_kms_helper,nouveau # ll /lib/modules/$(uname -r)/extra/evdi.ko -rw-r--r--. 1 root root 63072 3 sept. 14:29 /lib/modules/4.1.6-200.fc22.x86_64/extra/evdi.ko 2- Now $ loginctl seat-status seat0 returns something more interesting: ├─/sys/devices/platform/evdi.0/drm/card1 │ drm:card1 So I guess now I have indeed two cards. Lets make things clear. The usb dock will be your second seat. I think the next steps will be enough: loginctl attach seat1 /sys/devices/platform/evdi.0/drm/card1 loginctl attach seat1 /the path to the usb3 hub everything you didn't attach with loginctl or with an udev rule will be part of seat0. So if your nvidia card is for seat0 you don't have to write a rule for it. success, floris ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
On Thu, Sep 3, 2015 at 2:12 PM, Floris wrote: > Op Thu, 03 Sep 2015 13:51:06 +0200 schreef arnaud gaboury > : > >> On Thu, Sep 3, 2015 at 1:26 PM, arnaud gaboury >> wrote: >>> >>> I plan to use the systemd mutli-seat features, but I am not sure at >>> all how I must proceed and in waht order. I understand the main >>> principle for mouse and keyboard: detect the device then >>> $ loginctl attach seatNumber DevicePath >>> As for the graphic card, I am lost. >>> >>> OS: Fedora 22 >>> gdm >>> 1 nvidia card >>> 1 USB3 plugable dockin station for the second monitor >>> Nvidia driver (I would like to avoid using Nouveau if possible). >>> > >> Following this old blog[0], it seems I must FIRST assign the graphic >> card to seat1. So I guess first is to take care of the /etc/X11 stuff. >> Once I have correctly configured it, I must be able to see two cards, >> right ? >> > > Here are the steps I took to make my multi seat with Debian Sid: > > 1. Install the nvidia drivers and blacklist the nouveau drivers. > 2. Locate with loginctl seat-status seat0 the address of the graphic > device you want to be seat1 > > Maybe there is no graphic device, but I have: > ├─/sys/devices/pci:00/:00:05.0/:02:00.1/sound/card2 > │ sound:card2 "NVidia" I was missing one piece of the puzzle. My USB dock station is Plugable® UD-3900 USB 3.0 1- I had to install the kernel driver for it, following instructions per this displaylink forum[0]. Once the .rpm package installed, I could verify: $ lsmod | grep evdi evdi 36864 0 drm_kms_helper122880 2 evdi,nouveau drm 331776 10 ttm,evdi,drm_kms_helper,nouveau # ll /lib/modules/$(uname -r)/extra/evdi.ko -rw-r--r--. 1 root root 63072 3 sept. 14:29 /lib/modules/4.1.6-200.fc22.x86_64/extra/evdi.ko 2- Now $ loginctl seat-status seat0 returns something more interesting: ├─/sys/devices/platform/evdi.0/drm/card1 │ drm:card1 So I guess now I have indeed two cards. $ udevadmin info /sys/devices/platform/evdi.0/drm/card1 P: /devices/platform/evdi.0/drm/card1 N: dri/card1 E: DEVNAME=/dev/dri/card1 E: DEVPATH=/devices/platform/evdi.0/drm/card1 E: DEVTYPE=drm_minor E: ID_FOR_SEAT=drm-platform-evdi_0 E: ID_PATH=platform-evdi.0 E: ID_PATH_TAG=platform-evdi_0 E: MAJOR=226 E: MINOR=1 E: SUBSYSTEM=drm E: TAGS=:seat:uaccess: E: USEC_INITIALIZED=51309590 NB: no driver section. Is it still ok ? --- 3- A new udev rule is shipped with the package. /etc/udev/rules.d/99-displaylink.rules - ACTION=="add", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", MODE="0660", RUN+="/bin/systemctl start displaylink.service" ACTION=="remove", SUBSYSTEM=="usb", ENV{ID_VENDOR}=="DisplayLink", RUN+="/bin/systemctl stop displaylink.service" and the systemd service is active and loaded when I plug the dock station Now following your advices, I shall write: /etc/udev/rules.d/72-seat-1.rules SUBSYSTEM=="drm", DEVPATH=="/devices//platform/evdi.0/drm/card1", TAG+="seat", TAG+="master-of-seat", ENV{ID_AUTOSEAT}="1", ENV{ID_SEAT}="seat1" and this: /etc/udev/rules.d/99-nvidia_seats.rules SUBSYSTEM=="drm", KERNEL=="card[0-9]*", ATTRS{vendor}=="0x10de", DRIVERS=="nvidia", TAG+="master-of-seat" SUBSYSTEM=="pci", ATTRS{vendor}=="0x10de", DRIVER=="nvidia", TAG+="seat", TAG+="master-of-seat" Then do the xorg.conf stuff, reload and attach keyboard + mouse ? > so the the gpu is /sys/devices/pci:00/:00:05.0/:02:00.0 > use udevadm info /sys/bus/pci/devices/:00:05.0/:02:00.0 > to make sure the address is right > > $ udevadm info /sys/bus/pci/devices/:00:05.0/:02:00.0 > P: /devices/pci:00/:00:05.0/:02:00.0 > E: DEVPATH=/devices/pci:00/:00:05.0/:02:00.0 > E: DRIVER=nvidia > E: ID_AUTOSEAT=1 > E: ID_MODEL_FROM_DATABASE=GF119 [GeForce GT 610] > E: ID_PCI_CLASS_FROM_DATABASE=Display controller > E: ID_PCI_INTERFACE_FROM_DATABASE=VGA controller > E: ID_PCI_SUBCLASS_FROM_DATABASE=VGA compatible controller > E: ID_SEAT=seat1 > E: ID_VENDOR_FROM_DATABASE=NVIDIA Corporation > E: MODALIAS=pci:v10DEd104Asv3842sd2615bc03sc00i00 > E: PCI_CLASS=3 > E: PCI_ID=10DE:104A > E: PCI_SLOT_NAME=:02:00.0 > E: PCI_SUBSYS_ID=3842:2615 > E: SUBSYSTEM=pci > E: TAGS=:seat1:seat:master-of-seat: > E: USEC_INITIALIZED=4003578 > > 3. Make an udev rule for the gpu: > $ cat /etc/udev/rules.d/72-seat-1.rules > SUBSYSTEM=="pci", DEVPATH=="/devices/pci:00/:00:05.0/:02:00.0", > TAG+="seat", TAG+="master-of-seat", ENV{ID_AUTOSEAT}="1", > ENV{ID_SEAT}="seat1" > > 4. create a x11 conf for the nvidia device > $ cat /etc/X11/xorg.conf.d/90-nvidia.conf > Section "Device
Re: [systemd-devel] Multi seats setup How-to
Op Thu, 03 Sep 2015 13:51:06 +0200 schreef arnaud gaboury : On Thu, Sep 3, 2015 at 1:26 PM, arnaud gaboury wrote: I plan to use the systemd mutli-seat features, but I am not sure at all how I must proceed and in waht order. I understand the main principle for mouse and keyboard: detect the device then $ loginctl attach seatNumber DevicePath As for the graphic card, I am lost. OS: Fedora 22 gdm 1 nvidia card 1 USB3 plugable dockin station for the second monitor Nvidia driver (I would like to avoid using Nouveau if possible). Following this old blog[0], it seems I must FIRST assign the graphic card to seat1. So I guess first is to take care of the /etc/X11 stuff. Once I have correctly configured it, I must be able to see two cards, right ? Here are the steps I took to make my multi seat with Debian Sid: 1. Install the nvidia drivers and blacklist the nouveau drivers. 2. Locate with loginctl seat-status seat0 the address of the graphic device you want to be seat1 Maybe there is no graphic device, but I have: ├─/sys/devices/pci:00/:00:05.0/:02:00.1/sound/card2 │ sound:card2 "NVidia" so the the gpu is /sys/devices/pci:00/:00:05.0/:02:00.0 use udevadm info /sys/bus/pci/devices/:00:05.0/:02:00.0 to make sure the address is right $ udevadm info /sys/bus/pci/devices/:00:05.0/:02:00.0 P: /devices/pci:00/:00:05.0/:02:00.0 E: DEVPATH=/devices/pci:00/:00:05.0/:02:00.0 E: DRIVER=nvidia E: ID_AUTOSEAT=1 E: ID_MODEL_FROM_DATABASE=GF119 [GeForce GT 610] E: ID_PCI_CLASS_FROM_DATABASE=Display controller E: ID_PCI_INTERFACE_FROM_DATABASE=VGA controller E: ID_PCI_SUBCLASS_FROM_DATABASE=VGA compatible controller E: ID_SEAT=seat1 E: ID_VENDOR_FROM_DATABASE=NVIDIA Corporation E: MODALIAS=pci:v10DEd104Asv3842sd2615bc03sc00i00 E: PCI_CLASS=3 E: PCI_ID=10DE:104A E: PCI_SLOT_NAME=:02:00.0 E: PCI_SUBSYS_ID=3842:2615 E: SUBSYSTEM=pci E: TAGS=:seat1:seat:master-of-seat: E: USEC_INITIALIZED=4003578 3. Make an udev rule for the gpu: $ cat /etc/udev/rules.d/72-seat-1.rules SUBSYSTEM=="pci", DEVPATH=="/devices/pci:00/:00:05.0/:02:00.0", TAG+="seat", TAG+="master-of-seat", ENV{ID_AUTOSEAT}="1", ENV{ID_SEAT}="seat1" 4. create a x11 conf for the nvidia device $ cat /etc/X11/xorg.conf.d/90-nvidia.conf Section "Device" Identifier "Seat0" Driver "nvidia" BusID "PCI:1:0:0" Option "ProbeAllGpus" "FALSE" MatchSeat "seat0" EndSection Section "Device" Identifier "Seat1" Driver "nvidia" BusID "PCI:2:0:0" Option "ProbeAllGpus" "FALSE" MatchSeat "seat1" EndSection 5. reboot or trigger udev to load the rule 6. Check if the seat is created $ loginctl list-seats SEAT seat0 seat1 2 seats listed. 7. use loginctl attach and connect all other devices to seat1 success, floris ___ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel
Re: [systemd-devel] Multi seats setup How-to
On Thu, Sep 3, 2015 at 1:26 PM, arnaud gaboury wrote: > I plan to use the systemd mutli-seat features, but I am not sure at > all how I must proceed and in waht order. I understand the main > principle for mouse and keyboard: detect the device then > $ loginctl attach seatNumber DevicePath > As for the graphic card, I am lost. > > OS: Fedora 22 > gdm > 1 nvidia card > 1 USB3 plugable dockin station for the second monitor > Nvidia driver (I would like to avoid using Nouveau if possible). > > The actual configuration: > > > $ loginctl seat-status seat0 > > seat0 > Sessions: 2 *1 c1 > Devices: > ├─/sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input1 > │ input:input1 "Power Button" > > ├─/sys/device...XSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input0 > │ input:input0 "Power Button" > > ├─/sys/devices/pci:00/:00:01.0/:01:00.0/drm/card0 > │ drm:card0 > > ├─/sys/device...0:00/:00:01.0/:01:00.0/drm/renderD128 > │ drm:renderD128 > > ├─/sys/device...000:00/:00:01.0/:01:00.0/graphics/fb0 > │ [MASTER] graphics:fb0 "nouveaufb" > > ├─/sys/device...:00/:00:01.0/:01:00.1/sound/card1 > │ sound:card1 "NVidia" > │ > ├─/sys/device...00:00:01.0/:01:00.1/sound/card1/input14 > │ │ input:input14 "HDA NVidia HDMI/DP,pcm=3" > │ > ├─/sys/device...00:00:01.0/:01:00.1/sound/card1/input15 > │ │ input:input15 "HDA NVidia HDMI/DP,pcm=7" > │ > ├─/sys/device...00:00:01.0/:01:00.1/sound/card1/input16 > │ │ input:input16 "HDA NVidia HDMI/DP,pcm=8" > │ > └─/sys/device...00:00:01.0/:01:00.1/sound/card1/input17 > │ input:input17 "HDA NVidia HDMI/DP,pcm=9" > ├─/sys/devices/pci:00/:00:14.0/usb1 > │ usb:usb1 > │ └─/sys/devices/pci:00/:00:14.0/usb1/1-10 > │ usb:1-10 > │ └─/sys/devices/pci:00/:00:14.0/usb1/1-10/1-10.4 > │ usb:1-10.4 > │ > ├─/sys/devic1:1.0/0003:046D:C534.0004/input/input18 > │ │ input:input18 "Logitech USB Receiver" > │ > ├─/sys/devic1:1.1/0003:046D:C534.0005/input/input19 > │ │ input:input19 "Logitech USB Receiver" > │ > └─/sys/devic...B.0008/0003:046D:4003.0009/input/input20 > │ input:input20 "Logitech K270" > ├─/sys/devices/pci:00/:00:14.0/usb2 > │ usb:usb2 > │ └─/sys/devices/pci:00/:00:14.0/usb2/2-6 > │ usb:2-6 > │ > └─/sys/device...14.0/usb2/2-6/2-6.1/2-6.1:1.2/sound/card2 > │ sound:card2 "UD3900" > ├─/sys/devices/pci:00/:00:1a.0/usb5 > │ usb:usb5 > │ └─/sys/devices/pci:00/:00:1a.0/usb5/5-1 > │ usb:5-1 > ├─/sys/devices/pci:00/:00:1b.0/sound/card0 > │ sound:card0 "PCH" > │ ├─/sys/devices/pci:00/:00:1b.0/sound/card0/input10 > │ │ input:input10 "HDA Intel PCH Rear Mic" > │ ├─/sys/devices/pci:00/:00:1b.0/sound/card0/input11 > │ │ input:input11 "HDA Intel PCH Line" > │ ├─/sys/devices/pci:00/:00:1b.0/sound/card0/input12 > │ │ input:input12 "HDA Intel PCH Line Out" > │ ├─/sys/devices/pci:00/:00:1b.0/sound/card0/input13 > │ │ input:input13 "HDA Intel PCH Front Headphone" > │ └─/sys/devices/pci:00/:00:1b.0/sound/card0/input9 > │ input:input9 "HDA Intel PCH Front Mic" > ├─/sys/devices/pci:00/:00:1c.4/:04:00.0/usb3 > │ usb:usb3 > ├─/sys/devices/pci:00/:00:1c.4/:04:00.0/usb4 > │ usb:usb4 > ├─/sys/devices/pci:00/:00:1d.0/usb6 > │ usb:usb6 > │ └─/sys/devices/pci:00/:00:1d.0/usb6/6-1 > │ usb:6-1 > > ├─/sys/device...1f.2/ata6/host5/target5:0:0/5:0:0:0/block/sr0 > │ block:sr0 > > ├─/sys/device...a6/host5/target5:0:0/5:0:0:0/scsi_generic/sg2 > │ scsi_generic:sg2 > ├─/sys/devices/platform/eeepc-wmi/input/input8 > │ input:input8 "Eee PC WMI hotkeys" > ├─/sys/devices/virtual/misc/kvm > │ misc:kvm >
[systemd-devel] Multi seats setup How-to
I plan to use the systemd mutli-seat features, but I am not sure at all how I must proceed and in waht order. I understand the main principle for mouse and keyboard: detect the device then $ loginctl attach seatNumber DevicePath As for the graphic card, I am lost. OS: Fedora 22 gdm 1 nvidia card 1 USB3 plugable dockin station for the second monitor Nvidia driver (I would like to avoid using Nouveau if possible). The actual configuration: $ loginctl seat-status seat0 seat0 Sessions: 2 *1 c1 Devices: ├─/sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input1 │ input:input1 "Power Button" ├─/sys/device...XSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input0 │ input:input0 "Power Button" ├─/sys/devices/pci:00/:00:01.0/:01:00.0/drm/card0 │ drm:card0 ├─/sys/device...0:00/:00:01.0/:01:00.0/drm/renderD128 │ drm:renderD128 ├─/sys/device...000:00/:00:01.0/:01:00.0/graphics/fb0 │ [MASTER] graphics:fb0 "nouveaufb" ├─/sys/device...:00/:00:01.0/:01:00.1/sound/card1 │ sound:card1 "NVidia" │ ├─/sys/device...00:00:01.0/:01:00.1/sound/card1/input14 │ │ input:input14 "HDA NVidia HDMI/DP,pcm=3" │ ├─/sys/device...00:00:01.0/:01:00.1/sound/card1/input15 │ │ input:input15 "HDA NVidia HDMI/DP,pcm=7" │ ├─/sys/device...00:00:01.0/:01:00.1/sound/card1/input16 │ │ input:input16 "HDA NVidia HDMI/DP,pcm=8" │ └─/sys/device...00:00:01.0/:01:00.1/sound/card1/input17 │ input:input17 "HDA NVidia HDMI/DP,pcm=9" ├─/sys/devices/pci:00/:00:14.0/usb1 │ usb:usb1 │ └─/sys/devices/pci:00/:00:14.0/usb1/1-10 │ usb:1-10 │ └─/sys/devices/pci:00/:00:14.0/usb1/1-10/1-10.4 │ usb:1-10.4 │ ├─/sys/devic1:1.0/0003:046D:C534.0004/input/input18 │ │ input:input18 "Logitech USB Receiver" │ ├─/sys/devic1:1.1/0003:046D:C534.0005/input/input19 │ │ input:input19 "Logitech USB Receiver" │ └─/sys/devic...B.0008/0003:046D:4003.0009/input/input20 │ input:input20 "Logitech K270" ├─/sys/devices/pci:00/:00:14.0/usb2 │ usb:usb2 │ └─/sys/devices/pci:00/:00:14.0/usb2/2-6 │ usb:2-6 │ └─/sys/device...14.0/usb2/2-6/2-6.1/2-6.1:1.2/sound/card2 │ sound:card2 "UD3900" ├─/sys/devices/pci:00/:00:1a.0/usb5 │ usb:usb5 │ └─/sys/devices/pci:00/:00:1a.0/usb5/5-1 │ usb:5-1 ├─/sys/devices/pci:00/:00:1b.0/sound/card0 │ sound:card0 "PCH" │ ├─/sys/devices/pci:00/:00:1b.0/sound/card0/input10 │ │ input:input10 "HDA Intel PCH Rear Mic" │ ├─/sys/devices/pci:00/:00:1b.0/sound/card0/input11 │ │ input:input11 "HDA Intel PCH Line" │ ├─/sys/devices/pci:00/:00:1b.0/sound/card0/input12 │ │ input:input12 "HDA Intel PCH Line Out" │ ├─/sys/devices/pci:00/:00:1b.0/sound/card0/input13 │ │ input:input13 "HDA Intel PCH Front Headphone" │ └─/sys/devices/pci:00/:00:1b.0/sound/card0/input9 │ input:input9 "HDA Intel PCH Front Mic" ├─/sys/devices/pci:00/:00:1c.4/:04:00.0/usb3 │ usb:usb3 ├─/sys/devices/pci:00/:00:1c.4/:04:00.0/usb4 │ usb:usb4 ├─/sys/devices/pci:00/:00:1d.0/usb6 │ usb:usb6 │ └─/sys/devices/pci:00/:00:1d.0/usb6/6-1 │ usb:6-1 ├─/sys/device...1f.2/ata6/host5/target5:0:0/5:0:0:0/block/sr0 │ block:sr0 ├─/sys/device...a6/host5/target5:0:0/5:0:0:0/scsi_generic/sg2 │ scsi_generic:sg2 ├─/sys/devices/platform/eeepc-wmi/input/input8 │ input:input8 "Eee PC WMI hotkeys" ├─/sys/devices/virtual/misc/kvm │ misc:kvm └─/sys/devices/virtual/misc/rfkill misc:rfkill $ lspci 00:00.0 Host bridge: Intel Corporation 4th Gen Core Processor DRAM Controller (rev 06) 00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller (rev 0