After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 755637 - Add a systemd user service for the a11y bus
Add a systemd user service for the a11y bus
Status: RESOLVED FIXED
Product: at-spi
Classification: Platform
Component: at-spi2-core
unspecified
Other Linux
: Normal enhancement
: ---
Assigned To: At-spi maintainer(s)
At-spi maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2015-09-25 17:28 UTC by Simon McVittie
Modified: 2015-10-20 19:32 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Add a systemd user service corresponding to the D-Bus session service (1.99 KB, patch)
2015-09-25 17:28 UTC, Simon McVittie
committed Details | Review

Description Simon McVittie 2015-09-25 17:28:36 UTC
Created attachment 312159 [details] [review]
Add a systemd user service corresponding to the D-Bus session service

When using a systemd user session, this ensures that org.a11y.Bus
and its child processes (such as org.a11y.atspi.Registry) are placed in
their own cgroup, instead of being treated as part of dbus.service.
Comment 1 Mike Gorse 2015-09-27 19:09:57 UTC
Comment on attachment 312159 [details] [review]
Add a systemd user service corresponding to the D-Bus session service

Pushed to master: 02c5e3
Comment 2 Hussam Al-Tayeb 2015-10-20 12:06:15 UTC
It still spawns an instance of dbus-daemon even with kdbus=1 and systemd-bus-proxyd user instance running. I did a build from git trunk.
Comment 3 Simon McVittie 2015-10-20 19:32:35 UTC
(In reply to Hussam Al-Tayeb from comment #2)
> It still spawns an instance of dbus-daemon even with kdbus=1 and
> systemd-bus-proxyd user instance running. I did a build from git trunk.

That's expected; making that not true was not the purpose of this change. The purpose of this change was to move the AT-SPI bus processes into their own cgroup, instead of being part of dbus.service (you can see this by running systemd-cgls). It does not otherwise alter how the AT-SPI bus processes work.

There are three buses on a system with AT-SPI:

* system bus per kernel
* session bus per login session or user-session
* AT-SPI bus per ??? (X11 display?)

If using systemd for pid 1, the system bus is managed by pid 1, and might be implemented as a kdbus bus instead of a dbus-daemon.

If using systemd for user sessions, the session bus is managed by systemd --user, and might be implemented as a kdbus bus instead of a dbus-daemon.

The AT-SPI bus is managed by org.a11y.Bus and is currently always a traditional dbus-daemon.

This patch changed org.a11y.Bus to be a systemd user service. However, it does not affect the status of the AT-SPI dbus-daemon, which was traditionally managed by org.a11y.Bus, and continues to be managed by org.a11y.Bus after this patch was applied.

systemd is the only known implementation of the user-space component of kdbus, so the AT-SPI dbus-daemon is not going to be replaced by a kdbus until/unless someone talks to the systemd developers about it.