| /linux/fs/btrfs/ |
| H A D | extent_io.h | 86 struct extent_buffer { struct 123 struct extent_buffer *eb; argument 128 static inline unsigned long offset_in_eb_folio(const struct extent_buffer *eb, in offset_in_eb_folio() 143 static inline size_t get_eb_offset_in_folio(const struct extent_buffer *eb, in get_eb_offset_in_folio() 164 static inline unsigned long get_eb_folio_index(const struct extent_buffer *eb, in get_eb_folio_index() 246 struct extent_buffer *alloc_extent_buffer(struct btrfs_fs_info *fs_info, 248 struct extent_buffer *alloc_dummy_extent_buffer(struct btrfs_fs_info *fs_info, 250 struct extent_buffer *btrfs_clone_extent_buffer(const struct extent_buffer *src); 251 struct extent_buffer *find_extent_buffer(struct btrfs_fs_info *fs_info, 253 void free_extent_buffer(struct extent_buffer *eb); [all …]
|
| H A D | locking.h | 15 struct extent_buffer; 175 void btrfs_tree_lock_nested(struct extent_buffer *eb, enum btrfs_lock_nesting nest); 177 static inline void btrfs_tree_lock(struct extent_buffer *eb) in btrfs_tree_lock() 182 void btrfs_tree_unlock(struct extent_buffer *eb); 184 void btrfs_tree_read_lock_nested(struct extent_buffer *eb, enum btrfs_lock_nesting nest); 186 static inline void btrfs_tree_read_lock(struct extent_buffer *eb) in btrfs_tree_read_lock() 191 void btrfs_tree_read_unlock(struct extent_buffer *eb); 192 bool btrfs_try_tree_read_lock(struct extent_buffer *eb); 193 struct extent_buffer *btrfs_lock_root_node(struct btrfs_root *root); 194 struct extent_buffer *btrfs_read_lock_root_node(struct btrfs_root *root); [all …]
|
| H A D | tree-mod-log.h | 8 struct extent_buffer; 37 int btrfs_tree_mod_log_insert_root(struct extent_buffer *old_root, 38 struct extent_buffer *new_root, 40 int btrfs_tree_mod_log_insert_key(const struct extent_buffer *eb, int slot, 42 int btrfs_tree_mod_log_free_eb(struct extent_buffer *eb); 43 struct extent_buffer *btrfs_tree_mod_log_rewind(struct btrfs_fs_info *fs_info, 44 struct extent_buffer *eb, 46 struct extent_buffer *btrfs_get_old_root(struct btrfs_root *root, u64 time_seq); 48 int btrfs_tree_mod_log_eb_copy(struct extent_buffer *dst, 49 const struct extent_buffer *src, [all …]
|
| H A D | extent-tree.h | 10 struct extent_buffer; 99 int btrfs_get_extent_inline_ref_type(const struct extent_buffer *eb, 115 const struct extent_buffer *eb); 116 int btrfs_exclude_logged_extents(struct extent_buffer *eb); 119 struct extent_buffer *btrfs_alloc_tree_block(struct btrfs_trans_handle *trans, 129 struct extent_buffer *buf, 142 struct extent_buffer *buf, bool full_backref); 144 struct extent_buffer *buf, bool full_backref); 146 struct extent_buffer *eb, u64 flags); 150 struct extent_buffer *leaf, int slot); [all …]
|
| H A D | tree-checker.h | 12 struct extent_buffer; 69 enum btrfs_tree_block_status __btrfs_check_leaf(struct extent_buffer *leaf); 70 enum btrfs_tree_block_status __btrfs_check_node(struct extent_buffer *node); 72 int btrfs_check_leaf(struct extent_buffer *leaf); 73 int btrfs_check_node(struct extent_buffer *node); 76 const struct extent_buffer *leaf, 79 int btrfs_check_eb_owner(const struct extent_buffer *eb, u64 root_owner); 80 int btrfs_verify_level_key(struct extent_buffer *eb,
|
| H A D | locking.c | 83 void btrfs_set_buffer_lockdep_class(u64 objectid, struct extent_buffer *eb, int level) in btrfs_set_buffer_lockdep_class() 97 void btrfs_maybe_reset_lockdep_class(struct btrfs_root *root, struct extent_buffer *eb) in btrfs_maybe_reset_lockdep_class() 107 static void btrfs_set_eb_lock_owner(struct extent_buffer *eb, pid_t owner) in btrfs_set_eb_lock_owner() 112 static void btrfs_set_eb_lock_owner(struct extent_buffer *eb, pid_t owner) { } in btrfs_set_eb_lock_owner() 139 void btrfs_tree_read_lock_nested(struct extent_buffer *eb, enum btrfs_lock_nesting nest) in btrfs_tree_read_lock_nested() 155 bool btrfs_try_tree_read_lock(struct extent_buffer *eb) in btrfs_try_tree_read_lock() 167 void btrfs_tree_read_unlock(struct extent_buffer *eb) in btrfs_tree_read_unlock() 181 void btrfs_tree_lock_nested(struct extent_buffer *eb, enum btrfs_lock_nesting nest) in btrfs_tree_lock_nested() 197 void btrfs_tree_unlock(struct extent_buffer *eb) in btrfs_tree_unlock() 236 struct extent_buffer *btrfs_lock_root_node(struct btrfs_root *root) in btrfs_lock_root_node() [all …]
|
| H A D | accessors.h | 18 struct extent_buffer; 52 u##bits btrfs_get_##bits(const struct extent_buffer *eb, \ 54 void btrfs_set_##bits(const struct extent_buffer *eb, void *ptr, \ 63 static inline u##bits btrfs_##name(const struct extent_buffer *eb, \ 69 static inline void btrfs_set_##name(const struct extent_buffer *eb, type *s, \ 77 static inline u##bits btrfs_##name(const struct extent_buffer *eb) \ 83 static inline void btrfs_set_##name(const struct extent_buffer *eb, \ 100 static inline u64 btrfs_device_total_bytes(const struct extent_buffer *eb, in btrfs_device_total_bytes() 106 static inline void btrfs_set_device_total_bytes(const struct extent_buffer *eb, in btrfs_set_device_total_bytes() 204 static inline u64 btrfs_stripe_offset_nr(const struct extent_buffer *eb, in btrfs_stripe_offset_nr() [all …]
|
| H A D | ctree.h | 22 struct extent_buffer; 57 struct extent_buffer *nodes[BTRFS_MAX_LEVEL]; 176 struct extent_buffer *node; 178 struct extent_buffer *commit_root; 511 int btrfs_bin_search(const struct extent_buffer *eb, int first_slot, 553 struct extent_buffer *btrfs_root_node(struct btrfs_root *root); 560 struct extent_buffer *btrfs_read_node_slot(struct extent_buffer *parent, 564 struct btrfs_root *root, struct extent_buffer *buf, 565 struct extent_buffer *parent, int parent_slot, 566 struct extent_buffer **cow_ret, [all …]
|
| H A D | print-tree.c | 63 static void print_chunk(const struct extent_buffer *eb, struct btrfs_chunk *chunk) in print_chunk() 76 static void print_dev_item(const struct extent_buffer *eb, in print_dev_item() 84 static void print_extent_data_ref(const struct extent_buffer *eb, in print_extent_data_ref() 94 static void print_extent_owner_ref(const struct extent_buffer *eb, in print_extent_owner_ref() 101 static void print_extent_item(const struct extent_buffer *eb, int slot, int type) in print_extent_item() 197 static void print_uuid_item(const struct extent_buffer *l, unsigned long offset, in print_uuid_item() 215 static void print_raid_stripe_key(const struct extent_buffer *eb, u32 item_size, in print_raid_stripe_key() 230 static void print_eb_refs_lock(const struct extent_buffer *eb) in print_eb_refs_lock() 238 static void print_timespec(const struct extent_buffer *eb, in print_timespec() 248 static void print_inode_item(const struct extent_buffer *eb, int i) in print_inode_item() [all …]
|
| H A D | ctree.c | 35 struct extent_buffer *dst, 36 struct extent_buffer *src, bool empty); 38 struct extent_buffer *dst_buf, 39 struct extent_buffer *src_buf); 44 static unsigned int leaf_data_end(const struct extent_buffer *leaf) in leaf_data_end() 66 static inline void memmove_leaf_data(const struct extent_buffer *leaf, in memmove_leaf_data() 89 static inline void copy_leaf_data(const struct extent_buffer *dst, in copy_leaf_data() 90 const struct extent_buffer *src, in copy_leaf_data() 109 static inline void memmove_leaf_items(const struct extent_buffer *leaf, in memmove_leaf_items() 129 static inline void copy_leaf_items(const struct extent_buffer *dst, in copy_leaf_items() [all …]
|
| H A D | extent_io.c | 41 static inline void btrfs_leak_debug_add_eb(struct extent_buffer *eb) in btrfs_leak_debug_add_eb() 51 static inline void btrfs_leak_debug_del_eb(struct extent_buffer *eb) in btrfs_leak_debug_del_eb() 63 struct extent_buffer *eb; in btrfs_extent_buffer_leak_debug_check() 77 struct extent_buffer, leak_list); in btrfs_extent_buffer_leak_debug_check() 225 sizeof(struct extent_buffer), 0, 0, in extent_buffer_init_cachep() 699 static int alloc_eb_folio_array(struct extent_buffer *eb, bool nofail) in alloc_eb_folio_array() 869 static int attach_extent_buffer_folio(struct extent_buffer *eb, in attach_extent_buffer_folio() 1931 static noinline_for_stack bool lock_extent_buffer_for_io(struct extent_buffer *eb, in lock_extent_buffer_for_io() 1978 static void set_btree_ioerr(struct extent_buffer *eb) in set_btree_ioerr() 2051 static void buffer_tree_set_mark(const struct extent_buffer *eb, xa_mark_t mark) in buffer_tree_set_mark() [all …]
|
| H A D | disk-io.h | 17 struct extent_buffer; 47 struct extent_buffer *read_tree_block(struct btrfs_fs_info *fs_info, u64 bytenr, 49 struct extent_buffer *btrfs_find_create_tree_block( 88 int btrfs_validate_extent_buffer(struct extent_buffer *eb, 109 struct extent_buffer *buf); 110 int btrfs_buffer_uptodate(struct extent_buffer *buf, u64 parent_transid, bool atomic); 111 int btrfs_read_extent_buffer(struct extent_buffer *buf,
|
| H A D | tree-mod-log.c | 178 static inline bool skip_eb_logging(const struct extent_buffer *eb) in skip_eb_logging() 208 static bool tree_mod_dont_log(struct btrfs_fs_info *fs_info, const struct extent_buffer *eb) in tree_mod_dont_log() 226 const struct extent_buffer *eb) in tree_mod_need_log() 236 static struct tree_mod_elem *alloc_tree_mod_elem(const struct extent_buffer *eb, in alloc_tree_mod_elem() 261 int btrfs_tree_mod_log_insert_key(const struct extent_buffer *eb, int slot, in btrfs_tree_mod_log_insert_key() 298 static struct tree_mod_elem *tree_mod_log_alloc_move(const struct extent_buffer *eb, in tree_mod_log_alloc_move() 318 int btrfs_tree_mod_log_insert_move(const struct extent_buffer *eb, in btrfs_tree_mod_log_insert_move() 426 int btrfs_tree_mod_log_insert_root(struct extent_buffer *old_root, in btrfs_tree_mod_log_insert_root() 427 struct extent_buffer *new_root, in btrfs_tree_mod_log_insert_root() 574 int btrfs_tree_mod_log_eb_copy(struct extent_buffer *dst, in btrfs_tree_mod_log_eb_copy() [all …]
|
| H A D | print-tree.h | 14 struct extent_buffer; 17 void btrfs_print_leaf(const struct extent_buffer *l); 18 void btrfs_print_tree(const struct extent_buffer *c, bool follow);
|
| H A D | tree-checker.c | 56 static void generic_err(const struct extent_buffer *eb, int slot, in generic_err() 82 static void file_extent_err(const struct extent_buffer *eb, int slot, in file_extent_err() 120 static u64 file_extent_end(struct extent_buffer *leaf, in file_extent_end() 143 static void dir_item_err(const struct extent_buffer *eb, int slot, in dir_item_err() 175 static bool check_prev_ino(struct extent_buffer *leaf, in check_prev_ino() 207 static int check_extent_data_item(struct extent_buffer *leaf, in check_extent_data_item() 365 static int check_csum_item(struct extent_buffer *leaf, struct btrfs_key *key, in check_csum_item() 411 static int check_inode_key(struct extent_buffer *leaf, struct btrfs_key *key, in check_inode_key() 463 static int check_root_key(struct extent_buffer *leaf, struct btrfs_key *key, in check_root_key() 521 static int check_dir_item(struct extent_buffer *leaf, in check_dir_item() [all …]
|
| H A D | qgroup.h | 16 struct extent_buffer; 364 struct extent_buffer *eb); 366 struct extent_buffer *root_eb, 447 struct extent_buffer *subvol_parent, int subvol_slot, 448 struct extent_buffer *reloc_parent, int reloc_slot, 451 struct btrfs_root *root, struct extent_buffer *eb);
|
| H A D | accessors.c | 12 static void __cold report_setget_bounds(const struct extent_buffer *eb, in report_setget_bounds() 52 u##bits btrfs_get_##bits(const struct extent_buffer *eb, \ 82 void btrfs_set_##bits(const struct extent_buffer *eb, void *ptr, \ 119 void btrfs_node_key(const struct extent_buffer *eb, in btrfs_node_key()
|
| H A D | relocation.h | 8 struct extent_buffer; 35 const struct extent_buffer *buf, 36 struct extent_buffer *cow);
|
| H A D | inode-item.h | 10 struct extent_buffer; 109 struct btrfs_inode_ref *btrfs_find_name_in_backref(const struct extent_buffer *leaf, 113 const struct extent_buffer *leaf, int slot, u64 ref_objectid,
|
| H A D | subpage.h | 177 void btrfs_meta_folio_set_##name(struct folio *folio, const struct extent_buffer *eb); \ 178 void btrfs_meta_folio_clear_##name(struct folio *folio, const struct extent_buffer *eb); \ 179 bool btrfs_meta_folio_test_##name(struct folio *folio, const struct extent_buffer *eb); 205 bool btrfs_meta_folio_clear_and_test_dirty(struct folio *folio, const struct extent_buffer *eb);
|
| H A D | root-tree.c | 26 static void btrfs_read_root_item(struct extent_buffer *eb, int slot, in btrfs_read_root_item() 72 struct extent_buffer *l; in btrfs_find_root() 118 struct extent_buffer *node) in btrfs_set_root_node() 134 struct extent_buffer *l; in btrfs_update_root() 216 struct extent_buffer *leaf; in btrfs_find_orphan_roots() 336 struct extent_buffer *leaf; in btrfs_del_root_ref() 406 struct extent_buffer *leaf; in btrfs_add_root_ref()
|
| H A D | backref.h | 136 const struct extent_buffer *leaf, void *user_ctx); 220 int tree_backref_for_extent(unsigned long *ptr, struct extent_buffer *eb, 238 struct extent_buffer *eb_in, u64 parent, 350 struct extent_buffer *eb;
|
| H A D | dir-item.c | 33 struct extent_buffer *leaf; in insert_with_overflow() 67 struct extent_buffer *leaf; in btrfs_insert_xattr_item() 117 struct extent_buffer *leaf; in btrfs_insert_dir_item() 237 struct extent_buffer *leaf; in btrfs_check_dir_item_collision() 379 struct extent_buffer *leaf; in btrfs_match_dir_item_name() 412 struct extent_buffer *leaf; in btrfs_delete_one_dir_name()
|
| H A D | inode-item.c | 17 struct btrfs_inode_ref *btrfs_find_name_in_backref(const struct extent_buffer *leaf, in btrfs_find_name_in_backref() 45 const struct extent_buffer *leaf, int slot, u64 ref_objectid, in btrfs_find_name_in_ext_backref() 112 struct extent_buffer *leaf; in btrfs_del_inode_extref() 173 struct extent_buffer *leaf; in btrfs_del_inode_ref() 254 struct extent_buffer *leaf; in btrfs_insert_inode_extref() 391 struct extent_buffer *leaf; in btrfs_lookup_inode() 410 const struct extent_buffer *leaf, in btrfs_trace_truncate() 447 struct extent_buffer *leaf; in btrfs_truncate_inode_items()
|
| /linux/fs/btrfs/tests/ |
| H A D | extent-io-tests.c | 341 static int check_eb_bitmap(unsigned long *bitmap, struct extent_buffer *eb) in check_eb_bitmap() 383 struct extent_buffer *eb, in test_bitmap_set() 398 struct extent_buffer *eb, in test_bitmap_clear() 411 static int __test_eb_bitmaps(unsigned long *bitmap, struct extent_buffer *eb) in __test_eb_bitmaps() 509 struct extent_buffer *eb = NULL; in test_eb_bitmaps() 669 static void dump_eb_and_memory_contents(struct extent_buffer *eb, void *memory, in dump_eb_and_memory_contents() 685 static int verify_eb_and_memory(struct extent_buffer *eb, void *memory, in verify_eb_and_memory() 703 static void init_eb_and_memory(struct extent_buffer *eb, void *memory) in init_eb_and_memory() 712 struct extent_buffer *eb = NULL; in test_eb_mem_ops()
|