Merge tag 'drm-misc-next-fixes-2019-03-13' of git://anongit.freedesktop.org/drm/drm...
[linux-2.6-block.git] / fs / btrfs / ref-verify.h
CommitLineData
9888c340 1/* SPDX-License-Identifier: GPL-2.0 */
fd708b81
JB
2/*
3 * Copyright (C) 2014 Facebook. All rights reserved.
fd708b81 4 */
9888c340
DS
5
6#ifndef BTRFS_REF_VERIFY_H
7#define BTRFS_REF_VERIFY_H
fd708b81
JB
8
9#ifdef CONFIG_BTRFS_FS_REF_VERIFY
10int btrfs_build_ref_tree(struct btrfs_fs_info *fs_info);
11void btrfs_free_ref_cache(struct btrfs_fs_info *fs_info);
12int btrfs_ref_tree_mod(struct btrfs_root *root, u64 bytenr, u64 num_bytes,
13 u64 parent, u64 ref_root, u64 owner, u64 offset,
14 int action);
15void btrfs_free_ref_tree_range(struct btrfs_fs_info *fs_info, u64 start,
16 u64 len);
17
18static inline void btrfs_init_ref_verify(struct btrfs_fs_info *fs_info)
19{
20 spin_lock_init(&fs_info->ref_verify_lock);
21 fs_info->block_tree = RB_ROOT;
22}
23#else
24static inline int btrfs_build_ref_tree(struct btrfs_fs_info *fs_info)
25{
26 return 0;
27}
28
29static inline void btrfs_free_ref_cache(struct btrfs_fs_info *fs_info)
30{
31}
32
33static inline int btrfs_ref_tree_mod(struct btrfs_root *root, u64 bytenr,
34 u64 num_bytes, u64 parent, u64 ref_root,
35 u64 owner, u64 offset, int action)
36{
37 return 0;
38}
39
40static inline void btrfs_free_ref_tree_range(struct btrfs_fs_info *fs_info,
41 u64 start, u64 len)
42{
43}
44
45static inline void btrfs_init_ref_verify(struct btrfs_fs_info *fs_info)
46{
47}
48
49#endif /* CONFIG_BTRFS_FS_REF_VERIFY */
9888c340
DS
50
51#endif