diff options
author | Brian Behlendorf <[email protected]> | 2015-09-01 09:45:10 -0700 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2015-09-02 09:30:18 -0700 |
commit | 6cde64351e236712a17d41c1578d5843a0f006e4 (patch) | |
tree | df0cd30d4d2db2daa46e7d95ce47642d2c81a751 | |
parent | 3f1cc17c9005d19faba91fe7236332ed502b1a3f (diff) |
Add spa_slop_shift module option
Allow for easy turning of a pools reserved free space. Previous
versions of ZFS (v0.6.4 and earlier) held 1/64 of the pools capacity
in reserve. Commits 3d45fdd and 0c60cc3 increased this to 1/32.
Setting spa_slop_shift=6 will restore the previous default setting.
Signed-off-by: Brian Behlendorf <[email protected]>
Closes #3724
-rw-r--r-- | man/man5/zfs-module-parameters.5 | 16 | ||||
-rw-r--r-- | module/zfs/spa_misc.c | 3 |
2 files changed, 19 insertions, 0 deletions
diff --git a/man/man5/zfs-module-parameters.5 b/man/man5/zfs-module-parameters.5 index de3f35bbb..35ea9d9f6 100644 --- a/man/man5/zfs-module-parameters.5 +++ b/man/man5/zfs-module-parameters.5 @@ -304,6 +304,22 @@ Default value: 10000 .sp .ne 2 .na +\fBspa_slop_shift\fR (int) +.ad +.RS 12n +Normally, we don't allow the last 3.2% (1/(2^spa_slop_shift)) of space +in the pool to be consumed. This ensures that we don't run the pool +completely out of space, due to unaccounted changes (e.g. to the MOS). +It also limits the worst-case time to allocate space. If we have +less than this amount of free space, most ZPL operations (e.g. write, +create) will return ENOSPC. +.sp +Default value: 5 +.RE + +.sp +.ne 2 +.na \fBzfetch_array_rd_sz\fR (ulong) .ad .RS 12n diff --git a/module/zfs/spa_misc.c b/module/zfs/spa_misc.c index ad9f9fe28..409dce121 100644 --- a/module/zfs/spa_misc.c +++ b/module/zfs/spa_misc.c @@ -2094,4 +2094,7 @@ MODULE_PARM_DESC(zfs_deadman_enabled, "Enable deadman timer"); module_param(spa_asize_inflation, int, 0644); MODULE_PARM_DESC(spa_asize_inflation, "SPA size estimate multiplication factor"); + +module_param(spa_slop_shift, int, 0644); +MODULE_PARM_DESC(spa_slop_shift, "Reserved free space in pool"); #endif |