From 03fdcb9adc596fb86a65edb56d8088b77ea2d891 Mon Sep 17 00:00:00 2001 From: Matthew Macy Date: Thu, 5 Sep 2019 14:49:49 -0700 Subject: Make module tunables cross platform Adds ZFS_MODULE_PARAM to abstract module parameter setting to operating systems other than Linux. Reviewed-by: Jorgen Lundman Reviewed-by: Igor Kozhukhov Reviewed-by: Brian Behlendorf Signed-off-by: Matt Macy Signed-off-by: Ryan Moeller Closes #9230 --- module/zfs/vdev_indirect.c | 27 +++++++++++---------------- 1 file changed, 11 insertions(+), 16 deletions(-) (limited to 'module/zfs/vdev_indirect.c') diff --git a/module/zfs/vdev_indirect.c b/module/zfs/vdev_indirect.c index 5827d3fac..4869402c2 100644 --- a/module/zfs/vdev_indirect.c +++ b/module/zfs/vdev_indirect.c @@ -1858,7 +1858,6 @@ vdev_ops_t vdev_indirect_ops = { .vdev_op_leaf = B_FALSE /* leaf vdev */ }; -#if defined(_KERNEL) EXPORT_SYMBOL(rs_alloc); EXPORT_SYMBOL(spa_condense_fini); EXPORT_SYMBOL(spa_start_indirect_condensing_thread); @@ -1871,25 +1870,21 @@ EXPORT_SYMBOL(vdev_indirect_sync_obsolete); EXPORT_SYMBOL(vdev_obsolete_counts_are_precise); EXPORT_SYMBOL(vdev_obsolete_sm_object); -module_param(zfs_condense_indirect_vdevs_enable, int, 0644); -MODULE_PARM_DESC(zfs_condense_indirect_vdevs_enable, +/* BEGIN CSTYLED */ +ZFS_MODULE_PARAM(zfs_condense, zfs_condense_, indirect_vdevs_enable, INT, ZMOD_RW, "Whether to attempt condensing indirect vdev mappings"); -/* CSTYLED */ -module_param(zfs_condense_min_mapping_bytes, ulong, 0644); -MODULE_PARM_DESC(zfs_condense_min_mapping_bytes, - "Minimum size of vdev mapping to condense"); +ZFS_MODULE_PARAM(zfs_condense, zfs_condense_, min_mapping_bytes, ULONG, ZMOD_RW, + "Don't bother condensing if the mapping uses less than this amount of " + "memory"); -/* CSTYLED */ -module_param(zfs_condense_max_obsolete_bytes, ulong, 0644); -MODULE_PARM_DESC(zfs_condense_max_obsolete_bytes, +ZFS_MODULE_PARAM(zfs_condense, zfs_condense_, max_obsolete_bytes, ULONG, ZMOD_RW, "Minimum size obsolete spacemap to attempt condensing"); -module_param(zfs_condense_indirect_commit_entry_delay_ms, int, 0644); -MODULE_PARM_DESC(zfs_condense_indirect_commit_entry_delay_ms, - "Delay while condensing vdev mapping"); +ZFS_MODULE_PARAM(zfs_condense, zfs_condense_, indirect_commit_entry_delay_ms, INT, ZMOD_RW, + "Used by tests to ensure certain actions happen in the middle of a " + "condense. A maximum value of 1 should be sufficient."); -module_param(zfs_reconstruct_indirect_combinations_max, int, 0644); -MODULE_PARM_DESC(zfs_reconstruct_indirect_combinations_max, +ZFS_MODULE_PARAM(zfs_reconstruct, zfs_reconstruct_, indirect_combinations_max, INT, ZMOD_RW, "Maximum number of combinations when reconstructing split segments"); -#endif +/* END CSTYLED */ -- cgit v1.2.3