Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp3854081pxb; Mon, 1 Feb 2021 06:27:08 -0800 (PST) X-Google-Smtp-Source: ABdhPJy60AprV3C0waDLdjZmohHxSu82ceNZFuEsxWvyrFSopP/I+Oki+SgVAaSq1vYnVd5tJFCE X-Received: by 2002:a17:906:296a:: with SMTP id x10mr7495592ejd.240.1612189628701; Mon, 01 Feb 2021 06:27:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1612189628; cv=none; d=google.com; s=arc-20160816; b=tLiSVlMNqMTBBnUERhGkHa3FZfKk0RPjYmyLZg75XPHJeoPqmtgE2q5PAjB6gfrqg+ daojw0Qe71AMbpypY5rgeg1Hpc6VO09SXiLFKvdZDJ4dziOdL7CLLYiL+NzNz7TKKG8H D/Nb5KPbtq8WAFHAxvDellMkryVYuGnvEmqKF1vZ9MZUm28XpH3A27au95VfUqw4881H wge22G46QD5psbbosL4JY2LmAILvYg0AgC9lBlwJXT/IhSUV728w+I0YA0/f6kq6pXEc Owa/zoGvXI1yfKec7gaXZxXci2uLz2YpeiY0AGSLLKbShhA0NLjdKKDl1ZKU6kEC1bGj pi9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=Qm7Jt2x0s9JgF26OHsGV3axILPja8aYp/XWSz+LFWt0=; b=QHjfKTj5Tzn+Pb14HPKIPGvZmvahzehgoVZNxhYPGrrqBXvRyhJeKXQE/KSWpzDTfH frpJjwgNbU/kjqfELjVjt5xQ3YVaCtw0TK0ELQF/e2kh00qRcKzb5aoHqKu6MmRcaxSJ OB+L8PGTdwC7lV0SeSbI+G+hJ1FKsamfN4s5QjfVFW3qi+5/NI65KYL4Ndr0v166HTps Lggka6MSRRHQ+6gDH6Kw0lp0kSYpGKL1Jbr4BQcQ05BmWBWEhncYH27+EhFZKCquwXaG 7d9fwJz8I9m3+qmnb5B09h/cyapE3B9cJJtsT1oOp5lhmPHg3apx4loWxAGPf8JU5H6C MK5g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=y9t+UrAS; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ho11si1318532ejc.367.2021.02.01.06.26.43; Mon, 01 Feb 2021 06:27:08 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=y9t+UrAS; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232650AbhBAOVl (ORCPT + 99 others); Mon, 1 Feb 2021 09:21:41 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55186 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232240AbhBAOVj (ORCPT ); Mon, 1 Feb 2021 09:21:39 -0500 Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com [IPv6:2a00:1450:4864:20::32f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 561A9C061573 for ; Mon, 1 Feb 2021 06:20:59 -0800 (PST) Received: by mail-wm1-x32f.google.com with SMTP id i9so13352041wmq.1 for ; Mon, 01 Feb 2021 06:20:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=Qm7Jt2x0s9JgF26OHsGV3axILPja8aYp/XWSz+LFWt0=; b=y9t+UrASMPrswsDAnJKQyQlHLabM3YdAkO/JaXG/SeTagTDvne4m2pUq1wQdI6Kg7v d0WyYshWBrJ4UxduXJETdMjhVw17qruBEb6/Xs3WURsthNVfiKRfsOLFuG5qn1gJMBJj 7uxV5e+jpZui7pThvEABUZT7kGX0Le+5No+pDiqaULvE1sFnT81Nw6mOrjnCAd1LYleP wOT19mCkpgNJtu7gnTReRmzpNObECIwkq5p+VeowfYC+/GNve1IQ7iCbHejRNFaQCPWD DIBK5TtAF9xL8qISH3SDDor/FA4BLbl/TODkbUeQa9LI6iU3J6ecHKIxJqpaim6xUs9l MJcA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=Qm7Jt2x0s9JgF26OHsGV3axILPja8aYp/XWSz+LFWt0=; b=D0A/inwf+RLWTkhnTr7BKM0WPjjbWyC+VkMevGOcWSXPEbjL82J2o5R9K7b4Z9tCSW ZZloQ3ugOML/3yzEaibNhDuOafbm+42BHFIr9vgaToyTDokFlPY354UYfPKXnknxE3Nn xTwVkgMFd2uUlsEzH3IxRTw7Rkt7Gmql+R+lYXDEYI4Wscoz719d9tYYmNqYMIn2KUGE lUweTYp7tLSwoVITKKB/J5Ocv8wWlX5LLSpxpEdbaUC7oUlSj45vQ7FRltpGnan5Yd0X PORcxkBnscs79Ay1xwy3VchiG2AQ/uIfe6/VgQyYqSKqb+GWJUqhsjLWdH5XflLltct3 ZgWg== X-Gm-Message-State: AOAM532hMM0PMPgK0nmiBJq9urVpuN/NC7UsYNC/4J9ajglCgjuZaqCn rbWFg8YtVig7viJS0qvnyto2iw== X-Received: by 2002:a1c:f604:: with SMTP id w4mr15427426wmc.39.1612189258057; Mon, 01 Feb 2021 06:20:58 -0800 (PST) Received: from localhost.localdomain ([212.45.67.2]) by smtp.googlemail.com with ESMTPSA id r25sm29071604wrr.64.2021.02.01.06.20.56 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 01 Feb 2021 06:20:57 -0800 (PST) From: Georgi Djakov To: akpm@linux-foundation.org Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Georgi Djakov Subject: [PATCH] mm/page_io: Use pr_alert_ratelimited for swap read/write errors Date: Mon, 1 Feb 2021 16:20:55 +0200 Message-Id: <20210201142055.29068-1-georgi.djakov@linaro.org> X-Mailer: git-send-email 2.29.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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. Signed-off-by: Georgi Djakov --- mm/page_io.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/mm/page_io.c b/mm/page_io.c index 92f7941c6d01..485fa5cca4a2 100644 --- a/mm/page_io.c +++ b/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; }