Re: Adding deferred fbcon console takeover to the Fedora kernels

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On 02-07-18 13:55, Hans de Goede wrote:
Hi All,

On 28-06-18 16:19, Hans de Goede wrote:
Hi All,

Good news on the patch to make the loglevel for quiet configurable,
this has been accepted into -next now. I plan to add this to the
Fedora kernels soonish and set the quiet loglevel to 3 as
discussed earlier.

Today another related patch-set got merged, see the last 3
commits here:
https://github.com/bzolnier/linux/commits/ib-fbdev-drm-v4.19-deferred-console-takeover

I would also like to add these 3 patches to the Fedora 4.18
kernel (for F29+).

The end goal here is a boot where the firmware shows its boot graphics
and these stay in place for a couple of seconds until the GUI loads and
the GUI then smoothly takes over the framebuffer without any disruptions.

See here for an example of what this looks like on my main workstation:

https://fedorapeople.org/~jwrdegoede/flickerfree-videos/workstation-normal.webm

Shim has already been modified to leave the framebuffer as setup by
the firmware intact and patches for grub have been merged, but not
yet build for F29+.

Combined with the hidden grub menu feature for F29:

https://fedoraproject.org/wiki/Changes/HiddenGrubMenu

This means that the framebuffer is still showing the boot graphics
(e.g. vendor logo) when the kernel loads.

Without the "deferred fbcon console takeover" patches the fbcon
will takeover from dummycon as the console driver as soon as
the efifb registers itself as a fbdev, clearing the screen to
black. breaking the desired boot experience.

The deferred console takeover patches make the fbcon code delay
taking over as the console until the first character is output
on the console.

I've tested this code with the following scenarios:

1) Remove quiet from the kernel commandline -> fbcon binds right away
because messages are logged to the dummycon before efifb loads

2) Mess up the root= kernel argument -> As soon as dracut prints
its timeout message for finding the rootfs, fbcon binds and shows
the timeout message

3) Detailed view in plymouth mode (press ESC to show boot msg) ->
plymouth retains drm master rights on /dev/dri/card? while it
tries to show the details. The blocks fbcon accessing the fbdev
device registered by the kms driver, so nothing will be shown
until plymouth exits (and releases the drm-master rights).

This really is a plymouth bug, I've submitted plymouth patches
fixing this here:
https://bugs.freedesktop.org/show_bug.cgi?id=107047

I got an ack from Ray for these patches and for adding these
patches to the Fedora plymouth package as downstream patches
(until the next upstream release). A new plymouth package
fixing this is building now:

https://koji.fedoraproject.org/koji/buildinfo?buildID=1102343

I discussed adding these patches to the 4.18 / rawhide kernel
with Laura off-list and she said this was ok. So I've just
pushed the patches and the matching Kconfig changes.

Regards,

Hans
_______________________________________________
kernel mailing list -- kernel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to kernel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/kernel@xxxxxxxxxxxxxxxxxxxxxxx/message/SWRXFDF467LGIGQO4EKOZZSAMIHP6R54/




[Index of Archives]     [Fedora General Discussion]     [Older Fedora Users Archive]     [Fedora Advisory Board]     [Fedora Security]     [Fedora Devel Java]     [Fedora Legacy]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Mentors]     [Fedora Package Announce]     [Fedora Package Review]     [Fedora Music]     [Fedora Packaging]     [Centos]     [Fedora SELinux]     [Coolkey]     [Yum Users]     [Tux]     [Yosemite News]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [USB]     [Asterisk PBX]

  Powered by Linux