aboutsummaryrefslogtreecommitdiff
path: root/sys/contrib/openzfs/module/zfs/dsl_destroy.c
diff options
context:
space:
mode:
authorMartin Matuska <mm@FreeBSD.org>2023-09-02 10:32:48 +0000
committerMartin Matuska <mm@FreeBSD.org>2023-09-02 10:33:26 +0000
commit2ad756a6bbb30fc98ee9000fba5bceec916a6c70 (patch)
treee9b4d857d72cf082b29cb918ae8de328e0c69324 /sys/contrib/openzfs/module/zfs/dsl_destroy.c
parentf4296cfb409a48de00bfa60e76f686c2b031876f (diff)
parent95f71c019d7c3e3b728a9b05e2117ce6b09f1b87 (diff)
zfs: merge openzfs/zfs@95f71c019
Notable upstream pull request merges: #15018 Increase limit of redaction list by using spill block #15161 Make zoned/jailed zfsprops(7) make more sense #15216 Relax error reporting in zpool import and zpool split #15218 Selectable block allocators #15227 ZIL: Tune some assertions #15228 ZIL: Revert zl_lock scope reduction #15233 ZIL: Change ZIOs issue order Obtained from: OpenZFS OpenZFS commit: 95f71c019d7c3e3b728a9b05e2117ce6b09f1b87
Diffstat (limited to 'sys/contrib/openzfs/module/zfs/dsl_destroy.c')
-rw-r--r--sys/contrib/openzfs/module/zfs/dsl_destroy.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/contrib/openzfs/module/zfs/dsl_destroy.c b/sys/contrib/openzfs/module/zfs/dsl_destroy.c
index 053f26878cf1..d9d88a981e05 100644
--- a/sys/contrib/openzfs/module/zfs/dsl_destroy.c
+++ b/sys/contrib/openzfs/module/zfs/dsl_destroy.c
@@ -1125,6 +1125,16 @@ dsl_destroy_head_sync_impl(dsl_dataset_t *ds, dmu_tx_t *tx)
while ((dbn = avl_destroy_nodes(&ds->ds_bookmarks, &cookie)) !=
NULL) {
if (dbn->dbn_phys.zbm_redaction_obj != 0) {
+ dnode_t *rl;
+ VERIFY0(dnode_hold(mos,
+ dbn->dbn_phys.zbm_redaction_obj, FTAG,
+ &rl));
+ if (rl->dn_have_spill) {
+ spa_feature_decr(dmu_objset_spa(mos),
+ SPA_FEATURE_REDACTION_LIST_SPILL,
+ tx);
+ }
+ dnode_rele(rl, FTAG);
VERIFY0(dmu_object_free(mos,
dbn->dbn_phys.zbm_redaction_obj, tx));
spa_feature_decr(dmu_objset_spa(mos),