From 30b92c1de68ced4bee235f879791ee316314a197 Mon Sep 17 00:00:00 2001 From: Brian Behlendorf Date: Mon, 18 Mar 2013 13:03:09 -0700 Subject: [PATCH] Add metaslab_debug option Enabling metaslab debugging will prevent space maps from being automatically unloaded. This can significantly increase the memory footprint but being able to dynamically control this is helpful for debugging and certain performance testing. Signed-off-by: Brian Behlendorf --- module/zfs/metaslab.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/module/zfs/metaslab.c b/module/zfs/metaslab.c index d199921b7..03d5a1d9c 100644 --- a/module/zfs/metaslab.c +++ b/module/zfs/metaslab.c @@ -58,7 +58,7 @@ int zfs_mg_alloc_failures; /* * Metaslab debugging: when set, keeps all space maps in core to verify frees. */ -static int metaslab_debug = 0; +int metaslab_debug = 0; /* * Minimum size which forces the dynamic allocator to change @@ -1746,3 +1746,8 @@ void metaslab_fastwrite_unmark(spa_t *spa, const blkptr_t *bp) spa_config_exit(spa, SCL_VDEV, FTAG); } + +#if defined(_KERNEL) && defined(HAVE_SPL) +module_param(metaslab_debug, int, 0644); +MODULE_PARM_DESC(metaslab_debug, "keep space maps in core to verify frees"); +#endif /* _KERNEL && HAVE_SPL */