aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/extent-tree.c
diff options
context:
space:
mode:
authorChris Mason <chris.mason@oracle.com>2009-06-09 20:28:34 -0400
committerChris Mason <chris.mason@oracle.com>2009-06-10 11:29:52 -0400
commit451d7585a8bb1b9bec0d676ce3dece1923164e55 (patch)
treeb4e9103b7010e45e02deff9ae4470df71475f8de /fs/btrfs/extent-tree.c
parentc604480171c510c1beeb81b82418e5bc4de8f1ae (diff)
Btrfs: add mount -o ssd_spread to spread allocations out
Some SSDs perform best when reusing block numbers often, while others perform much better when clustering strictly allocates big chunks of unused space. The default mount -o ssd will find rough groupings of blocks where there are a bunch of free blocks that might have some allocated blocks mixed in. mount -o ssd_spread will make sure there are no allocated blocks mixed in. It should perform better on lower end SSDs. Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/extent-tree.c')
-rw-r--r--fs/btrfs/extent-tree.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index a42419c276e2..3355d7ea8308 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -3607,7 +3607,7 @@ refill_cluster:
3607 last_ptr_loop = 0; 3607 last_ptr_loop = 0;
3608 3608
3609 /* allocate a cluster in this block group */ 3609 /* allocate a cluster in this block group */
3610 ret = btrfs_find_space_cluster(trans, 3610 ret = btrfs_find_space_cluster(trans, root,
3611 block_group, last_ptr, 3611 block_group, last_ptr,
3612 offset, num_bytes, 3612 offset, num_bytes,
3613 empty_cluster + empty_size); 3613 empty_cluster + empty_size);