mirror of https://gitee.com/openkylin/linux.git
mm/page_io: use pr_alert_ratelimited for swap read/write errors
If there are errors during swap read or write, they can easily fill the log buffer and remove any previous messages that might be useful for debugging, especially on systems that rely for logging only on the kernel ring-buffer. For example, on a systems using zram as swap, we are more likely to see any page allocation errors preceding the swap write errors if the alerts are ratelimited. Link: https://lkml.kernel.org/r/20210201142055.29068-1-georgi.djakov@linaro.org Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org> Acked-by: Minchan Kim <minchan@kernel.org> Reviewed-by: Miaohe Lin <linmiaohe@huawei.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
cf532faa41
commit
25eaab438d
12
mm/page_io.c
12
mm/page_io.c
|
@ -41,9 +41,9 @@ void end_swap_bio_write(struct bio *bio)
|
|||
* Also clear PG_reclaim to avoid rotate_reclaimable_page()
|
||||
*/
|
||||
set_page_dirty(page);
|
||||
pr_alert("Write-error on swap-device (%u:%u:%llu)\n",
|
||||
MAJOR(bio_dev(bio)), MINOR(bio_dev(bio)),
|
||||
(unsigned long long)bio->bi_iter.bi_sector);
|
||||
pr_alert_ratelimited("Write-error on swap-device (%u:%u:%llu)\n",
|
||||
MAJOR(bio_dev(bio)), MINOR(bio_dev(bio)),
|
||||
(unsigned long long)bio->bi_iter.bi_sector);
|
||||
ClearPageReclaim(page);
|
||||
}
|
||||
end_page_writeback(page);
|
||||
|
@ -106,9 +106,9 @@ static void end_swap_bio_read(struct bio *bio)
|
|||
if (bio->bi_status) {
|
||||
SetPageError(page);
|
||||
ClearPageUptodate(page);
|
||||
pr_alert("Read-error on swap-device (%u:%u:%llu)\n",
|
||||
MAJOR(bio_dev(bio)), MINOR(bio_dev(bio)),
|
||||
(unsigned long long)bio->bi_iter.bi_sector);
|
||||
pr_alert_ratelimited("Read-error on swap-device (%u:%u:%llu)\n",
|
||||
MAJOR(bio_dev(bio)), MINOR(bio_dev(bio)),
|
||||
(unsigned long long)bio->bi_iter.bi_sector);
|
||||
goto out;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue