GNU bug report logs -
#40998
Guix System's initrd doesn't honor rootflags
Previous Next
Reported by: maxim.cournoyer <at> gmail.com
Date: Fri, 1 May 2020 13:54:01 UTC
Severity: normal
Tags: patch
Done: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#40998: Guix System's initrd doesn't honor rootflags
which was filed against the guix package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 40998 <at> debbugs.gnu.org.
--
40998: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=40998
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
Hi Ludovic,
Maxim Cournoyer <maxim.cournoyer <at> gmail.com> writes:
> Hi Ludovic,
>
> Ludovic Courtès <ludo <at> gnu.org> writes:
>
>> Hi!
>>
>> Maxim Cournoyer <maxim.cournoyer <at> gmail.com> skribis:
>>
>>> This version field exposes the (already present) version information of a boot
>>> parameters file.
>>>
>>> * gnu/system.scm (%boot-parameters-version): New variable.
>>> (<boot-parameters>)[version]: New field.
>>> (read-boot-parameters): Use it.
>>> (operating-system-boot-parameters-file): Likewise.
>>> * tests/boot-parameters.scm (test-read-boot-parameters): Use
>>> %boot-parameters-version as the default version value in the template.
>>
>> [...]
>>
>>> + ;; New versions are not backward-compatible, so only accept past and current
>>> + ;; versions, not future ones.
>>> + (define (version? n)
>>> + (member n (iota (1+ %boot-parameters-version))))
>>> +
>>> (match (read port)
>>> - (('boot-parameters ('version 0)
>>> + (('boot-parameters ('version (? version? version))
>>
>> I still have a preference for an explicit list right here, for clarity,
>> and so that we don’t unwillingly find ourselves treating any past
>> version in the same way in the future.
>
> OK. I prefer that we can bump %boot-parameters-version at one place and
> have the rest of the code base do the right thing instead of having to
> manually remember to adjust bits left and right. I've added a comment
> next to %boot-parameters-version to mention it should be incremented by
> 1 when bumping it.
>
>> I think I wasn’t clear about it (sorry!) but I wonder if we could,
>> instead of bumping the version, use something like:
>>
>> (find (cut string-prefix? "gnu.load=") kernel-arguments)
>>
>> to determine whether we’re dealing with an “old-style” “parameters”
>> file.
>>
>> If that’s not possible, then what this patch is doing SGTM.
>
> That's not possible, because the parameters file doesn't include the
> gnu.load nor gnu.system parameters because of their self-referential
> nature, so we don't have such information to look at.
>
> I'll be looking toward pushing this series today.
I've now pushed it as 6d9d616113cf051d80567b584a5b0a6489ddc065. Thanks
for the review!
Maxim
[Message part 3 (message/rfc822, inline)]
Which means users cannot pass a 'rootflags=degraded' command line option
to the kernel line in GRUB to attempt booting a system whose RAID array
is degraded.
rootflags is standard across distributions, and is what users expect.
Such support was added in earlier version of the patches proposed here:
https://issues.guix.gnu.org/37305#0 but is later simplified out.
Maxim
This bug report was last modified 3 years and 78 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.