xfs: xfs_dquot prealloc throttling watermarks and low free space
authorBrian Foster <bfoster@redhat.com>
Mon, 18 Mar 2013 14:51:46 +0000 (10:51 -0400)
committerBen Myers <bpm@sgi.com>
Fri, 22 Mar 2013 21:06:30 +0000 (16:06 -0500)
commitb136645116e5471cf0b037a1759dc83620236631
tree9b9bfaa822d88585f4fa670a10b8f54a09584372
parent4b6eae2e6ac8a6671839ccaea1c2e3dd5684f5df
xfs: xfs_dquot prealloc throttling watermarks and low free space

Enable tracking of high and low watermarks for preallocation
throttling of files under quota restrictions. These values are
calculated when the quota limit is read from disk or modified and
cached for later use by the throttling algorithm.

The high watermark specifies when preallocation is disabled, the
low watermark specifies when throttling is enabled and the low free
space data structure contains precalculated low free space limits
to serve as input to determine the level of throttling required.

Note that the low free space data structure is based on the
existing global low free space data structure with the exception of
using three stages (5%, 3% and 1%) rather than five to reduce the
impact of xfs_dquot memory overhead.

Signed-off-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Mark Tinguely <tinguely@sgi.com>
Signed-off-by: Ben Myers <bpm@sgi.com>
fs/xfs/xfs_dquot.c
fs/xfs/xfs_dquot.h
fs/xfs/xfs_qm.h
fs/xfs/xfs_qm_syscalls.c