In message <202506131548.55dfmqnu004...@gitrepo.freebsd.org>, Warner Losh 
write
s:
> The branch main has been updated by imp:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=900bc0206348a439b3a0625a7239cb87
> a2dc27c5
>
> commit 900bc0206348a439b3a0625a7239cb87a2dc27c5
> Author:     Siva Mahadevan <m...@svmhdvn.name>
> AuthorDate: 2025-03-14 15:52:12 +0000
> Commit:     Warner Losh <i...@freebsd.org>
> CommitDate: 2025-06-13 15:47:25 +0000
>
>     rc.d/zpool: change mountcritlocal dep from BEFORE to REQUIRE
>     
>     In cases where the `/boot` directory is mounted from a different disk,
>     `/boot/zfs/zpool.cache` will not be found during a `rc.d/zpool`
>     run. This is because `/etc/fstab` mounts are mounted in
>     `rc.d/mountcritlocal`, which currently runs AFTER (i.e. `REQUIRE:`)
>     `rc.d/zpool`.
>     
>     This change swaps the `rcorder` of `rc.d/zpool`'s dependency on
>     `mountcritlocal` from `BEFORE:` to `REQUIRE:`. This will ensure that
>     `/boot` (or even `/etc/` in some configurations) to be visible while
>     searching for `zpool.cache`.
>     
>     Reviewed by: imp
>     Pull Request: https://github.com/freebsd/freebsd-src/pull/1614
>     Closes: https://github.com/freebsd/freebsd-src/pull/1614
> ---
>  libexec/rc/rc.d/zpool | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/libexec/rc/rc.d/zpool b/libexec/rc/rc.d/zpool
> index 94e107bd9ae0..63f040ad122b 100755
> --- a/libexec/rc/rc.d/zpool
> +++ b/libexec/rc/rc.d/zpool
> @@ -3,8 +3,7 @@
>  #
>  
>  # PROVIDE: zpool
> -# REQUIRE: hostid disks
> -# BEFORE: mountcritlocal
> +# REQUIRE: hostid disks mountcritlocal
>  # KEYWORD: nojail
>  
>  . /etc/rc.subr
>

This causes systems which boot off UFS with ZFS to fail boot. The machine 
drops into single user until one can /etc/rc.d/zpool start and hit 
control-d to continue the boot.

The reason this fails is /etc/fstab with legacy ZFS will no longer boot 
into multiuser.

slippy$ grep zfs /etc/fstab | head
# tank/usr/lib/debug/amd64      /usr/lib/debug          zfs     rw,noatime  
    0 0
tank/sfw/modules        /boot/modules           zfs     rw,noatime      0 0
tank/sfw/local  /usr/local              zfs     rw,noatime      0 0
tank/sfw/compat /usr/compat             zfs     rw,noatime      0 0
tank/sfw/var/lib        /var/lib                zfs     rw,noatime      0 0
tank/sfw/var/db/pkg     /var/db/pkg             zfs     rw,noatime      0 0
tank/sfw/var/db/ports   /var/db/ports           zfs     rw,noatime      0 0
tank/var/db/mysql       /var/db/mysql           zfs     rw,noatime      0 0
tank/db/pgsql           /var/db/postgres        zfs     rw,noatime      0 0
tank/var/db/local       /var/db/local           zfs     rw,noatime      0 0
slippy$ 

Please revert this.


-- 
Cheers,
Cy Schubert <cy.schub...@cschubert.com>
FreeBSD UNIX:  <c...@freebsd.org>   Web:  https://FreeBSD.org
NTP:           <c...@nwtime.org>    Web:  https://nwtime.org

                        e**(i*pi)+1=0



Reply via email to