extent_map
struct extent_map *btrfs_get_extent(struct btrfs_inode *inode,
struct extent_map *btrfs_create_io_em(struct btrfs_inode *inode, u64 start,
struct extent_map *em;
struct extent_map *em;
static struct extent_map *defrag_get_extent(struct btrfs_inode *inode,
struct extent_map *em;
static struct extent_map *defrag_lookup_extent(struct inode *inode, u64 start,
struct extent_map *em;
const struct extent_map *em)
static bool defrag_check_next_extent(struct inode *inode, struct extent_map *em,
struct extent_map *next;
struct extent_map *em;
static struct extent_map *btrfs_create_dio_extent(struct btrfs_inode *inode,
struct extent_map *em = NULL;
static struct extent_map *btrfs_new_extent_direct(struct btrfs_inode *inode,
struct extent_map *em;
static int btrfs_get_blocks_direct_write(struct extent_map **map,
struct extent_map *em = *map;
struct extent_map *em2;
struct extent_map *em;
struct extent_map *em;
struct extent_map *em_cached = NULL;
struct extent_map *em;
struct extent_map *em_cached = NULL;
struct extent_map *em;
static struct extent_map *get_extent_map(struct btrfs_inode *inode,
u64 len, struct extent_map **em_cached)
struct extent_map *em;
const struct extent_map *em)
static int btrfs_do_readpage(struct folio *folio, struct extent_map **em_cached,
entry = rb_entry(parent, struct extent_map, rb_node);
struct extent_map *new_em,
struct extent_map *em;
struct extent_map *split_pre = NULL;
struct extent_map *split_mid = NULL;
entry = rb_entry(parent, struct extent_map, rb_node);
struct extent_map *em;
em = rb_entry(node, struct extent_map, rb_node);
entry = rb_entry(parent, struct extent_map, rb_node);
entry = rb_entry(parent, struct extent_map, rb_node);
struct extent_map *entry;
struct extent_map *prev_entry = NULL;
entry = rb_entry(n, struct extent_map, rb_node);
prev_entry = rb_entry(prev, struct extent_map, rb_node);
prev_entry = rb_entry(prev, struct extent_map, rb_node);
prev_entry = rb_entry(prev, struct extent_map, rb_node);
static inline u64 extent_map_block_len(const struct extent_map *em)
sizeof(struct extent_map), 0, 0, NULL);
static inline u64 extent_map_block_end(const struct extent_map *em)
static bool can_merge_extent_map(const struct extent_map *em)
static bool mergeable_maps(const struct extent_map *prev, const struct extent_map *next)
static void merge_ondisk_extents(const struct extent_map *prev, const struct extent_map *next,
struct extent_map *merged)
struct extent_map *em)
static void validate_extent_map(struct btrfs_fs_info *fs_info, struct extent_map *em)
static void try_merge_map(struct btrfs_inode *inode, struct extent_map *em)
struct extent_map *merge = NULL;
merge = rb_entry_safe(rb, struct extent_map, rb_node);
merge = rb_entry_safe(rb, struct extent_map, rb_node);
struct extent_map *em;
struct extent_map *btrfs_alloc_extent_map(void)
void btrfs_clear_em_logging(struct btrfs_inode *inode, struct extent_map *em)
struct extent_map *em;
struct extent_map *em,
struct extent_map *em, bool modified)
static struct extent_map *lookup_extent_mapping(struct extent_map_tree *tree,
struct extent_map *em;
em = rb_entry(rb_node, struct extent_map, rb_node);
struct extent_map *btrfs_lookup_extent_mapping(struct extent_map_tree *tree,
struct extent_map *btrfs_search_extent_mapping(struct extent_map_tree *tree,
void btrfs_remove_extent_mapping(struct btrfs_inode *inode, struct extent_map *em)
struct extent_map *cur,
struct extent_map *new,
void btrfs_free_extent_map(struct extent_map *em)
static struct extent_map *next_extent_map(const struct extent_map *em)
return container_of(next, struct extent_map, rb_node);
static struct extent_map *prev_extent_map(struct extent_map *em)
return container_of(prev, struct extent_map, rb_node);
struct extent_map *existing,
struct extent_map *em,
struct extent_map *prev;
struct extent_map *next;
struct extent_map **em_in, u64 start, u64 len)
struct extent_map *em = *em_in;
struct extent_map *existing;
struct extent_map *em;
em = rb_entry(node, struct extent_map, rb_node);
static void remove_em(struct btrfs_inode *inode, struct extent_map *em)
struct extent_map *split;
struct extent_map *split2;
struct extent_map *em;
struct extent_map *next_em = NULL;
static int tree_insert(struct rb_root *root, struct extent_map *em)
struct extent_map *entry = NULL;
static inline void btrfs_extent_map_set_compression(struct extent_map *em,
const struct extent_map *em)
static inline bool btrfs_extent_map_is_compressed(const struct extent_map *em)
static inline int btrfs_extent_map_in_tree(const struct extent_map *em)
static inline u64 btrfs_extent_map_block_start(const struct extent_map *em)
static inline u64 btrfs_extent_map_end(const struct extent_map *em)
struct extent_map *btrfs_lookup_extent_mapping(struct extent_map_tree *tree,
void btrfs_remove_extent_mapping(struct btrfs_inode *inode, struct extent_map *em);
struct extent_map *btrfs_alloc_extent_map(void);
void btrfs_free_extent_map(struct extent_map *em);
void btrfs_clear_em_logging(struct btrfs_inode *inode, struct extent_map *em);
struct extent_map *btrfs_search_extent_mapping(struct extent_map_tree *tree,
struct extent_map **em_in, u64 start, u64 len);
struct extent_map *new_em,
struct extent_map *em)
struct extent_map;
struct extent_map *em);
struct extent_map *hole_em;
struct extent_map *em;
struct extent_map *em;
struct extent_map *em;
struct extent_map *em;
struct extent_map *em;
struct extent_map *em;
struct extent_map *em;
struct extent_map *em;
struct extent_map *em;
struct extent_map *em = NULL;
struct extent_map *hole_em;
struct extent_map *btrfs_get_extent(struct btrfs_inode *inode,
struct extent_map *em = NULL;
struct extent_map *btrfs_create_io_em(struct btrfs_inode *inode, u64 start,
struct extent_map *em;
struct extent_map *em;
struct extent_map *em;
struct extent_map *em;
struct extent_map *em;
struct extent_map *em;
struct extent_map *em;
em = rb_entry(node, struct extent_map, rb_node);
struct extent_map *em;
struct extent_map *em;
struct extent_map *em;
struct extent_map *entry = rb_entry(n, struct extent_map, rb_node);
struct extent_map *em;
struct extent_map *em = NULL;
struct extent_map *em;
struct extent_map *em;
struct extent_map *em = NULL;
struct extent_map *em = NULL;
const struct extent_map *em1, *em2;
em1 = list_entry(a, struct extent_map, list);
em2 = list_entry(b, struct extent_map, list);
const struct extent_map *em,
const struct extent_map *em,
struct extent_map *em, *n;
em = list_first_entry(&extents, struct extent_map, list);
struct extent_map *em, *n;
struct extent_map *em;
struct extent_map;
TP_PROTO(const struct btrfs_inode *inode, const struct extent_map *em),
const struct extent_map *map),
const struct extent_map *existing, const struct extent_map *map,