btrfs: switch message printers to ratelimited variants

Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
David Sterba 2015-10-08 11:01:36 +02:00
parent 1dd6d7ca9d
commit 9464732266
6 changed files with 31 additions and 33 deletions

View File

@ -319,9 +319,9 @@ static int csum_tree_block(struct btrfs_fs_info *fs_info,
memcpy(&found, result, csum_size); memcpy(&found, result, csum_size);
read_extent_buffer(buf, &val, 0, csum_size); read_extent_buffer(buf, &val, 0, csum_size);
printk_ratelimited(KERN_WARNING btrfs_warn_rl(fs_info,
"BTRFS: %s checksum verify failed on %llu wanted %X found %X " "%s checksum verify failed on %llu wanted %X found %X "
"level %d\n", "level %d",
fs_info->sb->s_id, buf->start, fs_info->sb->s_id, buf->start,
val, found, btrfs_header_level(buf)); val, found, btrfs_header_level(buf));
if (result != (char *)&inline_result) if (result != (char *)&inline_result)
@ -368,9 +368,9 @@ static int verify_parent_transid(struct extent_io_tree *io_tree,
ret = 0; ret = 0;
goto out; goto out;
} }
printk_ratelimited(KERN_ERR btrfs_err_rl(eb->fs_info,
"BTRFS (device %s): parent transid verify failed on %llu wanted %llu found %llu\n", "parent transid verify failed on %llu wanted %llu found %llu",
eb->fs_info->sb->s_id, eb->start, eb->start,
parent_transid, btrfs_header_generation(eb)); parent_transid, btrfs_header_generation(eb));
ret = 1; ret = 1;
@ -629,15 +629,14 @@ static int btree_readpage_end_io_hook(struct btrfs_io_bio *io_bio,
found_start = btrfs_header_bytenr(eb); found_start = btrfs_header_bytenr(eb);
if (found_start != eb->start) { if (found_start != eb->start) {
printk_ratelimited(KERN_ERR "BTRFS (device %s): bad tree block start " btrfs_err_rl(eb->fs_info, "bad tree block start %llu %llu",
"%llu %llu\n", found_start, eb->start);
eb->fs_info->sb->s_id, found_start, eb->start);
ret = -EIO; ret = -EIO;
goto err; goto err;
} }
if (check_tree_block_fsid(root->fs_info, eb)) { if (check_tree_block_fsid(root->fs_info, eb)) {
printk_ratelimited(KERN_ERR "BTRFS (device %s): bad fsid on block %llu\n", btrfs_err_rl(eb->fs_info, "bad fsid on block %llu",
eb->fs_info->sb->s_id, eb->start); eb->start);
ret = -EIO; ret = -EIO;
goto err; goto err;
} }

View File

@ -8271,10 +8271,11 @@ static noinline int do_walk_down(struct btrfs_trans_handle *trans,
ret = account_shared_subtree(trans, root, next, ret = account_shared_subtree(trans, root, next,
generation, level - 1); generation, level - 1);
if (ret) { if (ret) {
printk_ratelimited(KERN_ERR "BTRFS: %s Error " btrfs_err_rl(root->fs_info,
"Error "
"%d accounting shared subtree. Quota " "%d accounting shared subtree. Quota "
"is out of sync, rescan required.\n", "is out of sync, rescan required.",
root->fs_info->sb->s_id, ret); ret);
} }
} }
ret = btrfs_free_extent(trans, root, bytenr, blocksize, parent, ret = btrfs_free_extent(trans, root, bytenr, blocksize, parent,
@ -8363,10 +8364,11 @@ static noinline int walk_up_proc(struct btrfs_trans_handle *trans,
BUG_ON(ret); /* -ENOMEM */ BUG_ON(ret); /* -ENOMEM */
ret = account_leaf_items(trans, root, eb); ret = account_leaf_items(trans, root, eb);
if (ret) { if (ret) {
printk_ratelimited(KERN_ERR "BTRFS: %s Error " btrfs_err_rl(root->fs_info,
"error "
"%d accounting leaf items. Quota " "%d accounting leaf items. Quota "
"is out of sync, rescan required.\n", "is out of sync, rescan required.",
root->fs_info->sb->s_id, ret); ret);
} }
} }
/* make block locked assertion in clean_tree_block happy */ /* make block locked assertion in clean_tree_block happy */

View File

@ -96,8 +96,8 @@ static inline void __btrfs_debug_check_extent_io_range(const char *caller,
inode = tree->mapping->host; inode = tree->mapping->host;
isize = i_size_read(inode); isize = i_size_read(inode);
if (end >= PAGE_SIZE && (end % 2) == 0 && end != isize - 1) { if (end >= PAGE_SIZE && (end % 2) == 0 && end != isize - 1) {
printk_ratelimited(KERN_DEBUG btrfs_debug_rl(BTRFS_I(inode)->root->fs_info,
"BTRFS: %s: ino %llu isize %llu odd range [%llu,%llu]\n", "%s: ino %llu isize %llu odd range [%llu,%llu]",
caller, btrfs_ino(inode), isize, start, end); caller, btrfs_ino(inode), isize, start, end);
} }
} }

