Hello tech@,
Currently unhibernating doesn't work with this configuration:
# echo "boot" > /etc/boot.conf
The original kernel is booted instead of the hibernated one.
This was fixed a few years ago for sysupgrade's /bsd.upgrade kernel but
unhibernation was overlooked at the time.
Before:
unhibernate detected: switching to /bsd.booted
booting sr0a:/bsd:...
After:
unhibernate detected: switching to /bsd.booted
booting sr0a:/bsd.booted:...
Index: boot.c
===================================================================
RCS file: /cvs/src/sys/stand/boot/boot.c,v
retrieving revision 1.54
diff -u -p -r1.54 boot.c
--- boot.c 15 Jun 2020 14:43:57 -0000 1.54
+++ boot.c 8 Sep 2021 14:45:09 -0000
@@ -84,8 +84,6 @@ boot(dev_t bootdev)
isupgrade = 1;
}
- st = read_conf();
-
#ifdef HIBERNATE
int bootdev_has_hibernate(void);
@@ -94,6 +92,8 @@ boot(dev_t bootdev)
printf("unhibernate detected: switching to %s\n", cmd.image);
}
#endif
+
+ st = read_conf();
if (!bootprompt)
snprintf(cmd.path, sizeof cmd.path, "%s:%s",