[PATCH v4 0/6] speculative preallocation quota throttling
Mark Tinguely
tinguely at sgi.com
Fri Feb 22 14:09:04 CST 2013
On 02/20/13 09:10, Brian Foster wrote:
> Hi all,
>
> Here is v4 of the speculative preallocation quota throttling set. Patch 3 of v3
> is dropped due to a redundancy and a few changes are made to the threshold
> management code (patch 4/6). The remaining patches are unchanged from v3.
>
> Brian
>
> v4:
> - Drop patch 3/7 from v3 (xfs: cap prealloc size to free space before shift).
> - Several updates to patch 4/6:
> - Rename xfs_dquot_init_prealloc() to xfs_dquot_set_prealloc_limits().
> - Unroll the prealloc threshold loop and remove the increment def.
> - Fix up some comments.
> v3:
> - Rebased on top of updated speculative preallocation algorithm.
> v2:
> - Fix up xfs_iomap_prealloc_size() rounding (patch 2).
> - Add pre-calculated fields to xfs_dquot to support throttling.
> - Move to logarithmic (shift) throttler and finer tuned trigger/throttle logic.
>
> Brian Foster (6):
> xfs: reorganize xfs_iomap_prealloc_size to remove indentation
> xfs: push rounddown_pow_of_two() to after prealloc throttle
> xfs: pass xfs_dquot to xfs_qm_adjust_dqlimits() instead of
> xfs_disk_dquot_t
> xfs: xfs_dquot prealloc throttling watermarks and low free space
> xfs: add quota-driven speculative preallocation throttling
> xfs: xfs_iomap_prealloc_size() tracepoint
>
> fs/xfs/xfs_dquot.c | 44 ++++++++++++-
> fs/xfs/xfs_dquot.h | 14 ++++-
> fs/xfs/xfs_iomap.c | 161 +++++++++++++++++++++++++++++++++++++---------
> fs/xfs/xfs_qm.c | 2 +-
> fs/xfs/xfs_qm_syscalls.c | 1 +
> fs/xfs/xfs_trace.h | 24 +++++++
> fs/xfs/xfs_trans_dquot.c | 2 +-
> 7 files changed, 212 insertions(+), 36 deletions(-)
>
The rest of the series looks good to me. Consider it Review-by: me.
The tracing in patch 6 says how much, but not why, BUT I think the why
would require multiple tracepoints, so I okay with it.
-- since I am being a grouch ... ---
I wish I had caught in the review for commit a1e16c26 that
xfs_iomap_eof_prealloc_initial_size() is returning an int rather than
xfs_fsblock_t for consistency.
--Mark.
More information about the xfs
mailing list