mirror of
https://github.com/kdave/btrfs-progs
synced 2025-04-09 18:51:16 +00:00
btrfs-progs: allow btrfs_print_leaf to be called on dummy eb
In certain call sites, like btrfs-image, we want full extent_buffer accessors, but don't have a btrfs_fs_info. In that case, if an extent buffer whose fs_info is NULL, then btrfs_print_leaf() is called on such eb, we will trigger a NULL pointer dereference, at BTRFS_LEAF_DATA_SIZE(fs_info). Fix this by using __BTRFS_LEAF_DATA_SIZE(), which only needs nodesize, and nodesize can be extracted from extent_buffer::len. This allows us to call btrfs_print_leaf() on any extent buffer, which is super handy in gdb. Signed-off-by: Qu Wenruo <wqu@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
ba689a384f
commit
e9a17c3804
@ -1201,7 +1201,7 @@ void btrfs_print_leaf(struct extent_buffer *eb)
|
||||
struct btrfs_item *item;
|
||||
struct btrfs_disk_key disk_key;
|
||||
char flags_str[128];
|
||||
u32 leaf_data_size = BTRFS_LEAF_DATA_SIZE(fs_info);
|
||||
u32 leaf_data_size = __BTRFS_LEAF_DATA_SIZE(eb->len);
|
||||
u32 i;
|
||||
u32 nr;
|
||||
u64 flags;
|
||||
|
Loading…
Reference in New Issue
Block a user