Comment 8 for bug 981314

Revision history for this message
Steve Langasek (vorlon) wrote :

Newer plymouth upstream includes the following change:

     {
       state.should_be_attached = attach_to_session;
       if (!attach_to_running_session (&state))
- ply_trace ("could not create session: %m");
+ {
+ ply_trace ("could not redirect console session: %m");
+ if (! no_daemon)
+ ply_detach_daemon (daemon_handle, EX_UNAVAILABLE);
+ return EX_UNAVAILABLE;
+ }
     }

   state.boot_server = start_boot_server (&state);

This removes the assertion, but simply by causing plymouthd to exit instead.

That's going to be difficult to correct for. We start plymouth early in order to be able to capture early boot information, and so that mountall can communicate with it for any interactions necessary while fscking the filesystem; so we can't simply start plymouth later once /dev is mounted. So we need to do something other than what upstream has implemented here. If we're going to allow retrying console redirection later, though, we need to carefully examine the failure path in attach_to_running_session().