mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-18 09:46:37 +07:00
btrfs: unsplit printed strings
CodingStyle chapter 2: "[...] never break user-visible strings such as printk messages, because that breaks the ability to grep for them." This patch unsplits user-visible strings. Signed-off-by: Jeff Mahoney <jeffm@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
cea67ab92d
commit
5d163e0e68
@ -650,8 +650,7 @@ static int __resolve_indirect_ref(struct btrfs_fs_info *fs_info,
|
||||
/* root node has been locked, we can release @subvol_srcu safely here */
|
||||
srcu_read_unlock(&fs_info->subvol_srcu, index);
|
||||
|
||||
pr_debug("search slot in root %llu (level %d, ref count %d) returned "
|
||||
"%d for key (%llu %u %llu)\n",
|
||||
pr_debug("search slot in root %llu (level %d, ref count %d) returned %d for key (%llu %u %llu)\n",
|
||||
ref->root_id, level, ref->count, ret,
|
||||
ref->key_for_search.objectid, ref->key_for_search.type,
|
||||
ref->key_for_search.offset);
|
||||
@ -1846,8 +1845,7 @@ int extent_from_logical(struct btrfs_fs_info *fs_info, u64 logical,
|
||||
ei = btrfs_item_ptr(eb, path->slots[0], struct btrfs_extent_item);
|
||||
flags = btrfs_extent_flags(eb, ei);
|
||||
|
||||
pr_debug("logical %llu is at position %llu within the extent (%llu "
|
||||
"EXTENT_ITEM %llu) flags %#llx size %u\n",
|
||||
pr_debug("logical %llu is at position %llu within the extent (%llu EXTENT_ITEM %llu) flags %#llx size %u\n",
|
||||
logical, logical - found_key->objectid, found_key->objectid,
|
||||
found_key->offset, flags, item_size);
|
||||
|
||||
@ -1976,8 +1974,7 @@ static int iterate_leaf_refs(struct extent_inode_elem *inode_list,
|
||||
int ret = 0;
|
||||
|
||||
for (eie = inode_list; eie; eie = eie->next) {
|
||||
pr_debug("ref for %llu resolved, key (%llu EXTEND_DATA %llu), "
|
||||
"root %llu\n", extent_item_objectid,
|
||||
pr_debug("ref for %llu resolved, key (%llu EXTEND_DATA %llu), root %llu\n", extent_item_objectid,
|
||||
eie->inum, eie->offset, root);
|
||||
ret = iterate(eie->inum, eie->offset, root, ctx);
|
||||
if (ret) {
|
||||
@ -2036,8 +2033,7 @@ int iterate_extent_inodes(struct btrfs_fs_info *fs_info,
|
||||
break;
|
||||
ULIST_ITER_INIT(&root_uiter);
|
||||
while (!ret && (root_node = ulist_next(roots, &root_uiter))) {
|
||||
pr_debug("root %llu references leaf %llu, data list "
|
||||
"%#llx\n", root_node->val, ref_node->val,
|
||||
pr_debug("root %llu references leaf %llu, data list %#llx\n", root_node->val, ref_node->val,
|
||||
ref_node->aux);
|
||||
ret = iterate_leaf_refs((struct extent_inode_elem *)
|
||||
(uintptr_t)ref_node->aux,
|
||||
@ -2135,8 +2131,7 @@ static int iterate_inode_refs(u64 inum, struct btrfs_root *fs_root,
|
||||
for (cur = 0; cur < btrfs_item_size(eb, item); cur += len) {
|
||||
name_len = btrfs_inode_ref_name_len(eb, iref);
|
||||
/* path must be released before calling iterate()! */
|
||||
pr_debug("following ref at offset %u for inode %llu in "
|
||||
"tree %llu\n", cur, found_key.objectid,
|
||||
pr_debug("following ref at offset %u for inode %llu in tree %llu\n", cur, found_key.objectid,
|
||||
fs_root->objectid);
|
||||
ret = iterate(parent, name_len,
|
||||
(unsigned long)(iref + 1), eb, ctx);
|
||||
|
@ -733,9 +733,7 @@ static int btrfsic_process_superblock(struct btrfsic_state *state,
|
||||
&tmp_next_block_ctx,
|
||||
mirror_num);
|
||||
if (ret) {
|
||||
printk(KERN_INFO "btrfsic:"
|
||||
" btrfsic_map_block(root @%llu,"
|
||||
" mirror %d) failed!\n",
|
||||
printk(KERN_INFO "btrfsic: btrfsic_map_block(root @%llu, mirror %d) failed!\n",
|
||||
next_bytenr, mirror_num);
|
||||
kfree(selected_super);
|
||||
return -1;
|
||||
@ -905,8 +903,7 @@ static int btrfsic_process_superblock_dev_mirror(
|
||||
state->metablock_size,
|
||||
&tmp_next_block_ctx,
|
||||
mirror_num)) {
|
||||
printk(KERN_INFO "btrfsic: btrfsic_map_block("
|
||||
"bytenr @%llu, mirror %d) failed!\n",
|
||||
printk(KERN_INFO "btrfsic: btrfsic_map_block(bytenr @%llu, mirror %d) failed!\n",
|
||||
next_bytenr, mirror_num);
|
||||
brelse(bh);
|
||||
return -1;
|
||||
@ -995,8 +992,7 @@ static int btrfsic_process_metablock(
|
||||
|
||||
if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE)
|
||||
printk(KERN_INFO
|
||||
"leaf %llu items %d generation %llu"
|
||||
" owner %llu\n",
|
||||
"leaf %llu items %d generation %llu owner %llu\n",
|
||||
sf->block_ctx->start, sf->nr,
|
||||
btrfs_stack_header_generation(
|
||||
&leafhdr->header),
|
||||
@ -1120,8 +1116,7 @@ static int btrfsic_process_metablock(
|
||||
sf->nr = btrfs_stack_header_nritems(&nodehdr->header);
|
||||
|
||||
if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE)
|
||||
printk(KERN_INFO "node %llu level %d items %d"
|
||||
" generation %llu owner %llu\n",
|
||||
printk(KERN_INFO "node %llu level %d items %d generation %llu owner %llu\n",
|
||||
sf->block_ctx->start,
|
||||
nodehdr->header.level, sf->nr,
|
||||
btrfs_stack_header_generation(
|
||||
@ -1457,8 +1452,7 @@ static int btrfsic_handle_extent_data(
|
||||
generation = btrfs_stack_file_extent_generation(&file_extent_item);
|
||||
|
||||
if (state->print_mask & BTRFSIC_PRINT_MASK_VERY_VERBOSE)
|
||||
printk(KERN_INFO "extent_data: type %u, disk_bytenr = %llu,"
|
||||
" offset = %llu, num_bytes = %llu\n",
|
||||
printk(KERN_INFO "extent_data: type %u, disk_bytenr = %llu, offset = %llu, num_bytes = %llu\n",
|
||||
file_extent_item.type,
|
||||
btrfs_stack_file_extent_disk_bytenr(&file_extent_item),
|
||||
btrfs_stack_file_extent_offset(&file_extent_item),
|
||||
@ -1485,8 +1479,7 @@ static int btrfsic_handle_extent_data(
|
||||
int block_was_created;
|
||||
|
||||
if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE)
|
||||
printk(KERN_INFO "btrfsic_handle_extent_data("
|
||||
"mirror_num=%d)\n", mirror_num);
|
||||
printk(KERN_INFO "btrfsic_handle_extent_data(mirror_num=%d)\n", mirror_num);
|
||||
if (state->print_mask & BTRFSIC_PRINT_MASK_VERY_VERBOSE)
|
||||
printk(KERN_INFO
|
||||
"\tdisk_bytenr = %llu, num_bytes %u\n",
|
||||
@ -1496,8 +1489,7 @@ static int btrfsic_handle_extent_data(
|
||||
mirror_num);
|
||||
if (ret) {
|
||||
printk(KERN_INFO
|
||||
"btrfsic: btrfsic_map_block(@%llu,"
|
||||
" mirror=%d) failed!\n",
|
||||
"btrfsic: btrfsic_map_block(@%llu, mirror=%d) failed!\n",
|
||||
next_bytenr, mirror_num);
|
||||
return -1;
|
||||
}
|
||||
@ -1524,11 +1516,7 @@ static int btrfsic_handle_extent_data(
|
||||
!(!next_block->is_metadata &&
|
||||
0 == next_block->logical_bytenr)) {
|
||||
printk(KERN_INFO
|
||||
"Referenced block"
|
||||
" @%llu (%s/%llu/%d)"
|
||||
" found in hash table, D,"
|
||||
" bytenr mismatch"
|
||||
" (!= stored %llu).\n",
|
||||
"Referenced block @%llu (%s/%llu/%d) found in hash table, D, bytenr mismatch (!= stored %llu).\n",
|
||||
next_bytenr,
|
||||
next_block_ctx.dev->name,
|
||||
next_block_ctx.dev_bytenr,
|
||||
@ -1725,9 +1713,7 @@ static void btrfsic_dump_database(struct btrfsic_state *state)
|
||||
b_all->dev_bytenr, b_all->mirror_num);
|
||||
|
||||
list_for_each_entry(l, &b_all->ref_to_list, node_ref_to) {
|
||||
printk(KERN_INFO " %c @%llu (%s/%llu/%d)"
|
||||
" refers %u* to"
|
||||
" %c @%llu (%s/%llu/%d)\n",
|
||||
printk(KERN_INFO " %c @%llu (%s/%llu/%d) refers %u* to %c @%llu (%s/%llu/%d)\n",
|
||||
btrfsic_get_block_type(state, b_all),
|
||||
b_all->logical_bytenr, b_all->dev_state->name,
|
||||
b_all->dev_bytenr, b_all->mirror_num,
|
||||
@ -1740,9 +1726,7 @@ static void btrfsic_dump_database(struct btrfsic_state *state)
|
||||
}
|
||||
|
||||
list_for_each_entry(l, &b_all->ref_from_list, node_ref_from) {
|
||||
printk(KERN_INFO " %c @%llu (%s/%llu/%d)"
|
||||
" is ref %u* from"
|
||||
" %c @%llu (%s/%llu/%d)\n",
|
||||
printk(KERN_INFO " %c @%llu (%s/%llu/%d) is ref %u* from %c @%llu (%s/%llu/%d)\n",
|
||||
btrfsic_get_block_type(state, b_all),
|
||||
b_all->logical_bytenr, b_all->dev_state->name,
|
||||
b_all->dev_bytenr, b_all->mirror_num,
|
||||
@ -1891,8 +1875,7 @@ static void btrfsic_process_written_block(struct btrfsic_dev_state *dev_state,
|
||||
bytenr = block->logical_bytenr;
|
||||
if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE)
|
||||
printk(KERN_INFO
|
||||
"Written block @%llu (%s/%llu/%d)"
|
||||
" found in hash table, %c.\n",
|
||||
"Written block @%llu (%s/%llu/%d) found in hash table, %c.\n",
|
||||
bytenr, dev_state->name, dev_bytenr,
|
||||
block->mirror_num,
|
||||
btrfsic_get_block_type(state, block));
|
||||
@ -1904,12 +1887,7 @@ static void btrfsic_process_written_block(struct btrfsic_dev_state *dev_state,
|
||||
list_empty(&block->ref_to_list) ? ' ' : '!',
|
||||
list_empty(&block->ref_from_list) ? ' ' : '!');
|
||||
if (btrfsic_is_block_ref_by_superblock(state, block, 0)) {
|
||||
printk(KERN_INFO "btrfs: attempt to overwrite %c-block"
|
||||
" @%llu (%s/%llu/%d), old(gen=%llu,"
|
||||
" objectid=%llu, type=%d, offset=%llu),"
|
||||
" new(gen=%llu),"
|
||||
" which is referenced by most recent superblock"
|
||||
" (superblockgen=%llu)!\n",
|
||||
printk(KERN_INFO "btrfs: attempt to overwrite %c-block @%llu (%s/%llu/%d), old(gen=%llu, objectid=%llu, type=%d, offset=%llu), new(gen=%llu), which is referenced by most recent superblock (superblockgen=%llu)!\n",
|
||||
btrfsic_get_block_type(state, block), bytenr,
|
||||
dev_state->name, dev_bytenr, block->mirror_num,
|
||||
block->generation,
|
||||
@ -1923,9 +1901,7 @@ static void btrfsic_process_written_block(struct btrfsic_dev_state *dev_state,
|
||||
}
|
||||
|
||||
if (!block->is_iodone && !block->never_written) {
|
||||
printk(KERN_INFO "btrfs: attempt to overwrite %c-block"
|
||||
" @%llu (%s/%llu/%d), oldgen=%llu, newgen=%llu,"
|
||||
" which is not yet iodone!\n",
|
||||
printk(KERN_INFO "btrfs: attempt to overwrite %c-block @%llu (%s/%llu/%d), oldgen=%llu, newgen=%llu, which is not yet iodone!\n",
|
||||
btrfsic_get_block_type(state, block), bytenr,
|
||||
dev_state->name, dev_bytenr, block->mirror_num,
|
||||
block->generation,
|
||||
@ -2037,8 +2013,7 @@ static void btrfsic_process_written_block(struct btrfsic_dev_state *dev_state,
|
||||
}
|
||||
if (ret)
|
||||
printk(KERN_INFO
|
||||
"btrfsic: btrfsic_process_metablock"
|
||||
"(root @%llu) failed!\n",
|
||||
"btrfsic: btrfsic_process_metablock(root @%llu) failed!\n",
|
||||
dev_bytenr);
|
||||
} else {
|
||||
block->is_metadata = 0;
|
||||
@ -2065,8 +2040,7 @@ static void btrfsic_process_written_block(struct btrfsic_dev_state *dev_state,
|
||||
if (!is_metadata) {
|
||||
processed_len = state->datablock_size;
|
||||
if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE)
|
||||
printk(KERN_INFO "Written block (%s/%llu/?)"
|
||||
" !found in hash table, D.\n",
|
||||
printk(KERN_INFO "Written block (%s/%llu/?) !found in hash table, D.\n",
|
||||
dev_state->name, dev_bytenr);
|
||||
if (!state->include_extent_data) {
|
||||
/* ignore that written D block */
|
||||
@ -2085,8 +2059,7 @@ static void btrfsic_process_written_block(struct btrfsic_dev_state *dev_state,
|
||||
dev_bytenr);
|
||||
if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE)
|
||||
printk(KERN_INFO
|
||||
"Written block @%llu (%s/%llu/?)"
|
||||
" !found in hash table, M.\n",
|
||||
"Written block @%llu (%s/%llu/?) !found in hash table, M.\n",
|
||||
bytenr, dev_state->name, dev_bytenr);
|
||||
}
|
||||
|
||||
@ -2163,8 +2136,7 @@ static void btrfsic_process_written_block(struct btrfsic_dev_state *dev_state,
|
||||
&block_ctx, 0, 0);
|
||||
if (ret)
|
||||
printk(KERN_INFO
|
||||
"btrfsic: process_metablock(root @%llu)"
|
||||
" failed!\n",
|
||||
"btrfsic: process_metablock(root @%llu) failed!\n",
|
||||
dev_bytenr);
|
||||
}
|
||||
btrfsic_release_block_ctx(&block_ctx);
|
||||
@ -2272,8 +2244,7 @@ static int btrfsic_process_written_superblock(
|
||||
0 == state->max_superblock_generation)) {
|
||||
if (state->print_mask & BTRFSIC_PRINT_MASK_SUPERBLOCK_WRITE)
|
||||
printk(KERN_INFO
|
||||
"btrfsic: superblock @%llu (%s/%llu/%d)"
|
||||
" with old gen %llu <= %llu\n",
|
||||
"btrfsic: superblock @%llu (%s/%llu/%d) with old gen %llu <= %llu\n",
|
||||
superblock->logical_bytenr,
|
||||
superblock->dev_state->name,
|
||||
superblock->dev_bytenr, superblock->mirror_num,
|
||||
@ -2282,8 +2253,7 @@ static int btrfsic_process_written_superblock(
|
||||
} else {
|
||||
if (state->print_mask & BTRFSIC_PRINT_MASK_SUPERBLOCK_WRITE)
|
||||
printk(KERN_INFO
|
||||
"btrfsic: got new superblock @%llu (%s/%llu/%d)"
|
||||
" with new gen %llu > %llu\n",
|
||||
"btrfsic: got new superblock @%llu (%s/%llu/%d) with new gen %llu > %llu\n",
|
||||
superblock->logical_bytenr,
|
||||
superblock->dev_state->name,
|
||||
superblock->dev_bytenr, superblock->mirror_num,
|
||||
@ -2353,16 +2323,14 @@ static int btrfsic_process_written_superblock(
|
||||
|
||||
if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE)
|
||||
printk(KERN_INFO
|
||||
"btrfsic_process_written_superblock("
|
||||
"mirror_num=%d)\n", mirror_num);
|
||||
"btrfsic_process_written_superblock(mirror_num=%d)\n", mirror_num);
|
||||
ret = btrfsic_map_block(state, next_bytenr,
|
||||
BTRFS_SUPER_INFO_SIZE,
|
||||
&tmp_next_block_ctx,
|
||||
mirror_num);
|
||||
if (ret) {
|
||||
printk(KERN_INFO
|
||||
"btrfsic: btrfsic_map_block(@%llu,"
|
||||
" mirror=%d) failed!\n",
|
||||
"btrfsic: btrfsic_map_block(@%llu, mirror=%d) failed!\n",
|
||||
next_bytenr, mirror_num);
|
||||
return -1;
|
||||
}
|
||||
@ -2438,8 +2406,7 @@ static int btrfsic_check_all_ref_blocks(struct btrfsic_state *state,
|
||||
list_for_each_entry(l, &block->ref_to_list, node_ref_to) {
|
||||
if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE)
|
||||
printk(KERN_INFO
|
||||
"rl=%d, %c @%llu (%s/%llu/%d)"
|
||||
" %u* refers to %c @%llu (%s/%llu/%d)\n",
|
||||
"rl=%d, %c @%llu (%s/%llu/%d) %u* refers to %c @%llu (%s/%llu/%d)\n",
|
||||
recursion_level,
|
||||
btrfsic_get_block_type(state, block),
|
||||
block->logical_bytenr, block->dev_state->name,
|
||||
@ -2451,9 +2418,7 @@ static int btrfsic_check_all_ref_blocks(struct btrfsic_state *state,
|
||||
l->block_ref_to->dev_bytenr,
|
||||
l->block_ref_to->mirror_num);
|
||||
if (l->block_ref_to->never_written) {
|
||||
printk(KERN_INFO "btrfs: attempt to write superblock"
|
||||
" which references block %c @%llu (%s/%llu/%d)"
|
||||
" which is never written!\n",
|
||||
printk(KERN_INFO "btrfs: attempt to write superblock which references block %c @%llu (%s/%llu/%d) which is never written!\n",
|
||||
btrfsic_get_block_type(state, l->block_ref_to),
|
||||
l->block_ref_to->logical_bytenr,
|
||||
l->block_ref_to->dev_state->name,
|
||||
@ -2461,9 +2426,7 @@ static int btrfsic_check_all_ref_blocks(struct btrfsic_state *state,
|
||||
l->block_ref_to->mirror_num);
|
||||
ret = -1;
|
||||
} else if (!l->block_ref_to->is_iodone) {
|
||||
printk(KERN_INFO "btrfs: attempt to write superblock"
|
||||
" which references block %c @%llu (%s/%llu/%d)"
|
||||
" which is not yet iodone!\n",
|
||||
printk(KERN_INFO "btrfs: attempt to write superblock which references block %c @%llu (%s/%llu/%d) which is not yet iodone!\n",
|
||||
btrfsic_get_block_type(state, l->block_ref_to),
|
||||
l->block_ref_to->logical_bytenr,
|
||||
l->block_ref_to->dev_state->name,
|
||||
@ -2471,9 +2434,7 @@ static int btrfsic_check_all_ref_blocks(struct btrfsic_state *state,
|
||||
l->block_ref_to->mirror_num);
|
||||
ret = -1;
|
||||
} else if (l->block_ref_to->iodone_w_error) {
|
||||
printk(KERN_INFO "btrfs: attempt to write superblock"
|
||||
" which references block %c @%llu (%s/%llu/%d)"
|
||||
" which has write error!\n",
|
||||
printk(KERN_INFO "btrfs: attempt to write superblock which references block %c @%llu (%s/%llu/%d) which has write error!\n",
|
||||
btrfsic_get_block_type(state, l->block_ref_to),
|
||||
l->block_ref_to->logical_bytenr,
|
||||
l->block_ref_to->dev_state->name,
|
||||
@ -2486,10 +2447,7 @@ static int btrfsic_check_all_ref_blocks(struct btrfsic_state *state,
|
||||
l->parent_generation &&
|
||||
BTRFSIC_GENERATION_UNKNOWN !=
|
||||
l->block_ref_to->generation) {
|
||||
printk(KERN_INFO "btrfs: attempt to write superblock"
|
||||
" which references block %c @%llu (%s/%llu/%d)"
|
||||
" with generation %llu !="
|
||||
" parent generation %llu!\n",
|
||||
printk(KERN_INFO "btrfs: attempt to write superblock which references block %c @%llu (%s/%llu/%d) with generation %llu != parent generation %llu!\n",
|
||||
btrfsic_get_block_type(state, l->block_ref_to),
|
||||
l->block_ref_to->logical_bytenr,
|
||||
l->block_ref_to->dev_state->name,
|
||||
@ -2500,11 +2458,7 @@ static int btrfsic_check_all_ref_blocks(struct btrfsic_state *state,
|
||||
ret = -1;
|
||||
} else if (l->block_ref_to->flush_gen >
|
||||
l->block_ref_to->dev_state->last_flush_gen) {
|
||||
printk(KERN_INFO "btrfs: attempt to write superblock"
|
||||
" which references block %c @%llu (%s/%llu/%d)"
|
||||
" which is not flushed out of disk's write cache"
|
||||
" (block flush_gen=%llu,"
|
||||
" dev->flush_gen=%llu)!\n",
|
||||
printk(KERN_INFO "btrfs: attempt to write superblock which references block %c @%llu (%s/%llu/%d) which is not flushed out of disk's write cache (block flush_gen=%llu, dev->flush_gen=%llu)!\n",
|
||||
btrfsic_get_block_type(state, l->block_ref_to),
|
||||
l->block_ref_to->logical_bytenr,
|
||||
l->block_ref_to->dev_state->name,
|
||||
@ -2546,8 +2500,7 @@ static int btrfsic_is_block_ref_by_superblock(
|
||||
list_for_each_entry(l, &block->ref_from_list, node_ref_from) {
|
||||
if (state->print_mask & BTRFSIC_PRINT_MASK_VERBOSE)
|
||||
printk(KERN_INFO
|
||||
"rl=%d, %c @%llu (%s/%llu/%d)"
|
||||
" is ref %u* from %c @%llu (%s/%llu/%d)\n",
|
||||
"rl=%d, %c @%llu (%s/%llu/%d) is ref %u* from %c @%llu (%s/%llu/%d)\n",
|
||||
recursion_level,
|
||||
btrfsic_get_block_type(state, block),
|
||||
block->logical_bytenr, block->dev_state->name,
|
||||
@ -2578,8 +2531,7 @@ static void btrfsic_print_add_link(const struct btrfsic_state *state,
|
||||
const struct btrfsic_block_link *l)
|
||||
{
|
||||
printk(KERN_INFO
|
||||
"Add %u* link from %c @%llu (%s/%llu/%d)"
|
||||
" to %c @%llu (%s/%llu/%d).\n",
|
||||
"Add %u* link from %c @%llu (%s/%llu/%d) to %c @%llu (%s/%llu/%d).\n",
|
||||
l->ref_cnt,
|
||||
btrfsic_get_block_type(state, l->block_ref_from),
|
||||
l->block_ref_from->logical_bytenr,
|
||||
@ -2595,8 +2547,7 @@ static void btrfsic_print_rem_link(const struct btrfsic_state *state,
|
||||
const struct btrfsic_block_link *l)
|
||||
{
|
||||
printk(KERN_INFO
|
||||
"Rem %u* link from %c @%llu (%s/%llu/%d)"
|
||||
" to %c @%llu (%s/%llu/%d).\n",
|
||||
"Rem %u* link from %c @%llu (%s/%llu/%d) to %c @%llu (%s/%llu/%d).\n",
|
||||
l->ref_cnt,
|
||||
btrfsic_get_block_type(state, l->block_ref_from),
|
||||
l->block_ref_from->logical_bytenr,
|
||||
@ -2709,7 +2660,7 @@ static struct btrfsic_block_link *btrfsic_block_link_lookup_or_add(
|
||||
l = btrfsic_block_link_alloc();
|
||||
if (NULL == l) {
|
||||
printk(KERN_INFO
|
||||
"btrfsic: error, kmalloc" " failed!\n");
|
||||
"btrfsic: error, kmalloc failed!\n");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@ -2810,9 +2761,7 @@ static void btrfsic_cmp_log_and_dev_bytenr(struct btrfsic_state *state,
|
||||
ret = btrfsic_map_block(state, bytenr, state->metablock_size,
|
||||
&block_ctx, mirror_num);
|
||||
if (ret) {
|
||||
printk(KERN_INFO "btrfsic:"
|
||||
" btrfsic_map_block(logical @%llu,"
|
||||
" mirror %d) failed!\n",
|
||||
printk(KERN_INFO "btrfsic: btrfsic_map_block(logical @%llu, mirror %d) failed!\n",
|
||||
bytenr, mirror_num);
|
||||
continue;
|
||||
}
|
||||
@ -2827,9 +2776,7 @@ static void btrfsic_cmp_log_and_dev_bytenr(struct btrfsic_state *state,
|
||||
}
|
||||
|
||||
if (WARN_ON(!match)) {
|
||||
printk(KERN_INFO "btrfs: attempt to write M-block which contains logical bytenr that doesn't map to dev+physical bytenr of submit_bio,"
|
||||
" buffer->log_bytenr=%llu, submit_bio(bdev=%s,"
|
||||
" phys_bytenr=%llu)!\n",
|
||||
printk(KERN_INFO "btrfs: attempt to write M-block which contains logical bytenr that doesn't map to dev+physical bytenr of submit_bio, buffer->log_bytenr=%llu, submit_bio(bdev=%s, phys_bytenr=%llu)!\n",
|
||||
bytenr, dev_state->name, dev_bytenr);
|
||||
for (mirror_num = 1; mirror_num <= num_copies; mirror_num++) {
|
||||
ret = btrfsic_map_block(state, bytenr,
|
||||
@ -2838,8 +2785,7 @@ static void btrfsic_cmp_log_and_dev_bytenr(struct btrfsic_state *state,
|
||||
if (ret)
|
||||
continue;
|
||||
|
||||
printk(KERN_INFO "Read logical bytenr @%llu maps to"
|
||||
" (%s/%llu/%d)\n",
|
||||
printk(KERN_INFO "Read logical bytenr @%llu maps to (%s/%llu/%d)\n",
|
||||
bytenr, block_ctx.dev->name,
|
||||
block_ctx.dev_bytenr, mirror_num);
|
||||
}
|
||||
@ -2874,8 +2820,7 @@ int btrfsic_submit_bh(int op, int op_flags, struct buffer_head *bh)
|
||||
if (dev_state->state->print_mask &
|
||||
BTRFSIC_PRINT_MASK_SUBMIT_BIO_BH)
|
||||
printk(KERN_INFO
|
||||
"submit_bh(op=0x%x,0x%x, blocknr=%llu "
|
||||
"(bytenr %llu), size=%zu, data=%p, bdev=%p)\n",
|
||||
"submit_bh(op=0x%x,0x%x, blocknr=%llu (bytenr %llu), size=%zu, data=%p, bdev=%p)\n",
|
||||
op, op_flags, (unsigned long long)bh->b_blocknr,
|
||||
dev_bytenr, bh->b_size, bh->b_data, bh->b_bdev);
|
||||
btrfsic_process_written_block(dev_state, dev_bytenr,
|
||||
@ -2892,9 +2837,7 @@ int btrfsic_submit_bh(int op, int op_flags, struct buffer_head *bh)
|
||||
(BTRFSIC_PRINT_MASK_SUBMIT_BIO_BH |
|
||||
BTRFSIC_PRINT_MASK_VERBOSE)))
|
||||
printk(KERN_INFO
|
||||
"btrfsic_submit_bh(%s) with FLUSH"
|
||||
" but dummy block already in use"
|
||||
" (ignored)!\n",
|
||||
"btrfsic_submit_bh(%s) with FLUSH but dummy block already in use (ignored)!\n",
|
||||
dev_state->name);
|
||||
} else {
|
||||
struct btrfsic_block *const block =
|
||||
@ -2940,8 +2883,7 @@ static void __btrfsic_submit_bio(struct bio *bio)
|
||||
if (dev_state->state->print_mask &
|
||||
BTRFSIC_PRINT_MASK_SUBMIT_BIO_BH)
|
||||
printk(KERN_INFO
|
||||
"submit_bio(rw=%d,0x%x, bi_vcnt=%u,"
|
||||
" bi_sector=%llu (bytenr %llu), bi_bdev=%p)\n",
|
||||
"submit_bio(rw=%d,0x%x, bi_vcnt=%u, bi_sector=%llu (bytenr %llu), bi_bdev=%p)\n",
|
||||
bio_op(bio), bio->bi_opf, bio->bi_vcnt,
|
||||
(unsigned long long)bio->bi_iter.bi_sector,
|
||||
dev_bytenr, bio->bi_bdev);
|
||||
@ -2990,9 +2932,7 @@ static void __btrfsic_submit_bio(struct bio *bio)
|
||||
(BTRFSIC_PRINT_MASK_SUBMIT_BIO_BH |
|
||||
BTRFSIC_PRINT_MASK_VERBOSE)))
|
||||
printk(KERN_INFO
|
||||
"btrfsic_submit_bio(%s) with FLUSH"
|
||||
" but dummy block already in use"
|
||||
" (ignored)!\n",
|
||||
"btrfsic_submit_bio(%s) with FLUSH but dummy block already in use (ignored)!\n",
|
||||
dev_state->name);
|
||||
} else {
|
||||
struct btrfsic_block *const block =
|
||||
@ -3146,8 +3086,7 @@ void btrfsic_unmount(struct btrfs_root *root,
|
||||
|
||||
if (NULL == state) {
|
||||
printk(KERN_INFO
|
||||
"btrfsic: error, cannot find state information"
|
||||
" on umount!\n");
|
||||
"btrfsic: error, cannot find state information on umount!\n");
|
||||
mutex_unlock(&btrfsic_mutex);
|
||||
return;
|
||||
}
|
||||
@ -3174,9 +3113,7 @@ void btrfsic_unmount(struct btrfs_root *root,
|
||||
if (b_all->is_iodone || b_all->never_written)
|
||||
btrfsic_block_free(b_all);
|
||||
else
|
||||
printk(KERN_INFO "btrfs: attempt to free %c-block"
|
||||
" @%llu (%s/%llu/%d) on umount which is"
|
||||
" not yet iodone!\n",
|
||||
printk(KERN_INFO "btrfs: attempt to free %c-block @%llu (%s/%llu/%d) on umount which is not yet iodone!\n",
|
||||
btrfsic_get_block_type(state, b_all),
|
||||
b_all->logical_bytenr, b_all->dev_state->name,
|
||||
b_all->dev_bytenr, b_all->mirror_num);
|
||||
|
@ -4768,8 +4768,9 @@ void setup_items_for_insert(struct btrfs_root *root, struct btrfs_path *path,
|
||||
|
||||
if (btrfs_leaf_free_space(root, leaf) < total_size) {
|
||||
btrfs_print_leaf(root, leaf);
|
||||
btrfs_crit(root->fs_info, "not enough freespace need %u have %d",
|
||||
total_size, btrfs_leaf_free_space(root, leaf));
|
||||
btrfs_crit(root->fs_info,
|
||||
"not enough freespace need %u have %d",
|
||||
total_size, btrfs_leaf_free_space(root, leaf));
|
||||
BUG();
|
||||
}
|
||||
|
||||
@ -4778,8 +4779,9 @@ void setup_items_for_insert(struct btrfs_root *root, struct btrfs_path *path,
|
||||
|
||||
if (old_data < data_end) {
|
||||
btrfs_print_leaf(root, leaf);
|
||||
btrfs_crit(root->fs_info, "slot %d old_data %d data_end %d",
|
||||
slot, old_data, data_end);
|
||||
btrfs_crit(root->fs_info,
|
||||
"slot %d old_data %d data_end %d",
|
||||
slot, old_data, data_end);
|
||||
BUG_ON(1);
|
||||
}
|
||||
/*
|
||||
|
@ -1478,11 +1478,10 @@ int btrfs_insert_delayed_dir_index(struct btrfs_trans_handle *trans,
|
||||
mutex_lock(&delayed_node->mutex);
|
||||
ret = __btrfs_add_delayed_insertion_item(delayed_node, delayed_item);
|
||||
if (unlikely(ret)) {
|
||||
btrfs_err(root->fs_info, "err add delayed dir index item(name: %.*s) "
|
||||
"into the insertion tree of the delayed node"
|
||||
"(root id: %llu, inode id: %llu, errno: %d)",
|
||||
name_len, name, delayed_node->root->objectid,
|
||||
delayed_node->inode_id, ret);
|
||||
btrfs_err(root->fs_info,
|
||||
"err add delayed dir index item(name: %.*s) into the insertion tree of the delayed node(root id: %llu, inode id: %llu, errno: %d)",
|
||||
name_len, name, delayed_node->root->objectid,
|
||||
delayed_node->inode_id, ret);
|
||||
BUG();
|
||||
}
|
||||
mutex_unlock(&delayed_node->mutex);
|
||||
@ -1550,11 +1549,9 @@ int btrfs_delete_delayed_dir_index(struct btrfs_trans_handle *trans,
|
||||
mutex_lock(&node->mutex);
|
||||
ret = __btrfs_add_delayed_deletion_item(node, item);
|
||||
if (unlikely(ret)) {
|
||||
btrfs_err(root->fs_info, "err add delayed dir index item(index: %llu) "
|
||||
"into the deletion tree of the delayed node"
|
||||
"(root id: %llu, inode id: %llu, errno: %d)",
|
||||
index, node->root->objectid, node->inode_id,
|
||||
ret);
|
||||
btrfs_err(root->fs_info,
|
||||
"err add delayed dir index item(index: %llu) into the deletion tree of the delayed node(root id: %llu, inode id: %llu, errno: %d)",
|
||||
index, node->root->objectid, node->inode_id, ret);
|
||||
BUG();
|
||||
}
|
||||
mutex_unlock(&node->mutex);
|
||||
|
@ -218,8 +218,9 @@ int btrfs_run_dev_replace(struct btrfs_trans_handle *trans,
|
||||
}
|
||||
ret = btrfs_search_slot(trans, dev_root, &key, path, -1, 1);
|
||||
if (ret < 0) {
|
||||
btrfs_warn(fs_info, "error %d while searching for dev_replace item!",
|
||||
ret);
|
||||
btrfs_warn(fs_info,
|
||||
"error %d while searching for dev_replace item!",
|
||||
ret);
|
||||
goto out;
|
||||
}
|
||||
|
||||
@ -238,8 +239,9 @@ int btrfs_run_dev_replace(struct btrfs_trans_handle *trans,
|
||||
*/
|
||||
ret = btrfs_del_item(trans, dev_root, path);
|
||||
if (ret != 0) {
|
||||
btrfs_warn(fs_info, "delete too small dev_replace item failed %d!",
|
||||
ret);
|
||||
btrfs_warn(fs_info,
|
||||
"delete too small dev_replace item failed %d!",
|
||||
ret);
|
||||
goto out;
|
||||
}
|
||||
ret = 1;
|
||||
@ -251,8 +253,8 @@ int btrfs_run_dev_replace(struct btrfs_trans_handle *trans,
|
||||
ret = btrfs_insert_empty_item(trans, dev_root, path,
|
||||
&key, sizeof(*ptr));
|
||||
if (ret < 0) {
|
||||
btrfs_warn(fs_info, "insert dev_replace item failed %d!",
|
||||
ret);
|
||||
btrfs_warn(fs_info,
|
||||
"insert dev_replace item failed %d!", ret);
|
||||
goto out;
|
||||
}
|
||||
}
|
||||
@ -772,9 +774,10 @@ int btrfs_resume_dev_replace_async(struct btrfs_fs_info *fs_info)
|
||||
break;
|
||||
}
|
||||
if (!dev_replace->tgtdev || !dev_replace->tgtdev->bdev) {
|
||||
btrfs_info(fs_info, "cannot continue dev_replace, tgtdev is missing");
|
||||
btrfs_info(fs_info,
|
||||
"you may cancel the operation after 'mount -o degraded'");
|
||||
"cannot continue dev_replace, tgtdev is missing");
|
||||
btrfs_info(fs_info,
|
||||
"you may cancel the operation after 'mount -o degraded'");
|
||||
btrfs_dev_replace_unlock(dev_replace, 1);
|
||||
return 0;
|
||||
}
|
||||
|
@ -472,9 +472,10 @@ int verify_dir_item(struct btrfs_root *root,
|
||||
/* BTRFS_MAX_XATTR_SIZE is the same for all dir items */
|
||||
if ((btrfs_dir_data_len(leaf, dir_item) +
|
||||
btrfs_dir_name_len(leaf, dir_item)) > BTRFS_MAX_XATTR_SIZE(root)) {
|
||||
btrfs_crit(root->fs_info, "invalid dir item name + data len: %u + %u",
|
||||
(unsigned)btrfs_dir_name_len(leaf, dir_item),
|
||||
(unsigned)btrfs_dir_data_len(leaf, dir_item));
|
||||
btrfs_crit(root->fs_info,
|
||||
"invalid dir item name + data len: %u + %u",
|
||||
(unsigned)btrfs_dir_name_len(leaf, dir_item),
|
||||
(unsigned)btrfs_dir_data_len(leaf, dir_item));
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -326,8 +326,7 @@ static int csum_tree_block(struct btrfs_fs_info *fs_info,
|
||||
|
||||
read_extent_buffer(buf, &val, 0, csum_size);
|
||||
btrfs_warn_rl(fs_info,
|
||||
"%s checksum verify failed on %llu wanted %X found %X "
|
||||
"level %d",
|
||||
"%s checksum verify failed on %llu wanted %X found %X level %d",
|
||||
fs_info->sb->s_id, buf->start,
|
||||
val, found, btrfs_header_level(buf));
|
||||
if (result != (char *)&inline_result)
|
||||
@ -4052,8 +4051,7 @@ void btrfs_mark_buffer_dirty(struct extent_buffer *buf)
|
||||
root = BTRFS_I(buf->pages[0]->mapping->host)->root;
|
||||
btrfs_assert_tree_locked(buf);
|
||||
if (transid != root->fs_info->generation)
|
||||
WARN(1, KERN_CRIT "btrfs transid mismatch buffer %llu, "
|
||||
"found %llu running %llu\n",
|
||||
WARN(1, KERN_CRIT "btrfs transid mismatch buffer %llu, found %llu running %llu\n",
|
||||
buf->start, transid, root->fs_info->generation);
|
||||
was_dirty = set_extent_buffer_dirty(buf);
|
||||
if (!was_dirty)
|
||||
|
@ -2588,7 +2588,9 @@ static noinline int __btrfs_run_delayed_refs(struct btrfs_trans_handle *trans,
|
||||
if (must_insert_reserved)
|
||||
locked_ref->must_insert_reserved = 1;
|
||||
locked_ref->processing = 0;
|
||||
btrfs_debug(fs_info, "run_delayed_extent_op returned %d", ret);
|
||||
btrfs_debug(fs_info,
|
||||
"run_delayed_extent_op returned %d",
|
||||
ret);
|
||||
btrfs_delayed_ref_unlock(locked_ref);
|
||||
return ret;
|
||||
}
|
||||
@ -2648,7 +2650,8 @@ static noinline int __btrfs_run_delayed_refs(struct btrfs_trans_handle *trans,
|
||||
locked_ref->processing = 0;
|
||||
btrfs_delayed_ref_unlock(locked_ref);
|
||||
btrfs_put_delayed_ref(ref);
|
||||
btrfs_debug(fs_info, "run_one_delayed_ref returned %d", ret);
|
||||
btrfs_debug(fs_info, "run_one_delayed_ref returned %d",
|
||||
ret);
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -6930,8 +6933,9 @@ static int __btrfs_free_extent(struct btrfs_trans_handle *trans,
|
||||
}
|
||||
|
||||
if (ret) {
|
||||
btrfs_err(info, "umm, got %d back from search, was looking for %llu",
|
||||
ret, bytenr);
|
||||
btrfs_err(info,
|
||||
"umm, got %d back from search, was looking for %llu",
|
||||
ret, bytenr);
|
||||
if (ret > 0)
|
||||
btrfs_print_leaf(extent_root,
|
||||
path->nodes[0]);
|
||||
@ -6977,7 +6981,8 @@ static int __btrfs_free_extent(struct btrfs_trans_handle *trans,
|
||||
ret = btrfs_search_slot(trans, extent_root, &key, path,
|
||||
-1, 1);
|
||||
if (ret) {
|
||||
btrfs_err(info, "umm, got %d back from search, was looking for %llu",
|
||||
btrfs_err(info,
|
||||
"umm, got %d back from search, was looking for %llu",
|
||||
ret, bytenr);
|
||||
btrfs_print_leaf(extent_root, path->nodes[0]);
|
||||
}
|
||||
@ -7004,8 +7009,9 @@ static int __btrfs_free_extent(struct btrfs_trans_handle *trans,
|
||||
|
||||
refs = btrfs_extent_refs(leaf, ei);
|
||||
if (refs < refs_to_drop) {
|
||||
btrfs_err(info, "trying to drop %d refs but we only have %Lu "
|
||||
"for bytenr %Lu", refs_to_drop, refs, bytenr);
|
||||
btrfs_err(info,
|
||||
"trying to drop %d refs but we only have %Lu for bytenr %Lu",
|
||||
refs_to_drop, refs, bytenr);
|
||||
ret = -EINVAL;
|
||||
btrfs_abort_transaction(trans, ret);
|
||||
goto out;
|
||||
@ -7913,8 +7919,7 @@ static void dump_space_info(struct btrfs_space_info *info, u64 bytes,
|
||||
info->total_bytes - info->bytes_used - info->bytes_pinned -
|
||||
info->bytes_reserved - info->bytes_readonly -
|
||||
info->bytes_may_use, (info->full) ? "" : "not ");
|
||||
printk(KERN_INFO "BTRFS: space_info total=%llu, used=%llu, pinned=%llu, "
|
||||
"reserved=%llu, may_use=%llu, readonly=%llu\n",
|
||||
printk(KERN_INFO "BTRFS: space_info total=%llu, used=%llu, pinned=%llu, reserved=%llu, may_use=%llu, readonly=%llu\n",
|
||||
info->total_bytes, info->bytes_used, info->bytes_pinned,
|
||||
info->bytes_reserved, info->bytes_may_use,
|
||||
info->bytes_readonly);
|
||||
@ -7927,9 +7932,7 @@ static void dump_space_info(struct btrfs_space_info *info, u64 bytes,
|
||||
again:
|
||||
list_for_each_entry(cache, &info->block_groups[index], list) {
|
||||
spin_lock(&cache->lock);
|
||||
printk(KERN_INFO "BTRFS: "
|
||||
"block group %llu has %llu bytes, "
|
||||
"%llu used %llu pinned %llu reserved %s\n",
|
||||
printk(KERN_INFO "BTRFS: block group %llu has %llu bytes, %llu used %llu pinned %llu reserved %s\n",
|
||||
cache->key.objectid, cache->key.offset,
|
||||
btrfs_block_group_used(&cache->item), cache->pinned,
|
||||
cache->reserved, cache->ro ? "[readonly]" : "");
|
||||
@ -7971,8 +7974,9 @@ int btrfs_reserve_extent(struct btrfs_root *root, u64 ram_bytes,
|
||||
struct btrfs_space_info *sinfo;
|
||||
|
||||
sinfo = __find_space_info(root->fs_info, flags);
|
||||
btrfs_err(root->fs_info, "allocation failed flags %llu, wanted %llu",
|
||||
flags, num_bytes);
|
||||
btrfs_err(root->fs_info,
|
||||
"allocation failed flags %llu, wanted %llu",
|
||||
flags, num_bytes);
|
||||
if (sinfo)
|
||||
dump_space_info(sinfo, num_bytes, 1);
|
||||
}
|
||||
@ -8966,10 +8970,8 @@ static noinline int do_walk_down(struct btrfs_trans_handle *trans,
|
||||
generation, level - 1);
|
||||
if (ret) {
|
||||
btrfs_err_rl(root->fs_info,
|
||||
"Error "
|
||||
"%d accounting shared subtree. Quota "
|
||||
"is out of sync, rescan required.",
|
||||
ret);
|
||||
"Error %d accounting shared subtree. Quota is out of sync, rescan required.",
|
||||
ret);
|
||||
}
|
||||
}
|
||||
ret = btrfs_free_extent(trans, root, bytenr, blocksize, parent,
|
||||
@ -9059,10 +9061,8 @@ static noinline int walk_up_proc(struct btrfs_trans_handle *trans,
|
||||
ret = account_leaf_items(trans, root, eb);
|
||||
if (ret) {
|
||||
btrfs_err_rl(root->fs_info,
|
||||
"error "
|
||||
"%d accounting leaf items. Quota "
|
||||
"is out of sync, rescan required.",
|
||||
ret);
|
||||
"error %d accounting leaf items. Quota is out of sync, rescan required.",
|
||||
ret);
|
||||
}
|
||||
}
|
||||
/* make block locked assertion in clean_tree_block happy */
|
||||
|
@ -75,8 +75,7 @@ void btrfs_leak_debug_check(void)
|
||||
|
||||
while (!list_empty(&buffers)) {
|
||||
eb = list_entry(buffers.next, struct extent_buffer, leak_list);
|
||||
printk(KERN_ERR "BTRFS: buffer leak start %llu len %lu "
|
||||
"refs %d\n",
|
||||
printk(KERN_ERR "BTRFS: buffer leak start %llu len %lu refs %d\n",
|
||||
eb->start, eb->len, atomic_read(&eb->refs));
|
||||
list_del(&eb->leak_list);
|
||||
kmem_cache_free(extent_buffer_cache, eb);
|
||||
@ -461,8 +460,7 @@ static int insert_state(struct extent_io_tree *tree,
|
||||
if (node) {
|
||||
struct extent_state *found;
|
||||
found = rb_entry(node, struct extent_state, rb_node);
|
||||
printk(KERN_ERR "BTRFS: found node %llu %llu on insert of "
|
||||
"%llu %llu\n",
|
||||
printk(KERN_ERR "BTRFS: found node %llu %llu on insert of %llu %llu\n",
|
||||
found->start, found->end, start, end);
|
||||
return -EEXIST;
|
||||
}
|
||||
@ -573,9 +571,8 @@ alloc_extent_state_atomic(struct extent_state *prealloc)
|
||||
|
||||
static void extent_io_tree_panic(struct extent_io_tree *tree, int err)
|
||||
{
|
||||
btrfs_panic(tree_fs_info(tree), err, "Locking error: "
|
||||
"Extent tree was modified by another "
|
||||
"thread while locked.");
|
||||
btrfs_panic(tree_fs_info(tree), err,
|
||||
"Locking error: Extent tree was modified by another thread while locked.");
|
||||
}
|
||||
|
||||
/*
|
||||
@ -2485,8 +2482,7 @@ static void end_bio_extent_writepage(struct bio *bio)
|
||||
bvec->bv_offset, bvec->bv_len);
|
||||
else
|
||||
btrfs_info(BTRFS_I(page->mapping->host)->root->fs_info,
|
||||
"incomplete page write in btrfs with offset %u and "
|
||||
"length %u",
|
||||
"incomplete page write in btrfs with offset %u and length %u",
|
||||
bvec->bv_offset, bvec->bv_len);
|
||||
}
|
||||
|
||||
@ -2543,8 +2539,8 @@ static void end_bio_extent_readpage(struct bio *bio)
|
||||
struct page *page = bvec->bv_page;
|
||||
struct inode *inode = page->mapping->host;
|
||||
|
||||
pr_debug("end_bio_extent_readpage: bi_sector=%llu, err=%d, "
|
||||
"mirror=%u\n", (u64)bio->bi_iter.bi_sector,
|
||||
pr_debug("end_bio_extent_readpage: bi_sector=%llu, err=%d, mirror=%u\n",
|
||||
(u64)bio->bi_iter.bi_sector,
|
||||
bio->bi_error, io_bio->mirror_num);
|
||||
tree = &BTRFS_I(inode)->io_tree;
|
||||
|
||||
@ -2560,8 +2556,7 @@ static void end_bio_extent_readpage(struct bio *bio)
|
||||
bvec->bv_offset, bvec->bv_len);
|
||||
else
|
||||
btrfs_info(BTRFS_I(page->mapping->host)->root->fs_info,
|
||||
"incomplete page read in btrfs with offset %u and "
|
||||
"length %u",
|
||||
"incomplete page read in btrfs with offset %u and length %u",
|
||||
bvec->bv_offset, bvec->bv_len);
|
||||
}
|
||||
|
||||
@ -5405,8 +5400,7 @@ int map_private_extent_buffer(struct extent_buffer *eb, unsigned long start,
|
||||
}
|
||||
|
||||
if (start + min_len > eb->len) {
|
||||
WARN(1, KERN_ERR "btrfs bad mapping eb start %llu len %lu, "
|
||||
"wanted %lu %lu\n",
|
||||
WARN(1, KERN_ERR "btrfs bad mapping eb start %llu len %lu, wanted %lu %lu\n",
|
||||
eb->start, eb->len, start, min_len);
|
||||
return -EINVAL;
|
||||
}
|
||||
@ -5736,14 +5730,14 @@ void memcpy_extent_buffer(struct extent_buffer *dst, unsigned long dst_offset,
|
||||
|
||||
if (src_offset + len > dst->len) {
|
||||
btrfs_err(dst->fs_info,
|
||||
"memmove bogus src_offset %lu move "
|
||||
"len %lu dst len %lu", src_offset, len, dst->len);
|
||||
"memmove bogus src_offset %lu move len %lu dst len %lu",
|
||||
src_offset, len, dst->len);
|
||||
BUG_ON(1);
|
||||
}
|
||||
if (dst_offset + len > dst->len) {
|
||||
btrfs_err(dst->fs_info,
|
||||
"memmove bogus dst_offset %lu move "
|
||||
"len %lu dst len %lu", dst_offset, len, dst->len);
|
||||
"memmove bogus dst_offset %lu move len %lu dst len %lu",
|
||||
dst_offset, len, dst->len);
|
||||
BUG_ON(1);
|
||||
}
|
||||
|
||||
@ -5783,13 +5777,15 @@ void memmove_extent_buffer(struct extent_buffer *dst, unsigned long dst_offset,
|
||||
unsigned long src_i;
|
||||
|
||||
if (src_offset + len > dst->len) {
|
||||
btrfs_err(dst->fs_info, "memmove bogus src_offset %lu move "
|
||||
"len %lu len %lu", src_offset, len, dst->len);
|
||||
btrfs_err(dst->fs_info,
|
||||
"memmove bogus src_offset %lu move len %lu len %lu",
|
||||
src_offset, len, dst->len);
|
||||
BUG_ON(1);
|
||||
}
|
||||
if (dst_offset + len > dst->len) {
|
||||
btrfs_err(dst->fs_info, "memmove bogus dst_offset %lu move "
|
||||
"len %lu len %lu", dst_offset, len, dst->len);
|
||||
btrfs_err(dst->fs_info,
|
||||
"memmove bogus dst_offset %lu move len %lu len %lu",
|
||||
dst_offset, len, dst->len);
|
||||
BUG_ON(1);
|
||||
}
|
||||
if (dst_offset < src_offset) {
|
||||
|
@ -716,8 +716,7 @@ static int __load_free_space_cache(struct btrfs_root *root, struct inode *inode,
|
||||
|
||||
if (BTRFS_I(inode)->generation != generation) {
|
||||
btrfs_err(root->fs_info,
|
||||
"free space inode generation (%llu) "
|
||||
"did not match free space cache generation (%llu)",
|
||||
"free space inode generation (%llu) did not match free space cache generation (%llu)",
|
||||
BTRFS_I(inode)->generation, generation);
|
||||
return 0;
|
||||
}
|
||||
@ -879,8 +878,9 @@ int load_free_space_cache(struct btrfs_fs_info *fs_info,
|
||||
|
||||
if (!matched) {
|
||||
__btrfs_remove_free_space_cache(ctl);
|
||||
btrfs_warn(fs_info, "block group %llu has wrong amount of free space",
|
||||
block_group->key.objectid);
|
||||
btrfs_warn(fs_info,
|
||||
"block group %llu has wrong amount of free space",
|
||||
block_group->key.objectid);
|
||||
ret = -1;
|
||||
}
|
||||
out:
|
||||
@ -891,8 +891,9 @@ int load_free_space_cache(struct btrfs_fs_info *fs_info,
|
||||
spin_unlock(&block_group->lock);
|
||||
ret = 0;
|
||||
|
||||
btrfs_warn(fs_info, "failed to load free space cache for block group %llu, rebuilding it now",
|
||||
block_group->key.objectid);
|
||||
btrfs_warn(fs_info,
|
||||
"failed to load free space cache for block group %llu, rebuilding it now",
|
||||
block_group->key.objectid);
|
||||
}
|
||||
|
||||
iput(inode);
|
||||
|
@ -261,7 +261,8 @@ int convert_free_space_to_bitmaps(struct btrfs_trans_handle *trans,
|
||||
btrfs_release_path(path);
|
||||
|
||||
if (extent_count != expected_extent_count) {
|
||||
btrfs_err(fs_info, "incorrect extent count for %llu; counted %u, expected %u",
|
||||
btrfs_err(fs_info,
|
||||
"incorrect extent count for %llu; counted %u, expected %u",
|
||||
block_group->key.objectid, extent_count,
|
||||
expected_extent_count);
|
||||
ASSERT(0);
|
||||
@ -442,7 +443,8 @@ int convert_free_space_to_extents(struct btrfs_trans_handle *trans,
|
||||
}
|
||||
|
||||
if (extent_count != expected_extent_count) {
|
||||
btrfs_err(fs_info, "incorrect extent count for %llu; counted %u, expected %u",
|
||||
btrfs_err(fs_info,
|
||||
"incorrect extent count for %llu; counted %u, expected %u",
|
||||
block_group->key.objectid, extent_count,
|
||||
expected_extent_count);
|
||||
ASSERT(0);
|
||||
@ -1480,7 +1482,8 @@ static int load_free_space_bitmaps(struct btrfs_caching_control *caching_ctl,
|
||||
}
|
||||
|
||||
if (extent_count != expected_extent_count) {
|
||||
btrfs_err(fs_info, "incorrect extent count for %llu; counted %u, expected %u",
|
||||
btrfs_err(fs_info,
|
||||
"incorrect extent count for %llu; counted %u, expected %u",
|
||||
block_group->key.objectid, extent_count,
|
||||
expected_extent_count);
|
||||
ASSERT(0);
|
||||
@ -1542,7 +1545,8 @@ static int load_free_space_extents(struct btrfs_caching_control *caching_ctl,
|
||||
}
|
||||
|
||||
if (extent_count != expected_extent_count) {
|
||||
btrfs_err(fs_info, "incorrect extent count for %llu; counted %u, expected %u",
|
||||
btrfs_err(fs_info,
|
||||
"incorrect extent count for %llu; counted %u, expected %u",
|
||||
block_group->key.objectid, extent_count,
|
||||
expected_extent_count);
|
||||
ASSERT(0);
|
||||
|
@ -7024,8 +7024,9 @@ struct extent_map *btrfs_get_extent(struct inode *inode, struct page *page,
|
||||
insert:
|
||||
btrfs_release_path(path);
|
||||
if (em->start > start || extent_map_end(em) <= start) {
|
||||
btrfs_err(root->fs_info, "bad extent! em: [%llu %llu] passed [%llu %llu]",
|
||||
em->start, em->len, start, len);
|
||||
btrfs_err(root->fs_info,
|
||||
"bad extent! em: [%llu %llu] passed [%llu %llu]",
|
||||
em->start, em->len, start, len);
|
||||
err = -EIO;
|
||||
goto out;
|
||||
}
|
||||
@ -9388,8 +9389,9 @@ void btrfs_destroy_inode(struct inode *inode)
|
||||
if (!ordered)
|
||||
break;
|
||||
else {
|
||||
btrfs_err(root->fs_info, "found ordered extent %llu %llu on inode cleanup",
|
||||
ordered->file_offset, ordered->len);
|
||||
btrfs_err(root->fs_info,
|
||||
"found ordered extent %llu %llu on inode cleanup",
|
||||
ordered->file_offset, ordered->len);
|
||||
btrfs_remove_ordered_extent(inode, ordered);
|
||||
btrfs_put_ordered_extent(ordered);
|
||||
btrfs_put_ordered_extent(ordered);
|
||||
|
@ -1903,8 +1903,9 @@ static noinline int may_destroy_subvol(struct btrfs_root *root)
|
||||
btrfs_dir_item_key_to_cpu(path->nodes[0], di, &key);
|
||||
if (key.objectid == root->root_key.objectid) {
|
||||
ret = -EPERM;
|
||||
btrfs_err(root->fs_info, "deleting default subvolume "
|
||||
"%llu is not allowed", key.objectid);
|
||||
btrfs_err(root->fs_info,
|
||||
"deleting default subvolume %llu is not allowed",
|
||||
key.objectid);
|
||||
goto out;
|
||||
}
|
||||
btrfs_release_path(path);
|
||||
@ -4097,8 +4098,8 @@ static long btrfs_ioctl_default_subvol(struct file *file, void __user *argp)
|
||||
if (IS_ERR_OR_NULL(di)) {
|
||||
btrfs_free_path(path);
|
||||
btrfs_end_transaction(trans, root);
|
||||
btrfs_err(new_root->fs_info, "Umm, you don't have the default dir"
|
||||
"item, this isn't going to work");
|
||||
btrfs_err(new_root->fs_info,
|
||||
"Umm, you don't have the default diritem, this isn't going to work");
|
||||
ret = -ENOENT;
|
||||
goto out;
|
||||
}
|
||||
@ -5307,8 +5308,9 @@ static int btrfs_ioctl_set_fslabel(struct file *file, void __user *arg)
|
||||
return -EFAULT;
|
||||
|
||||
if (strnlen(label, BTRFS_LABEL_SIZE) == BTRFS_LABEL_SIZE) {
|
||||
btrfs_err(root->fs_info, "unable to set label with more than %d bytes",
|
||||
BTRFS_LABEL_SIZE - 1);
|
||||
btrfs_err(root->fs_info,
|
||||
"unable to set label with more than %d bytes",
|
||||
BTRFS_LABEL_SIZE - 1);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
@ -67,8 +67,8 @@ static void ordered_data_tree_panic(struct inode *inode, int errno,
|
||||
u64 offset)
|
||||
{
|
||||
struct btrfs_fs_info *fs_info = btrfs_sb(inode->i_sb);
|
||||
btrfs_panic(fs_info, errno, "Inconsistency in ordered tree at offset "
|
||||
"%llu", offset);
|
||||
btrfs_panic(fs_info, errno,
|
||||
"Inconsistency in ordered tree at offset %llu", offset);
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -24,8 +24,7 @@ static void print_chunk(struct extent_buffer *eb, struct btrfs_chunk *chunk)
|
||||
{
|
||||
int num_stripes = btrfs_chunk_num_stripes(eb, chunk);
|
||||
int i;
|
||||
printk(KERN_INFO "\t\tchunk length %llu owner %llu type %llu "
|
||||
"num_stripes %d\n",
|
||||
printk(KERN_INFO "\t\tchunk length %llu owner %llu type %llu num_stripes %d\n",
|
||||
btrfs_chunk_length(eb, chunk), btrfs_chunk_owner(eb, chunk),
|
||||
btrfs_chunk_type(eb, chunk), num_stripes);
|
||||
for (i = 0 ; i < num_stripes ; i++) {
|
||||
@ -37,8 +36,7 @@ static void print_chunk(struct extent_buffer *eb, struct btrfs_chunk *chunk)
|
||||
static void print_dev_item(struct extent_buffer *eb,
|
||||
struct btrfs_dev_item *dev_item)
|
||||
{
|
||||
printk(KERN_INFO "\t\tdev item devid %llu "
|
||||
"total_bytes %llu bytes used %llu\n",
|
||||
printk(KERN_INFO "\t\tdev item devid %llu total_bytes %llu bytes used %llu\n",
|
||||
btrfs_device_id(eb, dev_item),
|
||||
btrfs_device_total_bytes(eb, dev_item),
|
||||
btrfs_device_bytes_used(eb, dev_item));
|
||||
@ -46,8 +44,7 @@ static void print_dev_item(struct extent_buffer *eb,
|
||||
static void print_extent_data_ref(struct extent_buffer *eb,
|
||||
struct btrfs_extent_data_ref *ref)
|
||||
{
|
||||
printk(KERN_INFO "\t\textent data backref root %llu "
|
||||
"objectid %llu offset %llu count %u\n",
|
||||
printk(KERN_INFO "\t\textent data backref root %llu objectid %llu offset %llu count %u\n",
|
||||
btrfs_extent_data_ref_root(eb, ref),
|
||||
btrfs_extent_data_ref_objectid(eb, ref),
|
||||
btrfs_extent_data_ref_offset(eb, ref),
|
||||
@ -92,8 +89,7 @@ static void print_extent_item(struct extent_buffer *eb, int slot, int type)
|
||||
struct btrfs_tree_block_info *info;
|
||||
info = (struct btrfs_tree_block_info *)(ei + 1);
|
||||
btrfs_tree_block_key(eb, info, &key);
|
||||
printk(KERN_INFO "\t\ttree block key (%llu %u %llu) "
|
||||
"level %d\n",
|
||||
printk(KERN_INFO "\t\ttree block key (%llu %u %llu) level %d\n",
|
||||
btrfs_disk_key_objectid(&key), key.type,
|
||||
btrfs_disk_key_offset(&key),
|
||||
btrfs_tree_block_level(eb, info));
|
||||
@ -110,12 +106,10 @@ static void print_extent_item(struct extent_buffer *eb, int slot, int type)
|
||||
offset = btrfs_extent_inline_ref_offset(eb, iref);
|
||||
switch (type) {
|
||||
case BTRFS_TREE_BLOCK_REF_KEY:
|
||||
printk(KERN_INFO "\t\ttree block backref "
|
||||
"root %llu\n", offset);
|
||||
printk(KERN_INFO "\t\ttree block backref root %llu\n", offset);
|
||||
break;
|
||||
case BTRFS_SHARED_BLOCK_REF_KEY:
|
||||
printk(KERN_INFO "\t\tshared block backref "
|
||||
"parent %llu\n", offset);
|
||||
printk(KERN_INFO "\t\tshared block backref parent %llu\n", offset);
|
||||
break;
|
||||
case BTRFS_EXTENT_DATA_REF_KEY:
|
||||
dref = (struct btrfs_extent_data_ref *)(&iref->offset);
|
||||
@ -123,8 +117,7 @@ static void print_extent_item(struct extent_buffer *eb, int slot, int type)
|
||||
break;
|
||||
case BTRFS_SHARED_DATA_REF_KEY:
|
||||
sref = (struct btrfs_shared_data_ref *)(iref + 1);
|
||||
printk(KERN_INFO "\t\tshared data backref "
|
||||
"parent %llu count %u\n",
|
||||
printk(KERN_INFO "\t\tshared data backref parent %llu count %u\n",
|
||||
offset, btrfs_shared_data_ref_count(eb, sref));
|
||||
break;
|
||||
default:
|
||||
@ -141,8 +134,7 @@ static void print_extent_ref_v0(struct extent_buffer *eb, int slot)
|
||||
struct btrfs_extent_ref_v0 *ref0;
|
||||
|
||||
ref0 = btrfs_item_ptr(eb, slot, struct btrfs_extent_ref_v0);
|
||||
printk("\t\textent back ref root %llu gen %llu "
|
||||
"owner %llu num_refs %lu\n",
|
||||
printk("\t\textent back ref root %llu gen %llu owner %llu num_refs %lu\n",
|
||||
btrfs_ref_root_v0(eb, ref0),
|
||||
btrfs_ref_generation_v0(eb, ref0),
|
||||
btrfs_ref_objectid_v0(eb, ref0),
|
||||
@ -196,15 +188,13 @@ void btrfs_print_leaf(struct btrfs_root *root, struct extent_buffer *l)
|
||||
item = btrfs_item_nr(i);
|
||||
btrfs_item_key_to_cpu(l, &key, i);
|
||||
type = key.type;
|
||||
printk(KERN_INFO "\titem %d key (%llu %u %llu) itemoff %d "
|
||||
"itemsize %d\n",
|
||||
printk(KERN_INFO "\titem %d key (%llu %u %llu) itemoff %d itemsize %d\n",
|
||||
i, key.objectid, type, key.offset,
|
||||
btrfs_item_offset(l, item), btrfs_item_size(l, item));
|
||||
switch (type) {
|
||||
case BTRFS_INODE_ITEM_KEY:
|
||||
ii = btrfs_item_ptr(l, i, struct btrfs_inode_item);
|
||||
printk(KERN_INFO "\t\tinode generation %llu size %llu "
|
||||
"mode %o\n",
|
||||
printk(KERN_INFO "\t\tinode generation %llu size %llu mode %o\n",
|
||||
btrfs_inode_generation(l, ii),
|
||||
btrfs_inode_size(l, ii),
|
||||
btrfs_inode_mode(l, ii));
|
||||
@ -248,17 +238,14 @@ void btrfs_print_leaf(struct btrfs_root *root, struct extent_buffer *l)
|
||||
struct btrfs_file_extent_item);
|
||||
if (btrfs_file_extent_type(l, fi) ==
|
||||
BTRFS_FILE_EXTENT_INLINE) {
|
||||
printk(KERN_INFO "\t\tinline extent data "
|
||||
"size %u\n",
|
||||
printk(KERN_INFO "\t\tinline extent data size %u\n",
|
||||
btrfs_file_extent_inline_len(l, i, fi));
|
||||
break;
|
||||
}
|
||||
printk(KERN_INFO "\t\textent data disk bytenr %llu "
|
||||
"nr %llu\n",
|
||||
printk(KERN_INFO "\t\textent data disk bytenr %llu nr %llu\n",
|
||||
btrfs_file_extent_disk_bytenr(l, fi),
|
||||
btrfs_file_extent_disk_num_bytes(l, fi));
|
||||
printk(KERN_INFO "\t\textent data offset %llu "
|
||||
"nr %llu ram %llu\n",
|
||||
printk(KERN_INFO "\t\textent data offset %llu nr %llu ram %llu\n",
|
||||
btrfs_file_extent_offset(l, fi),
|
||||
btrfs_file_extent_num_bytes(l, fi),
|
||||
btrfs_file_extent_ram_bytes(l, fi));
|
||||
@ -287,9 +274,7 @@ void btrfs_print_leaf(struct btrfs_root *root, struct extent_buffer *l)
|
||||
case BTRFS_DEV_EXTENT_KEY:
|
||||
dev_extent = btrfs_item_ptr(l, i,
|
||||
struct btrfs_dev_extent);
|
||||
printk(KERN_INFO "\t\tdev extent chunk_tree %llu\n"
|
||||
"\t\tchunk objectid %llu chunk offset %llu "
|
||||
"length %llu\n",
|
||||
printk(KERN_INFO "\t\tdev extent chunk_tree %llu\n\t\tchunk objectid %llu chunk offset %llu length %llu\n",
|
||||
btrfs_dev_extent_chunk_tree(l, dev_extent),
|
||||
btrfs_dev_extent_chunk_objectid(l, dev_extent),
|
||||
btrfs_dev_extent_chunk_offset(l, dev_extent),
|
||||
@ -343,9 +328,10 @@ void btrfs_print_tree(struct btrfs_root *root, struct extent_buffer *c)
|
||||
btrfs_print_leaf(root, c);
|
||||
return;
|
||||
}
|
||||
btrfs_info(root->fs_info, "node %llu level %d total ptrs %d free spc %u",
|
||||
btrfs_header_bytenr(c), level, nr,
|
||||
(u32)BTRFS_NODEPTRS_PER_BLOCK(root) - nr);
|
||||
btrfs_info(root->fs_info,
|
||||
"node %llu level %d total ptrs %d free spc %u",
|
||||
btrfs_header_bytenr(c), level, nr,
|
||||
(u32)BTRFS_NODEPTRS_PER_BLOCK(root) - nr);
|
||||
for (i = 0; i < nr; i++) {
|
||||
btrfs_node_key_to_cpu(c, &key, i);
|
||||
printk(KERN_INFO "\tkey %d (%llu %u %llu) block %llu\n",
|
||||
|
@ -360,8 +360,7 @@ int btrfs_read_qgroup_config(struct btrfs_fs_info *fs_info)
|
||||
fs_info->generation) {
|
||||
flags |= BTRFS_QGROUP_STATUS_FLAG_INCONSISTENT;
|
||||
btrfs_err(fs_info,
|
||||
"qgroup generation mismatch, "
|
||||
"marked as inconsistent");
|
||||
"qgroup generation mismatch, marked as inconsistent");
|
||||
}
|
||||
fs_info->qgroup_flags = btrfs_qgroup_status_flags(l,
|
||||
ptr);
|
||||
@ -1994,8 +1993,9 @@ int btrfs_qgroup_inherit(struct btrfs_trans_handle *trans,
|
||||
ret = update_qgroup_limit_item(trans, quota_root, dstgroup);
|
||||
if (ret) {
|
||||
fs_info->qgroup_flags |= BTRFS_QGROUP_STATUS_FLAG_INCONSISTENT;
|
||||
btrfs_info(fs_info, "unable to update quota limit for %llu",
|
||||
dstgroup->qgroupid);
|
||||
btrfs_info(fs_info,
|
||||
"unable to update quota limit for %llu",
|
||||
dstgroup->qgroupid);
|
||||
goto unlock;
|
||||
}
|
||||
}
|
||||
@ -2229,8 +2229,7 @@ void assert_qgroups_uptodate(struct btrfs_trans_handle *trans)
|
||||
if (list_empty(&trans->qgroup_ref_list) && !trans->delayed_ref_elem.seq)
|
||||
return;
|
||||
btrfs_err(trans->fs_info,
|
||||
"qgroups not uptodate in trans handle %p: list is%s empty, "
|
||||
"seq is %#x.%x",
|
||||
"qgroups not uptodate in trans handle %p: list is%s empty, seq is %#x.%x",
|
||||
trans, list_empty(&trans->qgroup_ref_list) ? "" : " not",
|
||||
(u32)(trans->delayed_ref_elem.seq >> 32),
|
||||
(u32)trans->delayed_ref_elem.seq);
|
||||
|
@ -829,9 +829,9 @@ static void dump_devs(struct btrfs_fs_info *fs_info, int all)
|
||||
(void **)&zone, index, 1);
|
||||
if (ret == 0)
|
||||
break;
|
||||
printk(KERN_DEBUG " zone %llu-%llu elems %llu locked "
|
||||
"%d devs", zone->start, zone->end, zone->elems,
|
||||
zone->locked);
|
||||
printk(KERN_DEBUG " zone %llu-%llu elems %llu locked %d devs",
|
||||
zone->start, zone->end, zone->elems,
|
||||
zone->locked);
|
||||
for (j = 0; j < zone->ndevs; ++j) {
|
||||
printk(KERN_CONT " %lld",
|
||||
zone->devs[j]->devid);
|
||||
|
@ -337,8 +337,9 @@ static void backref_tree_panic(struct rb_node *rb_node, int errno, u64 bytenr)
|
||||
rb_node);
|
||||
if (bnode->root)
|
||||
fs_info = bnode->root->fs_info;
|
||||
btrfs_panic(fs_info, errno, "Inconsistency in backref cache "
|
||||
"found at offset %llu", bytenr);
|
||||
btrfs_panic(fs_info, errno,
|
||||
"Inconsistency in backref cache found at offset %llu",
|
||||
bytenr);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -1303,9 +1304,9 @@ static int __must_check __add_reloc_root(struct btrfs_root *root)
|
||||
node->bytenr, &node->rb_node);
|
||||
spin_unlock(&rc->reloc_root_tree.lock);
|
||||
if (rb_node) {
|
||||
btrfs_panic(root->fs_info, -EEXIST, "Duplicate root found "
|
||||
"for start=%llu while inserting into relocation "
|
||||
"tree", node->bytenr);
|
||||
btrfs_panic(root->fs_info, -EEXIST,
|
||||
"Duplicate root found for start=%llu while inserting into relocation tree",
|
||||
node->bytenr);
|
||||
kfree(node);
|
||||
return -EEXIST;
|
||||
}
|
||||
@ -4380,8 +4381,9 @@ int btrfs_relocate_block_group(struct btrfs_root *extent_root, u64 group_start)
|
||||
goto out;
|
||||
}
|
||||
|
||||
btrfs_info(extent_root->fs_info, "relocating block group %llu flags %llu",
|
||||
rc->block_group->key.objectid, rc->block_group->flags);
|
||||
btrfs_info(extent_root->fs_info,
|
||||
"relocating block group %llu flags %llu",
|
||||
rc->block_group->key.objectid, rc->block_group->flags);
|
||||
|
||||
btrfs_wait_block_group_reservations(rc->block_group);
|
||||
btrfs_wait_nocow_writers(rc->block_group);
|
||||
|
@ -46,12 +46,7 @@ static void btrfs_read_root_item(struct extent_buffer *eb, int slot,
|
||||
!= btrfs_root_generation_v2(item)) {
|
||||
if (btrfs_root_generation_v2(item) != 0) {
|
||||
btrfs_warn(eb->fs_info,
|
||||
"mismatching "
|
||||
"generation and generation_v2 "
|
||||
"found in root item. This root "
|
||||
"was probably mounted with an "
|
||||
"older kernel. Resetting all "
|
||||
"new fields.");
|
||||
"mismatching generation and generation_v2 found in root item. This root was probably mounted with an older kernel. Resetting all new fields.");
|
||||
}
|
||||
need_reset = 1;
|
||||
}
|
||||
@ -156,8 +151,9 @@ int btrfs_update_root(struct btrfs_trans_handle *trans, struct btrfs_root
|
||||
|
||||
if (ret != 0) {
|
||||
btrfs_print_leaf(root, path->nodes[0]);
|
||||
btrfs_crit(root->fs_info, "unable to update root key %llu %u %llu",
|
||||
key->objectid, key->type, key->offset);
|
||||
btrfs_crit(root->fs_info,
|
||||
"unable to update root key %llu %u %llu",
|
||||
key->objectid, key->type, key->offset);
|
||||
BUG_ON(1);
|
||||
}
|
||||
|
||||
@ -302,8 +298,7 @@ int btrfs_find_orphan_roots(struct btrfs_root *tree_root)
|
||||
if (IS_ERR(trans)) {
|
||||
err = PTR_ERR(trans);
|
||||
btrfs_handle_fs_error(tree_root->fs_info, err,
|
||||
"Failed to start trans to delete "
|
||||
"orphan item");
|
||||
"Failed to start trans to delete orphan item");
|
||||
break;
|
||||
}
|
||||
err = btrfs_del_orphan_item(trans, tree_root,
|
||||
@ -311,8 +306,7 @@ int btrfs_find_orphan_roots(struct btrfs_root *tree_root)
|
||||
btrfs_end_transaction(trans, tree_root);
|
||||
if (err) {
|
||||
btrfs_handle_fs_error(tree_root->fs_info, err,
|
||||
"Failed to delete root orphan "
|
||||
"item");
|
||||
"Failed to delete root orphan item");
|
||||
break;
|
||||
}
|
||||
continue;
|
||||
|
@ -575,23 +575,25 @@ static int scrub_print_warning_inode(u64 inum, u64 offset, u64 root,
|
||||
* hold all of the paths here
|
||||
*/
|
||||
for (i = 0; i < ipath->fspath->elem_cnt; ++i)
|
||||
btrfs_warn_in_rcu(fs_info, "%s at logical %llu on dev "
|
||||
"%s, sector %llu, root %llu, inode %llu, offset %llu, "
|
||||
"length %llu, links %u (path: %s)", swarn->errstr,
|
||||
swarn->logical, rcu_str_deref(swarn->dev->name),
|
||||
(unsigned long long)swarn->sector, root, inum, offset,
|
||||
min(isize - offset, (u64)PAGE_SIZE), nlink,
|
||||
(char *)(unsigned long)ipath->fspath->val[i]);
|
||||
btrfs_warn_in_rcu(fs_info,
|
||||
"%s at logical %llu on dev %s, sector %llu, root %llu, inode %llu, offset %llu, length %llu, links %u (path: %s)",
|
||||
swarn->errstr, swarn->logical,
|
||||
rcu_str_deref(swarn->dev->name),
|
||||
(unsigned long long)swarn->sector,
|
||||
root, inum, offset,
|
||||
min(isize - offset, (u64)PAGE_SIZE), nlink,
|
||||
(char *)(unsigned long)ipath->fspath->val[i]);
|
||||
|
||||
free_ipath(ipath);
|
||||
return 0;
|
||||
|
||||
err:
|
||||
btrfs_warn_in_rcu(fs_info, "%s at logical %llu on dev "
|
||||
"%s, sector %llu, root %llu, inode %llu, offset %llu: path "
|
||||
"resolving failed with ret=%d", swarn->errstr,
|
||||
swarn->logical, rcu_str_deref(swarn->dev->name),
|
||||
(unsigned long long)swarn->sector, root, inum, offset, ret);
|
||||
btrfs_warn_in_rcu(fs_info,
|
||||
"%s at logical %llu on dev %s, sector %llu, root %llu, inode %llu, offset %llu: path resolving failed with ret=%d",
|
||||
swarn->errstr, swarn->logical,
|
||||
rcu_str_deref(swarn->dev->name),
|
||||
(unsigned long long)swarn->sector,
|
||||
root, inum, offset, ret);
|
||||
|
||||
free_ipath(ipath);
|
||||
return 0;
|
||||
@ -645,9 +647,8 @@ static void scrub_print_warning(const char *errstr, struct scrub_block *sblock)
|
||||
item_size, &ref_root,
|
||||
&ref_level);
|
||||
btrfs_warn_in_rcu(fs_info,
|
||||
"%s at logical %llu on dev %s, "
|
||||
"sector %llu: metadata %s (level %d) in tree "
|
||||
"%llu", errstr, swarn.logical,
|
||||
"%s at logical %llu on dev %s, sector %llu: metadata %s (level %d) in tree %llu",
|
||||
errstr, swarn.logical,
|
||||
rcu_str_deref(dev->name),
|
||||
(unsigned long long)swarn.sector,
|
||||
ref_level ? "node" : "leaf",
|
||||
@ -1574,8 +1575,7 @@ static int scrub_repair_page_from_good_copy(struct scrub_block *sblock_bad,
|
||||
|
||||
if (!page_bad->dev->bdev) {
|
||||
btrfs_warn_rl(sblock_bad->sctx->dev_root->fs_info,
|
||||
"scrub_repair_page_from_good_copy(bdev == NULL) "
|
||||
"is unexpected");
|
||||
"scrub_repair_page_from_good_copy(bdev == NULL) is unexpected");
|
||||
return -EIO;
|
||||
}
|
||||
|
||||
@ -2961,7 +2961,8 @@ static noinline_for_stack int scrub_raid56_parity(struct scrub_ctx *sctx,
|
||||
(key.objectid < logic_start ||
|
||||
key.objectid + bytes >
|
||||
logic_start + map->stripe_len)) {
|
||||
btrfs_err(fs_info, "scrub: tree block %llu spanning stripes, ignored. logical=%llu",
|
||||
btrfs_err(fs_info,
|
||||
"scrub: tree block %llu spanning stripes, ignored. logical=%llu",
|
||||
key.objectid, logic_start);
|
||||
spin_lock(&sctx->stat_lock);
|
||||
sctx->stat.uncorrectable_errors++;
|
||||
@ -3312,8 +3313,7 @@ static noinline_for_stack int scrub_stripe(struct scrub_ctx *sctx,
|
||||
key.objectid + bytes >
|
||||
logical + map->stripe_len)) {
|
||||
btrfs_err(fs_info,
|
||||
"scrub: tree block %llu spanning "
|
||||
"stripes, ignored. logical=%llu",
|
||||
"scrub: tree block %llu spanning stripes, ignored. logical=%llu",
|
||||
key.objectid, logical);
|
||||
spin_lock(&sctx->stat_lock);
|
||||
sctx->stat.uncorrectable_errors++;
|
||||
@ -3640,7 +3640,8 @@ int scrub_enumerate_chunks(struct scrub_ctx *sctx,
|
||||
*/
|
||||
ro_set = 0;
|
||||
} else {
|
||||
btrfs_warn(fs_info, "failed setting block group ro, ret=%d\n",
|
||||
btrfs_warn(fs_info,
|
||||
"failed setting block group ro, ret=%d\n",
|
||||
ret);
|
||||
btrfs_put_block_group(cache);
|
||||
break;
|
||||
@ -3861,8 +3862,7 @@ int btrfs_scrub_dev(struct btrfs_fs_info *fs_info, u64 devid, u64 start,
|
||||
if (fs_info->chunk_root->sectorsize != PAGE_SIZE) {
|
||||
/* not supported for data w/o checksums */
|
||||
btrfs_err_rl(fs_info,
|
||||
"scrub: size assumption sectorsize != PAGE_SIZE "
|
||||
"(%d != %lu) fails",
|
||||
"scrub: size assumption sectorsize != PAGE_SIZE (%d != %lu) fails",
|
||||
fs_info->chunk_root->sectorsize, PAGE_SIZE);
|
||||
return -EINVAL;
|
||||
}
|
||||
@ -3875,8 +3875,8 @@ int btrfs_scrub_dev(struct btrfs_fs_info *fs_info, u64 devid, u64 start,
|
||||
* would exhaust the array bounds of pagev member in
|
||||
* struct scrub_block
|
||||
*/
|
||||
btrfs_err(fs_info, "scrub: size assumption nodesize and sectorsize "
|
||||
"<= SCRUB_MAX_PAGES_PER_BLOCK (%d <= %d && %d <= %d) fails",
|
||||
btrfs_err(fs_info,
|
||||
"scrub: size assumption nodesize and sectorsize <= SCRUB_MAX_PAGES_PER_BLOCK (%d <= %d && %d <= %d) fails",
|
||||
fs_info->chunk_root->nodesize,
|
||||
SCRUB_MAX_PAGES_PER_BLOCK,
|
||||
fs_info->chunk_root->sectorsize,
|
||||
@ -4202,10 +4202,10 @@ static void copy_nocow_pages_worker(struct btrfs_work *work)
|
||||
ret = iterate_inodes_from_logical(logical, fs_info, path,
|
||||
record_inode_for_nocow, nocow_ctx);
|
||||
if (ret != 0 && ret != -ENOENT) {
|
||||
btrfs_warn(fs_info, "iterate_inodes_from_logical() failed: log %llu, "
|
||||
"phys %llu, len %llu, mir %u, ret %d",
|
||||
logical, physical_for_dev_replace, len, mirror_num,
|
||||
ret);
|
||||
btrfs_warn(fs_info,
|
||||
"iterate_inodes_from_logical() failed: log %llu, phys %llu, len %llu, mir %u, ret %d",
|
||||
logical, physical_for_dev_replace, len, mirror_num,
|
||||
ret);
|
||||
not_written = 1;
|
||||
goto out;
|
||||
}
|
||||
|
@ -1439,16 +1439,13 @@ static int find_extent_clone(struct send_ctx *sctx,
|
||||
if (!backref_ctx->found_itself) {
|
||||
/* found a bug in backref code? */
|
||||
ret = -EIO;
|
||||
btrfs_err(sctx->send_root->fs_info, "did not find backref in "
|
||||
"send_root. inode=%llu, offset=%llu, "
|
||||
"disk_byte=%llu found extent=%llu",
|
||||
btrfs_err(sctx->send_root->fs_info,
|
||||
"did not find backref in send_root. inode=%llu, offset=%llu, disk_byte=%llu found extent=%llu",
|
||||
ino, data_offset, disk_byte, found_key.objectid);
|
||||
goto out;
|
||||
}
|
||||
|
||||
verbose_printk(KERN_DEBUG "btrfs: find_extent_clone: data_offset=%llu, "
|
||||
"ino=%llu, "
|
||||
"num_bytes=%llu, logical=%llu\n",
|
||||
verbose_printk(KERN_DEBUG "btrfs: find_extent_clone: data_offset=%llu, ino=%llu, num_bytes=%llu, logical=%llu\n",
|
||||
data_offset, ino, num_bytes, logical);
|
||||
|
||||
if (!backref_ctx->found)
|
||||
@ -4710,9 +4707,8 @@ static int send_clone(struct send_ctx *sctx,
|
||||
struct fs_path *p;
|
||||
u64 gen;
|
||||
|
||||
verbose_printk("btrfs: send_clone offset=%llu, len=%d, clone_root=%llu, "
|
||||
"clone_inode=%llu, clone_offset=%llu\n", offset, len,
|
||||
clone_root->root->objectid, clone_root->ino,
|
||||
verbose_printk("btrfs: send_clone offset=%llu, len=%d, clone_root=%llu, clone_inode=%llu, clone_offset=%llu\n",
|
||||
offset, len, clone_root->root->objectid, clone_root->ino,
|
||||
clone_root->offset);
|
||||
|
||||
p = fs_path_alloc();
|
||||
|
@ -462,9 +462,11 @@ int btrfs_parse_options(struct btrfs_root *root, char *options,
|
||||
case Opt_datasum:
|
||||
if (btrfs_test_opt(info, NODATASUM)) {
|
||||
if (btrfs_test_opt(info, NODATACOW))
|
||||
btrfs_info(root->fs_info, "setting datasum, datacow enabled");
|
||||
btrfs_info(root->fs_info,
|
||||
"setting datasum, datacow enabled");
|
||||
else
|
||||
btrfs_info(root->fs_info, "setting datasum");
|
||||
btrfs_info(root->fs_info,
|
||||
"setting datasum");
|
||||
}
|
||||
btrfs_clear_opt(info->mount_opt, NODATACOW);
|
||||
btrfs_clear_opt(info->mount_opt, NODATASUM);
|
||||
@ -476,7 +478,8 @@ int btrfs_parse_options(struct btrfs_root *root, char *options,
|
||||
btrfs_info(root->fs_info,
|
||||
"setting nodatacow, compression disabled");
|
||||
} else {
|
||||
btrfs_info(root->fs_info, "setting nodatacow");
|
||||
btrfs_info(root->fs_info,
|
||||
"setting nodatacow");
|
||||
}
|
||||
}
|
||||
btrfs_clear_opt(info->mount_opt, COMPRESS);
|
||||
@ -608,8 +611,9 @@ int btrfs_parse_options(struct btrfs_root *root, char *options,
|
||||
info->alloc_start = memparse(num, NULL);
|
||||
mutex_unlock(&info->chunk_mutex);
|
||||
kfree(num);
|
||||
btrfs_info(root->fs_info, "allocations start at %llu",
|
||||
info->alloc_start);
|
||||
btrfs_info(root->fs_info,
|
||||
"allocations start at %llu",
|
||||
info->alloc_start);
|
||||
} else {
|
||||
ret = -ENOMEM;
|
||||
goto out;
|
||||
@ -762,8 +766,9 @@ int btrfs_parse_options(struct btrfs_root *root, char *options,
|
||||
goto out;
|
||||
} else if (intarg >= 0) {
|
||||
info->check_integrity_print_mask = intarg;
|
||||
btrfs_info(root->fs_info, "check_integrity_print_mask 0x%x",
|
||||
info->check_integrity_print_mask);
|
||||
btrfs_info(root->fs_info,
|
||||
"check_integrity_print_mask 0x%x",
|
||||
info->check_integrity_print_mask);
|
||||
} else {
|
||||
ret = -EINVAL;
|
||||
goto out;
|
||||
@ -794,19 +799,22 @@ int btrfs_parse_options(struct btrfs_root *root, char *options,
|
||||
intarg = 0;
|
||||
ret = match_int(&args[0], &intarg);
|
||||
if (ret < 0) {
|
||||
btrfs_err(root->fs_info, "invalid commit interval");
|
||||
btrfs_err(root->fs_info,
|
||||
"invalid commit interval");
|
||||
ret = -EINVAL;
|
||||
goto out;
|
||||
}
|
||||
if (intarg > 0) {
|
||||
if (intarg > 300) {
|
||||
btrfs_warn(root->fs_info, "excessive commit interval %d",
|
||||
intarg);
|
||||
btrfs_warn(root->fs_info,
|
||||
"excessive commit interval %d",
|
||||
intarg);
|
||||
}
|
||||
info->commit_interval = intarg;
|
||||
} else {
|
||||
btrfs_info(root->fs_info, "using default commit interval %ds",
|
||||
BTRFS_DEFAULT_COMMIT_INTERVAL);
|
||||
btrfs_info(root->fs_info,
|
||||
"using default commit interval %ds",
|
||||
BTRFS_DEFAULT_COMMIT_INTERVAL);
|
||||
info->commit_interval = BTRFS_DEFAULT_COMMIT_INTERVAL;
|
||||
}
|
||||
break;
|
||||
@ -827,7 +835,8 @@ int btrfs_parse_options(struct btrfs_root *root, char *options,
|
||||
break;
|
||||
#endif
|
||||
case Opt_err:
|
||||
btrfs_info(root->fs_info, "unrecognized mount option '%s'", p);
|
||||
btrfs_info(root->fs_info,
|
||||
"unrecognized mount option '%s'", p);
|
||||
ret = -EINVAL;
|
||||
goto out;
|
||||
default:
|
||||
@ -917,8 +926,7 @@ static int btrfs_parse_early_options(const char *options, fmode_t flags,
|
||||
break;
|
||||
case Opt_subvolrootid:
|
||||
printk(KERN_WARNING
|
||||
"BTRFS: 'subvolrootid' mount option is deprecated and has "
|
||||
"no effect\n");
|
||||
"BTRFS: 'subvolrootid' mount option is deprecated and has no effect\n");
|
||||
break;
|
||||
case Opt_device:
|
||||
device_name = match_strdup(&args[0]);
|
||||
@ -1830,7 +1838,9 @@ static int btrfs_remount(struct super_block *sb, int *flags, char *data)
|
||||
btrfs_info(fs_info, "creating UUID tree");
|
||||
ret = btrfs_create_uuid_tree(fs_info);
|
||||
if (ret) {
|
||||
btrfs_warn(fs_info, "failed to create the UUID tree %d", ret);
|
||||
btrfs_warn(fs_info,
|
||||
"failed to create the UUID tree %d",
|
||||
ret);
|
||||
goto restore;
|
||||
}
|
||||
}
|
||||
|
@ -430,7 +430,8 @@ static ssize_t btrfs_sectorsize_show(struct kobject *kobj,
|
||||
{
|
||||
struct btrfs_fs_info *fs_info = to_fs_info(kobj);
|
||||
|
||||
return snprintf(buf, PAGE_SIZE, "%u\n", fs_info->super_copy->sectorsize);
|
||||
return snprintf(buf, PAGE_SIZE, "%u\n",
|
||||
fs_info->super_copy->sectorsize);
|
||||
}
|
||||
|
||||
BTRFS_ATTR(sectorsize, btrfs_sectorsize_show);
|
||||
@ -440,7 +441,8 @@ static ssize_t btrfs_clone_alignment_show(struct kobject *kobj,
|
||||
{
|
||||
struct btrfs_fs_info *fs_info = to_fs_info(kobj);
|
||||
|
||||
return snprintf(buf, PAGE_SIZE, "%u\n", fs_info->super_copy->sectorsize);
|
||||
return snprintf(buf, PAGE_SIZE, "%u\n",
|
||||
fs_info->super_copy->sectorsize);
|
||||
}
|
||||
|
||||
BTRFS_ATTR(clone_alignment, btrfs_clone_alignment_show);
|
||||
|
@ -272,11 +272,9 @@ static noinline int join_transaction(struct btrfs_root *root, unsigned int type)
|
||||
*/
|
||||
smp_mb();
|
||||
if (!list_empty(&fs_info->tree_mod_seq_list))
|
||||
WARN(1, KERN_ERR "BTRFS: tree_mod_seq_list not empty when "
|
||||
"creating a fresh transaction\n");
|
||||
WARN(1, KERN_ERR "BTRFS: tree_mod_seq_list not empty when creating a fresh transaction\n");
|
||||
if (!RB_EMPTY_ROOT(&fs_info->tree_mod_log))
|
||||
WARN(1, KERN_ERR "BTRFS: tree_mod_log rb tree not empty when "
|
||||
"creating a fresh transaction\n");
|
||||
WARN(1, KERN_ERR "BTRFS: tree_mod_log rb tree not empty when creating a fresh transaction\n");
|
||||
atomic64_set(&fs_info->tree_mod_seq, 0);
|
||||
|
||||
spin_lock_init(&cur_trans->delayed_refs.lock);
|
||||
|
@ -5592,8 +5592,8 @@ int btrfs_recover_log_trees(struct btrfs_root *log_root_tree)
|
||||
|
||||
ret = walk_log_tree(trans, log_root_tree, &wc);
|
||||
if (ret) {
|
||||
btrfs_handle_fs_error(fs_info, ret, "Failed to pin buffers while "
|
||||
"recovering log root tree.");
|
||||
btrfs_handle_fs_error(fs_info, ret,
|
||||
"Failed to pin buffers while recovering log root tree.");
|
||||
goto error;
|
||||
}
|
||||
|
||||
@ -5639,8 +5639,8 @@ int btrfs_recover_log_trees(struct btrfs_root *log_root_tree)
|
||||
free_extent_buffer(log->node);
|
||||
free_extent_buffer(log->commit_root);
|
||||
kfree(log);
|
||||
btrfs_handle_fs_error(fs_info, ret, "Couldn't read target root "
|
||||
"for tree log recovery.");
|
||||
btrfs_handle_fs_error(fs_info, ret,
|
||||
"Couldn't read target root for tree log recovery.");
|
||||
goto error;
|
||||
}
|
||||
|
||||
|
@ -69,8 +69,9 @@ static int btrfs_uuid_tree_lookup(struct btrfs_root *uuid_root, u8 *uuid,
|
||||
ret = -ENOENT;
|
||||
|
||||
if (!IS_ALIGNED(item_size, sizeof(u64))) {
|
||||
btrfs_warn(uuid_root->fs_info, "uuid item with illegal size %lu!",
|
||||
(unsigned long)item_size);
|
||||
btrfs_warn(uuid_root->fs_info,
|
||||
"uuid item with illegal size %lu!",
|
||||
(unsigned long)item_size);
|
||||
goto out;
|
||||
}
|
||||
while (item_size) {
|
||||
@ -137,10 +138,10 @@ int btrfs_uuid_tree_add(struct btrfs_trans_handle *trans,
|
||||
offset = btrfs_item_ptr_offset(eb, slot);
|
||||
offset += btrfs_item_size_nr(eb, slot) - sizeof(subid_le);
|
||||
} else if (ret < 0) {
|
||||
btrfs_warn(uuid_root->fs_info, "insert uuid item failed %d "
|
||||
"(0x%016llx, 0x%016llx) type %u!",
|
||||
ret, (unsigned long long)key.objectid,
|
||||
(unsigned long long)key.offset, type);
|
||||
btrfs_warn(uuid_root->fs_info,
|
||||
"insert uuid item failed %d (0x%016llx, 0x%016llx) type %u!",
|
||||
ret, (unsigned long long)key.objectid,
|
||||
(unsigned long long)key.offset, type);
|
||||
goto out;
|
||||
}
|
||||
|
||||
@ -184,8 +185,8 @@ int btrfs_uuid_tree_rem(struct btrfs_trans_handle *trans,
|
||||
|
||||
ret = btrfs_search_slot(trans, uuid_root, &key, path, -1, 1);
|
||||
if (ret < 0) {
|
||||
btrfs_warn(uuid_root->fs_info, "error %d while searching for uuid item!",
|
||||
ret);
|
||||
btrfs_warn(uuid_root->fs_info,
|
||||
"error %d while searching for uuid item!", ret);
|
||||
goto out;
|
||||
}
|
||||
if (ret > 0) {
|
||||
@ -198,8 +199,9 @@ int btrfs_uuid_tree_rem(struct btrfs_trans_handle *trans,
|
||||
offset = btrfs_item_ptr_offset(eb, slot);
|
||||
item_size = btrfs_item_size_nr(eb, slot);
|
||||
if (!IS_ALIGNED(item_size, sizeof(u64))) {
|
||||
btrfs_warn(uuid_root->fs_info, "uuid item with illegal size %lu!",
|
||||
(unsigned long)item_size);
|
||||
btrfs_warn(uuid_root->fs_info,
|
||||
"uuid item with illegal size %lu!",
|
||||
(unsigned long)item_size);
|
||||
ret = -ENOENT;
|
||||
goto out;
|
||||
}
|
||||
@ -299,8 +301,9 @@ int btrfs_uuid_tree_iterate(struct btrfs_fs_info *fs_info,
|
||||
offset = btrfs_item_ptr_offset(leaf, slot);
|
||||
item_size = btrfs_item_size_nr(leaf, slot);
|
||||
if (!IS_ALIGNED(item_size, sizeof(u64))) {
|
||||
btrfs_warn(fs_info, "uuid item with illegal size %lu!",
|
||||
(unsigned long)item_size);
|
||||
btrfs_warn(fs_info,
|
||||
"uuid item with illegal size %lu!",
|
||||
(unsigned long)item_size);
|
||||
goto skip;
|
||||
}
|
||||
while (item_size) {
|
||||
|
@ -2478,9 +2478,7 @@ int btrfs_init_new_device(struct btrfs_root *root, char *device_path)
|
||||
ret = btrfs_relocate_sys_chunks(root);
|
||||
if (ret < 0)
|
||||
btrfs_handle_fs_error(root->fs_info, ret,
|
||||
"Failed to relocate sys chunks after "
|
||||
"device initialization. This can be fixed "
|
||||
"using the \"btrfs balance\" command.");
|
||||
"Failed to relocate sys chunks after device initialization. This can be fixed using the \"btrfs balance\" command.");
|
||||
trans = btrfs_attach_transaction(root);
|
||||
if (IS_ERR(trans)) {
|
||||
if (PTR_ERR(trans) == -ENOENT)
|
||||
@ -2539,7 +2537,8 @@ int btrfs_init_dev_replace_tgtdev(struct btrfs_root *root, char *device_path,
|
||||
devices = &fs_info->fs_devices->devices;
|
||||
list_for_each_entry(device, devices, dev_list) {
|
||||
if (device->bdev == bdev) {
|
||||
btrfs_err(fs_info, "target device is in the filesystem!");
|
||||
btrfs_err(fs_info,
|
||||
"target device is in the filesystem!");
|
||||
ret = -EEXIST;
|
||||
goto error;
|
||||
}
|
||||
@ -2548,7 +2547,8 @@ int btrfs_init_dev_replace_tgtdev(struct btrfs_root *root, char *device_path,
|
||||
|
||||
if (i_size_read(bdev->bd_inode) <
|
||||
btrfs_device_get_total_bytes(srcdev)) {
|
||||
btrfs_err(fs_info, "target device is smaller than source device!");
|
||||
btrfs_err(fs_info,
|
||||
"target device is smaller than source device!");
|
||||
ret = -EINVAL;
|
||||
goto error;
|
||||
}
|
||||
@ -3678,7 +3678,7 @@ static int __btrfs_balance(struct btrfs_fs_info *fs_info)
|
||||
btrfs_free_path(path);
|
||||
if (enospc_errors) {
|
||||
btrfs_info(fs_info, "%d enospc errors during balance",
|
||||
enospc_errors);
|
||||
enospc_errors);
|
||||
if (!ret)
|
||||
ret = -ENOSPC;
|
||||
}
|
||||
@ -3772,8 +3772,8 @@ int btrfs_balance(struct btrfs_balance_control *bctl,
|
||||
if (!(bctl->flags & BTRFS_BALANCE_DATA) ||
|
||||
!(bctl->flags & BTRFS_BALANCE_METADATA) ||
|
||||
memcmp(&bctl->data, &bctl->meta, sizeof(bctl->data))) {
|
||||
btrfs_err(fs_info, "with mixed groups data and "
|
||||
"metadata balance options must be the same");
|
||||
btrfs_err(fs_info,
|
||||
"with mixed groups data and metadata balance options must be the same");
|
||||
ret = -EINVAL;
|
||||
goto out;
|
||||
}
|
||||
@ -3795,23 +3795,23 @@ int btrfs_balance(struct btrfs_balance_control *bctl,
|
||||
allowed |= (BTRFS_BLOCK_GROUP_RAID10 |
|
||||
BTRFS_BLOCK_GROUP_RAID6);
|
||||
if (validate_convert_profile(&bctl->data, allowed)) {
|
||||
btrfs_err(fs_info, "unable to start balance with target "
|
||||
"data profile %llu",
|
||||
bctl->data.target);
|
||||
btrfs_err(fs_info,
|
||||
"unable to start balance with target data profile %llu",
|
||||
bctl->data.target);
|
||||
ret = -EINVAL;
|
||||
goto out;
|
||||
}
|
||||
if (validate_convert_profile(&bctl->meta, allowed)) {
|
||||
btrfs_err(fs_info,
|
||||
"unable to start balance with target metadata profile %llu",
|
||||
bctl->meta.target);
|
||||
"unable to start balance with target metadata profile %llu",
|
||||
bctl->meta.target);
|
||||
ret = -EINVAL;
|
||||
goto out;
|
||||
}
|
||||
if (validate_convert_profile(&bctl->sys, allowed)) {
|
||||
btrfs_err(fs_info,
|
||||
"unable to start balance with target system profile %llu",
|
||||
bctl->sys.target);
|
||||
"unable to start balance with target system profile %llu",
|
||||
bctl->sys.target);
|
||||
ret = -EINVAL;
|
||||
goto out;
|
||||
}
|
||||
@ -3831,10 +3831,11 @@ int btrfs_balance(struct btrfs_balance_control *bctl,
|
||||
(fs_info->avail_metadata_alloc_bits & allowed) &&
|
||||
!(bctl->meta.target & allowed))) {
|
||||
if (bctl->flags & BTRFS_BALANCE_FORCE) {
|
||||
btrfs_info(fs_info, "force reducing metadata integrity");
|
||||
btrfs_info(fs_info,
|
||||
"force reducing metadata integrity");
|
||||
} else {
|
||||
btrfs_err(fs_info, "balance will reduce metadata "
|
||||
"integrity, use force if you want this");
|
||||
btrfs_err(fs_info,
|
||||
"balance will reduce metadata integrity, use force if you want this");
|
||||
ret = -EINVAL;
|
||||
goto out;
|
||||
}
|
||||
@ -3844,8 +3845,8 @@ int btrfs_balance(struct btrfs_balance_control *bctl,
|
||||
if (btrfs_get_num_tolerated_disk_barrier_failures(bctl->meta.target) <
|
||||
btrfs_get_num_tolerated_disk_barrier_failures(bctl->data.target)) {
|
||||
btrfs_warn(fs_info,
|
||||
"metadata profile 0x%llx has lower redundancy than data profile 0x%llx",
|
||||
bctl->meta.target, bctl->data.target);
|
||||
"metadata profile 0x%llx has lower redundancy than data profile 0x%llx",
|
||||
bctl->meta.target, bctl->data.target);
|
||||
}
|
||||
|
||||
if (bctl->sys.flags & BTRFS_BALANCE_ARGS_CONVERT) {
|
||||
@ -4893,15 +4894,16 @@ int btrfs_finish_chunk_alloc(struct btrfs_trans_handle *trans,
|
||||
read_unlock(&em_tree->lock);
|
||||
|
||||
if (!em) {
|
||||
btrfs_crit(extent_root->fs_info, "unable to find logical "
|
||||
"%Lu len %Lu", chunk_offset, chunk_size);
|
||||
btrfs_crit(extent_root->fs_info,
|
||||
"unable to find logical %Lu len %Lu",
|
||||
chunk_offset, chunk_size);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (em->start != chunk_offset || em->len != chunk_size) {
|
||||
btrfs_crit(extent_root->fs_info, "found a bad mapping, wanted"
|
||||
" %Lu-%Lu, found %Lu-%Lu", chunk_offset,
|
||||
chunk_size, em->start, em->len);
|
||||
btrfs_crit(extent_root->fs_info,
|
||||
"found a bad mapping, wanted %Lu-%Lu, found %Lu-%Lu",
|
||||
chunk_offset, chunk_size, em->start, em->len);
|
||||
free_extent_map(em);
|
||||
return -EINVAL;
|
||||
}
|
||||
@ -5134,9 +5136,9 @@ int btrfs_num_copies(struct btrfs_fs_info *fs_info, u64 logical, u64 len)
|
||||
}
|
||||
|
||||
if (em->start > logical || em->start + em->len < logical) {
|
||||
btrfs_crit(fs_info, "Invalid mapping for %Lu-%Lu, got "
|
||||
"%Lu-%Lu", logical, logical+len, em->start,
|
||||
em->start + em->len);
|
||||
btrfs_crit(fs_info, "Invalid mapping for %Lu-%Lu, got %Lu-%Lu",
|
||||
logical, logical+len, em->start,
|
||||
em->start + em->len);
|
||||
free_extent_map(em);
|
||||
return 1;
|
||||
}
|
||||
@ -5350,9 +5352,9 @@ static int __btrfs_map_block(struct btrfs_fs_info *fs_info, int op,
|
||||
}
|
||||
|
||||
if (em->start > logical || em->start + em->len < logical) {
|
||||
btrfs_crit(fs_info, "found a bad mapping, wanted %Lu, "
|
||||
"found %Lu-%Lu", logical, em->start,
|
||||
em->start + em->len);
|
||||
btrfs_crit(fs_info,
|
||||
"found a bad mapping, wanted %Lu, found %Lu-%Lu",
|
||||
logical, em->start, em->start + em->len);
|
||||
free_extent_map(em);
|
||||
return -EINVAL;
|
||||
}
|
||||
@ -5370,9 +5372,8 @@ static int __btrfs_map_block(struct btrfs_fs_info *fs_info, int op,
|
||||
|
||||
stripe_offset = stripe_nr * stripe_len;
|
||||
if (offset < stripe_offset) {
|
||||
btrfs_crit(fs_info, "stripe math has gone wrong, "
|
||||
"stripe_offset=%llu, offset=%llu, start=%llu, "
|
||||
"logical=%llu, stripe_len=%llu",
|
||||
btrfs_crit(fs_info,
|
||||
"stripe math has gone wrong, stripe_offset=%llu, offset=%llu, start=%llu, logical=%llu, stripe_len=%llu",
|
||||
stripe_offset, offset, em->start, logical,
|
||||
stripe_len);
|
||||
free_extent_map(em);
|
||||
@ -5622,8 +5623,8 @@ static int __btrfs_map_block(struct btrfs_fs_info *fs_info, int op,
|
||||
mirror_num = stripe_index + 1;
|
||||
}
|
||||
if (stripe_index >= map->num_stripes) {
|
||||
btrfs_crit(fs_info, "stripe index math went horribly wrong, "
|
||||
"got stripe_index=%u, num_stripes=%u",
|
||||
btrfs_crit(fs_info,
|
||||
"stripe index math went horribly wrong, got stripe_index=%u, num_stripes=%u",
|
||||
stripe_index, map->num_stripes);
|
||||
ret = -EINVAL;
|
||||
goto out;
|
||||
@ -6117,10 +6118,10 @@ static void submit_stripe_bio(struct btrfs_root *root, struct btrfs_bio *bbio,
|
||||
|
||||
rcu_read_lock();
|
||||
name = rcu_dereference(dev->name);
|
||||
pr_debug("btrfs_map_bio: rw %d 0x%x, sector=%llu, dev=%lu "
|
||||
"(%s id %llu), size=%u\n", bio_op(bio), bio->bi_opf,
|
||||
(u64)bio->bi_iter.bi_sector, (u_long)dev->bdev->bd_dev,
|
||||
name->str, dev->devid, bio->bi_iter.bi_size);
|
||||
pr_debug("btrfs_map_bio: rw %d 0x%x, sector=%llu, dev=%lu (%s id %llu), size=%u\n",
|
||||
bio_op(bio), bio->bi_opf, (u64)bio->bi_iter.bi_sector,
|
||||
(u_long)dev->bdev->bd_dev, name->str, dev->devid,
|
||||
bio->bi_iter.bi_size);
|
||||
rcu_read_unlock();
|
||||
}
|
||||
#endif
|
||||
@ -6195,8 +6196,9 @@ int btrfs_map_bio(struct btrfs_root *root, struct bio *bio,
|
||||
}
|
||||
|
||||
if (map_length < length) {
|
||||
btrfs_crit(root->fs_info, "mapping failed logical %llu bio len %llu len %llu",
|
||||
logical, length, map_length);
|
||||
btrfs_crit(root->fs_info,
|
||||
"mapping failed logical %llu bio len %llu len %llu",
|
||||
logical, length, map_length);
|
||||
BUG();
|
||||
}
|
||||
|
||||
@ -6463,8 +6465,9 @@ static int read_one_chunk(struct btrfs_root *root, struct btrfs_key *key,
|
||||
free_extent_map(em);
|
||||
return -EIO;
|
||||
}
|
||||
btrfs_warn(root->fs_info, "devid %llu uuid %pU is missing",
|
||||
devid, uuid);
|
||||
btrfs_warn(root->fs_info,
|
||||
"devid %llu uuid %pU is missing",
|
||||
devid, uuid);
|
||||
}
|
||||
map->stripes[i].dev->in_fs_metadata = 1;
|
||||
}
|
||||
@ -7075,10 +7078,12 @@ int btrfs_get_dev_stats(struct btrfs_root *root,
|
||||
mutex_unlock(&fs_devices->device_list_mutex);
|
||||
|
||||
if (!dev) {
|
||||
btrfs_warn(root->fs_info, "get dev_stats failed, device not found");
|
||||
btrfs_warn(root->fs_info,
|
||||
"get dev_stats failed, device not found");
|
||||
return -ENODEV;
|
||||
} else if (!dev->dev_stats_valid) {
|
||||
btrfs_warn(root->fs_info, "get dev_stats failed, not yet valid");
|
||||
btrfs_warn(root->fs_info,
|
||||
"get dev_stats failed, not yet valid");
|
||||
return -ENODEV;
|
||||
} else if (stats->flags & BTRFS_DEV_STATS_RESET) {
|
||||
for (i = 0; i < BTRFS_DEV_STAT_VALUES_MAX; i++) {
|
||||
|
Loading…
Reference in New Issue
Block a user