unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#30847: Cannot upgrade GuixSD due to check-device-initrd-modules
@ 2018-03-18 16:32 Adam Van Ymeren
  2018-03-18 22:33 ` Danny Milosavljevic
  2018-03-19 16:51 ` Ludovic Courtès
  0 siblings, 2 replies; 4+ messages in thread
From: Adam Van Ymeren @ 2018-03-18 16:32 UTC (permalink / raw)
  To: 30847

My root device is on NVMe.

In my current kernel config CONFIG_NVME_CORE is set to a module, which is
included in my initrd.

However upstream defconfig has been changed to CONFIG_NVME_CORE=y

When trying to guix reconfigure my system, building the operating system
fails in check-device-initrd-modules with the following message

vany/systems.scm:111:10: error: you may need these modules in the initrd for /dev/nvme0n1p2: nvme shpchp
hint: Try adding them to the `initrd-modules' field of your `operating-system' declaration, along these lines:

      (operating-system
        ;; ...
        (initrd-modules (append (list "nvme" "shpchp")
                                %base-initrd-modules)))


If I add initrd-modules to my operating-system, then building the initrd
fails because nvme module cannot be found (as it is not being build as a
module).

Fundamentally I think the problem is that check-device-initrd-modules is
checking modules for the currently running kernel which is not
necessarily the kernel that I will be installing.

At the very least however it would be nice if I could override this
check with a --i-know-what-im-doing flag of some sort.

It seems odd that check-device-initrd-modules will not prevent your
installation from continuing if it can't find modules.alias, but if it
can find it and you didn't specify the initrd-modules it thinks you need
then it becomes a hard error that you can't override.  Perhaps it should
always be a warning or prompt the user if they want to continue.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#30847: Cannot upgrade GuixSD due to check-device-initrd-modules
  2018-03-18 16:32 bug#30847: Cannot upgrade GuixSD due to check-device-initrd-modules Adam Van Ymeren
@ 2018-03-18 22:33 ` Danny Milosavljevic
  2018-03-19 16:51 ` Ludovic Courtès
  1 sibling, 0 replies; 4+ messages in thread
From: Danny Milosavljevic @ 2018-03-18 22:33 UTC (permalink / raw)
  To: Adam Van Ymeren; +Cc: 30847

[-- Attachment #1: Type: text/plain, Size: 1282 bytes --]

Hi Adam,

On Sun, 18 Mar 2018 12:32:18 -0400
Adam Van Ymeren <adam@vany.ca> wrote:

> Fundamentally I think the problem is that check-device-initrd-modules is
> checking modules for the currently running kernel which is not
> necessarily the kernel that I will be installing.

Yeah, otherwise it would have to build everything first.

> At the very least however it would be nice if I could override this
> check with a --i-know-what-im-doing flag of some sort.

It exists: --skip-checks

> It seems odd that check-device-initrd-modules will not prevent your
> installation from continuing if it can't find modules.alias, but if it
> can find it and you didn't specify the initrd-modules it thinks you need
> then it becomes a hard error that you can't override. 
> Perhaps it should
> always be a warning or prompt the user if they want to continue.

Yeah, I'd prefer a warning and sleep 5 since the result is not guaranteed to be
correct.

Also it would be possible to build a Frankenstein's monster version where it
checks the new kernel config and finds out which modules would be builtin
(that would involve a lot of Makefile and Kconfig parsing... ugh).

An additional more complete check (with the new kernel etc) at the end would
make sense.

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#30847: Cannot upgrade GuixSD due to check-device-initrd-modules
  2018-03-18 16:32 bug#30847: Cannot upgrade GuixSD due to check-device-initrd-modules Adam Van Ymeren
  2018-03-18 22:33 ` Danny Milosavljevic
@ 2018-03-19 16:51 ` Ludovic Courtès
  2018-03-27 13:19   ` Ludovic Courtès
  1 sibling, 1 reply; 4+ messages in thread
From: Ludovic Courtès @ 2018-03-19 16:51 UTC (permalink / raw)
  To: Adam Van Ymeren; +Cc: 30847

Hello Adam,

Adam Van Ymeren <adam@vany.ca> skribis:

> My root device is on NVMe.
>
> In my current kernel config CONFIG_NVME_CORE is set to a module, which is
> included in my initrd.
>
> However upstream defconfig has been changed to CONFIG_NVME_CORE=y

Out of curiosity, what’s the current and target kernel versions?

Like Danny wrote, ‘check-device-initrd-modules’ can have false positives
as it is, in which case you have to use ‘--skip-checks’.

We could arrange to not have false positives, but the UX would be a
little less good because we’d first need to build the target kernel.  So
I wonder how frequent the situation you experienced is.

Thanks for your report!

Ludo’.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#30847: Cannot upgrade GuixSD due to check-device-initrd-modules
  2018-03-19 16:51 ` Ludovic Courtès
@ 2018-03-27 13:19   ` Ludovic Courtès
  0 siblings, 0 replies; 4+ messages in thread
From: Ludovic Courtès @ 2018-03-27 13:19 UTC (permalink / raw)
  To: Adam Van Ymeren; +Cc: 30847

Ping!  :-)

ludo@gnu.org (Ludovic Courtès) skribis:

> Hello Adam,
>
> Adam Van Ymeren <adam@vany.ca> skribis:
>
>> My root device is on NVMe.
>>
>> In my current kernel config CONFIG_NVME_CORE is set to a module, which is
>> included in my initrd.
>>
>> However upstream defconfig has been changed to CONFIG_NVME_CORE=y
>
> Out of curiosity, what’s the current and target kernel versions?
>
> Like Danny wrote, ‘check-device-initrd-modules’ can have false positives
> as it is, in which case you have to use ‘--skip-checks’.
>
> We could arrange to not have false positives, but the UX would be a
> little less good because we’d first need to build the target kernel.  So
> I wonder how frequent the situation you experienced is.
>
> Thanks for your report!
>
> Ludo’.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2018-03-27 13:20 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-03-18 16:32 bug#30847: Cannot upgrade GuixSD due to check-device-initrd-modules Adam Van Ymeren
2018-03-18 22:33 ` Danny Milosavljevic
2018-03-19 16:51 ` Ludovic Courtès
2018-03-27 13:19   ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).