View File

@ -450,9 +450,9 @@ static int io_ctl_check_generation(struct btrfs_io_ctl *io_ctl, u64 generation)
gen = io_ctl->cur; gen = io_ctl->cur;
if (le64_to_cpu(*gen) != generation) { if (le64_to_cpu(*gen) != generation) {
printk_ratelimited(KERN_ERR "BTRFS: space cache generation " btrfs_err_rl(io_ctl->root->fs_info,
"(%Lu) does not match inode (%Lu)\n", *gen, "space cache generation (%llu) does not match inode (%llu)",
generation); *gen, generation);
io_ctl_unmap_page(io_ctl); io_ctl_unmap_page(io_ctl);
return -EIO; return -EIO;
} }
@ -506,8 +506,8 @@ static int io_ctl_check_crc(struct btrfs_io_ctl *io_ctl, int index)
PAGE_CACHE_SIZE - offset); PAGE_CACHE_SIZE - offset);
btrfs_csum_final(crc, (char *)&crc); btrfs_csum_final(crc, (char *)&crc);
if (val != crc) { if (val != crc) {
printk_ratelimited(KERN_ERR "BTRFS: csum mismatch on free " btrfs_err_rl(io_ctl->root->fs_info,
"space cache\n"); "csum mismatch on free space cache");
io_ctl_unmap_page(io_ctl); io_ctl_unmap_page(io_ctl);
return -EIO; return -EIO;
} }

View File

@ -3018,8 +3018,6 @@ static int __readpage_endio_check(struct inode *inode,
char *kaddr; char *kaddr;
u32 csum_expected; u32 csum_expected;
u32 csum = ~(u32)0; u32 csum = ~(u32)0;
static DEFINE_RATELIMIT_STATE(_rs, DEFAULT_RATELIMIT_INTERVAL,
DEFAULT_RATELIMIT_BURST);
csum_expected = *(((u32 *)io_bio->csum) + icsum); csum_expected = *(((u32 *)io_bio->csum) + icsum);
@ -3032,9 +3030,8 @@ static int __readpage_endio_check(struct inode *inode,
kunmap_atomic(kaddr); kunmap_atomic(kaddr);
return 0; return 0;
zeroit: zeroit:
if (__ratelimit(&_rs)) btrfs_warn_rl(BTRFS_I(inode)->root->fs_info,
btrfs_warn(BTRFS_I(inode)->root->fs_info, "csum failed ino %llu off %llu csum %u expected csum %u",
"csum failed ino %llu off %llu csum %u expected csum %u",
btrfs_ino(inode), start, csum, csum_expected); btrfs_ino(inode), start, csum, csum_expected);
memset(kaddr + pgoff, 1, len); memset(kaddr + pgoff, 1, len);
flush_dcache_page(page); flush_dcache_page(page);

View File

@ -1626,9 +1626,9 @@ static int scrub_repair_page_from_good_copy(struct scrub_block *sblock_bad,
int ret; int ret;
if (!page_bad->dev->bdev) { if (!page_bad->dev->bdev) {
printk_ratelimited(KERN_WARNING "BTRFS: " btrfs_warn_rl(sblock_bad->sctx->dev_root->fs_info,
"scrub_repair_page_from_good_copy(bdev == NULL) " "scrub_repair_page_from_good_copy(bdev == NULL) "
"is unexpected!\n"); "is unexpected");
return -EIO; return -EIO;
} }
@ -4375,8 +4375,8 @@ static int write_page_nocow(struct scrub_ctx *sctx,
if (!dev) if (!dev)
return -EIO; return -EIO;
if (!dev->bdev) { if (!dev->bdev) {
printk_ratelimited(KERN_WARNING btrfs_warn_rl(dev->dev_root->fs_info,
"BTRFS: scrub write_page_nocow(bdev == NULL) is unexpected!\n"); "scrub write_page_nocow(bdev == NULL) is unexpected");
return -EIO; return -EIO;
} }
bio = btrfs_io_bio_alloc(GFP_NOFS, 1); bio = btrfs_io_bio_alloc(GFP_NOFS, 1);