mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-01 00:58:39 +02:00 
			
		
		
		
	btrfs: add forward declarations and headers, part 2
Do a cleanup in more headers: - add forward declarations for types referenced by pointers - add includes when types need them This fixes potential compilation problems if the headers are reordered or the missing includes are not provided indirectly. Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
		
							parent
							
								
									22b46bdc5f
								
							
						
					
					
						commit
						602035d7fe
					
				
					 26 changed files with 206 additions and 19 deletions
				
			
		|  | @ -7,12 +7,14 @@ | ||||||
| #ifndef BTRFS_BIO_H | #ifndef BTRFS_BIO_H | ||||||
| #define BTRFS_BIO_H | #define BTRFS_BIO_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/types.h> | ||||||
| #include <linux/bio.h> | #include <linux/bio.h> | ||||||
| #include <linux/workqueue.h> | #include <linux/workqueue.h> | ||||||
| #include "tree-checker.h" | #include "tree-checker.h" | ||||||
| 
 | 
 | ||||||
| struct btrfs_bio; | struct btrfs_bio; | ||||||
| struct btrfs_fs_info; | struct btrfs_fs_info; | ||||||
|  | struct btrfs_inode; | ||||||
| 
 | 
 | ||||||
| #define BTRFS_BIO_INLINE_CSUM_SIZE	64 | #define BTRFS_BIO_INLINE_CSUM_SIZE	64 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -3,8 +3,15 @@ | ||||||
| #ifndef BTRFS_BLOCK_RSV_H | #ifndef BTRFS_BLOCK_RSV_H | ||||||
| #define BTRFS_BLOCK_RSV_H | #define BTRFS_BLOCK_RSV_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/types.h> | ||||||
|  | #include <linux/compiler.h> | ||||||
|  | #include <linux/spinlock.h> | ||||||
|  | 
 | ||||||
| struct btrfs_trans_handle; | struct btrfs_trans_handle; | ||||||
| struct btrfs_root; | struct btrfs_root; | ||||||
|  | struct btrfs_space_info; | ||||||
|  | struct btrfs_block_rsv; | ||||||
|  | struct btrfs_fs_info; | ||||||
| enum btrfs_reserve_flush_enum; | enum btrfs_reserve_flush_enum; | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  |  | ||||||
|  | @ -7,10 +7,18 @@ | ||||||
| #define BTRFS_COMPRESSION_H | #define BTRFS_COMPRESSION_H | ||||||
| 
 | 
 | ||||||
| #include <linux/sizes.h> | #include <linux/sizes.h> | ||||||
|  | #include <linux/mm.h> | ||||||
|  | #include <linux/list.h> | ||||||
|  | #include <linux/workqueue.h> | ||||||
|  | #include <linux/wait.h> | ||||||
| #include "bio.h" | #include "bio.h" | ||||||
| 
 | 
 | ||||||
|  | struct address_space; | ||||||
|  | struct page; | ||||||
|  | struct inode; | ||||||
| struct btrfs_inode; | struct btrfs_inode; | ||||||
| struct btrfs_ordered_extent; | struct btrfs_ordered_extent; | ||||||
|  | struct btrfs_bio; | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * We want to make sure that amount of RAM required to uncompress an extent is |  * We want to make sure that amount of RAM required to uncompress an extent is | ||||||
|  | @ -32,8 +40,6 @@ static_assert((BTRFS_MAX_COMPRESSED % PAGE_SIZE) == 0); | ||||||
| 
 | 
 | ||||||
| #define	BTRFS_ZLIB_DEFAULT_LEVEL		3 | #define	BTRFS_ZLIB_DEFAULT_LEVEL		3 | ||||||
| 
 | 
 | ||||||
| struct page; |  | ||||||
| 
 |  | ||||||
