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