aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/check-integrity.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/btrfs/check-integrity.c')
-rw-r--r--fs/btrfs/check-integrity.c293
1 files changed, 95 insertions, 198 deletions
diff --git a/fs/btrfs/check-integrity.c b/fs/btrfs/check-integrity.c
index 07f39a3dedb0..fa68c8ab9a15 100644
--- a/fs/btrfs/check-integrity.c
+++ b/fs/btrfs/check-integrity.c
@@ -701,15 +701,13 @@ static int btrfsic_process_superblock(struct btrfsic_state *state,
701 next_bytenr = btrfs_super_root(selected_super); 701 next_bytenr = btrfs_super_root(selected_super);
702 if (state->print_mask & 702 if (state->print_mask &
703 BTRFSIC_PRINT_MASK_ROOT_CHUNK_LOG_TREE_LOCATION) 703 BTRFSIC_PRINT_MASK_ROOT_CHUNK_LOG_TREE_LOCATION)
704 printk(KERN_INFO "root@%llu\n", 704 printk(KERN_INFO "root@%llu\n", next_bytenr);
705 (unsigned long long)next_bytenr);
706 break; 705 break;
707 case 1: 706 case 1:
708 next_bytenr = btrfs_super_chunk_root(selected_super); 707 next_bytenr = btrfs_super_chunk_root(selected_super);
709 if (state->print_mask & 708 if (state->print_mask &
710 BTRFSIC_PRINT_MASK_ROOT_CHUNK_LOG_TREE_LOCATION) 709 BTRFSIC_PRINT_MASK_ROOT_CHUNK_LOG_TREE_LOCATION)
711 printk(KERN_INFO "chunk@%llu\n", 710 printk(KERN_INFO "chunk@%llu\n", next_bytenr);
712 (unsigned long long)next_bytenr);
713 break; 711 break;
714 case 2: 712 case 2:
715 next_bytenr = btrfs_super_log_root(selected_super); 713 next_bytenr = btrfs_super_log_root(selected_super);
@@ -717,8 +715,7 @@ static int btrfsic_process_superblock(struct btrfsic_state *state,
717 continue; 715 continue;
718 if (state->print_mask & 716 if (state->print_mask &
719 BTRFSIC_PRINT_MASK_ROOT_CHUNK_LOG_TREE_LOCATION) 717 BTRFSIC_PRINT_MASK_ROOT_CHUNK_LOG_TREE_LOCATION)
720 printk(KERN_INFO "log@%llu\n", 718 printk(KERN_INFO "log@%llu\n", next_bytenr);
721 (unsigned long long)next_bytenr);
722 break; 719 break;
723 } 720 }
724 721
@@ -727,7 +724,7 @@ static int btrfsic_process_superblock(struct btrfsic_state *state,
727 next_bytenr, state->metablock_size); 724 next_bytenr, state->metablock_size);
728 if (state->print_mask & BTRFSIC_PRINT_MASK_NUM_COPIES) 725 if (state->print_mask & BTRFSIC_PRINT_MASK_NUM_COPIES)
729 printk(KERN_INFO "num_copies(log_bytenr=%llu) = %d\n", 726 printk(KERN_INFO "num_copies(log_bytenr=%llu) = %d\n",
730 (unsigned long long)next_bytenr, num_copies); 727 next_bytenr, num_copies);
731 728
732 for (mirror_num = 1; mirror_num <= num_copies; mirror_num++) { 729 for (mirror_num = 1; mirror_num <= num_copies; mirror_num++) {
733 struct btrfsic_block *next_block; 730 struct btrfsic_block *next_block;
@@ -742,8 +739,7 @@ static int btrfsic_process_superblock(struct btrfsic_state *state,
742 printk(KERN_INFO "btrfsic:" 739 printk(KERN_INFO "btrfsic:"
743 " btrfsic_map_block(root @%llu," 740 " btrfsic_map_block(root @%llu,"
744 " mirror %d) failed!\n", 741 " mirror %d) failed!\n",
745 (unsigned long long)next_bytenr, 742 next_bytenr, mirror_num);
746 mirror_num);
747 kfree(selected_super); 743 kfree(selected_super);
748 return -1; 744 return -1;
749 } 745 }
@@ -767,7 +763,6 @@ static int btrfsic_process_superblock(struct btrfsic_state *state,
767 if (ret < (int)PAGE_CACHE_SIZE) { 763 if (ret < (int)PAGE_CACHE_SIZE) {
768 printk(KERN_INFO 764 printk(KERN_INFO
769 "btrfsic: read @logical %llu failed!\n", 765 "btrfsic: read @logical %llu failed!\n",
770 (unsigned long long)
771 tmp_next_block_ctx.start); 766 tmp_next_block_ctx.start);
772 btrfsic_release_block_ctx(&tmp_next_block_ctx); 767 btrfsic_release_block_ctx(&tmp_next_block_ctx);
773 kfree(selected_super); 768 kfree(selected_super);
@@ -847,10 +842,8 @@ static int btrfsic_process_superblock_dev_mirror(
847 printk_in_rcu(KERN_INFO "New initial S-block (bdev %p, %s)" 842 printk_in_rcu(KERN_INFO "New initial S-block (bdev %p, %s)"
848 " @%llu (%s/%llu/%d)\n", 843 " @%llu (%s/%llu/%d)\n",
849 superblock_bdev, 844 superblock_bdev,
850 rcu_str_deref(device->name), 845 rcu_str_deref(device->name), dev_bytenr,
851 (unsigned long long)dev_bytenr, 846 dev_state->name, dev_bytenr,
852 dev_state->name,
853 (unsigned long long)dev_bytenr,
854 superblock_mirror_num); 847 superblock_mirror_num);
855 list_add(&superblock_tmp->all_blocks_node, 848 list_add(&superblock_tmp->all_blocks_node,
856 &state->all_blocks_list); 849 &state->all_blocks_list);
@@ -906,7 +899,7 @@ static int btrfsic_process_superblock_dev_mirror(
906 next_bytenr, state->metablock_size); 899 next_bytenr, state->metablock_size);
907 if (state->print_mask & BTRFSIC_PRINT_MASK_NUM_COPIES) 900 if (state->print_mask & BTRFSIC_PRINT_MASK_NUM_COPIES)
908 printk(KERN_INFO "num_copies(log_bytenr=%llu) = %d\n", 901 printk(KERN_INFO "num_copies(log_bytenr=%llu) = %d\n",
909 (unsigned long long)next_bytenr, num_copies); 902 next_bytenr, num_copies);
910 for (mirror_num = 1; mirror_num <= num_copies; mirror_num++) { 903 for (mirror_num = 1; mirror_num <= num_copies; mirror_num++) {
911 struct btrfsic_block *next_block; 904 struct btrfsic_block *next_block;
912 struct btrfsic_block_data_ctx tmp_next_block_ctx; 905 struct btrfsic_block_data_ctx tmp_next_block_ctx;
@@ -918,8 +911,7 @@ static int btrfsic_process_superblock_dev_mirror(
918 mirror_num)) { 911 mirror_num)) {
919 printk(KERN_INFO "btrfsic: btrfsic_map_block(" 912 printk(KERN_INFO "btrfsic: btrfsic_map_block("
920 "bytenr @%llu, mirror %d) failed!\n", 913 "bytenr @%llu, mirror %d) failed!\n",
921 (unsigned long long)next_bytenr, 914 next_bytenr, mirror_num);
922 mirror_num);
923 brelse(bh); 915 brelse(bh);
924 return -1; 916 return -1;
925 } 917 }
@@ -1009,13 +1001,9 @@ continue_with_new_stack_frame:
1009 printk(KERN_INFO 1001 printk(KERN_INFO
1010 "leaf %llu items %d generation %llu" 1002 "leaf %llu items %d generation %llu"
1011 " owner %llu\n", 1003 " owner %llu\n",
1012 (unsigned long long) 1004 sf->block_ctx->start, sf->nr,
1013 sf->block_ctx->start,
1014 sf->nr,
1015 (unsigned long long)
1016 btrfs_stack_header_generation( 1005 btrfs_stack_header_generation(
1017 &leafhdr->header), 1006 &leafhdr->header),
1018 (unsigned long long)
1019 btrfs_stack_header_owner( 1007 btrfs_stack_header_owner(
1020 &leafhdr->header)); 1008 &leafhdr->header));
1021 } 1009 }
@@ -1137,13 +1125,10 @@ leaf_item_out_of_bounce_error:
1137 if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE) 1125 if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE)
1138 printk(KERN_INFO "node %llu level %d items %d" 1126 printk(KERN_INFO "node %llu level %d items %d"
1139 " generation %llu owner %llu\n", 1127 " generation %llu owner %llu\n",
1140 (unsigned long long)
1141 sf->block_ctx->start, 1128 sf->block_ctx->start,
1142 nodehdr->header.level, sf->nr, 1129 nodehdr->header.level, sf->nr,
1143 (unsigned long long)
1144 btrfs_stack_header_generation( 1130 btrfs_stack_header_generation(
1145 &nodehdr->header), 1131 &nodehdr->header),
1146 (unsigned long long)
1147 btrfs_stack_header_owner( 1132 btrfs_stack_header_owner(
1148 &nodehdr->header)); 1133 &nodehdr->header));
1149 } 1134 }
@@ -1294,7 +1279,7 @@ static int btrfsic_create_link_to_next_block(
1294 next_bytenr, state->metablock_size); 1279 next_bytenr, state->metablock_size);
1295 if (state->print_mask & BTRFSIC_PRINT_MASK_NUM_COPIES) 1280 if (state->print_mask & BTRFSIC_PRINT_MASK_NUM_COPIES)
1296 printk(KERN_INFO "num_copies(log_bytenr=%llu) = %d\n", 1281 printk(KERN_INFO "num_copies(log_bytenr=%llu) = %d\n",
1297 (unsigned long long)next_bytenr, *num_copiesp); 1282 next_bytenr, *num_copiesp);
1298 *mirror_nump = 1; 1283 *mirror_nump = 1;
1299 } 1284 }
1300 1285
@@ -1311,7 +1296,7 @@ static int btrfsic_create_link_to_next_block(
1311 if (ret) { 1296 if (ret) {
1312 printk(KERN_INFO 1297 printk(KERN_INFO
1313 "btrfsic: btrfsic_map_block(@%llu, mirror=%d) failed!\n", 1298 "btrfsic: btrfsic_map_block(@%llu, mirror=%d) failed!\n",
1314 (unsigned long long)next_bytenr, *mirror_nump); 1299 next_bytenr, *mirror_nump);
1315 btrfsic_release_block_ctx(next_block_ctx); 1300 btrfsic_release_block_ctx(next_block_ctx);
1316 *next_blockp = NULL; 1301 *next_blockp = NULL;
1317 return -1; 1302 return -1;
@@ -1339,20 +1324,16 @@ static int btrfsic_create_link_to_next_block(
1339 "Referenced block @%llu (%s/%llu/%d)" 1324 "Referenced block @%llu (%s/%llu/%d)"
1340 " found in hash table, %c," 1325 " found in hash table, %c,"
1341 " bytenr mismatch (!= stored %llu).\n", 1326 " bytenr mismatch (!= stored %llu).\n",
1342 (unsigned long long)next_bytenr, 1327 next_bytenr, next_block_ctx->dev->name,
1343 next_block_ctx->dev->name, 1328 next_block_ctx->dev_bytenr, *mirror_nump,
1344 (unsigned long long)next_block_ctx->dev_bytenr,
1345 *mirror_nump,
1346 btrfsic_get_block_type(state, next_block), 1329 btrfsic_get_block_type(state, next_block),
1347 (unsigned long long)next_block->logical_bytenr); 1330 next_block->logical_bytenr);
1348 } else if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE) 1331 } else if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE)
1349 printk(KERN_INFO 1332 printk(KERN_INFO
1350 "Referenced block @%llu (%s/%llu/%d)" 1333 "Referenced block @%llu (%s/%llu/%d)"
1351 " found in hash table, %c.\n", 1334 " found in hash table, %c.\n",
1352 (unsigned long long)next_bytenr, 1335 next_bytenr, next_block_ctx->dev->name,
1353 next_block_ctx->dev->name, 1336 next_block_ctx->dev_bytenr, *mirror_nump,
1354 (unsigned long long)next_block_ctx->dev_bytenr,
1355 *mirror_nump,
1356 btrfsic_get_block_type(state, next_block)); 1337 btrfsic_get_block_type(state, next_block));
1357 next_block->logical_bytenr = next_bytenr; 1338 next_block->logical_bytenr = next_bytenr;
1358 1339
@@ -1404,7 +1385,7 @@ static int btrfsic_create_link_to_next_block(
1404 if (ret < (int)next_block_ctx->len) { 1385 if (ret < (int)next_block_ctx->len) {
1405 printk(KERN_INFO 1386 printk(KERN_INFO
1406 "btrfsic: read block @logical %llu failed!\n", 1387 "btrfsic: read block @logical %llu failed!\n",
1407 (unsigned long long)next_bytenr); 1388 next_bytenr);
1408 btrfsic_release_block_ctx(next_block_ctx); 1389 btrfsic_release_block_ctx(next_block_ctx);
1409 *next_blockp = NULL; 1390 *next_blockp = NULL;
1410 return -1; 1391 return -1;
@@ -1452,7 +1433,6 @@ static int btrfsic_handle_extent_data(
1452 if (state->print_mask & BTRFSIC_PRINT_MASK_VERY_VERBOSE) 1433 if (state->print_mask & BTRFSIC_PRINT_MASK_VERY_VERBOSE)
1453 printk(KERN_INFO "extent_data: type %u, disk_bytenr = %llu\n", 1434 printk(KERN_INFO "extent_data: type %u, disk_bytenr = %llu\n",
1454 file_extent_item.type, 1435 file_extent_item.type,
1455 (unsigned long long)
1456 btrfs_stack_file_extent_disk_bytenr( 1436 btrfs_stack_file_extent_disk_bytenr(
1457 &file_extent_item)); 1437 &file_extent_item));
1458 return 0; 1438 return 0;
@@ -1478,11 +1458,9 @@ static int btrfsic_handle_extent_data(
1478 printk(KERN_INFO "extent_data: type %u, disk_bytenr = %llu," 1458 printk(KERN_INFO "extent_data: type %u, disk_bytenr = %llu,"
1479 " offset = %llu, num_bytes = %llu\n", 1459 " offset = %llu, num_bytes = %llu\n",
1480 file_extent_item.type, 1460 file_extent_item.type,
1481 (unsigned long long)
1482 btrfs_stack_file_extent_disk_bytenr(&file_extent_item), 1461 btrfs_stack_file_extent_disk_bytenr(&file_extent_item),
1483 (unsigned long long)
1484 btrfs_stack_file_extent_offset(&file_extent_item), 1462 btrfs_stack_file_extent_offset(&file_extent_item),
1485 (unsigned long long)num_bytes); 1463 num_bytes);
1486 while (num_bytes > 0) { 1464 while (num_bytes > 0) {
1487 u32 chunk_len; 1465 u32 chunk_len;
1488 int num_copies; 1466 int num_copies;
@@ -1498,7 +1476,7 @@ static int btrfsic_handle_extent_data(
1498 next_bytenr, state->datablock_size); 1476 next_bytenr, state->datablock_size);
1499 if (state->print_mask & BTRFSIC_PRINT_MASK_NUM_COPIES) 1477 if (state->print_mask & BTRFSIC_PRINT_MASK_NUM_COPIES)
1500 printk(KERN_INFO "num_copies(log_bytenr=%llu) = %d\n", 1478 printk(KERN_INFO "num_copies(log_bytenr=%llu) = %d\n",
1501 (unsigned long long)next_bytenr, num_copies); 1479 next_bytenr, num_copies);
1502 for (mirror_num = 1; mirror_num <= num_copies; mirror_num++) { 1480 for (mirror_num = 1; mirror_num <= num_copies; mirror_num++) {
1503 struct btrfsic_block_data_ctx next_block_ctx; 1481 struct btrfsic_block_data_ctx next_block_ctx;
1504 struct btrfsic_block *next_block; 1482 struct btrfsic_block *next_block;
@@ -1510,8 +1488,7 @@ static int btrfsic_handle_extent_data(
1510 if (state->print_mask & BTRFSIC_PRINT_MASK_VERY_VERBOSE) 1488 if (state->print_mask & BTRFSIC_PRINT_MASK_VERY_VERBOSE)
1511 printk(KERN_INFO 1489 printk(KERN_INFO
1512 "\tdisk_bytenr = %llu, num_bytes %u\n", 1490 "\tdisk_bytenr = %llu, num_bytes %u\n",
1513 (unsigned long long)next_bytenr, 1491 next_bytenr, chunk_len);
1514 chunk_len);
1515 ret = btrfsic_map_block(state, next_bytenr, 1492 ret = btrfsic_map_block(state, next_bytenr,
1516 chunk_len, &next_block_ctx, 1493 chunk_len, &next_block_ctx,
1517 mirror_num); 1494 mirror_num);
@@ -1519,8 +1496,7 @@ static int btrfsic_handle_extent_data(
1519 printk(KERN_INFO 1496 printk(KERN_INFO
1520 "btrfsic: btrfsic_map_block(@%llu," 1497 "btrfsic: btrfsic_map_block(@%llu,"
1521 " mirror=%d) failed!\n", 1498 " mirror=%d) failed!\n",
1522 (unsigned long long)next_bytenr, 1499 next_bytenr, mirror_num);
1523 mirror_num);
1524 return -1; 1500 return -1;
1525 } 1501 }
1526 1502
@@ -1549,12 +1525,10 @@ static int btrfsic_handle_extent_data(
1549 " found in hash table, D," 1525 " found in hash table, D,"
1550 " bytenr mismatch" 1526 " bytenr mismatch"
1551 " (!= stored %llu).\n", 1527 " (!= stored %llu).\n",
1552 (unsigned long long)next_bytenr, 1528 next_bytenr,
1553 next_block_ctx.dev->name, 1529 next_block_ctx.dev->name,
1554 (unsigned long long)
1555 next_block_ctx.dev_bytenr, 1530 next_block_ctx.dev_bytenr,
1556 mirror_num, 1531 mirror_num,
1557 (unsigned long long)
1558 next_block->logical_bytenr); 1532 next_block->logical_bytenr);
1559 } 1533 }
1560 next_block->logical_bytenr = next_bytenr; 1534 next_block->logical_bytenr = next_bytenr;
@@ -1681,7 +1655,7 @@ static int btrfsic_read_block(struct btrfsic_state *state,
1681 if (block_ctx->dev_bytenr & ((u64)PAGE_CACHE_SIZE - 1)) { 1655 if (block_ctx->dev_bytenr & ((u64)PAGE_CACHE_SIZE - 1)) {
1682 printk(KERN_INFO 1656 printk(KERN_INFO
1683 "btrfsic: read_block() with unaligned bytenr %llu\n", 1657 "btrfsic: read_block() with unaligned bytenr %llu\n",
1684 (unsigned long long)block_ctx->dev_bytenr); 1658 block_ctx->dev_bytenr);
1685 return -1; 1659 return -1;
1686 } 1660 }
1687 1661
@@ -1778,10 +1752,8 @@ static void btrfsic_dump_database(struct btrfsic_state *state)
1778 1752
1779 printk(KERN_INFO "%c-block @%llu (%s/%llu/%d)\n", 1753 printk(KERN_INFO "%c-block @%llu (%s/%llu/%d)\n",
1780 btrfsic_get_block_type(state, b_all), 1754 btrfsic_get_block_type(state, b_all),
1781 (unsigned long long)b_all->logical_bytenr, 1755 b_all->logical_bytenr, b_all->dev_state->name,
1782 b_all->dev_state->name, 1756 b_all->dev_bytenr, b_all->mirror_num);
1783 (unsigned long long)b_all->dev_bytenr,
1784 b_all->mirror_num);
1785 1757
1786 list_for_each(elem_ref_to, &b_all->ref_to_list) { 1758 list_for_each(elem_ref_to, &b_all->ref_to_list) {
1787 const struct btrfsic_block_link *const l = 1759 const struct btrfsic_block_link *const l =
@@ -1793,16 +1765,13 @@ static void btrfsic_dump_database(struct btrfsic_state *state)
1793 " refers %u* to" 1765 " refers %u* to"
1794 " %c @%llu (%s/%llu/%d)\n", 1766 " %c @%llu (%s/%llu/%d)\n",
1795 btrfsic_get_block_type(state, b_all), 1767 btrfsic_get_block_type(state, b_all),
1796 (unsigned long long)b_all->logical_bytenr, 1768 b_all->logical_bytenr, b_all->dev_state->name,
1797 b_all->dev_state->name, 1769 b_all->dev_bytenr, b_all->mirror_num,
1798 (unsigned long long)b_all->dev_bytenr,
1799 b_all->mirror_num,
1800 l->ref_cnt, 1770 l->ref_cnt,
1801 btrfsic_get_block_type(state, l->block_ref_to), 1771 btrfsic_get_block_type(state, l->block_ref_to),
1802 (unsigned long long)
1803 l->block_ref_to->logical_bytenr, 1772 l->block_ref_to->logical_bytenr,
1804 l->block_ref_to->dev_state->name, 1773 l->block_ref_to->dev_state->name,
1805 (unsigned long long)l->block_ref_to->dev_bytenr, 1774 l->block_ref_to->dev_bytenr,
1806 l->block_ref_to->mirror_num); 1775 l->block_ref_to->mirror_num);
1807 } 1776 }
1808 1777
@@ -1816,16 +1785,12 @@ static void btrfsic_dump_database(struct btrfsic_state *state)
1816 " is ref %u* from" 1785 " is ref %u* from"
1817 " %c @%llu (%s/%llu/%d)\n", 1786 " %c @%llu (%s/%llu/%d)\n",
1818 btrfsic_get_block_type(state, b_all), 1787 btrfsic_get_block_type(state, b_all),
1819 (unsigned long long)b_all->logical_bytenr, 1788 b_all->logical_bytenr, b_all->dev_state->name,
1820 b_all->dev_state->name, 1789 b_all->dev_bytenr, b_all->mirror_num,
1821 (unsigned long long)b_all->dev_bytenr,
1822 b_all->mirror_num,
1823 l->ref_cnt, 1790 l->ref_cnt,
1824 btrfsic_get_block_type(state, l->block_ref_from), 1791 btrfsic_get_block_type(state, l->block_ref_from),
1825 (unsigned long long)
1826 l->block_ref_from->logical_bytenr, 1792 l->block_ref_from->logical_bytenr,
1827 l->block_ref_from->dev_state->name, 1793 l->block_ref_from->dev_state->name,
1828 (unsigned long long)
1829 l->block_ref_from->dev_bytenr, 1794 l->block_ref_from->dev_bytenr,
1830 l->block_ref_from->mirror_num); 1795 l->block_ref_from->mirror_num);
1831 } 1796 }
@@ -1942,12 +1907,9 @@ again:
1942 " found in hash table, %c," 1907 " found in hash table, %c,"
1943 " bytenr mismatch" 1908 " bytenr mismatch"
1944 " (!= stored %llu).\n", 1909 " (!= stored %llu).\n",
1945 (unsigned long long)bytenr, 1910 bytenr, dev_state->name, dev_bytenr,
1946 dev_state->name,
1947 (unsigned long long)dev_bytenr,
1948 block->mirror_num, 1911 block->mirror_num,
1949 btrfsic_get_block_type(state, block), 1912 btrfsic_get_block_type(state, block),
1950 (unsigned long long)
1951 block->logical_bytenr); 1913 block->logical_bytenr);
1952 block->logical_bytenr = bytenr; 1914 block->logical_bytenr = bytenr;
1953 } else if (state->print_mask & 1915 } else if (state->print_mask &
@@ -1955,9 +1917,7 @@ again:
1955 printk(KERN_INFO 1917 printk(KERN_INFO
1956 "Written block @%llu (%s/%llu/%d)" 1918 "Written block @%llu (%s/%llu/%d)"
1957 " found in hash table, %c.\n", 1919 " found in hash table, %c.\n",
1958 (unsigned long long)bytenr, 1920 bytenr, dev_state->name, dev_bytenr,
1959 dev_state->name,
1960 (unsigned long long)dev_bytenr,
1961 block->mirror_num, 1921 block->mirror_num,
1962 btrfsic_get_block_type(state, block)); 1922 btrfsic_get_block_type(state, block));
1963 } else { 1923 } else {
@@ -1973,9 +1933,7 @@ again:
1973 printk(KERN_INFO 1933 printk(KERN_INFO
1974 "Written block @%llu (%s/%llu/%d)" 1934 "Written block @%llu (%s/%llu/%d)"
1975 " found in hash table, %c.\n", 1935 " found in hash table, %c.\n",
1976 (unsigned long long)bytenr, 1936 bytenr, dev_state->name, dev_bytenr,
1977 dev_state->name,
1978 (unsigned long long)dev_bytenr,
1979 block->mirror_num, 1937 block->mirror_num,
1980 btrfsic_get_block_type(state, block)); 1938 btrfsic_get_block_type(state, block));
1981 } 1939 }
@@ -1992,21 +1950,14 @@ again:
1992 " new(gen=%llu)," 1950 " new(gen=%llu),"
1993 " which is referenced by most recent superblock" 1951 " which is referenced by most recent superblock"
1994 " (superblockgen=%llu)!\n", 1952 " (superblockgen=%llu)!\n",
1995 btrfsic_get_block_type(state, block), 1953 btrfsic_get_block_type(state, block), bytenr,
1996 (unsigned long long)bytenr, 1954 dev_state->name, dev_bytenr, block->mirror_num,
1997 dev_state->name, 1955 block->generation,
1998 (unsigned long long)dev_bytenr,
1999 block->mirror_num,
2000 (unsigned long long)block->generation,
2001 (unsigned long long)
2002 btrfs_disk_key_objectid(&block->disk_key), 1956 btrfs_disk_key_objectid(&block->disk_key),
2003 block->disk_key.type, 1957 block->disk_key.type,
2004 (unsigned long long)
2005 btrfs_disk_key_offset(&block->disk_key), 1958 btrfs_disk_key_offset(&block->disk_key),
2006 (unsigned long long)
2007 btrfs_stack_header_generation( 1959 btrfs_stack_header_generation(
2008 (struct btrfs_header *) mapped_datav[0]), 1960 (struct btrfs_header *) mapped_datav[0]),
2009 (unsigned long long)
2010 state->max_superblock_generation); 1961 state->max_superblock_generation);
2011 btrfsic_dump_tree(state); 1962 btrfsic_dump_tree(state);
2012 } 1963 }
@@ -2015,13 +1966,9 @@ again:
2015 printk(KERN_INFO "btrfs: attempt to overwrite %c-block" 1966 printk(KERN_INFO "btrfs: attempt to overwrite %c-block"
2016 " @%llu (%s/%llu/%d), oldgen=%llu, newgen=%llu," 1967 " @%llu (%s/%llu/%d), oldgen=%llu, newgen=%llu,"
2017 " which is not yet iodone!\n", 1968 " which is not yet iodone!\n",
2018 btrfsic_get_block_type(state, block), 1969 btrfsic_get_block_type(state, block), bytenr,
2019 (unsigned long long)bytenr, 1970 dev_state->name, dev_bytenr, block->mirror_num,
2020 dev_state->name, 1971 block->generation,
2021 (unsigned long long)dev_bytenr,
2022 block->mirror_num,
2023 (unsigned long long)block->generation,
2024 (unsigned long long)
2025 btrfs_stack_header_generation( 1972 btrfs_stack_header_generation(
2026 (struct btrfs_header *) 1973 (struct btrfs_header *)
2027 mapped_datav[0])); 1974 mapped_datav[0]));
@@ -2064,7 +2011,7 @@ again:
2064 if (ret) { 2011 if (ret) {
2065 printk(KERN_INFO 2012 printk(KERN_INFO
2066 "btrfsic: btrfsic_map_block(root @%llu)" 2013 "btrfsic: btrfsic_map_block(root @%llu)"
2067 " failed!\n", (unsigned long long)bytenr); 2014 " failed!\n", bytenr);
2068 goto continue_loop; 2015 goto continue_loop;
2069 } 2016 }
2070 block_ctx.datav = mapped_datav; 2017 block_ctx.datav = mapped_datav;
@@ -2148,7 +2095,7 @@ again:
2148 printk(KERN_INFO 2095 printk(KERN_INFO
2149 "btrfsic: btrfsic_process_metablock" 2096 "btrfsic: btrfsic_process_metablock"
2150 "(root @%llu) failed!\n", 2097 "(root @%llu) failed!\n",
2151 (unsigned long long)dev_bytenr); 2098 dev_bytenr);
2152 } else { 2099 } else {
2153 block->is_metadata = 0; 2100 block->is_metadata = 0;
2154 block->mirror_num = 0; /* unknown */ 2101 block->mirror_num = 0; /* unknown */
@@ -2176,8 +2123,7 @@ again:
2176 if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE) 2123 if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE)
2177 printk(KERN_INFO "Written block (%s/%llu/?)" 2124 printk(KERN_INFO "Written block (%s/%llu/?)"
2178 " !found in hash table, D.\n", 2125 " !found in hash table, D.\n",
2179 dev_state->name, 2126 dev_state->name, dev_bytenr);
2180 (unsigned long long)dev_bytenr);
2181 if (!state->include_extent_data) { 2127 if (!state->include_extent_data) {
2182 /* ignore that written D block */ 2128 /* ignore that written D block */
2183 goto continue_loop; 2129 goto continue_loop;
@@ -2201,9 +2147,7 @@ again:
2201 printk(KERN_INFO 2147 printk(KERN_INFO
2202 "Written block @%llu (%s/%llu/?)" 2148 "Written block @%llu (%s/%llu/?)"
2203 " !found in hash table, M.\n", 2149 " !found in hash table, M.\n",
2204 (unsigned long long)bytenr, 2150 bytenr, dev_state->name, dev_bytenr);
2205 dev_state->name,
2206 (unsigned long long)dev_bytenr);
2207 2151
2208 ret = btrfsic_map_block(state, bytenr, processed_len, 2152 ret = btrfsic_map_block(state, bytenr, processed_len,
2209 &block_ctx, 0); 2153 &block_ctx, 0);
@@ -2211,7 +2155,7 @@ again:
2211 printk(KERN_INFO 2155 printk(KERN_INFO
2212 "btrfsic: btrfsic_map_block(root @%llu)" 2156 "btrfsic: btrfsic_map_block(root @%llu)"
2213 " failed!\n", 2157 " failed!\n",
2214 (unsigned long long)dev_bytenr); 2158 dev_bytenr);
2215 goto continue_loop; 2159 goto continue_loop;
2216 } 2160 }
2217 } 2161 }
@@ -2276,10 +2220,8 @@ again:
2276 printk(KERN_INFO 2220 printk(KERN_INFO
2277 "New written %c-block @%llu (%s/%llu/%d)\n", 2221 "New written %c-block @%llu (%s/%llu/%d)\n",
2278 is_metadata ? 'M' : 'D', 2222 is_metadata ? 'M' : 'D',
2279 (unsigned long long)block->logical_bytenr, 2223 block->logical_bytenr, block->dev_state->name,
2280 block->dev_state->name, 2224 block->dev_bytenr, block->mirror_num);
2281 (unsigned long long)block->dev_bytenr,
2282 block->mirror_num);
2283 list_add(&block->all_blocks_node, &state->all_blocks_list); 2225 list_add(&block->all_blocks_node, &state->all_blocks_list);
2284 btrfsic_block_hashtable_add(block, &state->block_hashtable); 2226 btrfsic_block_hashtable_add(block, &state->block_hashtable);
2285 2227
@@ -2290,7 +2232,7 @@ again:
2290 printk(KERN_INFO 2232 printk(KERN_INFO
2291 "btrfsic: process_metablock(root @%llu)" 2233 "btrfsic: process_metablock(root @%llu)"
2292 " failed!\n", 2234 " failed!\n",
2293 (unsigned long long)dev_bytenr); 2235 dev_bytenr);
2294 } 2236 }
2295 btrfsic_release_block_ctx(&block_ctx); 2237 btrfsic_release_block_ctx(&block_ctx);
2296 } 2238 }
@@ -2328,10 +2270,8 @@ static void btrfsic_bio_end_io(struct bio *bp, int bio_error_status)
2328 "bio_end_io(err=%d) for %c @%llu (%s/%llu/%d)\n", 2270 "bio_end_io(err=%d) for %c @%llu (%s/%llu/%d)\n",
2329 bio_error_status, 2271 bio_error_status,
2330 btrfsic_get_block_type(dev_state->state, block), 2272 btrfsic_get_block_type(dev_state->state, block),
2331 (unsigned long long)block->logical_bytenr, 2273 block->logical_bytenr, dev_state->name,
2332 dev_state->name, 2274 block->dev_bytenr, block->mirror_num);
2333 (unsigned long long)block->dev_bytenr,
2334 block->mirror_num);
2335 next_block = block->next_in_same_bio; 2275 next_block = block->next_in_same_bio;
2336 block->iodone_w_error = iodone_w_error; 2276 block->iodone_w_error = iodone_w_error;
2337 if (block->submit_bio_bh_rw & REQ_FLUSH) { 2277 if (block->submit_bio_bh_rw & REQ_FLUSH) {
@@ -2341,7 +2281,6 @@ static void btrfsic_bio_end_io(struct bio *bp, int bio_error_status)
2341 printk(KERN_INFO 2281 printk(KERN_INFO
2342 "bio_end_io() new %s flush_gen=%llu\n", 2282 "bio_end_io() new %s flush_gen=%llu\n",
2343 dev_state->name, 2283 dev_state->name,
2344 (unsigned long long)
2345 dev_state->last_flush_gen); 2284 dev_state->last_flush_gen);
2346 } 2285 }
2347 if (block->submit_bio_bh_rw & REQ_FUA) 2286 if (block->submit_bio_bh_rw & REQ_FUA)
@@ -2367,10 +2306,8 @@ static void btrfsic_bh_end_io(struct buffer_head *bh, int uptodate)
2367 "bh_end_io(error=%d) for %c @%llu (%s/%llu/%d)\n", 2306 "bh_end_io(error=%d) for %c @%llu (%s/%llu/%d)\n",
2368 iodone_w_error, 2307 iodone_w_error,
2369 btrfsic_get_block_type(dev_state->state, block), 2308 btrfsic_get_block_type(dev_state->state, block),
2370 (unsigned long long)block->logical_bytenr, 2309 block->logical_bytenr, block->dev_state->name,
2371 block->dev_state->name, 2310 block->dev_bytenr, block->mirror_num);
2372 (unsigned long long)block->dev_bytenr,
2373 block->mirror_num);
2374 2311
2375 block->iodone_w_error = iodone_w_error; 2312 block->iodone_w_error = iodone_w_error;
2376 if (block->submit_bio_bh_rw & REQ_FLUSH) { 2313 if (block->submit_bio_bh_rw & REQ_FLUSH) {
@@ -2379,8 +2316,7 @@ static void btrfsic_bh_end_io(struct buffer_head *bh, int uptodate)
2379 BTRFSIC_PRINT_MASK_END_IO_BIO_BH)) 2316 BTRFSIC_PRINT_MASK_END_IO_BIO_BH))
2380 printk(KERN_INFO 2317 printk(KERN_INFO
2381 "bh_end_io() new %s flush_gen=%llu\n", 2318 "bh_end_io() new %s flush_gen=%llu\n",
2382 dev_state->name, 2319 dev_state->name, dev_state->last_flush_gen);
2383 (unsigned long long)dev_state->last_flush_gen);
2384 } 2320 }
2385 if (block->submit_bio_bh_rw & REQ_FUA) 2321 if (block->submit_bio_bh_rw & REQ_FUA)
2386 block->flush_gen = 0; /* FUA completed means block is on disk */ 2322 block->flush_gen = 0; /* FUA completed means block is on disk */
@@ -2405,26 +2341,20 @@ static int btrfsic_process_written_superblock(
2405 printk(KERN_INFO 2341 printk(KERN_INFO
2406 "btrfsic: superblock @%llu (%s/%llu/%d)" 2342 "btrfsic: superblock @%llu (%s/%llu/%d)"
2407 " with old gen %llu <= %llu\n", 2343 " with old gen %llu <= %llu\n",
2408 (unsigned long long)superblock->logical_bytenr, 2344 superblock->logical_bytenr,
2409 superblock->dev_state->name, 2345 superblock->dev_state->name,
2410 (unsigned long long)superblock->dev_bytenr, 2346 superblock->dev_bytenr, superblock->mirror_num,
2411 superblock->mirror_num,
2412 (unsigned long long)
2413 btrfs_super_generation(super_hdr), 2347 btrfs_super_generation(super_hdr),
2414 (unsigned long long)
2415 state->max_superblock_generation); 2348 state->max_superblock_generation);
2416 } else { 2349 } else {
2417 if (state->print_mask & BTRFSIC_PRINT_MASK_SUPERBLOCK_WRITE) 2350 if (state->print_mask & BTRFSIC_PRINT_MASK_SUPERBLOCK_WRITE)
2418 printk(KERN_INFO 2351 printk(KERN_INFO
2419 "btrfsic: got new superblock @%llu (%s/%llu/%d)" 2352 "btrfsic: got new superblock @%llu (%s/%llu/%d)"
2420 " with new gen %llu > %llu\n", 2353 " with new gen %llu > %llu\n",
2421 (unsigned long long)superblock->logical_bytenr, 2354 superblock->logical_bytenr,
2422 superblock->dev_state->name, 2355 superblock->dev_state->name,
2423 (unsigned long long)superblock->dev_bytenr, 2356 superblock->dev_bytenr, superblock->mirror_num,
2424 superblock->mirror_num,
2425 (unsigned long long)
2426 btrfs_super_generation(super_hdr), 2357 btrfs_super_generation(super_hdr),
2427 (unsigned long long)
2428 state->max_superblock_generation); 2358 state->max_superblock_generation);
2429 2359
2430 state->max_superblock_generation = 2360 state->max_superblock_generation =
@@ -2455,8 +2385,7 @@ static int btrfsic_process_written_superblock(
2455 next_bytenr = btrfs_super_root(super_hdr); 2385 next_bytenr = btrfs_super_root(super_hdr);
2456 if (state->print_mask & 2386 if (state->print_mask &
2457 BTRFSIC_PRINT_MASK_ROOT_CHUNK_LOG_TREE_LOCATION) 2387 BTRFSIC_PRINT_MASK_ROOT_CHUNK_LOG_TREE_LOCATION)
2458 printk(KERN_INFO "root@%llu\n", 2388 printk(KERN_INFO "root@%llu\n", next_bytenr);
2459 (unsigned long long)next_bytenr);
2460 break; 2389 break;
2461 case 1: 2390 case 1:
2462 btrfs_set_disk_key_objectid(&tmp_disk_key, 2391 btrfs_set_disk_key_objectid(&tmp_disk_key,
@@ -2465,8 +2394,7 @@ static int btrfsic_process_written_superblock(
2465 next_bytenr = btrfs_super_chunk_root(super_hdr); 2394 next_bytenr = btrfs_super_chunk_root(super_hdr);
2466 if (state->print_mask & 2395 if (state->print_mask &
2467 BTRFSIC_PRINT_MASK_ROOT_CHUNK_LOG_TREE_LOCATION) 2396 BTRFSIC_PRINT_MASK_ROOT_CHUNK_LOG_TREE_LOCATION)
2468 printk(KERN_INFO "chunk@%llu\n", 2397 printk(KERN_INFO "chunk@%llu\n", next_bytenr);
2469 (unsigned long long)next_bytenr);
2470 break; 2398 break;
2471 case 2: 2399 case 2:
2472 btrfs_set_disk_key_objectid(&tmp_disk_key, 2400 btrfs_set_disk_key_objectid(&tmp_disk_key,
@@ -2477,8 +2405,7 @@ static int btrfsic_process_written_superblock(
2477 continue; 2405 continue;
2478 if (state->print_mask & 2406 if (state->print_mask &
2479 BTRFSIC_PRINT_MASK_ROOT_CHUNK_LOG_TREE_LOCATION) 2407 BTRFSIC_PRINT_MASK_ROOT_CHUNK_LOG_TREE_LOCATION)
2480 printk(KERN_INFO "log@%llu\n", 2408 printk(KERN_INFO "log@%llu\n", next_bytenr);
2481 (unsigned long long)next_bytenr);
2482 break; 2409 break;
2483 } 2410 }
2484 2411
@@ -2487,7 +2414,7 @@ static int btrfsic_process_written_superblock(
2487 next_bytenr, BTRFS_SUPER_INFO_SIZE); 2414 next_bytenr, BTRFS_SUPER_INFO_SIZE);
2488 if (state->print_mask & BTRFSIC_PRINT_MASK_NUM_COPIES) 2415 if (state->print_mask & BTRFSIC_PRINT_MASK_NUM_COPIES)
2489 printk(KERN_INFO "num_copies(log_bytenr=%llu) = %d\n", 2416 printk(KERN_INFO "num_copies(log_bytenr=%llu) = %d\n",
2490 (unsigned long long)next_bytenr, num_copies); 2417 next_bytenr, num_copies);
2491 for (mirror_num = 1; mirror_num <= num_copies; mirror_num++) { 2418 for (mirror_num = 1; mirror_num <= num_copies; mirror_num++) {
2492 int was_created; 2419 int was_created;
2493 2420
@@ -2503,8 +2430,7 @@ static int btrfsic_process_written_superblock(
2503 printk(KERN_INFO 2430 printk(KERN_INFO
2504 "btrfsic: btrfsic_map_block(@%llu," 2431 "btrfsic: btrfsic_map_block(@%llu,"
2505 " mirror=%d) failed!\n", 2432 " mirror=%d) failed!\n",
2506 (unsigned long long)next_bytenr, 2433 next_bytenr, mirror_num);
2507 mirror_num);
2508 return -1; 2434 return -1;
2509 } 2435 }
2510 2436
@@ -2589,26 +2515,22 @@ static int btrfsic_check_all_ref_blocks(struct btrfsic_state *state,
2589 " %u* refers to %c @%llu (%s/%llu/%d)\n", 2515 " %u* refers to %c @%llu (%s/%llu/%d)\n",
2590 recursion_level, 2516 recursion_level,
2591 btrfsic_get_block_type(state, block), 2517 btrfsic_get_block_type(state, block),
2592 (unsigned long long)block->logical_bytenr, 2518 block->logical_bytenr, block->dev_state->name,
2593 block->dev_state->name, 2519 block->dev_bytenr, block->mirror_num,
2594 (unsigned long long)block->dev_bytenr,
2595 block->mirror_num,
2596 l->ref_cnt, 2520 l->ref_cnt,
2597 btrfsic_get_block_type(state, l->block_ref_to), 2521 btrfsic_get_block_type(state, l->block_ref_to),
2598 (unsigned long long)
2599 l->block_ref_to->logical_bytenr, 2522 l->block_ref_to->logical_bytenr,
2600 l->block_ref_to->dev_state->name, 2523 l->block_ref_to->dev_state->name,
2601 (unsigned long long)l->block_ref_to->dev_bytenr, 2524 l->block_ref_to->dev_bytenr,
2602 l->block_ref_to->mirror_num); 2525 l->block_ref_to->mirror_num);
2603 if (l->block_ref_to->never_written) { 2526 if (l->block_ref_to->never_written) {
2604 printk(KERN_INFO "btrfs: attempt to write superblock" 2527 printk(KERN_INFO "btrfs: attempt to write superblock"
2605 " which references block %c @%llu (%s/%llu/%d)" 2528 " which references block %c @%llu (%s/%llu/%d)"
2606 " which is never written!\n", 2529 " which is never written!\n",
2607 btrfsic_get_block_type(state, l->block_ref_to), 2530 btrfsic_get_block_type(state, l->block_ref_to),
2608 (unsigned long long)
2609 l->block_ref_to->logical_bytenr, 2531 l->block_ref_to->logical_bytenr,
2610 l->block_ref_to->dev_state->name, 2532 l->block_ref_to->dev_state->name,
2611 (unsigned long long)l->block_ref_to->dev_bytenr, 2533 l->block_ref_to->dev_bytenr,
2612 l->block_ref_to->mirror_num); 2534 l->block_ref_to->mirror_num);
2613 ret = -1; 2535 ret = -1;
2614 } else if (!l->block_ref_to->is_iodone) { 2536 } else if (!l->block_ref_to->is_iodone) {
@@ -2616,10 +2538,9 @@ static int btrfsic_check_all_ref_blocks(struct btrfsic_state *state,
2616 " which references block %c @%llu (%s/%llu/%d)" 2538 " which references block %c @%llu (%s/%llu/%d)"
2617 " which is not yet iodone!\n", 2539 " which is not yet iodone!\n",
2618 btrfsic_get_block_type(state, l->block_ref_to), 2540 btrfsic_get_block_type(state, l->block_ref_to),
2619 (unsigned long long)
2620 l->block_ref_to->logical_bytenr, 2541 l->block_ref_to->logical_bytenr,
2621 l->block_ref_to->dev_state->name, 2542 l->block_ref_to->dev_state->name,
2622 (unsigned long long)l->block_ref_to->dev_bytenr, 2543 l->block_ref_to->dev_bytenr,
2623 l->block_ref_to->mirror_num); 2544 l->block_ref_to->mirror_num);
2624 ret = -1; 2545 ret = -1;
2625 } else if (l->block_ref_to->iodone_w_error) { 2546 } else if (l->block_ref_to->iodone_w_error) {
@@ -2627,10 +2548,9 @@ static int btrfsic_check_all_ref_blocks(struct btrfsic_state *state,
2627 " which references block %c @%llu (%s/%llu/%d)" 2548 " which references block %c @%llu (%s/%llu/%d)"
2628 " which has write error!\n", 2549 " which has write error!\n",
2629 btrfsic_get_block_type(state, l->block_ref_to), 2550 btrfsic_get_block_type(state, l->block_ref_to),
2630 (unsigned long long)
2631 l->block_ref_to->logical_bytenr, 2551 l->block_ref_to->logical_bytenr,
2632 l->block_ref_to->dev_state->name, 2552 l->block_ref_to->dev_state->name,
2633 (unsigned long long)l->block_ref_to->dev_bytenr, 2553 l->block_ref_to->dev_bytenr,
2634 l->block_ref_to->mirror_num); 2554 l->block_ref_to->mirror_num);
2635 ret = -1; 2555 ret = -1;
2636 } else if (l->parent_generation != 2556 } else if (l->parent_generation !=
@@ -2644,13 +2564,12 @@ static int btrfsic_check_all_ref_blocks(struct btrfsic_state *state,
2644 " with generation %llu !=" 2564 " with generation %llu !="
2645 " parent generation %llu!\n", 2565 " parent generation %llu!\n",
2646 btrfsic_get_block_type(state, l->block_ref_to), 2566 btrfsic_get_block_type(state, l->block_ref_to),
2647 (unsigned long long)
2648 l->block_ref_to->logical_bytenr, 2567 l->block_ref_to->logical_bytenr,
2649 l->block_ref_to->dev_state->name, 2568 l->block_ref_to->dev_state->name,
2650 (unsigned long long)l->block_ref_to->dev_bytenr, 2569 l->block_ref_to->dev_bytenr,
2651 l->block_ref_to->mirror_num, 2570 l->block_ref_to->mirror_num,
2652 (unsigned long long)l->block_ref_to->generation, 2571 l->block_ref_to->generation,
2653 (unsigned long long)l->parent_generation); 2572 l->parent_generation);
2654 ret = -1; 2573 ret = -1;
2655 } else if (l->block_ref_to->flush_gen > 2574 } else if (l->block_ref_to->flush_gen >
2656 l->block_ref_to->dev_state->last_flush_gen) { 2575 l->block_ref_to->dev_state->last_flush_gen) {
@@ -2660,13 +2579,10 @@ static int btrfsic_check_all_ref_blocks(struct btrfsic_state *state,
2660 " (block flush_gen=%llu," 2579 " (block flush_gen=%llu,"
2661 " dev->flush_gen=%llu)!\n", 2580 " dev->flush_gen=%llu)!\n",
2662 btrfsic_get_block_type(state, l->block_ref_to), 2581 btrfsic_get_block_type(state, l->block_ref_to),
2663 (unsigned long long)
2664 l->block_ref_to->logical_bytenr, 2582 l->block_ref_to->logical_bytenr,
2665 l->block_ref_to->dev_state->name, 2583 l->block_ref_to->dev_state->name,
2666 (unsigned long long)l->block_ref_to->dev_bytenr, 2584 l->block_ref_to->dev_bytenr,
2667 l->block_ref_to->mirror_num, 2585 l->block_ref_to->mirror_num, block->flush_gen,
2668 (unsigned long long)block->flush_gen,
2669 (unsigned long long)
2670 l->block_ref_to->dev_state->last_flush_gen); 2586 l->block_ref_to->dev_state->last_flush_gen);
2671 ret = -1; 2587 ret = -1;
2672 } else if (-1 == btrfsic_check_all_ref_blocks(state, 2588 } else if (-1 == btrfsic_check_all_ref_blocks(state,
@@ -2711,16 +2627,12 @@ static int btrfsic_is_block_ref_by_superblock(
2711 " is ref %u* from %c @%llu (%s/%llu/%d)\n", 2627 " is ref %u* from %c @%llu (%s/%llu/%d)\n",
2712 recursion_level, 2628 recursion_level,
2713 btrfsic_get_block_type(state, block), 2629 btrfsic_get_block_type(state, block),
2714 (unsigned long long)block->logical_bytenr, 2630 block->logical_bytenr, block->dev_state->name,
2715 block->dev_state->name, 2631 block->dev_bytenr, block->mirror_num,
2716 (unsigned long long)block->dev_bytenr,
2717 block->mirror_num,
2718 l->ref_cnt, 2632 l->ref_cnt,
2719 btrfsic_get_block_type(state, l->block_ref_from), 2633 btrfsic_get_block_type(state, l->block_ref_from),
2720 (unsigned long long)
2721 l->block_ref_from->logical_bytenr, 2634 l->block_ref_from->logical_bytenr,
2722 l->block_ref_from->dev_state->name, 2635 l->block_ref_from->dev_state->name,
2723 (unsigned long long)
2724 l->block_ref_from->dev_bytenr, 2636 l->block_ref_from->dev_bytenr,
2725 l->block_ref_from->mirror_num); 2637 l->block_ref_from->mirror_num);
2726 if (l->block_ref_from->is_superblock && 2638 if (l->block_ref_from->is_superblock &&
@@ -2747,14 +2659,12 @@ static void btrfsic_print_add_link(const struct btrfsic_state *state,
2747 " to %c @%llu (%s/%llu/%d).\n", 2659 " to %c @%llu (%s/%llu/%d).\n",
2748 l->ref_cnt, 2660 l->ref_cnt,
2749 btrfsic_get_block_type(state, l->block_ref_from), 2661 btrfsic_get_block_type(state, l->block_ref_from),
2750 (unsigned long long)l->block_ref_from->logical_bytenr, 2662 l->block_ref_from->logical_bytenr,
2751 l->block_ref_from->dev_state->name, 2663 l->block_ref_from->dev_state->name,
2752 (unsigned long long)l->block_ref_from->dev_bytenr, 2664 l->block_ref_from->dev_bytenr, l->block_ref_from->mirror_num,
2753 l->block_ref_from->mirror_num,
2754 btrfsic_get_block_type(state, l->block_ref_to), 2665 btrfsic_get_block_type(state, l->block_ref_to),
2755 (unsigned long long)l->block_ref_to->logical_bytenr, 2666 l->block_ref_to->logical_bytenr,
2756 l->block_ref_to->dev_state->name, 2667 l->block_ref_to->dev_state->name, l->block_ref_to->dev_bytenr,
2757 (unsigned long long)l->block_ref_to->dev_bytenr,
2758 l->block_ref_to->mirror_num); 2668 l->block_ref_to->mirror_num);
2759} 2669}
2760 2670
@@ -2766,14 +2676,12 @@ static void btrfsic_print_rem_link(const struct btrfsic_state *state,
2766 " to %c @%llu (%s/%llu/%d).\n", 2676 " to %c @%llu (%s/%llu/%d).\n",
2767 l->ref_cnt, 2677 l->ref_cnt,
2768 btrfsic_get_block_type(state, l->block_ref_from), 2678 btrfsic_get_block_type(state, l->block_ref_from),
2769 (unsigned long long)l->block_ref_from->logical_bytenr, 2679 l->block_ref_from->logical_bytenr,
2770 l->block_ref_from->dev_state->name, 2680 l->block_ref_from->dev_state->name,
2771 (unsigned long long)l->block_ref_from->dev_bytenr, 2681 l->block_ref_from->dev_bytenr, l->block_ref_from->mirror_num,
2772 l->block_ref_from->mirror_num,
2773 btrfsic_get_block_type(state, l->block_ref_to), 2682 btrfsic_get_block_type(state, l->block_ref_to),
2774 (unsigned long long)l->block_ref_to->logical_bytenr, 2683 l->block_ref_to->logical_bytenr,
2775 l->block_ref_to->dev_state->name, 2684 l->block_ref_to->dev_state->name, l->block_ref_to->dev_bytenr,
2776 (unsigned long long)l->block_ref_to->dev_bytenr,
2777 l->block_ref_to->mirror_num); 2685 l->block_ref_to->mirror_num);
2778} 2686}
2779 2687
@@ -2817,10 +2725,8 @@ static void btrfsic_dump_tree_sub(const struct btrfsic_state *state,
2817 */ 2725 */
2818 indent_add = sprintf(buf, "%c-%llu(%s/%llu/%d)", 2726 indent_add = sprintf(buf, "%c-%llu(%s/%llu/%d)",
2819 btrfsic_get_block_type(state, block), 2727 btrfsic_get_block_type(state, block),
2820 (unsigned long long)block->logical_bytenr, 2728 block->logical_bytenr, block->dev_state->name,
2821 block->dev_state->name, 2729 block->dev_bytenr, block->mirror_num);
2822 (unsigned long long)block->dev_bytenr,
2823 block->mirror_num);
2824 if (indent_level + indent_add > BTRFSIC_TREE_DUMP_MAX_INDENT_LEVEL) { 2730 if (indent_level + indent_add > BTRFSIC_TREE_DUMP_MAX_INDENT_LEVEL) {
2825 printk("[...]\n"); 2731 printk("[...]\n");
2826 return; 2732 return;
@@ -2953,10 +2859,8 @@ static struct btrfsic_block *btrfsic_block_lookup_or_add(
2953 "New %s%c-block @%llu (%s/%llu/%d)\n", 2859 "New %s%c-block @%llu (%s/%llu/%d)\n",
2954 additional_string, 2860 additional_string,
2955 btrfsic_get_block_type(state, block), 2861 btrfsic_get_block_type(state, block),
2956 (unsigned long long)block->logical_bytenr, 2862 block->logical_bytenr, dev_state->name,
2957 dev_state->name, 2863 block->dev_bytenr, mirror_num);
2958 (unsigned long long)block->dev_bytenr,
2959 mirror_num);
2960 list_add(&block->all_blocks_node, &state->all_blocks_list); 2864 list_add(&block->all_blocks_node, &state->all_blocks_list);
2961 btrfsic_block_hashtable_add(block, &state->block_hashtable); 2865 btrfsic_block_hashtable_add(block, &state->block_hashtable);
2962 if (NULL != was_created) 2866 if (NULL != was_created)
@@ -2990,7 +2894,7 @@ static void btrfsic_cmp_log_and_dev_bytenr(struct btrfsic_state *state,
2990 printk(KERN_INFO "btrfsic:" 2894 printk(KERN_INFO "btrfsic:"
2991 " btrfsic_map_block(logical @%llu," 2895 " btrfsic_map_block(logical @%llu,"
2992 " mirror %d) failed!\n", 2896 " mirror %d) failed!\n",
2993 (unsigned long long)bytenr, mirror_num); 2897 bytenr, mirror_num);
2994 continue; 2898 continue;
2995 } 2899 }
2996 2900
@@ -3007,8 +2911,7 @@ static void btrfsic_cmp_log_and_dev_bytenr(struct btrfsic_state *state,
3007 printk(KERN_INFO "btrfs: attempt to write M-block which contains logical bytenr that doesn't map to dev+physical bytenr of submit_bio," 2911 printk(KERN_INFO "btrfs: attempt to write M-block which contains logical bytenr that doesn't map to dev+physical bytenr of submit_bio,"
3008 " buffer->log_bytenr=%llu, submit_bio(bdev=%s," 2912 " buffer->log_bytenr=%llu, submit_bio(bdev=%s,"
3009 " phys_bytenr=%llu)!\n", 2913 " phys_bytenr=%llu)!\n",
3010 (unsigned long long)bytenr, dev_state->name, 2914 bytenr, dev_state->name, dev_bytenr);
3011 (unsigned long long)dev_bytenr);
3012 for (mirror_num = 1; mirror_num <= num_copies; mirror_num++) { 2915 for (mirror_num = 1; mirror_num <= num_copies; mirror_num++) {
3013 ret = btrfsic_map_block(state, bytenr, 2916 ret = btrfsic_map_block(state, bytenr,
3014 state->metablock_size, 2917 state->metablock_size,
@@ -3018,10 +2921,8 @@ static void btrfsic_cmp_log_and_dev_bytenr(struct btrfsic_state *state,
3018 2921
3019 printk(KERN_INFO "Read logical bytenr @%llu maps to" 2922 printk(KERN_INFO "Read logical bytenr @%llu maps to"
3020 " (%s/%llu/%d)\n", 2923 " (%s/%llu/%d)\n",
3021 (unsigned long long)bytenr, 2924 bytenr, block_ctx.dev->name,
3022 block_ctx.dev->name, 2925 block_ctx.dev_bytenr, mirror_num);
3023 (unsigned long long)block_ctx.dev_bytenr,
3024 mirror_num);
3025 } 2926 }
3026 WARN_ON(1); 2927 WARN_ON(1);
3027 } 2928 }
@@ -3060,8 +2961,7 @@ int btrfsic_submit_bh(int rw, struct buffer_head *bh)
3060 printk(KERN_INFO 2961 printk(KERN_INFO
3061 "submit_bh(rw=0x%x, blocknr=%lu (bytenr %llu)," 2962 "submit_bh(rw=0x%x, blocknr=%lu (bytenr %llu),"
3062 " size=%lu, data=%p, bdev=%p)\n", 2963 " size=%lu, data=%p, bdev=%p)\n",
3063 rw, (unsigned long)bh->b_blocknr, 2964 rw, (unsigned long)bh->b_blocknr, dev_bytenr,
3064 (unsigned long long)dev_bytenr,
3065 (unsigned long)bh->b_size, bh->b_data, 2965 (unsigned long)bh->b_size, bh->b_data,
3066 bh->b_bdev); 2966 bh->b_bdev);
3067 btrfsic_process_written_block(dev_state, dev_bytenr, 2967 btrfsic_process_written_block(dev_state, dev_bytenr,
@@ -3130,8 +3030,7 @@ void btrfsic_submit_bio(int rw, struct bio *bio)
3130 "submit_bio(rw=0x%x, bi_vcnt=%u," 3030 "submit_bio(rw=0x%x, bi_vcnt=%u,"
3131 " bi_sector=%lu (bytenr %llu), bi_bdev=%p)\n", 3031 " bi_sector=%lu (bytenr %llu), bi_bdev=%p)\n",
3132 rw, bio->bi_vcnt, (unsigned long)bio->bi_sector, 3032 rw, bio->bi_vcnt, (unsigned long)bio->bi_sector,
3133 (unsigned long long)dev_bytenr, 3033 dev_bytenr, bio->bi_bdev);
3134 bio->bi_bdev);
3135 3034
3136 mapped_datav = kmalloc(sizeof(*mapped_datav) * bio->bi_vcnt, 3035 mapped_datav = kmalloc(sizeof(*mapped_datav) * bio->bi_vcnt,
3137 GFP_NOFS); 3036 GFP_NOFS);
@@ -3379,10 +3278,8 @@ void btrfsic_unmount(struct btrfs_root *root,
3379 " @%llu (%s/%llu/%d) on umount which is" 3278 " @%llu (%s/%llu/%d) on umount which is"
3380 " not yet iodone!\n", 3279 " not yet iodone!\n",
3381 btrfsic_get_block_type(state, b_all), 3280 btrfsic_get_block_type(state, b_all),
3382 (unsigned long long)b_all->logical_bytenr, 3281 b_all->logical_bytenr, b_all->dev_state->name,
3383 b_all->dev_state->name, 3282 b_all->dev_bytenr, b_all->mirror_num);
3384 (unsigned long long)b_all->dev_bytenr,
3385 b_all->mirror_num);
3386 } 3283 }
3387 3284
3388 mutex_unlock(&btrfsic_mutex); 3285 mutex_unlock(&btrfsic_mutex);