Plymouth custom initrd problems

Ray Strode halfline at gmail.com
Tue May 19 14:02:09 PDT 2009


Hi Daire,

> I am trying to add plymouth to a custom "busybox" based initrd we use for diskless boots (based on uClibc's buildroot) but we eventually switch_root to Fedora 11.
[...]
> However the plymouth --show-splash call does nothing. I am just trying to get VESA working (vga=0x318) for now so no fancy modesetting or kernel modules are required.
Okay, should be possible.  What device nodes are you creating before
you start plymouth?  you'll need /dev/fb , /dev/tty0, /dev/tty1
created (with mknod or whatever), and /dev/pts, /sys,  and /proc
mounted.

>My guess is that Nash does something different when setting up the initial terminals compared to busybox's "sh" implementation that plymouth doesn't like.
>In particular the tty that my "init" script uses is set to /dev/console. Maybe I need it to be tty0 for plymouth?
I don't think so.  /dev/tty0 is a synonym for "current active tty".
/dev/console is also "current active tty" unless console has been
redirected (with console=blah on kernel command line or from an app
using the TIOCCONS ioctl)  Shouldn't have anything to do with graphics
output.

> I tried setting the tty using the kernel option "console=tty0" but it looks like busybox's "sh" doesn't respect that.
console=tty0 is the kernel default. Normally you'd only use it if you
were specifying multiple console= lines ("output to the serial console
AND the screen").

>  In the Fedora initrd I noticed that there is a "/lib/udev/console_init tty0" command right before plymouthd starts.
console_init just sets up the default console font / keymap /etc.
Probably not your problem.

> Here's a snippet of the relevant part of the debugging output from "plymouthd --debug" after issuing the "plymouth --show-splash" command:
you can also do plymouth:debug / plymouth:nolog on the kernel command
line, or type ctrl-v while it's running to get debug spew

> <snip>
>  [main.c]             add_windows_to_boot_splash:There are 1 windows in list
>  [main.c]             start_boot_splash:showing plugin
>  [ply-boot-splash.c]    ply_boot_splash_show:showing splash screen
>
>  [./plugin.c]         hide_splash_screen:hiding splash screen
>  [./plugin.c]         detach_from_event_loop:detaching from event loop
>  [./main.c]           quit_splash:quiting splash
> <snip>

It looks like you're doing plymouth --quit right after plymouth --show-splash ?

Can you attach your init file?

--Ray


More information about the plymouth mailing list