mirror of
				https://kernel.googlesource.com/pub/scm/linux/kernel/git/stable/linux-stable.git
				synced 2025-11-04 07:44:51 +10:00 
			
		
		
		
	btrfs: move struct btrfs_tree_parent_check out of disk-io.h
Move struct btrfs_tree_parent_check out of disk-io.h so that volumes.h an various .c files don't have to include disk-io.h just for it. Reviewed-by: Josef Bacik <josef@toxicpanda.com> Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Reviewed-by: Qu Wenruo <wqu@suse.com> Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: David Sterba <dsterba@suse.com> [ use tree-checker.h for the structure ] Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
		
							parent
							
								
									7a31507230
								
							
						
					
					
						commit
						27137fac4c
					
				@ -19,6 +19,7 @@
 | 
			
		||||
#include "accessors.h"
 | 
			
		||||
#include "extent-tree.h"
 | 
			
		||||
#include "relocation.h"
 | 
			
		||||
#include "tree-checker.h"
 | 
			
		||||
 | 
			
		||||
/* Just arbitrary numbers so we can be sure one of these happened. */
 | 
			
		||||
#define BACKREF_FOUND_SHARED     6
 | 
			
		||||
 | 
			
		||||
@ -25,37 +25,9 @@ static inline u64 btrfs_sb_offset(int mirror)
 | 
			
		||||
	return BTRFS_SUPER_INFO_OFFSET;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* All the extra info needed to verify the parentness of a tree block. */
 | 
			
		||||
struct btrfs_tree_parent_check {
 | 
			
		||||
	/*
 | 
			
		||||
	 * The owner check against the tree block.
 | 
			
		||||
	 *
 | 
			
		||||
	 * Can be 0 to skip the owner check.
 | 
			
		||||
	 */
 | 
			
		||||
	u64 owner_root;
 | 
			
		||||
 | 
			
		||||
	/*
 | 
			
		||||
	 * Expected transid, can be 0 to skip the check, but such skip
 | 
			
		||||
	 * should only be utlized for backref walk related code.
 | 
			
		||||
	 */
 | 
			
		||||
	u64 transid;
 | 
			
		||||
 | 
			
		||||
	/*
 | 
			
		||||
	 * The expected first key.
 | 
			
		||||
	 *
 | 
			
		||||
	 * This check can be skipped if @has_first_key is false, such skip
 | 
			
		||||
	 * can happen for case where we don't have the parent node key,
 | 
			
		||||
	 * e.g. reading the tree root, doing backref walk.
 | 
			
		||||
	 */
 | 
			
		||||
	struct btrfs_key first_key;
 | 
			
		||||
	bool has_first_key;
 | 
			
		||||
 | 
			
		||||
	/* The expected level. Should always be set. */
 | 
			
		||||
	u8 level;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
struct btrfs_device;
 | 
			
		||||
struct btrfs_fs_devices;
 | 
			
		||||
struct btrfs_tree_parent_check;
 | 
			
		||||
 | 
			
		||||
void btrfs_check_leaked_roots(struct btrfs_fs_info *fs_info);
 | 
			
		||||
void btrfs_init_fs_info(struct btrfs_fs_info *fs_info);
 | 
			
		||||
 | 
			
		||||
@ -8,6 +8,7 @@
 | 
			
		||||
#include "disk-io.h"
 | 
			
		||||
#include "print-tree.h"
 | 
			
		||||
#include "accessors.h"
 | 
			
		||||
#include "tree-checker.h"
 | 
			
		||||
 | 
			
		||||
struct root_name_map {
 | 
			
		||||
	u64 id;
 | 
			
		||||
 | 
			
		||||
@ -28,6 +28,7 @@
 | 
			
		||||
#include "accessors.h"
 | 
			
		||||
#include "extent-tree.h"
 | 
			
		||||
#include "root-tree.h"
 | 
			
		||||
#include "tree-checker.h"
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Helpers to access qgroup reservation
 | 
			
		||||
 | 
			
		||||
@ -6,8 +6,39 @@
 | 
			
		||||
#ifndef BTRFS_TREE_CHECKER_H
 | 
			
		||||
#define BTRFS_TREE_CHECKER_H
 | 
			
		||||
 | 
			
		||||
#include "ctree.h"
 | 
			
		||||
#include "extent_io.h"
 | 
			
		||||
#include <uapi/linux/btrfs_tree.h>
 | 
			
		||||
 | 
			
		||||
struct extent_buffer;
 | 
			
		||||
struct btrfs_chunk;
 | 
			
		||||
 | 
			
		||||
/* All the extra info needed to verify the parentness of a tree block. */
 | 
			
		||||
struct btrfs_tree_parent_check {
 | 
			
		||||
	/*
 | 
			
		||||
	 * The owner check against the tree block.
 | 
			
		||||
	 *
 | 
			
		||||
	 * Can be 0 to skip the owner check.
 | 
			
		||||
	 */
 | 
			
		||||
	u64 owner_root;
 | 
			
		||||
 | 
			
		||||
	/*
 | 
			
		||||
	 * Expected transid, can be 0 to skip the check, but such skip
 | 
			
		||||
	 * should only be utlized for backref walk related code.
 | 
			
		||||
	 */
 | 
			
		||||
	u64 transid;
 | 
			
		||||
 | 
			
		||||
	/*
 | 
			
		||||
	 * The expected first key.
 | 
			
		||||
	 *
 | 
			
		||||
	 * This check can be skipped if @has_first_key is false, such skip
 | 
			
		||||
	 * can happen for case where we don't have the parent node key,
 | 
			
		||||
	 * e.g. reading the tree root, doing backref walk.
 | 
			
		||||
	 */
 | 
			
		||||
	struct btrfs_key first_key;
 | 
			
		||||
	bool has_first_key;
 | 
			
		||||
 | 
			
		||||
	/* The expected level. Should always be set. */
 | 
			
		||||
	u8 level;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Comprehensive leaf checker.
 | 
			
		||||
 | 
			
		||||
@ -5,6 +5,7 @@
 | 
			
		||||
#include "disk-io.h"
 | 
			
		||||
#include "fs.h"
 | 
			
		||||
#include "accessors.h"
 | 
			
		||||
#include "tree-checker.h"
 | 
			
		||||
 | 
			
		||||
struct tree_mod_root {
 | 
			
		||||
	u64 logical;
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,7 @@
 | 
			
		||||
#include <linux/btrfs.h>
 | 
			
		||||
#include "async-thread.h"
 | 
			
		||||
#include "messages.h"
 | 
			
		||||
#include "disk-io.h"
 | 
			
		||||
#include "tree-checker.h"
 | 
			
		||||
#include "rcu-string.h"
 | 
			
		||||
 | 
			
		||||
#define BTRFS_MAX_DATA_CHUNK_SIZE	(10ULL * SZ_1G)
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user