summaryrefslogtreecommitdiffstats
path: root/sys/cddl
diff options
context:
space:
mode:
authordelphij <delphij@FreeBSD.org>2014-10-18 22:11:10 +0000
committerdelphij <delphij@FreeBSD.org>2014-10-18 22:11:10 +0000
commit5165eb29732afe97f688263f6b85d672c8c00f12 (patch)
tree9d716432daa957d906d2e1bd86afc8ed24364edb /sys/cddl
parent9b44fe556be01b7365289ce03c873448f9158644 (diff)
downloadFreeBSD-src-5165eb29732afe97f688263f6b85d672c8c00f12.zip
FreeBSD-src-5165eb29732afe97f688263f6b85d672c8c00f12.tar.gz
Add tunable vfs.zfs.space_map_blksz for space map's maximum block size.
MFC after: 2 weeks
Diffstat (limited to 'sys/cddl')
-rw-r--r--sys/cddl/contrib/opensolaris/uts/common/fs/zfs/space_map.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/space_map.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/space_map.c
index 94790b9..aeac124 100644
--- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/space_map.c
+++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/space_map.c
@@ -37,6 +37,8 @@
#include <sys/refcount.h>
#include <sys/zfeature.h>
+SYSCTL_DECL(_vfs_zfs);
+
/*
* The data for a given space map can be kept on blocks of any size.
* Larger blocks entail fewer i/o operations, but they also cause the
@@ -44,6 +46,8 @@
* when only a few blocks have changed since the last transaction group.
*/
int space_map_blksz = (1 << 12);
+SYSCTL_INT(_vfs_zfs, OID_AUTO, space_map_blksz, CTLFLAG_RDTUN, &space_map_blksz, 0,
+ "Maximum block size for space map. Must be power of 2 and greater than 4096.");
/*
* Load the space map disk into the specified range tree. Segments of maptype
OpenPOWER on IntegriCloud