summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/free-space-cache.h
diff options
context:
space:
mode:
authorJosef Bacik <jbacik@fusionio.com>2013-03-15 14:47:08 +0100
committerJosef Bacik <jbacik@fusionio.com>2013-05-06 21:52:54 +0200
commit74255aa07d292385ca3a4a4e8f0bc492d9bdd116 (patch)
tree02ee09448bbb988baf59bed8615a9f0dcc608a5a /fs/btrfs/free-space-cache.h
parentBtrfs: cleanup unused function (diff)
downloadlinux-74255aa07d292385ca3a4a4e8f0bc492d9bdd116.tar.xz
linux-74255aa07d292385ca3a4a4e8f0bc492d9bdd116.zip
Btrfs: add some free space cache tests
We keep hitting bugs in the tree log replay because btrfs_remove_free_space doesn't account for some corner case. So add a bunch of tests to try and fully test btrfs_remove_free_space since the only time it is called is during tree log replay. These tests all finish successfully, so as we find more of these bugs we need to add to these tests to make sure we don't regress in fixing things. I've hidden the tests behind a Kconfig option, but they take no time to run so all btrfs developers should have this turned on all the time. Thanks, Signed-off-by: Josef Bacik <jbacik@fusionio.com>
Diffstat (limited to 'fs/btrfs/free-space-cache.h')
-rw-r--r--fs/btrfs/free-space-cache.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/btrfs/free-space-cache.h b/fs/btrfs/free-space-cache.h
index 8f2613f779ed..4dc17d8809c7 100644
--- a/fs/btrfs/free-space-cache.h
+++ b/fs/btrfs/free-space-cache.h
@@ -110,4 +110,9 @@ int btrfs_return_cluster_to_free_space(
struct btrfs_free_cluster *cluster);
int btrfs_trim_block_group(struct btrfs_block_group_cache *block_group,
u64 *trimmed, u64 start, u64 end, u64 minlen);
+
+#ifdef CONFIG_BTRFS_FS_RUN_SANITY_TESTS
+void btrfs_test_free_space_cache(void);
+#endif
+
#endif