1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* 3 * Copyright (C) 2013 Fusion IO. All rights reserved. 4 */ 5 6 #ifndef BTRFS_TESTS_H 7 #define BTRFS_TESTS_H 8 9 #ifdef CONFIG_BTRFS_FS_RUN_SANITY_TESTS 10 int btrfs_run_sanity_tests(void); 11 12 #define test_msg(fmt, ...) pr_info("BTRFS: selftest: " fmt, ##__VA_ARGS__) 13 14 struct btrfs_root; 15 struct btrfs_trans_handle; 16 17 int btrfs_test_extent_buffer_operations(u32 sectorsize, u32 nodesize); 18 int btrfs_test_free_space_cache(u32 sectorsize, u32 nodesize); 19 int btrfs_test_extent_io(u32 sectorsize, u32 nodesize); 20 int btrfs_test_inodes(u32 sectorsize, u32 nodesize); 21 int btrfs_test_qgroups(u32 sectorsize, u32 nodesize); 22 int btrfs_test_free_space_tree(u32 sectorsize, u32 nodesize); 23 int btrfs_test_extent_map(void); 24 struct inode *btrfs_new_test_inode(void); 25 struct btrfs_fs_info *btrfs_alloc_dummy_fs_info(u32 nodesize, u32 sectorsize); 26 void btrfs_free_dummy_fs_info(struct btrfs_fs_info *fs_info); 27 void btrfs_free_dummy_root(struct btrfs_root *root); 28 struct btrfs_block_group_cache * 29 btrfs_alloc_dummy_block_group(struct btrfs_fs_info *fs_info, unsigned long length); 30 void btrfs_free_dummy_block_group(struct btrfs_block_group_cache *cache); 31 void btrfs_init_dummy_trans(struct btrfs_trans_handle *trans); 32 #else 33 static inline int btrfs_run_sanity_tests(void) 34 { 35 return 0; 36 } 37 #endif 38 39 #endif 40