GNU bug report logs - #30629
[PATCH 0/5] Detect missing modules in the initrd

Previous Next

Package: guix-patches;

Reported by: Ludovic Courtès <ludo <at> gnu.org>

Date: Tue, 27 Feb 2018 14:18:01 UTC

Severity: normal

Tags: patch

Done: ludo <at> gnu.org (Ludovic Courtès)

Bug is archived. No further changes may be made.

Full log


Message #47 received at 30629 <at> debbugs.gnu.org (full text, mbox):

From: Danny Milosavljevic <dannym <at> scratchpost.org>
To: ludo <at> gnu.org (Ludovic Courtès)
Cc: 30629 <at> debbugs.gnu.org
Subject: Re: [bug#30629] [PATCH 0/5] Detect missing modules in the initrd
Date: Tue, 27 Feb 2018 23:50:27 +0100
Hi Ludo,

> > I'm not sure about the module resolution order, first use the aliases or first
> > use the real module files?  
> 
> In what part?

modprobe.  It can either get "pci:024215325233" or "ahci".  The first is an alias
and the latter eventually resolves to a file "ahci.ko".

> I’d rather change that to ‘modprobe-program’ and have it return:
> 
>   (program-file "modprobe" (with-import-modules … #~(begin …)))

Sure.

> I think we can’t use ‘uname’ here because that returns info about the
> build host, not about the machine and kernel we’re deploying.

Yeah, oops.  I tried to avoid having it in the first place, but kmod
(depmod) insists.  Sigh...  I'll add a hack...

> > +                 (path (string-append linux-release-module-directory name)))  
> 
> s/path/directory/ :-)

It's the full path to the module file (a regular file).  "name" was taken :)

It's rewrite it so it says file-name...

> > +                (match (delete-duplicates (matching-modules module
                             ^^^^^^^^^^^^^^^^^ :)

> Should it be an error when MODULE could not be found?

Yes,

I will properly implement the modprobe "-q" option.

(What Linux does is call this thing with "-q" which means modprobe shouldn't
print anything)

After that, we can reinstate error printing.

Right now it's a little disconcerting if it prints the errors - I tried it :)

> Also, indentation should be like:
> 
>   (for-each (lambda (option)
>               …
>               (for-each (lambda (module)
>                           …)))
>             …)

Sure.

> >  (define* (base-initrd file-systems
> >                        #:key
> >                        (linux linux-libre)
> > +                      (linux-modules '())
> >                        (kmod kmod-minimal/static)
> >                        (mapped-devices '())
> >                        qemu-networking?  
> 
> We no longer need #:kmod here.

Yes, we do.  It doesn't end up in the finished initrd file directly, 
but flat-linux-module-directory uses it (now) in order to invoke depmod -
otherwise we don't have modules.alias etc.

Also, when I replace kmod-minimal/static by kmod I get a massive number of
test failures.  What I'm trying to say, in this case I think
having an intermediate step kmod-minimal/static is the least of the evils...




This bug report was last modified 7 years and 128 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.