xfs
[Top] [All Lists]

[PATCH v5 0/6] speculative preallocation quota throttling

To: xfs@xxxxxxxxxxx
Subject: [PATCH v5 0/6] speculative preallocation quota throttling
From: Brian Foster <bfoster@xxxxxxxxxx>
Date: Mon, 18 Mar 2013 10:51:42 -0400
Delivered-to: xfs@xxxxxxxxxxx
Hi all,

Here is v5 of speculative prealloc. quota throttling. Sorry for the delay. This
is mostly a rebase. I'm running some quick xfstests tests since we've moved onto
3.9-rc1 now, but the only real merge conflict was inheritance of the infinite
loop alloc_blocks fix. Otherwise, this just includes some extra fixups to remove
dependence on typedef's of various functions we happen to modify.

Brian

v5:
- Rebased against current tree (3.9-rc1), incl. e78c420b.
- Added Mark's reviewed-by's.
- Removed use of typedef's in modified functions (affects patches 3 and 4).
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       |   48 ++++++++++++--
 fs/xfs/xfs_dquot.h       |   16 ++++-
 fs/xfs/xfs_iomap.c       |  161 +++++++++++++++++++++++++++++++++++++---------
 fs/xfs/xfs_qm.c          |    2 +-
 fs/xfs/xfs_qm.h          |    2 +-
 fs/xfs/xfs_qm_syscalls.c |    9 ++-
 fs/xfs/xfs_trace.h       |   24 +++++++
 fs/xfs/xfs_trans_dquot.c |   10 ++--
 8 files changed, 224 insertions(+), 48 deletions(-)

-- 
1.7.7.6

<Prev in Thread] Current Thread [Next in Thread>