* 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).