freebsd-src/sbin
Kyle Evans 5d0826017f libbe: promote activated BEs all the way
This matches the beadm behavior; generally, we need to keep promoting
until the BE is no longer a clone from a snapshot.  This fixes scenarios
where the dataset associated with a BE's origin is itself a clone,
activating the BE previously would promote it to a clone of the origin's
origin.

We could keep using be_get_dataset_props here, except for two
annoyances:

1.) I couldn't find a clean way to just clear an nvlist rather than
    having to re-alloc it, and I didn't want to just remove the one prop
    we're inspecting out of it.

2.) That's a lot of overhead when all we want to do is fetch the origin
    anyways.

Note that this is not a complete fix, but it does fix the majority of
cases; deep BE subordinates are still notably broken, pending a patch
from Christian.

Reported by:	R. Christian McDonald <rcm@rcm.sh>
Reviewed by:	rew
Differential Revision:	https://reviews.freebsd.org/D40903
2023-07-11 00:44:13 -05:00
..
adjkerntz
bectl libbe: promote activated BEs all the way 2023-07-11 00:44:13 -05:00
bsdlabel
camcontrol
ccdconfig
clri
comcontrol
conscontrol
ddb
decryptcore
devd
devfs
devmatch
dhclient dhclient: fix build on i386 2023-07-10 15:03:39 -05:00
dmesg
dump
dumpfs
dumpon
etherswitchcfg
fdisk
ffsinfo
fsck
fsck_ffs
fsck_msdosfs
fsdb
fsirand
gbde
geom
ggate
growfs
gvinum
hastctl
hastd
ifconfig
init
ipf
ipfw
kldconfig
kldload
kldstat
kldunload
ldconfig ldconfig: Use __PATH_ELF_HINTS("32") over _PATH_ELF32_HINTS 2023-07-09 18:50:15 +01:00
md5
mdconfig
mdmfs
mknod
mksnap_ffs
mount
mount_cd9660
mount_fusefs
mount_msdosfs
mount_nfs
mount_nullfs
mount_udf
mount_unionfs
natd
newfs
newfs_msdos
nfsiod
nos-tun
nvmecontrol
pfctl
pfilctl
pflogd
ping
quotacheck
rcorder
reboot
recoverdisk
resolvconf
restore
route
routed
rtsol
savecore
setkey
shutdown
swapon
sysctl
tests
tunefs
umount
veriexec
zfsbootcfg
Makefile
Makefile.amd64
Makefile.arm
Makefile.i386
Makefile.inc
Makefile.powerpc64