[systemd-devel] The meaning of CanMultiSession=no on non-seat0

Lennart Poettering lennart at poettering.net
Tue Mar 31 12:59:30 UTC 2020


On Di, 28.01.20 22:48, nerdopolis (bluescreen_avenger at verizon.net) wrote:

> Hi
>
> Sorry if this is the wrong place for this. I can't seem to find a system-user
> mailing list for this purpose on freedesktop.
>
> So I am curious about what CanMultiSession=no means, as I am able to start a
> Weston session on a secondary seat (eg seat1 if I set up the hardware with udev
> or seat-pci-pci-xxxx_xx_xx_x if I use pci-bridge-seat devices on QEMU.
>
> These seats, since they don't have TTYs I guess say CanMultiSession=no which is
> my understanding, however, I can start a second instance of Weston, and switch
> in between them fine, and Weston seems to respond to the sessions switching, so
> I am not quite sure what is missing? Is it something else related to security?
> Or the kernel?
>
> Because as far as I can tell, I can start multiple sessions on these seats.

Hmm, so it currently just lets you know if the seat has VTs (which
only seat0 has effectively, if the VT subsys is enabled in the
kernel).

In the old days we only supported session switching on seat0, since it
was based exclusively on VTs. Later on David Hermann added support for
session switching without VTs, at which point the boolean was wired to
mean "has VTs". Maybe that was a mistake, dunno, and it should just
have returned true for all seats at that point...

Lennart

--
Lennart Poettering, Berlin


More information about the systemd-devel mailing list