On Wed, Jan 21, 2015 at 10:36:16AM +0100, Hans de Goede wrote: > systemd-logind integration does not work when starting X on a new tty, as > that detaches X from the current session and after hat systemd-logind revokes > all rights any already open fds and refuses to open new fds for X. > > This means that currently e.g. "startx -- vt7" breaks, and breaks badly, > requiring ssh access to the system to kill X. > > The fix for this is easy, we must not use systemd-logind integration when > not using KeepTty, or iow we may only use systemd-logind integration together > with KeepTty. > > Signed-off-by: Hans de Goede <[email protected]> > --- > hw/xfree86/os-support/linux/systemd-logind.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/hw/xfree86/os-support/linux/systemd-logind.c > b/hw/xfree86/os-support/linux/systemd-logind.c > index 49758f4..b061877 100644 > --- a/hw/xfree86/os-support/linux/systemd-logind.c > +++ b/hw/xfree86/os-support/linux/systemd-logind.c > @@ -34,6 +34,7 @@ > > #include "os.h" > #include "dbus-core.h" > +#include "linux.h" > #include "xf86.h" > #include "xf86platformBus.h" > #include "xf86Xinput.h" > @@ -595,6 +596,12 @@ static struct dbus_core_hook core_hook = { > int > systemd_logind_init(void) > { > + /* get vtno now as it may change keeptty */ > + linux_get_vtno(); > + /* systemd_logind integration requires keeptty */ > + if (!linux_get_keeptty()) > + return 1; > +
I think this behaviour should be documented in the man page. And maybe even printf here that "-keeptty provided, disabling systemd-logind" as an Info. Otherwise there's too much quietly happening that's not obvious. with that, Reviewed-by: Peter Hutterer <[email protected]> for both Cheers, Peter > return dbus_core_add_hook(&core_hook); > } > > -- > 2.1.0 > > _______________________________________________ > [email protected]: X.Org development > Archives: http://lists.x.org/archives/xorg-devel > Info: http://lists.x.org/mailman/listinfo/xorg-devel > _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
