Alfred Morgan <alf...@54.org> wrote:

> > You claimed sysupgrade does this.
> > sysupgrade does nothing like that.  It placed a /bsd.upgrade file, and
> that is the end of the story.
> > You told boot (via commands in boot.conf) to do something, so it did,
> before discovering the file.
> 
> Theo,
> When I mentioned sysupgrade I was referring to the full sysupgrade
> procedure all the way through to completion. Sorry for not being specific
> enough. Thank you, you brought focus to boot which is really where my
> suggestion will be focused on.
> 
> So, how can I explicitly tell boot to act normally to boot /bsd.upgrade and
> if that doesn't exist then boot /bsd? I would expect # echo boot >
> /etc/boot.conf to do just that.

The code is in sys/stand/boot.c

        devboot(bootdev, cmd.bootdev);
        strlcpy(cmd.image, kernelfile, sizeof(cmd.image));
        cmd.boothowto = 0;
        cmd.conf = "/etc/boot.conf";
        cmd.addr = (void *)DEFAULT_KERNEL_ADDRESS;
        cmd.timeout = boottimeout;

        if (upgrade()) {
                strlcpy(cmd.image, "/bsd.upgrade", sizeof(cmd.image));
                printf("upgrade detected: switching to %s\n", cmd.image);
                isupgrade = 1;
        }

        st = read_conf();

Figure out how to build and install.  It is not hard to test.

Reply via email to