Commit 1b0a151c authored by Yu Kuai's avatar Yu Kuai Committed by Jens Axboe

blk-core: use pr_warn_ratelimited() in bio_check_ro()

If one of the underlying disks of raid or dm is set to read-only, then
each io will generate new log, which will cause message storm. This
environment is indeed problematic, however we can't make sure our
naive custormer won't do this, hence use pr_warn_ratelimited() to
prevent message storm in this case.
Signed-off-by: default avatarYu Kuai <yukuai3@huawei.com>
Fixes: 57e95e46 ("block: fix and cleanup bio_check_ro")
Signed-off-by: default avatarYe Bin <yebin10@huawei.com>
Link: https://lore.kernel.org/r/20231107111247.2157820-1-yukuai1@huaweicloud.comSigned-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 32746272
...@@ -501,7 +501,7 @@ static inline void bio_check_ro(struct bio *bio) ...@@ -501,7 +501,7 @@ static inline void bio_check_ro(struct bio *bio)
if (op_is_write(bio_op(bio)) && bdev_read_only(bio->bi_bdev)) { if (op_is_write(bio_op(bio)) && bdev_read_only(bio->bi_bdev)) {
if (op_is_flush(bio->bi_opf) && !bio_sectors(bio)) if (op_is_flush(bio->bi_opf) && !bio_sectors(bio))
return; return;
pr_warn("Trying to write to read-only block-device %pg\n", pr_warn_ratelimited("Trying to write to read-only block-device %pg\n",
bio->bi_bdev); bio->bi_bdev);
/* Older lvm-tools actually trigger this */ /* Older lvm-tools actually trigger this */
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment