summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/super.c
diff options
context:
space:
mode:
authorAlexandre Oliva <oliva@lsd.ic.unicamp.br>2011-12-07 20:08:40 -0500
committerChris Mason <chris.mason@oracle.com>2011-12-08 08:55:40 -0500
commit274bd4fb3ed6b72c1d77ef8850511f09fc6b8e4d (patch)
treec9a637653e547f24ed488d0d5956b314b4257597 /fs/btrfs/super.c
parent062c05c46bd4358aad7a0e0cb5ffeb98ab935286 (diff)
downloadlinux-274bd4fb3ed6b72c1d77ef8850511f09fc6b8e4d.tar.bz2
Btrfs: try cluster but don't advance in search list
When we find an existing cluster, we switch to its block group as the current block group, possibly skipping multiple blocks in the process. Furthermore, under heavy contention, multiple threads may fail to allocate from a cluster and then release just-created clusters just to proceed to create new ones in a different block group. This patch tries to allocate from an existing cluster regardless of its block group, and doesn't switch to that group, instead proceeding to try to allocate a cluster from the group it was iterating before the attempt. Signed-off-by: Alexandre Oliva <oliva@lsd.ic.unicamp.br> Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/super.c')
0 files changed, 0 insertions, 0 deletions