Skip to content

Commit 07113b6

Browse files
fdmananakdave
authored andcommitted
btrfs: print-tree: move code for processing file extent item into helper
The code for processing file extent items is quite large and it's better to have it in a dedicated helper rather than in a huge switch statement, just like we do in btrfs-progs. Reviewed-by: Qu Wenruo <[email protected]> Reviewed-by: Johannes Thumshirn <[email protected]> Signed-off-by: Filipe Manana <[email protected]> Reviewed-by: David Sterba <[email protected]> Signed-off-by: David Sterba <[email protected]>
1 parent d9ed4c3 commit 07113b6

File tree

1 file changed

+29
-23
lines changed

1 file changed

+29
-23
lines changed

fs/btrfs/print-tree.c

Lines changed: 29 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -338,14 +338,41 @@ static void print_extent_csum(const struct extent_buffer *eb, int i)
338338
key.offset, key.offset + csum_bytes, csum_bytes);
339339
}
340340

341+
static void print_file_extent_item(const struct extent_buffer *eb, int i)
342+
{
343+
struct btrfs_file_extent_item *fi;
344+
345+
fi = btrfs_item_ptr(eb, i, struct btrfs_file_extent_item);
346+
pr_info("\t\tgeneration %llu type %hhu\n",
347+
btrfs_file_extent_generation(eb, fi),
348+
btrfs_file_extent_type(eb, fi));
349+
350+
if (btrfs_file_extent_type(eb, fi) == BTRFS_FILE_EXTENT_INLINE) {
351+
pr_info("\t\tinline extent data size %u ram_bytes %llu compression %hhu\n",
352+
btrfs_file_extent_inline_item_len(eb, i),
353+
btrfs_file_extent_ram_bytes(eb, fi),
354+
btrfs_file_extent_compression(eb, fi));
355+
return;
356+
}
357+
358+
pr_info("\t\textent data disk bytenr %llu nr %llu\n",
359+
btrfs_file_extent_disk_bytenr(eb, fi),
360+
btrfs_file_extent_disk_num_bytes(eb, fi));
361+
pr_info("\t\textent data offset %llu nr %llu ram %llu\n",
362+
btrfs_file_extent_offset(eb, fi),
363+
btrfs_file_extent_num_bytes(eb, fi),
364+
btrfs_file_extent_ram_bytes(eb, fi));
365+
pr_info("\t\textent compression %hhu\n",
366+
btrfs_file_extent_compression(eb, fi));
367+
}
368+
341369
void btrfs_print_leaf(const struct extent_buffer *l)
342370
{
343371
struct btrfs_fs_info *fs_info;
344372
int i;
345373
u32 type, nr;
346374
struct btrfs_root_item *ri;
347375
struct btrfs_block_group_item *bi;
348-
struct btrfs_file_extent_item *fi;
349376
struct btrfs_extent_data_ref *dref;
350377
struct btrfs_shared_data_ref *sref;
351378
struct btrfs_dev_extent *dev_extent;
@@ -417,28 +444,7 @@ void btrfs_print_leaf(const struct extent_buffer *l)
417444
btrfs_shared_data_ref_count(l, sref));
418445
break;
419446
case BTRFS_EXTENT_DATA_KEY:
420-
fi = btrfs_item_ptr(l, i,
421-
struct btrfs_file_extent_item);
422-
pr_info("\t\tgeneration %llu type %hhu\n",
423-
btrfs_file_extent_generation(l, fi),
424-
btrfs_file_extent_type(l, fi));
425-
if (btrfs_file_extent_type(l, fi) ==
426-
BTRFS_FILE_EXTENT_INLINE) {
427-
pr_info("\t\tinline extent data size %u ram_bytes %llu compression %hhu\n",
428-
btrfs_file_extent_inline_item_len(l, i),
429-
btrfs_file_extent_ram_bytes(l, fi),
430-
btrfs_file_extent_compression(l, fi));
431-
break;
432-
}
433-
pr_info("\t\textent data disk bytenr %llu nr %llu\n",
434-
btrfs_file_extent_disk_bytenr(l, fi),
435-
btrfs_file_extent_disk_num_bytes(l, fi));
436-
pr_info("\t\textent data offset %llu nr %llu ram %llu\n",
437-
btrfs_file_extent_offset(l, fi),
438-
btrfs_file_extent_num_bytes(l, fi),
439-
btrfs_file_extent_ram_bytes(l, fi));
440-
pr_info("\t\textent compression %hhu\n",
441-
btrfs_file_extent_compression(l, fi));
447+
print_file_extent_item(l, i);
442448
break;
443449
case BTRFS_BLOCK_GROUP_ITEM_KEY:
444450
bi = btrfs_item_ptr(l, i,

0 commit comments

Comments
 (0)