Comment 35 for bug 1794292

Gert van de Kraats (gkraats) wrote :

I do not have access to upstream and also have no idea what to add there.

I have the impression the root cause of the plymouth crash is a configuration problem.
I compared Ubuntu 18.04, upgraded from 16.04, with the fresh install of 18.10.

At 18.10 file /usr/share/initramfs-tools/conf-hooks.d/cryptsetup is missing, which contains at 18.04 :

# and for systems using plymouth instead, use the new option
FRAMEBUFFER=y

File /usr/share/initramfs-tools/hooks/framebuffer only loads kernel-module i915 and firmware for Intel-graphics-card
into initramfs if FRAMEBUFFER=y.

THerefore at 18.10 i915 is not loaded into initramfs.
At 18.04 with i915 loaded, drm is initialized within 3 seconds kernel elapsed time, so before plymouth needs it.
At 18.10 drm takes 20 seconds, so after plymouth needs it.
By default plymouth waits max. 5 sec. for drm and then will use device fb0 with vesa.
Later at initialization of drm this device fb0 with vesa will give a remove event.
Plymouth does not handle this situation properly, because it refers memory of a renderer, which is already freed.

I see no reason why this module i915 no longer is loaded at initramfs.
Startup time is almost the same. The splash-screen can be shown earlier if present in initramfs.
I think it simply is a bug in ubuntu or upstream.