[prev in list] [next in list] [prev in thread] [next in thread] 

List:       freedesktop-xorg
Subject:    Re: [PATCH] xserver: add udev/systemd multi-seat support
From:       Colin Guthrie <gmane () colin ! guthr ! ie>
Date:       2011-07-21 13:33:13
Message-ID: j099qp$a2l$1 () dough ! gmane ! org
[Download RAW message or body]

'Twas brillig, and Lennart Poettering at 17/07/11 01:33 did gyre and gimble:
> Add support for multi-seat-aware input device hotplugging. This
> implements the multi-seat scheme explained here:
> 
> http://www.freedesktop.org/wiki/Software/systemd/multiseat
> 
> This introduces a new X server switch "-seat" which allows configuration
> of the seat to enumerate hotplugging devices on. If specified the value
> of this parameter will also be exported as root window property Xorg_Seat.
> 
> To properly support input hotplugging devices need to be tagged in udev
> according to the seat they are on. Untagged devices are assumed to be on
> the default seat "seat0". If no "-seat" parameter is passed only devices
> on "seat0" are used. This means that the new scheme is perfectly
> compatible with existing setups which have no tagged input devices.
> 
> This also optimizes the udev code in away that is beneficial for systems
> that do not support new udev/systemd style multi-seat: the patch makes
> use of libudev functions to limit enumerating/monitoring of devices to
> actual input devices. This should speed up start-up and minimize
> wake-ups, since we will only enumerate/monitor the devices we are
> interested in instead of all devices on the machine and all events they
> generate.
> 
> Finally, this also unifies the code paths for the udev "change" and
> "add" events, since these should be handled the same way in order to be
> robust to "udevadm trigger" calls, or lost netlink messages. This also
> simplifies the code.
> 
> Note that the -seat switch takes a completely generic identifier, and
> that it has no effect on non-Linux systems. In fact, on other OSes a
> completely different identifier scheme for seats could be used but still
> be exposed with the Xorg_Seat and -seat.
> 
> I tried to follow the coding style of the surrounding code blocks if
> there was any one could follow.


Awesome! People ask me about this kind of stuff quite often (e.g. to tag
a given USB port to a given seat)

Good work!

Col

-- 

Colin Guthrie
gmane(at)colin.guthr.ie
http://colin.guthr.ie/

Day Job:
  Tribalogic Limited [http://www.tribalogic.net/]
Open Source:
  Mageia Contributor [http://www.mageia.org/]
  PulseAudio Hacker [http://www.pulseaudio.org/]
  Trac Hacker [http://trac.edgewall.org/]

_______________________________________________
xorg@lists.freedesktop.org: X.Org support
Archives: http://lists.freedesktop.org/archives/xorg
Info: http://lists.freedesktop.org/mailman/listinfo/xorg
Your subscription address: freedesktop-xorg@progressive-comp.com
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic