Bug 7100

Summary: systemd startup fails due to timeout
Product: [Runtime] General Runtime Reporter: Paul Eggleton <bluelightning>
Component: General RuntimeAssignee: Randy Witt <randy.e.witt>
Status: RESOLVED FIXED QA Contact: Lucian Musat <georgex.l.musat>
Severity: normal    
Priority: Medium+ CC: alexandru.c.georgescu, ross.burton
Version: 1.8   
Target Milestone: 1.8 M2   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description Paul Eggleton 2014-12-23 10:31:11 UTC
The test_parselogs QA test on the autobuilder for nightly_qa_systemd (qemux86-64) failed:

(EE) systemd-logind: failed to get session: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Full log:

https://autobuilder.yoctoproject.org/main/builders/nightly-qa-systemd/builds/135/steps/Running%20Sanity%20Tests/logs/stdio

(This was for master-next, but the same issue will be present on master.)
Comment 1 Randy Witt 2015-01-21 23:11:48 UTC
We solved this for now by disabling systemd-logind for X unconditionally. In the future we can reinvestigate with things we learned this time.

Notes:
Sessions must be registered with systemd-logind via pam. This means pam must be
enabled for systemd-logind to work properly.

Usually the dm is responsible for creating new sessions for the available seats and then starting a process for each available seat.

If starting a process that creates a session via pam, you can specify items such as the seat and vt number to pam using the variables at http://www.freedesktop.org/software/systemd/man/pam_systemd.html#Environment.

Even when specifying the seat and vt to pam, in order for the session to work properly, the seat also had to be passed to the Xserver as the last argument on the command line in a form such as "/etc/X11/Xserver vt1".