Review Request 112294: Implement multi-seat support in KDM

Stefan Brüns stefan.bruens at rwth-aachen.de
Sun May 18 20:44:57 BST 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/112294/
-----------------------------------------------------------

(Updated May 18, 2014, 7:44 p.m.)


Review request for kde-workspace and Oswald Buddenhagen.


Changes
-------

Enhanced the patch based on feedback.

The second patch adds a DynamicServers option. Displays are specified like for StaticServers, e.g. "DynamicServers=:10,:11". The seat name can be specified in place of the class name, e.g. "DynamicServers=:10_ at seat-left,:11_ at seat-right". If the seat name is specified each server can be provided with its own set of options, e.g:

[X-:*_ at seat-left-Core]
ServerArgsLocal=-layout seat-left

This patch also fixed two bugs in the config/class matching code. The class name in the display list included the "_" separator, and the class in the section name did not strip the "-" character between class name and subsection name.


Repository: kde-workspace


Description
-------

This patch implements dynamic multiseat in KDM. It follows the description in:
http://www.freedesktop.org/wiki/Software/systemd/writing-display-managers/

In case systemd is no found at compile time, nothing changes. If logind is not running, nothing changes. If no additional seats have been configured (some Plugable USB-GPUs are automatically added as additional seats), nothing changes.

In case there are additional seats beyond seat0, a reserved display is promoted to a local static one (and demoted if the seat is removed) and a new X-Server/greeter is spawned.

The code has been tested extensively, with a combination of [Radeon dedicated GPU|Intel iGPU], [Intel iGPU|Displaylink USB GPU] and others. For history of this patch, see https://bugzilla.redhat.com/show_bug.cgi?id=884271 and https://bugzilla.redhat.com/show_bug.cgi?id=975079


Diffs (updated)
-----

  kdm/backend/dm.h b2f8c61 
  kdm/backend/dm.c 77a2ef7 
  kdm/backend/dpylist.c b650c2f 
  kdm/backend/resource.c 38a8c70 
  kdm/config.def 751c0ed 
  kdm/kfrontend/kdm_config.c 368c8d1 

Diff: https://git.reviewboard.kde.org/r/112294/diff/


Testing
-------

Single seat system, several multiseat systems


Thanks,

Stefan Brüns

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20140518/079c242a/attachment.htm>


More information about the kde-core-devel mailing list