mirror of
https://github.com/opnsense/src.git
synced 2026-03-21 02:10:09 -04:00
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
|
||
|---|---|---|
| .. | ||
| tests | ||
| be.c | ||
| be.h | ||
| be_access.c | ||
| be_error.c | ||
| be_impl.h | ||
| be_info.c | ||
| libbe.3 | ||
| Makefile | ||
| Makefile.depend | ||