NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

bin/56862: boot.cfg bug with userconf



>Number:         56862
>Category:       bin
>Synopsis:       boot.cfg bug with userconf
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    bin-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Jun 05 13:20:00 +0000 2022
>Originator:     Thomas Klausner
>Release:        NetBSD 9.99.97
>Organization:

>Environment:
	
	
Architecture: x86_64
Machine: amd64
>Description:
Using the following boot.cfg:

menu=Boot without nouveau:rndseed /var/db/entropy-file;userconf disable nouveau*;boot
menu=Boot old without nouveau:rndseed /var/db/entropy-file;userconf disable nouveau*;boot /netbsd.old
menu=Boot normally:rndseed /var/db/entropy-file;boot
menu=Boot single user:rndseed /var/db/entropy-file;boot -s
menu=Drop to boot prompt:prompt
default=1
timeout=5
clear=1

when I choose to boot the third entry, it still disables nouveau.
RVP found:

Looks like a bug when a bare `boot' is encountered. Work around it by
forcing a kernel filename:

--- boot.cfg.orig       2022-06-05 00:48:51.476790000 +0000
+++ boot.cfg    2022-06-05 00:49:18.797459000 +0000
@@ -1,6 +1,6 @@
-menu=Boot without nouveau:rndseed /var/db/entropy-file;userconf disable nouveau*;boot
+menu=Boot without nouveau:rndseed /var/db/entropy-file;userconf disable nouveau*;boot /netbsd
 menu=Boot old without nouveau:rndseed /var/db/entropy-file;userconf disable nouveau*;boot /netbsd.old
-menu=Boot normally:rndseed /var/db/entropy-file;boot
+menu=Boot normally:rndseed /var/db/entropy-file;boot /netbsd
 menu=Boot single user:rndseed /var/db/entropy-file;boot -s
 menu=Drop to boot prompt:prompt
 default=1

and provided this (workaround?) patch:

diff -urN sys/arch/i386/stand/efiboot.orig/boot.c sys/arch/i386/stand/efiboot/boot.c
--- sys/arch/i386/stand/efiboot.orig/boot.c     2021-09-07 11:41:31.000000000 +0000
+++ sys/arch/i386/stand/efiboot/boot.c  2022-06-05 06:50:39.139514564 +0000
@@ -453,8 +453,10 @@
        } else {
                int i;

+#if 0
                if (howto == 0)
                        bootdefault();
+#endif
                for (i = 0; i < NUMNAMES; i++) {
                        bootit(names[i][0], howto);
                        bootit(names[i][1], howto);

>How-To-Repeat:
choose '3' using the above boot.cfg file
>Fix:
Please verify if the fix above is correct.

>Unformatted:
 	
 	


Home | Main Index | Thread Index | Old Index