From e064d5e9f0a00041f84d9eabd3d53546e4f8ab74 Mon Sep 17 00:00:00 2001 From: David Sterba Date: Wed, 20 Mar 2019 14:58:13 +0100 Subject: [PATCH] btrfs: get fs_info from eb in btrfs_verify_level_key We can read fs_info from extent buffer and can drop it from the parameters. Signed-off-by: David Sterba --- fs/btrfs/ctree.c | 2 +- fs/btrfs/disk-io.c | 6 +++--- fs/btrfs/disk-io.h | 3 +-- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c index 3e26254..0998e7f 100644 --- a/fs/btrfs/ctree.c +++ b/fs/btrfs/ctree.c @@ -2420,7 +2420,7 @@ read_block_for_search(struct btrfs_root *root, struct btrfs_path *p, * being cached, read from scrub, or have multiple * parents (shared tree blocks). */ - if (btrfs_verify_level_key(fs_info, tmp, + if (btrfs_verify_level_key(tmp, parent_level - 1, &first_key, gen)) { free_extent_buffer(tmp); return -EUCLEAN; diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c index f7bfa73..b4c0709 100644 --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c @@ -394,10 +394,10 @@ static int btrfs_check_super_csum(struct btrfs_fs_info *fs_info, return ret; } -int btrfs_verify_level_key(struct btrfs_fs_info *fs_info, - struct extent_buffer *eb, int level, +int btrfs_verify_level_key(struct extent_buffer *eb, int level, struct btrfs_key *first_key, u64 parent_transid) { + struct btrfs_fs_info *fs_info = eb->fs_info; int found_level; struct btrfs_key found_key; int ret; @@ -471,7 +471,7 @@ static int btree_read_extent_buffer_pages(struct extent_buffer *eb, if (verify_parent_transid(io_tree, eb, parent_transid, 0)) ret = -EIO; - else if (btrfs_verify_level_key(fs_info, eb, level, + else if (btrfs_verify_level_key(eb, level, first_key, parent_transid)) ret = -EUCLEAN; else diff --git a/fs/btrfs/disk-io.h b/fs/btrfs/disk-io.h index 917634f..a32158f 100644 --- a/fs/btrfs/disk-io.h +++ b/fs/btrfs/disk-io.h @@ -39,8 +39,7 @@ static inline u64 btrfs_sb_offset(int mirror) struct btrfs_device; struct btrfs_fs_devices; -int btrfs_verify_level_key(struct btrfs_fs_info *fs_info, - struct extent_buffer *eb, int level, +int btrfs_verify_level_key(struct extent_buffer *eb, int level, struct btrfs_key *first_key, u64 parent_transid); struct extent_buffer *read_tree_block(struct btrfs_fs_info *fs_info, u64 bytenr, u64 parent_transid, int level, -- 2.7.4