| struct compressed_bio { | struct compressed_bio { | ||||||
| 	/* Number of compressed pages in the array */ | 	/* Number of compressed pages in the array */ | ||||||
| 	unsigned int nr_pages; | 	unsigned int nr_pages; | ||||||
|  |  | ||||||
|  | @ -7,15 +7,23 @@ | ||||||
| #ifndef BTRFS_DELAYED_INODE_H | #ifndef BTRFS_DELAYED_INODE_H | ||||||
| #define BTRFS_DELAYED_INODE_H | #define BTRFS_DELAYED_INODE_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/types.h> | ||||||
| #include <linux/rbtree.h> | #include <linux/rbtree.h> | ||||||
| #include <linux/spinlock.h> | #include <linux/spinlock.h> | ||||||
| #include <linux/mutex.h> | #include <linux/mutex.h> | ||||||
| #include <linux/list.h> | #include <linux/list.h> | ||||||
| #include <linux/wait.h> | #include <linux/wait.h> | ||||||
|  | #include <linux/fs.h> | ||||||
| #include <linux/atomic.h> | #include <linux/atomic.h> | ||||||
| #include <linux/refcount.h> | #include <linux/refcount.h> | ||||||
| #include "ctree.h" | #include "ctree.h" | ||||||
| 
 | 
 | ||||||
|  | struct btrfs_disk_key; | ||||||
|  | struct btrfs_fs_info; | ||||||
|  | struct btrfs_inode; | ||||||
|  | struct btrfs_root; | ||||||
|  | struct btrfs_trans_handle; | ||||||
|  | 
 | ||||||
| enum btrfs_delayed_item_type { | enum btrfs_delayed_item_type { | ||||||
| 	BTRFS_DELAYED_INSERTION_ITEM, | 	BTRFS_DELAYED_INSERTION_ITEM, | ||||||
| 	BTRFS_DELAYED_DELETION_ITEM | 	BTRFS_DELAYED_DELETION_ITEM | ||||||
|  |  | ||||||
|  | @ -7,9 +7,21 @@ | ||||||
| #define BTRFS_DISK_IO_H | #define BTRFS_DISK_IO_H | ||||||
| 
 | 
 | ||||||
| #include <linux/sizes.h> | #include <linux/sizes.h> | ||||||
|  | #include <linux/compiler_types.h> | ||||||
| #include "ctree.h" | #include "ctree.h" | ||||||
| #include "fs.h" | #include "fs.h" | ||||||
| 
 | 
 | ||||||
|  | struct block_device; | ||||||
|  | struct super_block; | ||||||
|  | struct extent_buffer; | ||||||
|  | struct btrfs_device; | ||||||
|  | struct btrfs_fs_devices; | ||||||
|  | struct btrfs_fs_info; | ||||||
|  | struct btrfs_super_block; | ||||||
|  | struct btrfs_trans_handle; | ||||||
|  | struct btrfs_tree_parent_check; | ||||||
|  | struct btrfs_transaction; | ||||||
|  | 
 | ||||||
| #define BTRFS_SUPER_MIRROR_MAX	 3 | #define BTRFS_SUPER_MIRROR_MAX	 3 | ||||||
| #define BTRFS_SUPER_MIRROR_SHIFT 12 | #define BTRFS_SUPER_MIRROR_SHIFT 12 | ||||||
| 
 | 
 | ||||||
|  | @ -29,10 +41,6 @@ static inline u64 btrfs_sb_offset(int mirror) | ||||||
| 	return BTRFS_SUPER_INFO_OFFSET; | 	return BTRFS_SUPER_INFO_OFFSET; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 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_check_leaked_roots(struct btrfs_fs_info *fs_info); | ||||||
| void btrfs_init_fs_info(struct btrfs_fs_info *fs_info); | void btrfs_init_fs_info(struct btrfs_fs_info *fs_info); | ||||||
| struct extent_buffer *read_tree_block(struct btrfs_fs_info *fs_info, u64 bytenr, | struct extent_buffer *read_tree_block(struct btrfs_fs_info *fs_info, u64 bytenr, | ||||||
|  |  | ||||||
|  | @ -3,9 +3,16 @@ | ||||||
| #ifndef BTRFS_EXTENT_IO_TREE_H | #ifndef BTRFS_EXTENT_IO_TREE_H | ||||||
| #define BTRFS_EXTENT_IO_TREE_H | #define BTRFS_EXTENT_IO_TREE_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/rbtree.h> | ||||||
|  | #include <linux/spinlock.h> | ||||||
|  | #include <linux/refcount.h> | ||||||
|  | #include <linux/list.h> | ||||||
|  | #include <linux/wait.h> | ||||||
| #include "misc.h" | #include "misc.h" | ||||||
| 
 | 
 | ||||||
| struct extent_changeset; | struct extent_changeset; | ||||||
|  | struct btrfs_fs_info; | ||||||
|  | struct btrfs_inode; | ||||||
| 
 | 
 | ||||||
| /* Bits for the extent state */ | /* Bits for the extent state */ | ||||||
| enum { | enum { | ||||||
|  |  | ||||||
|  | @ -3,11 +3,20 @@ | ||||||
| #ifndef BTRFS_EXTENT_TREE_H | #ifndef BTRFS_EXTENT_TREE_H | ||||||
| #define BTRFS_EXTENT_TREE_H | #define BTRFS_EXTENT_TREE_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/types.h> | ||||||
| #include "misc.h" | #include "misc.h" | ||||||
| #include "block-group.h" | #include "block-group.h" | ||||||
|  | #include "locking.h" | ||||||
| 
 | 
 | ||||||
|  | struct extent_buffer; | ||||||
| struct btrfs_free_cluster; | struct btrfs_free_cluster; | ||||||
|  | struct btrfs_fs_info; | ||||||
|  | struct btrfs_root; | ||||||
|  | struct btrfs_path; | ||||||
|  | struct btrfs_disk_key; | ||||||
| struct btrfs_delayed_ref_head; | struct btrfs_delayed_ref_head; | ||||||
|  | struct btrfs_delayed_ref_root; | ||||||
|  | struct btrfs_extent_inline_ref; | ||||||
| 
 | 
 | ||||||
| enum btrfs_extent_allocation_policy { | enum btrfs_extent_allocation_policy { | ||||||
| 	BTRFS_EXTENT_ALLOC_CLUSTERED, | 	BTRFS_EXTENT_ALLOC_CLUSTERED, | ||||||
|  |  | ||||||
|  | @ -7,12 +7,32 @@ | ||||||
| #include <linux/refcount.h> | #include <linux/refcount.h> | ||||||
| #include <linux/fiemap.h> | #include <linux/fiemap.h> | ||||||
| #include <linux/btrfs_tree.h> | #include <linux/btrfs_tree.h> | ||||||
|  | #include <linux/spinlock.h> | ||||||
|  | #include <linux/atomic.h> | ||||||
|  | #include <linux/rwsem.h> | ||||||
|  | #include <linux/list.h> | ||||||
|  | #include <linux/slab.h> | ||||||
| #include "compression.h" | #include "compression.h" | ||||||
| #include "messages.h" | #include "messages.h" | ||||||
| #include "ulist.h" | #include "ulist.h" | ||||||
| #include "misc.h" | #include "misc.h" | ||||||
| 
 | 
 | ||||||
|  | struct page; | ||||||
|  | struct file; | ||||||
|  | struct folio; | ||||||
|  | struct inode; | ||||||
|  | struct fiemap_extent_info; | ||||||
|  | struct readahead_control; | ||||||
|  | struct address_space; | ||||||
|  | struct writeback_control; | ||||||
|  | struct extent_io_tree; | ||||||
|  | struct extent_map_tree; | ||||||
|  | struct btrfs_block_group; | ||||||
|  | struct btrfs_fs_info; | ||||||
|  | struct btrfs_inode; | ||||||
|  | struct btrfs_root; | ||||||
| struct btrfs_trans_handle; | struct btrfs_trans_handle; | ||||||
|  | struct btrfs_tree_parent_check; | ||||||
| 
 | 
 | ||||||
| enum { | enum { | ||||||
| 	EXTENT_BUFFER_UPTODATE, | 	EXTENT_BUFFER_UPTODATE, | ||||||
|  | @ -64,11 +84,6 @@ enum { | ||||||
| #define BITMAP_LAST_BYTE_MASK(nbits) \ | #define BITMAP_LAST_BYTE_MASK(nbits) \ | ||||||
| 	(BYTE_MASK >> (-(nbits) & (BITS_PER_BYTE - 1))) | 	(BYTE_MASK >> (-(nbits) & (BITS_PER_BYTE - 1))) | ||||||
| 
 | 
 | ||||||
| struct btrfs_root; |  | ||||||
| struct btrfs_inode; |  | ||||||
| struct btrfs_fs_info; |  | ||||||
| struct extent_io_tree; |  | ||||||
| struct btrfs_tree_parent_check; |  | ||||||
| 
 | 
 | ||||||
| int __init extent_buffer_init_cachep(void); | int __init extent_buffer_init_cachep(void); | ||||||
| void __cold extent_buffer_free_cachep(void); | void __cold extent_buffer_free_cachep(void); | ||||||
|  |  | ||||||
|  | @ -3,11 +3,18 @@ | ||||||
| #ifndef BTRFS_EXTENT_MAP_H | #ifndef BTRFS_EXTENT_MAP_H | ||||||
| #define BTRFS_EXTENT_MAP_H | #define BTRFS_EXTENT_MAP_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/compiler_types.h> | ||||||
|  | #include <linux/rwlock_types.h> | ||||||
| #include <linux/rbtree.h> | #include <linux/rbtree.h> | ||||||
|  | #include <linux/list.h> | ||||||
| #include <linux/refcount.h> | #include <linux/refcount.h> | ||||||
| #include "misc.h" | #include "misc.h" | ||||||
|  | #include "extent_map.h" | ||||||
| #include "compression.h" | #include "compression.h" | ||||||
| 
 | 
 | ||||||
|  | struct btrfs_inode; | ||||||
|  | struct btrfs_fs_info; | ||||||
|  | 
 | ||||||
| #define EXTENT_MAP_LAST_BYTE ((u64)-4) | #define EXTENT_MAP_LAST_BYTE ((u64)-4) | ||||||
| #define EXTENT_MAP_HOLE ((u64)-3) | #define EXTENT_MAP_HOLE ((u64)-3) | ||||||
| #define EXTENT_MAP_INLINE ((u64)-2) | #define EXTENT_MAP_INLINE ((u64)-2) | ||||||
|  |  | ||||||
|  | @ -3,9 +3,20 @@ | ||||||
| #ifndef BTRFS_FILE_ITEM_H | #ifndef BTRFS_FILE_ITEM_H | ||||||
| #define BTRFS_FILE_ITEM_H | #define BTRFS_FILE_ITEM_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/list.h> | ||||||
|  | #include <uapi/linux/btrfs_tree.h> | ||||||
| #include "accessors.h" | #include "accessors.h" | ||||||
| 
 | 
 | ||||||
| struct extent_map; | struct extent_map; | ||||||
|  | struct btrfs_file_extent_item; | ||||||
|  | struct btrfs_fs_info; | ||||||
|  | struct btrfs_path; | ||||||
|  | struct btrfs_bio; | ||||||
|  | struct btrfs_trans_handle; | ||||||
|  | struct btrfs_root; | ||||||
|  | struct btrfs_ordered_sum; | ||||||
|  | struct btrfs_path; | ||||||
|  | struct btrfs_inode; | ||||||
| 
 | 
 | ||||||
| #define BTRFS_FILE_EXTENT_INLINE_DATA_START		\ | #define BTRFS_FILE_EXTENT_INLINE_DATA_START		\ | ||||||
| 		(offsetof(struct btrfs_file_extent_item, disk_bytenr)) | 		(offsetof(struct btrfs_file_extent_item, disk_bytenr)) | ||||||
|  |  | ||||||
|  | @ -6,6 +6,19 @@ | ||||||
| #ifndef BTRFS_FREE_SPACE_CACHE_H | #ifndef BTRFS_FREE_SPACE_CACHE_H | ||||||
| #define BTRFS_FREE_SPACE_CACHE_H | #define BTRFS_FREE_SPACE_CACHE_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/rbtree.h> | ||||||
|  | #include <linux/list.h> | ||||||
|  | #include <linux/spinlock.h> | ||||||
|  | #include <linux/mutex.h> | ||||||
|  | #include "fs.h" | ||||||
|  | 
 | ||||||
|  | struct inode; | ||||||
|  | struct page; | ||||||
|  | struct btrfs_fs_info; | ||||||
|  | struct btrfs_path; | ||||||
|  | struct btrfs_trans_handle; | ||||||
|  | struct btrfs_trim_block_group; | ||||||
|  | 
 | ||||||
| /*
 | /*
 | ||||||
|  * This is the trim state of an extent or bitmap. |  * This is the trim state of an extent or bitmap. | ||||||
|  * |  * | ||||||
|  |  | ||||||
|  | @ -6,7 +6,13 @@ | ||||||
| #ifndef BTRFS_FREE_SPACE_TREE_H | #ifndef BTRFS_FREE_SPACE_TREE_H | ||||||
| #define BTRFS_FREE_SPACE_TREE_H | #define BTRFS_FREE_SPACE_TREE_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/bits.h> | ||||||
|  | 
 | ||||||
| struct btrfs_caching_control; | struct btrfs_caching_control; | ||||||
|  | struct btrfs_fs_info; | ||||||
|  | struct btrfs_path; | ||||||
|  | struct btrfs_block_group; | ||||||
|  | struct btrfs_trans_handle; | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * The default size for new free space bitmap items. The last bitmap in a block |  * The default size for new free space bitmap items. The last bitmap in a block | ||||||
|  |  | ||||||
|  | @ -6,14 +6,15 @@ | ||||||
| #include <linux/types.h> | #include <linux/types.h> | ||||||
| #include <linux/crc32c.h> | #include <linux/crc32c.h> | ||||||
| 
 | 
 | ||||||
|  | struct fscrypt_str; | ||||||
|  | struct extent_buffer; | ||||||
| struct btrfs_trans_handle; | struct btrfs_trans_handle; | ||||||
| struct btrfs_root; | struct btrfs_root; | ||||||
| struct btrfs_path; | struct btrfs_path; | ||||||
| struct btrfs_key; | struct btrfs_key; | ||||||
| struct btrfs_inode_extref; | struct btrfs_inode_extref; | ||||||
| struct btrfs_inode; | struct btrfs_inode; | ||||||
| struct extent_buffer; | struct btrfs_truncate_control; | ||||||
| struct fscrypt_str; |  | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * Return this if we need to call truncate_block for the last bit of the |  * Return this if we need to call truncate_block for the last bit of the | ||||||
|  |  | ||||||
|  | @ -8,8 +8,14 @@ | ||||||
| 
 | 
 | ||||||
| #include <linux/atomic.h> | #include <linux/atomic.h> | ||||||
| #include <linux/wait.h> | #include <linux/wait.h> | ||||||
|  | #include <linux/lockdep.h> | ||||||
| #include <linux/percpu_counter.h> | #include <linux/percpu_counter.h> | ||||||
| #include "extent_io.h" | #include "extent_io.h" | ||||||
|  | #include "locking.h" | ||||||
|  | 
 | ||||||
|  | struct extent_buffer; | ||||||
|  | struct btrfs_path; | ||||||
|  | struct btrfs_root; | ||||||
| 
 | 
 | ||||||
| #define BTRFS_WRITE_LOCK 1 | #define BTRFS_WRITE_LOCK 1 | ||||||
| #define BTRFS_READ_LOCK 2 | #define BTRFS_READ_LOCK 2 | ||||||
|  | @ -157,8 +163,6 @@ enum btrfs_lockdep_trans_states { | ||||||
| static_assert(BTRFS_NESTING_MAX <= MAX_LOCKDEP_SUBCLASSES, | static_assert(BTRFS_NESTING_MAX <= MAX_LOCKDEP_SUBCLASSES, | ||||||
| 	      "too many lock subclasses defined"); | 	      "too many lock subclasses defined"); | ||||||
| 
 | 
 | ||||||
| struct btrfs_path; |  | ||||||
| 
 |  | ||||||
| void __btrfs_tree_lock(struct extent_buffer *eb, enum btrfs_lock_nesting nest); | void __btrfs_tree_lock(struct extent_buffer *eb, enum btrfs_lock_nesting nest); | ||||||
| void btrfs_tree_lock(struct extent_buffer *eb); | void btrfs_tree_lock(struct extent_buffer *eb); | ||||||
| void btrfs_tree_unlock(struct extent_buffer *eb); | void btrfs_tree_unlock(struct extent_buffer *eb); | ||||||
|  |  | ||||||
|  | @ -3,8 +3,10 @@ | ||||||
| #ifndef BTRFS_LRU_CACHE_H | #ifndef BTRFS_LRU_CACHE_H | ||||||
| #define BTRFS_LRU_CACHE_H | #define BTRFS_LRU_CACHE_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/types.h> | ||||||
| #include <linux/maple_tree.h> | #include <linux/maple_tree.h> | ||||||
| #include <linux/list.h> | #include <linux/list.h> | ||||||
|  | #include "lru_cache.h" | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * A cache entry. This is meant to be embedded in a structure of a user of |  * A cache entry. This is meant to be embedded in a structure of a user of | ||||||
|  |  | ||||||
|  | @ -3,6 +3,8 @@ | ||||||
| #ifndef BTRFS_MISC_H | #ifndef BTRFS_MISC_H | ||||||
| #define BTRFS_MISC_H | #define BTRFS_MISC_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/types.h> | ||||||
|  | #include <linux/bitmap.h> | ||||||
| #include <linux/sched.h> | #include <linux/sched.h> | ||||||
| #include <linux/wait.h> | #include <linux/wait.h> | ||||||
| #include <linux/math64.h> | #include <linux/math64.h> | ||||||
|  |  | ||||||
|  | @ -6,8 +6,21 @@ | ||||||
| #ifndef BTRFS_ORDERED_DATA_H | #ifndef BTRFS_ORDERED_DATA_H | ||||||
| #define BTRFS_ORDERED_DATA_H | #define BTRFS_ORDERED_DATA_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/types.h> | ||||||
|  | #include <linux/list.h> | ||||||
|  | #include <linux/refcount.h> | ||||||
|  | #include <linux/completion.h> | ||||||
|  | #include <linux/rbtree.h> | ||||||
|  | #include <linux/wait.h> | ||||||
| #include "async-thread.h" | #include "async-thread.h" | ||||||
| 
 | 
 | ||||||
|  | struct inode; | ||||||
|  | struct page; | ||||||
|  | struct extent_state; | ||||||
|  | struct btrfs_inode; | ||||||
|  | struct btrfs_root; | ||||||
|  | struct btrfs_fs_info; | ||||||
|  | 
 | ||||||
| struct btrfs_ordered_sum { | struct btrfs_ordered_sum { | ||||||
| 	/*
 | 	/*
 | ||||||
| 	 * Logical start address and length for of the blocks covered by | 	 * Logical start address and length for of the blocks covered by | ||||||
|  |  | ||||||
|  | @ -7,9 +7,18 @@ | ||||||
| #ifndef BTRFS_RAID56_H | #ifndef BTRFS_RAID56_H | ||||||
| #define BTRFS_RAID56_H | #define BTRFS_RAID56_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/types.h> | ||||||
|  | #include <linux/list.h> | ||||||
|  | #include <linux/spinlock.h> | ||||||
|  | #include <linux/bio.h> | ||||||
|  | #include <linux/refcount.h> | ||||||
| #include <linux/workqueue.h> | #include <linux/workqueue.h> | ||||||
| #include "volumes.h" | #include "volumes.h" | ||||||
| 
 | 
 | ||||||
|  | struct page; | ||||||
|  | struct sector_ptr; | ||||||
|  | struct btrfs_fs_info; | ||||||
|  | 
 | ||||||
| enum btrfs_rbio_ops { | enum btrfs_rbio_ops { | ||||||
| 	BTRFS_RBIO_WRITE, | 	BTRFS_RBIO_WRITE, | ||||||
| 	BTRFS_RBIO_READ_REBUILD, | 	BTRFS_RBIO_READ_REBUILD, | ||||||
|  |  | ||||||
|  | @ -8,6 +8,11 @@ | ||||||
| #define BTRFS_SEND_H | #define BTRFS_SEND_H | ||||||
| 
 | 
 | ||||||
| #include <linux/types.h> | #include <linux/types.h> | ||||||
|  | #include <linux/sizes.h> | ||||||
|  | #include <linux/align.h> | ||||||
|  | 
 | ||||||
|  | struct inode; | ||||||
|  | struct btrfs_ioctl_send_args; | ||||||
| 
 | 
 | ||||||
| #define BTRFS_SEND_STREAM_MAGIC "btrfs-stream" | #define BTRFS_SEND_STREAM_MAGIC "btrfs-stream" | ||||||
| /* Conditional support for the upcoming protocol version. */ | /* Conditional support for the upcoming protocol version. */ | ||||||
|  | @ -25,9 +30,6 @@ | ||||||
| #define BTRFS_SEND_BUF_SIZE_V1				SZ_64K | #define BTRFS_SEND_BUF_SIZE_V1				SZ_64K | ||||||
| #define BTRFS_SEND_BUF_SIZE_V2	ALIGN(SZ_16K + BTRFS_MAX_COMPRESSED, PAGE_SIZE) | #define BTRFS_SEND_BUF_SIZE_V2	ALIGN(SZ_16K + BTRFS_MAX_COMPRESSED, PAGE_SIZE) | ||||||
| 
 | 
 | ||||||
| struct inode; |  | ||||||
| struct btrfs_ioctl_send_args; |  | ||||||
| 
 |  | ||||||
| enum btrfs_tlv_type { | enum btrfs_tlv_type { | ||||||
| 	BTRFS_TLV_U8, | 	BTRFS_TLV_U8, | ||||||
| 	BTRFS_TLV_U16, | 	BTRFS_TLV_U16, | ||||||
|  |  | ||||||
|  | @ -4,8 +4,17 @@ | ||||||
| #define BTRFS_SPACE_INFO_H | #define BTRFS_SPACE_INFO_H | ||||||
| 
 | 
 | ||||||
| #include <trace/events/btrfs.h> | #include <trace/events/btrfs.h> | ||||||
|  | #include <linux/spinlock.h> | ||||||
|  | #include <linux/list.h> | ||||||
|  | #include <linux/kobject.h> | ||||||
|  | #include <linux/lockdep.h> | ||||||
|  | #include <linux/wait.h> | ||||||
|  | #include <linux/rwsem.h> | ||||||
| #include "volumes.h" | #include "volumes.h" | ||||||
| 
 | 
 | ||||||
|  | struct btrfs_fs_info; | ||||||
|  | struct btrfs_block_group; | ||||||
|  | 
 | ||||||
| /*
 | /*
 | ||||||
|  * Different levels for to flush space when doing space reservations. |  * Different levels for to flush space when doing space reservations. | ||||||
|  * |  * | ||||||
|  |  | ||||||
|  | @ -4,6 +4,11 @@ | ||||||
| #define BTRFS_SUBPAGE_H | #define BTRFS_SUBPAGE_H | ||||||
| 
 | 
 | ||||||
| #include <linux/spinlock.h> | #include <linux/spinlock.h> | ||||||
|  | #include <linux/atomic.h> | ||||||
|  | 
 | ||||||
|  | struct address_space; | ||||||
|  | struct folio; | ||||||
|  | struct btrfs_fs_info; | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  * Extra info for subpapge bitmap. |  * Extra info for subpapge bitmap. | ||||||
|  |  | ||||||
|  | @ -6,12 +6,27 @@ | ||||||
| #ifndef BTRFS_TRANSACTION_H | #ifndef BTRFS_TRANSACTION_H | ||||||
| #define BTRFS_TRANSACTION_H | #define BTRFS_TRANSACTION_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/atomic.h> | ||||||
| #include <linux/refcount.h> | #include <linux/refcount.h> | ||||||
|  | #include <linux/list.h> | ||||||
|  | #include <linux/time64.h> | ||||||
|  | #include <linux/mutex.h> | ||||||
|  | #include <linux/wait.h> | ||||||
| #include "btrfs_inode.h" | #include "btrfs_inode.h" | ||||||
| #include "delayed-ref.h" | #include "delayed-ref.h" | ||||||
| #include "ctree.h" | #include "extent-io-tree.h" | ||||||
|  | #include "block-rsv.h" | ||||||
|  | #include "messages.h" | ||||||
| #include "misc.h" | #include "misc.h" | ||||||
| 
 | 
 | ||||||
|  | struct dentry; | ||||||
|  | struct inode; | ||||||
|  | struct btrfs_pending_snapshot; | ||||||
|  | struct btrfs_fs_info; | ||||||
|  | struct btrfs_root_item; | ||||||
|  | struct btrfs_root; | ||||||
|  | struct btrfs_path; | ||||||
|  | 
 | ||||||
| /* Radix-tree tag for roots that are part of the trasaction. */ | /* Radix-tree tag for roots that are part of the trasaction. */ | ||||||
| #define BTRFS_ROOT_TRANS_TAG			0 | #define BTRFS_ROOT_TRANS_TAG			0 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -6,10 +6,12 @@ | ||||||
| #ifndef BTRFS_TREE_CHECKER_H | #ifndef BTRFS_TREE_CHECKER_H | ||||||
| #define BTRFS_TREE_CHECKER_H | #define BTRFS_TREE_CHECKER_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/types.h> | ||||||
| #include <uapi/linux/btrfs_tree.h> | #include <uapi/linux/btrfs_tree.h> | ||||||
| 
 | 
 | ||||||
| struct extent_buffer; | struct extent_buffer; | ||||||
| struct btrfs_chunk; | struct btrfs_chunk; | ||||||
|  | struct btrfs_key; | ||||||
| 
 | 
 | ||||||
| /* All the extra info needed to verify the parentness of a tree block. */ | /* All the extra info needed to verify the parentness of a tree block. */ | ||||||
| struct btrfs_tree_parent_check { | struct btrfs_tree_parent_check { | ||||||
|  |  | ||||||
|  | @ -6,10 +6,18 @@ | ||||||
| #ifndef BTRFS_TREE_LOG_H | #ifndef BTRFS_TREE_LOG_H | ||||||
| #define BTRFS_TREE_LOG_H | #define BTRFS_TREE_LOG_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/list.h> | ||||||
|  | #include <linux/fs.h> | ||||||
| #include "messages.h" | #include "messages.h" | ||||||
| #include "ctree.h" | #include "ctree.h" | ||||||
| #include "transaction.h" | #include "transaction.h" | ||||||
| 
 | 
 | ||||||
|  | struct inode; | ||||||
|  | struct dentry; | ||||||
|  | struct btrfs_ordered_extent; | ||||||
|  | struct btrfs_root; | ||||||
|  | struct btrfs_trans_handle; | ||||||
|  | 
 | ||||||
| /* return value for btrfs_log_dentry_safe that means we don't need to log it at all */ | /* return value for btrfs_log_dentry_safe that means we don't need to log it at all */ | ||||||
| #define BTRFS_NO_LOG_SYNC 256 | #define BTRFS_NO_LOG_SYNC 256 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -7,6 +7,7 @@ | ||||||
| #ifndef BTRFS_ULIST_H | #ifndef BTRFS_ULIST_H | ||||||
| #define BTRFS_ULIST_H | #define BTRFS_ULIST_H | ||||||
| 
 | 
 | ||||||
|  | #include <linux/types.h> | ||||||
| #include <linux/list.h> | #include <linux/list.h> | ||||||
| #include <linux/rbtree.h> | #include <linux/rbtree.h> | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -4,12 +4,27 @@ | ||||||
| #define BTRFS_ZONED_H | #define BTRFS_ZONED_H | ||||||
| 
 | 
 | ||||||
| #include <linux/types.h> | #include <linux/types.h> | ||||||
|  | #include <linux/atomic.h> | ||||||
| #include <linux/blkdev.h> | #include <linux/blkdev.h> | ||||||
|  | #include <linux/blkzoned.h> | ||||||
|  | #include <linux/errno.h> | ||||||
|  | #include <linux/spinlock.h> | ||||||
|  | #include <linux/mutex.h> | ||||||
| #include "messages.h" | #include "messages.h" | ||||||
| #include "volumes.h" | #include "volumes.h" | ||||||
| #include "disk-io.h" | #include "disk-io.h" | ||||||
| #include "block-group.h" | #include "block-group.h" | ||||||
| #include "btrfs_inode.h" | #include "btrfs_inode.h" | ||||||
|  | #include "fs.h" | ||||||
|  | 
 | ||||||
|  | struct block_device; | ||||||
|  | struct extent_buffer; | ||||||
|  | struct btrfs_bio; | ||||||
|  | struct btrfs_ordered_extent; | ||||||
|  | struct btrfs_fs_info; | ||||||
|  | struct btrfs_space_info; | ||||||
|  | struct btrfs_eb_write_context; | ||||||
|  | struct btrfs_fs_devices; | ||||||
| 
 | 
 | ||||||
| #define BTRFS_DEFAULT_RECLAIM_THRESH           			(75) | #define BTRFS_DEFAULT_RECLAIM_THRESH           			(75) | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue
	
	 David Sterba
						David Sterba