mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-25 03:37:45 +03:00
Linux 6.12 compat: Rename range_tree_* to zfs_range_tree_*
Linux 6.12 has conflicting range_tree_{find,destroy,clear} symbols.
Signed-off-by: Ivan Volosyuk <Ivan.Volosyuk@gmail.com>
Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Reviewed-by: Rob Norris <robn@despairlabs.com>
This commit is contained in:
committed by
Tony Hutter
parent
db62886d98
commit
d4a5a7e3aa
+12
-11
@@ -720,7 +720,7 @@ dnode_sync(dnode_t *dn, dmu_tx_t *tx)
|
||||
dn->dn_maxblkid == 0 || list_head(list) != NULL ||
|
||||
dn->dn_next_blksz[txgoff] >> SPA_MINBLOCKSHIFT ==
|
||||
dnp->dn_datablkszsec ||
|
||||
!range_tree_is_empty(dn->dn_free_ranges[txgoff]));
|
||||
!zfs_range_tree_is_empty(dn->dn_free_ranges[txgoff]));
|
||||
dnp->dn_datablkszsec =
|
||||
dn->dn_next_blksz[txgoff] >> SPA_MINBLOCKSHIFT;
|
||||
dn->dn_next_blksz[txgoff] = 0;
|
||||
@@ -786,21 +786,22 @@ dnode_sync(dnode_t *dn, dmu_tx_t *tx)
|
||||
dsfra.dsfra_free_indirects = freeing_dnode;
|
||||
mutex_enter(&dn->dn_mtx);
|
||||
if (freeing_dnode) {
|
||||
ASSERT(range_tree_contains(dn->dn_free_ranges[txgoff],
|
||||
0, dn->dn_maxblkid + 1));
|
||||
ASSERT(zfs_range_tree_contains(
|
||||
dn->dn_free_ranges[txgoff], 0,
|
||||
dn->dn_maxblkid + 1));
|
||||
}
|
||||
/*
|
||||
* Because dnode_sync_free_range() must drop dn_mtx during its
|
||||
* processing, using it as a callback to range_tree_vacate() is
|
||||
* not safe. No other operations (besides destroy) are allowed
|
||||
* once range_tree_vacate() has begun, and dropping dn_mtx
|
||||
* would leave a window open for another thread to observe that
|
||||
* invalid (and unsafe) state.
|
||||
* processing, using it as a callback to zfs_range_tree_vacate()
|
||||
* is not safe. No other operations (besides destroy) are
|
||||
* allowed once zfs_range_tree_vacate() has begun, and dropping
|
||||
* dn_mtx would leave a window open for another thread to
|
||||
* observe that invalid (and unsafe) state.
|
||||
*/
|
||||
range_tree_walk(dn->dn_free_ranges[txgoff],
|
||||
zfs_range_tree_walk(dn->dn_free_ranges[txgoff],
|
||||
dnode_sync_free_range, &dsfra);
|
||||
range_tree_vacate(dn->dn_free_ranges[txgoff], NULL, NULL);
|
||||
range_tree_destroy(dn->dn_free_ranges[txgoff]);
|
||||
zfs_range_tree_vacate(dn->dn_free_ranges[txgoff], NULL, NULL);
|
||||
zfs_range_tree_destroy(dn->dn_free_ranges[txgoff]);
|
||||
dn->dn_free_ranges[txgoff] = NULL;
|
||||
mutex_exit(&dn->dn_mtx);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user