diff options
author | Chris Mason <chris.mason@oracle.com> | 2009-06-09 20:28:34 -0400 |
---|---|---|
committer | Chris Mason <chris.mason@oracle.com> | 2009-06-10 11:29:52 -0400 |
commit | 451d7585a8bb1b9bec0d676ce3dece1923164e55 (patch) | |
tree | b4e9103b7010e45e02deff9ae4470df71475f8de /fs/btrfs/free-space-cache.h | |
parent | c604480171c510c1beeb81b82418e5bc4de8f1ae (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/free-space-cache.h')
-rw-r--r-- | fs/btrfs/free-space-cache.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/btrfs/free-space-cache.h b/fs/btrfs/free-space-cache.h index ab0bdc0a63ce..266fb8764054 100644 --- a/fs/btrfs/free-space-cache.h +++ b/fs/btrfs/free-space-cache.h | |||
@@ -31,6 +31,7 @@ void btrfs_dump_free_space(struct btrfs_block_group_cache *block_group, | |||
31 | u64 bytes); | 31 | u64 bytes); |
32 | u64 btrfs_block_group_free_space(struct btrfs_block_group_cache *block_group); | 32 | u64 btrfs_block_group_free_space(struct btrfs_block_group_cache *block_group); |
33 | int btrfs_find_space_cluster(struct btrfs_trans_handle *trans, | 33 | int btrfs_find_space_cluster(struct btrfs_trans_handle *trans, |
34 | struct btrfs_root *root, | ||
34 | struct btrfs_block_group_cache *block_group, | 35 | struct btrfs_block_group_cache *block_group, |
35 | struct btrfs_free_cluster *cluster, | 36 | struct btrfs_free_cluster *cluster, |
36 | u64 offset, u64 bytes, u64 empty_size); | 37 | u64 offset, u64 bytes, u64 empty_size); |