Bug#898468: debian-installer: black screen/long delay in graphical installer after switching from linux 4.15 to 4.16

Cyril Brulebois kibi at debian.org
Tue Jun 5 18:20:59 BST 2018


Hi,

Ben Hutchings <ben at decadent.org.uk> (2018-05-13):
> This sounds similar to the regression seen in stable affecting gnome-
> session.  libICE has a function for generating the MIT-MAGIC-COOKIE-1
> cookie, which now uses libbsd's arc4random_buf() which now uses
> getrandom().  getrandom() is documented to block (by default) when not
> much entropy is available, but until recently it could return too early
> after boot.
> 
> I don't know whether the cookie is generated this way when d-i starts
> the X server.
> 
> I opened bug #898088 against libbsd because arc4random_buf() is
> documented to return "very quickly".

Many thanks for the initial pointer and the libbsd bugfix. Unfortunately
that wasn't our issue at all (we don't use libICE and there's no udeb
for it anyway). I've documented my findings in a blog post:
  https://debamax.com/blog/2018/05/25/debugging-black-screen-in-debian-installer/


Summary: The issue is rather that we have fontconfig needing UUIDs for
font handling, calling uuid_generate_random() from util-linux, which
uses getrandom(), trying a few times with a little delay between each
attempts when EAGAIN has been returned, before finally falling back to
reading from /dev/{u,}random.

I don't think making util-linux accept low entropy is the way to go,
even if I've checked that doing so makes this issue go away for the
graphical installer (see attached patch against util-linux, which
pretends that getrandom() isn't available), since it can be used in
things more critical than getting UUIDs for fonts…

Maybe fontconfig could be modified to use a different function to get
UUIDs (at least for its udeb build, in case uuid_generate_random() is
strongly preferred for its regular build) in its FcDirCacheCreateUUID()
function?

I'm adding util-linux and fontconfig maintainers to the loop for their
input/feedback.

Thanks for your time.


Cheers,
-- 
Cyril Brulebois (kibi at debian.org)            <https://debamax.com/>
D-I release manager -- Release team member -- Freelance Consultant
-------------- next part --------------
A non-text attachment was scrubbed...
Name: use-urandom-instead-of-getrandom.patch
Type: text/x-diff
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-freedesktop-maintainers/attachments/20180605/913a782b/attachment.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-freedesktop-maintainers/attachments/20180605/913a782b/attachment.sig>


More information about the Pkg-freedesktop-maintainers mailing list