Smooth graphics mode transition from GRUB to kernel

Colin Watson cjwatson at
Mon Aug 10 10:31:13 UTC 2009

I've been working on some changes to GRUB 2 to make it possible for GRUB
to start up in a graphics mode that matches the one that KMS was using
the last time we booted (the best we can do here, really), and then boot
the kernel without changing back to text mode in order to avoid visible
flicker. This was actually mostly already supported by GRUB upstream,
but a few bug-fixes and configuration changes were needed. The kernel
will probably reset the mode itself but as long as it's the same
resolution it shouldn't result in anything particularly visible.

In the case where it works this actually looks really nice. However,
there's one fairly major glitch for which I'd like your help. If we
start up in graphics mode, the kernel doesn't seem to notice early on,
and so any messages it emits (including, for example, initramfs
failures) go to never-never land. Once KMS is started all is well.

This doesn't seem like it ought to be an inherent limitation; several
architectures start up with nothing but a framebuffer, after all. I'm
wondering if we're just not programming the boot parameter structure
quite right in GRUB, or perhaps if there's some configuration tweak that
the kernel needs to support this. Can anyone see anything wrong with the
attached patch when applied to the current grub2 package in Karmic?
loader/i386/linux.c is the key file.


Colin Watson                                       [cjwatson at]
-------------- next part --------------
A non-text attachment was scrubbed...
Name: grub2-kms.diff
Type: text/x-diff
Size: 9172 bytes
Desc: not available
URL: <>

More information about the kernel-team mailing list