From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.ozlabs.org (lists.ozlabs.org [112.213.38.117]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 9A821C54ED0 for ; Fri, 23 May 2025 16:07:06 +0000 (UTC) Received: from boromir.ozlabs.org (localhost [127.0.0.1]) by lists.ozlabs.org (Postfix) with ESMTP id 4b3qmS75Jsz302b; Sat, 24 May 2025 02:07:04 +1000 (AEST) Authentication-Results: lists.ozlabs.org; arc=none smtp.remote-ip="2600:3c04:e001:324:0:1991:8:25" ARC-Seal: i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1748016424; cv=none; b=Me404D+snCq5XEWK29p/BdGo3W85l6jVqOV++FqH6cEH7zgFXq6SuHGlkKKf9sWgFt2kTb1FZRkq83EnqV9ysj3qtIhs6gyXwnlfO8vGGGGWBboHKY+3BUD1R0LcsFgFFOpq+rT3foge4XmbQ6XR4h/dK2s00uvBEofIZoW4vcOgATePE3abRi5cbpuNTjNvj+6a9HLiFU5Zm/PIpoAy+YXQ3DkbOnyaP9D+E8Xo5EiOO6744Fp1vRRBhjgDEf0su6Le4E67Ak64lqUsedp/toGylrPK59cqn65mlwYYkTTJgq9PZz4jFpi55TZzm7e9MnJXPndREiJbmXLQNc49dw== ARC-Message-Signature: i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1748016424; c=relaxed/relaxed; bh=GbTry3W066LABriXKhfx8bq8jOAJRIN/sRrhhbEm8AE=; h=Date:From:To:Cc:Subject:Message-ID:MIME-Version:Content-Type: Content-Disposition:In-Reply-To; b=C5ajREbFglrLAEG8Z0vL3o9TrBbkBsovDBtPj7MY13tlHhlwDQbENqgsO/g4ozXAK8djsReZrh4XrQJ/AXVFEC57FO5ITAI9tv7Kr/GrZm9j+7jViE5J9yn+rWJHBCCjH1DGza+bqf3bQdoPYjcRukqhbJ5RYQH1mqS9m0mM8UwKA+fjrHZ6R+bzO2/KNMNUf+sbZYGX0exQFLVu3BOKKczAzDKjN01CFM2XnGB6TZkKQNNzNFtnlL9FZgvk8IqXF7m2x2/KOQBmuwqzRwgvq10QAnU85N4WPMS7OLQJeVb7cKjyw0iWeJatgnYG7y77RdY02CNGmjeVGBxvgZ3H2w== ARC-Authentication-Results: i=1; lists.ozlabs.org; dmarc=pass (p=quarantine dis=none) header.from=kernel.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20201202 header.b=HJ4BTRSD; dkim-atps=neutral; spf=pass (client-ip=2600:3c04:e001:324:0:1991:8:25; helo=tor.source.kernel.org; envelope-from=helgaas@kernel.org; receiver=lists.ozlabs.org) smtp.mailfrom=kernel.org Authentication-Results: lists.ozlabs.org; dmarc=pass (p=quarantine dis=none) header.from=kernel.org Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20201202 header.b=HJ4BTRSD; dkim-atps=neutral Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=kernel.org (client-ip=2600:3c04:e001:324:0:1991:8:25; helo=tor.source.kernel.org; envelope-from=helgaas@kernel.org; receiver=lists.ozlabs.org) Received: from tor.source.kernel.org (tor.source.kernel.org [IPv6:2600:3c04:e001:324:0:1991:8:25]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4b3qmS1ZFlz2yrp for ; Sat, 24 May 2025 02:07:04 +1000 (AEST) Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by tor.source.kernel.org (Postfix) with ESMTP id 58C4A629CD; Fri, 23 May 2025 16:07:00 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CDD81C4CEEB; Fri, 23 May 2025 16:06:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1748016420; bh=U5OXlf+RyqrwgHycF2mts31Fb7vitn7wTynxz3ykuCU=; h=Date:From:To:Cc:Subject:In-Reply-To:From; b=HJ4BTRSD/0E+TS5UteGvWOxf6R8OzJOt1+4nzoXPvNCXRD/8S/RNGcPwi58jotavi +4tTV8FqgSGUtL4GoCwxkaJlgejTdf4aMBX+IvZvWOvMGbFhSXdQDkVOjBmkXvR+S0 A9qINpvL88R5Q+bWhPSmHHFrdVJ+9gSC/jPZH+EcX4uP/DMIfwsHCfFm9iq1abQET6 gC/+8VnoGgTxoCZucgiciaTMBy20nqlu9TLHLQhvg72dAthv2ZWiMbew4qxHxAyn8+ SzSxhptlarY55XjN3O70l0VVUIkvlIvZApk9gVoyDSbZldmkqtr6C0gwS5Jw4QzCt1 chp6pa8W4pWGQ== Date: Fri, 23 May 2025 11:06:58 -0500 From: Bjorn Helgaas To: Sathyanarayanan Kuppuswamy Cc: linux-pci@vger.kernel.org, Jon Pan-Doh , Karolina Stolarek , Weinan Liu , Martin Petersen , Ben Fuller , Drew Walton , Anil Agrawal , Tony Luck , Ilpo =?utf-8?B?SsOkcnZpbmVu?= , Lukas Wunner , Jonathan Cameron , Sargun Dhillon , "Paul E . McKenney" , Mahesh J Salgaonkar , Oliver O'Halloran , Kai-Heng Feng , Keith Busch , Robert Richter , Terry Bowman , Shiju Jose , Dave Jiang , linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, Bjorn Helgaas Subject: Re: [PATCH v8 18/20] PCI/AER: Ratelimit correctable and non-fatal error logging Message-ID: <20250523160658.GA1559366@bhelgaas> X-Mailing-List: linuxppc-dev@lists.ozlabs.org List-Id: List-Help: List-Owner: List-Post: List-Archive: , List-Subscribe: , , List-Unsubscribe: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: On Thu, May 22, 2025 at 04:56:56PM -0700, Sathyanarayanan Kuppuswamy wrote: > On 5/22/25 4:21 PM, Bjorn Helgaas wrote: > > From: Jon Pan-Doh > > > > Spammy devices can flood kernel logs with AER errors and slow/stall > > execution. Add per-device ratelimits for AER correctable and non-fatal > > uncorrectable errors that use the kernel defaults (10 per 5s). Logging of > > fatal errors is not ratelimited. > > +static int aer_ratelimit(struct pci_dev *dev, unsigned int severity) > > +{ > > + struct ratelimit_state *ratelimit; > > + > > + if (severity == AER_FATAL) > > + return 1; /* AER_FATAL not ratelimited */ > > + > > + if (severity == AER_CORRECTABLE) > > + ratelimit = &dev->aer_info->correctable_ratelimit; > > + else > > + ratelimit = &dev->aer_info->nonfatal_ratelimit; > > + > > + return __ratelimit(ratelimit); > > +} > > + > > Why not combine severity checks? May be something like below: > >     switch (severity) { >     case AER_NONFATAL: >         return __ratelimit(&dev->aer_info->nonfatal_ratelimit); >     case AER_CORRECTABLE: >         return __ratelimit(&dev->aer_info->correctable_ratelimit); >     default: >         return 1; /* Don't rate-limit fatal errors */ >     } Beautiful, adopted, thank you!