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 <behlendorf1@llnl.gov>
This commit is contained in:
Brian Behlendorf 2013-03-18 13:03:09 -07:00
parent f3757573a6
commit 30b92c1de6

View File

@ -58,7 +58,7 @@ int zfs_mg_alloc_failures;
/* /*
* Metaslab debugging: when set, keeps all space maps in core to verify frees. * 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 * 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); 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 */