[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4d131477-f188-7a42-e382-6168299fa5cf@linux.intel.com>
Date: Tue, 23 Sep 2025 13:58:45 +0300 (EEST)
From: Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>
To: Ciju Rajan K <crajank@...dia.com>
cc: hdegoede@...hat.com, tglx@...utronix.de,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
LKML <linux-kernel@...r.kernel.org>, christophe.jaillet@...adoo.fr,
platform-driver-x86@...r.kernel.org, vadimp@...dia.com
Subject: Re: [PATCH platform-next v2 1/2] [PATCH platform-next 1/2]
platform_data/mlxreg: Add fields for interrupt storm handling
On Tue, 23 Sep 2025, Ciju Rajan K wrote:
> Add fields for interrupt storm handling.
> Extend structure mlxreg_core_data with the following fields:
> 'wmark_cntr' - interrupt storm counter.
> 'wmark_window' - time window to count interrupts to check for storm.
>
> Extend structure mlxreg_core_item with the following field:
> 'storming_bits' - interrupt storming bits mask.
>
> Reviewed-by: Vadim Pasternak <vadimp@...dia.com>
> Signed-off-by: Ciju Rajan K <crajank@...dia.com>
> ---
> include/linux/platform_data/mlxreg.h | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/include/linux/platform_data/mlxreg.h b/include/linux/platform_data/mlxreg.h
> index f6cca7a035c7..453c8dfd7eb9 100644
> --- a/include/linux/platform_data/mlxreg.h
> +++ b/include/linux/platform_data/mlxreg.h
> @@ -131,6 +131,8 @@ struct mlxreg_hotplug_device {
> * @regnum: number of registers occupied by multi-register attribute;
> * @slot: slot number, at which device is located;
> * @secured: if set indicates that entry access is secured;
> + * @wmark_cntr: interrupt storm counter;
> + * @wmark_window: time window to count interrupts to check for storm;
> */
> struct mlxreg_core_data {
> char label[MLXREG_CORE_LABEL_MAX_SIZE];
> @@ -151,6 +153,8 @@ struct mlxreg_core_data {
> u8 regnum;
> u8 slot;
> u8 secured;
> + unsigned int wmark_cntr;
> + unsigned long wmark_window;
> };
>
> /**
> @@ -167,6 +171,7 @@ struct mlxreg_core_data {
> * @ind: element's index inside the group;
> * @inversed: if 0: 0 for signal status is OK, if 1 - 1 is OK;
> * @health: true if device has health indication, false in other case;
> + * @storming_bits: interrupt storming bits mask;
> */
> struct mlxreg_core_item {
> struct mlxreg_core_data *data;
> @@ -180,6 +185,7 @@ struct mlxreg_core_item {
> u8 ind;
> u8 inversed;
> u8 health;
> + u32 storming_bits;
> };
>
> /**
>
I don't know what's the benefit of having this as a separate patch, the
fields are getting used in patch 2 so it would feel natural to introduce
them there so the entire change would end up into the same commit.
--
i.
Powered by blists - more mailing lists