[systemd-devel] Showing plymouth shutdown splash earlier during shutdown process

Daniel Drake dsd at laptop.org
Thu May 31 08:46:56 PDT 2012


On Wed, Apr 11, 2012 at 10:51 AM, Daniel Drake <dsd at laptop.org> wrote:
> On Wed, Apr 11, 2012 at 9:42 AM, Lennart Poettering
> <lennart at poettering.net> wrote:
>>> I tried modifying e.g. plymouth-reboot.service to have:
>>> Before=reboot.service shutdown.target umount.target final.target reboot.target
>>
>> That suggests that the plymouth client tool is not waiting for the
>> operation to finish but just asynchonrously queueing the reuest, which
>> is something that should be fixed in plymouth.
>
> You're probably right, but before we get there, even with the above
> Before= change, systemd seems to be starting plymouth-reboot.service
> rather late in the process. Logs from a reboot with the Before= change
> made as above:
>
> http://dev.laptop.org/~dsd/20120411/shutdown2.txt
>
> Any ideas?

Bump.
I filed a bug for the plymouth-quitting-before-command-processed
issue: https://bugs.freedesktop.org/show_bug.cgi?id=50544
and I worked around it locally.

But still, the plymouth splash is being shown late in the process, as
shown in the above log.

plymouth-reboot.service has

After=getty at tty1.service prefdm.service plymouth-start.service
Before=reboot.service


In the case of reboot (or poweroff), what does this mean?
plymouth-reboot.service is queued to start, and prefdm.service is
queued to stop. What does After= mean in this context, who comes
first?

Either way, plymouth-reboot.service seems to be run a long time after
prefdm finishes - about 3.5 seconds.
And after running it a few times I am seeing that it *always* starts
after a whole bunch of other services have been stopped - in the above
log: diskspacerecover.service, alsa-store.service,
systemd-random-seed-save.service, and maybe more. It is like it is
waiting for those services to stop before executing. How can I find
out why?

Thanks
Daniel


More information about the systemd-devel mailing list