1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | /* |
3 | * Copyright (C) 2014 Facebook. All rights reserved. |
4 | */ |
5 | |
6 | #ifndef BTRFS_REF_VERIFY_H |
7 | #define BTRFS_REF_VERIFY_H |
8 | |
9 | #ifdef CONFIG_BTRFS_FS_REF_VERIFY |
10 | int btrfs_build_ref_tree(struct btrfs_fs_info *fs_info); |
11 | void btrfs_free_ref_cache(struct btrfs_fs_info *fs_info); |
12 | int btrfs_ref_tree_mod(struct btrfs_fs_info *fs_info, |
13 | struct btrfs_ref *generic_ref); |
14 | void btrfs_free_ref_tree_range(struct btrfs_fs_info *fs_info, u64 start, |
15 | u64 len); |
16 | |
17 | static inline void btrfs_init_ref_verify(struct btrfs_fs_info *fs_info) |
18 | { |
19 | spin_lock_init(&fs_info->ref_verify_lock); |
20 | fs_info->block_tree = RB_ROOT; |
21 | } |
22 | #else |
23 | static inline int btrfs_build_ref_tree(struct btrfs_fs_info *fs_info) |
24 | { |
25 | return 0; |
26 | } |
27 | |
28 | static inline void btrfs_free_ref_cache(struct btrfs_fs_info *fs_info) |
29 | { |
30 | } |
31 | |
32 | static inline int btrfs_ref_tree_mod(struct btrfs_fs_info *fs_info, |
33 | struct btrfs_ref *generic_ref) |
34 | { |
35 | return 0; |
36 | } |
37 | |
38 | static inline void btrfs_free_ref_tree_range(struct btrfs_fs_info *fs_info, |
39 | u64 start, u64 len) |
40 | { |
41 | } |
42 | |
43 | static inline void btrfs_init_ref_verify(struct btrfs_fs_info *fs_info) |
44 | { |
45 | } |
46 | |
47 | #endif /* CONFIG_BTRFS_FS_REF_VERIFY */ |
48 | |
49 | #endif |
50 | |