From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f53.google.com (mail-pj1-f53.google.com [209.85.216.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 170314B048C for ; Tue, 18 Aug 2026 07:12:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.53 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787037129; cv=none; b=HGGj7Xu1d3yWOSfhSrY6+7FIO8GuQs2R53C7zckvlYKitrvWk3pX/RQxE0cOx4de7aH+F9FIPPiIxiI8UZ5ISuYUGVf0uzjuRTq0RoPF1igjw0iHT12ZrG2M3pnx4ZkyI2fM0w2yHaD/mc4MvaIOygYomi5Qudl8RgMXNs2SCFM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787037129; c=relaxed/simple; bh=Tz8ckzne+lCU3kz1cv1kXSBtq0pZAJR7sKBG3c14pcc=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=ZSGp65ics6BL7YdcqixSEStquIl6ZJ5wOR+ZbaGwF0sGLeUuo8wAMm3wyxchCVeqstcaviD5lLmn7j6ebotzJ8mJkaXb586pv9EziPUN9HjqL5Tr0VzSxEu4jGvaLokEl6oUglj/dQRqi42qh2zVCapvAnny+xFysyMbJjDLXk4= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=VBWugdti; arc=none smtp.client-ip=209.85.216.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="VBWugdti" Received: by mail-pj1-f53.google.com with SMTP id 98e67ed59e1d1-38511175ad3so4210340a91.2 for ; Tue, 18 Aug 2026 00:12:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1787037127; x=1787641927; darn=vger.kernel.org; h=in-reply-to:content-disposition:content-type:mime-version :references:message-id:subject:cc:to:from:date:from:to:cc:subject :date:message-id:reply-to:content-type; bh=3ZWJKjjafd4rnjHIXgNulavUthCI1Xw98Pg39mbzNSA=; b=VBWugdtidNccZ8MFRsn0s1/ZZuuIQw6Qsyuxv4O27mGmCyVMaRcEPOos3nATVQZ0u5 LUkCNoAkM7wjXC8oG9F9JAQWvz/d2v+o0YsPMKALPeISw+LzCWHE0UHblFEuqWyVEiWw jJZrQ/Zr7k0hccPOymRD3CRS+ofmKCppEqPfEZZ4r20r/2uhl4MGFSYOKW5YrsTqK76O KfccajJg1VFYzNSOIh5gfbQkVr/sI5/z48CTHcl77EUJCK10zZbN6xHhq2MMgRZ3w4vD /G4lhQ7xC56c+B78UCPfDPlmjZQPxAv5UBO1X4T2r0AwqeIN9rw7ty1MRHnE6o+D9cxb Xc6g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1787037127; x=1787641927; h=in-reply-to:content-disposition:content-type:mime-version :references:message-id:subject:cc:to:from:date:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=3ZWJKjjafd4rnjHIXgNulavUthCI1Xw98Pg39mbzNSA=; b=BLstORB1v87IaC6x9xatQWiCAd3Gd+wenNBLk4JFgppz9aKfMiN0Q6WJr1IqBAl3EJ UNw46SHT7TpHlJQosoe+fWJNjtJrbRGGqom8MGaqRo53rb8BVnm/Oct8zMnrf2lbK2Nz Uw5TydvI+OyllD5lK/UYJHQKGErqvR5CRZWONN2rClCLZyTdCavLfVS1njtCrdI5C9/4 hSnNi++euLqSbD9Qbg/j9iBIJI477oduBpcruetPm1qgyFRJcTEXL1B6izkTbe8A5nVC Xax6YEYwvPgMGuGs56xsRBRht2ioFYdEYeGQQ+ajSSXxfLldL0WgSF1iDE05Ot0ZsUHD 5Z1g== X-Forwarded-Encrypted: i=1; AHgh+RoQEdJ3x+0oJhikCrv/sDeS9liWKYTYZWgcynHwihF4NjjE4U8apfQO5lqGZDljjY4h40Jwyh1QG5mtdFc=@vger.kernel.org X-Gm-Message-State: AOJu0YzECAsVwzWNVMm3rW63QcmSTxlmmXuD1IX9TXLrDGNv72OpAwGI w/c0G04qu0Eea+IANcn/OC3wtXMdFDn77iJcdG/GXTW8PmP4oqgh7Pjy X-Gm-Gg: AR+sD11OfwR5hOYvgtCH9RR7p+0heMvCHE7WomeTIaf+8veLCEQrzhajUANFtQQnJOG Z6tMfAYXElaqSvFa/DW3xCCh5mYwpqgskU96DH2+MdMPly3dJHNb5XjmIluHCKKir5NMekYpYV+ Npxmv/jlSUYLpXfyfi+oFCEK4S5L93Vsf71sP2zCBzX8e1ycTxVxj2U34CG5ALXoE0SKwb7kDVa hJ/LbHEiQXvRv4ab5kjP9IiQ0rLSIXWLFdHI79amomPnjvxAJ6qznrKZYG0MmuqS5c8c9tSwK9Q G1QZMYV/Kw1Kpol02lq36jDEloKBqmjVv3r2BgFTnGmLzayTSsC9HxcPgeGg79D8Nz46g022fdf KHJxkUBszR9IW7wkVN3LApCD7gjp31e3eFTbyF0JvjVVlS2uTSCz5D+NzgkKruSoFo4HG+f4sD9 D2sHfRR1JDUa1jkBYzKYdMfh1fhPVzsS2tMy0tug3Zf8cMzwifZLu8jv17HsVZOqLwvvJHHANlA SBYBWUtVy8kqKhwrcP0jQ894tlqfKhcowQV81NYNPia1Q== X-Received: by 2002:a17:90b:3f47:b0:37f:e177:f58 with SMTP id 98e67ed59e1d1-3955a774dbfmr7997942a91.9.1787037127315; Tue, 18 Aug 2026 00:12:07 -0700 (PDT) Received: from KASONG-MC4 ([43.132.141.25]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-3954d1b0143sm5039834a91.0.2026.08.18.00.12.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 Aug 2026 00:12:06 -0700 (PDT) Date: Tue, 18 Aug 2026 15:11:59 +0800 From: Kairui Song To: Breno Leitao Cc: Andrew Morton , Chris Li , Kairui Song , Kemeng Shi , Nhat Pham , Baoquan He , Barry Song , Youngjun Park , David Hildenbrand , Lorenzo Stoakes , "Liam R. Howlett" , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Jann Horn , Pedro Falcato , Hugh Dickins , Baolin Wang , Peter Xu , Johannes Weiner , Yosry Ahmed , Chengming Zhou , linux-mm@kvack.org, linux-kernel@vger.kernel.org, kernel-team@meta.com Subject: Re: [PATCH v2 1/3] mm, swap: ratelimit bad swap entry reports Message-ID: References: <20260813-swap-v2-0-4a625ccabdae@debian.org> <20260813-swap-v2-1-4a625ccabdae@debian.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20260813-swap-v2-1-4a625ccabdae@debian.org> On Thu, Aug 13, 2026 at 03:02:20AM +0800, Breno Leitao wrote: > A corrupt page table hands the same bogus entry to get_swap_device() on > every access to the mapping, and every rejection is logged. One machine > logged 6185620 copies of the same line in a few hours. > > swap_dup_entry_direct() prints the same message from the fork path, once > per call: the WARN_ON_ONCE() guarding it warns once, the pr_err() inside > does not. > > Rate limit all three prints. > > Signed-off-by: Breno Leitao > --- > mm/swapfile.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/mm/swapfile.c b/mm/swapfile.c > index 4d4e3e3059f6b..31c8a340606bb 100644 > --- a/mm/swapfile.c > +++ b/mm/swapfile.c > @@ -1899,11 +1899,11 @@ struct swap_info_struct *get_swap_device(swp_entry_t entry) > > return si; > bad_nofile: > - pr_err("%s: %s%08lx\n", __func__, Bad_file, entry.val); > + pr_err_ratelimited("%s: %s%08lx\n", __func__, Bad_file, entry.val); > out: > return NULL; > put_out: > - pr_err("%s: %s%08lx\n", __func__, Bad_offset, entry.val); > + pr_err_ratelimited("%s: %s%08lx\n", __func__, Bad_offset, entry.val); > percpu_ref_put(&si->users); > return NULL; > } > @@ -3876,7 +3876,7 @@ int swap_dup_entry_direct(swp_entry_t entry) > > si = swap_entry_to_info(entry); > if (WARN_ON_ONCE(!si)) { > - pr_err("%s%08lx\n", Bad_file, entry.val); > + pr_err_ratelimited("%s%08lx\n", Bad_file, entry.val); > return -EINVAL; > } > Looks good to me, thanks! Acked-by: Kairui Song