Message ID | 20250213094641.226501-2-tariqt@nvidia.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 9dd3d5d258aceb37bdf09c8b91fa448f58ea81f0 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | mlx5: Add sensor name in temperature message | expand |
On 2/13/2025 10:46 AM, Tariq Toukan wrote: > From: Shahar Shitrit <shshitrit@nvidia.com> > > Wrap the high temperature warning in a temperature event with > a call to net_ratelimit() to prevent flooding the kernel log > with repeated warning messages when temperature exceeds the > threshold multiple times within a short duration. > > Signed-off-by: Shahar Shitrit <shshitrit@nvidia.com> > Signed-off-by: Tariq Toukan <tariqt@nvidia.com> > --- > drivers/net/ethernet/mellanox/mlx5/core/events.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/net/ethernet/mellanox/mlx5/core/events.c b/drivers/net/ethernet/mellanox/mlx5/core/events.c > index d91ea53eb394..e8beb6289d01 100644 > --- a/drivers/net/ethernet/mellanox/mlx5/core/events.c > +++ b/drivers/net/ethernet/mellanox/mlx5/core/events.c > @@ -165,9 +165,10 @@ static int temp_warn(struct notifier_block *nb, unsigned long type, void *data) > value_lsb = be64_to_cpu(eqe->data.temp_warning.sensor_warning_lsb); > value_msb = be64_to_cpu(eqe->data.temp_warning.sensor_warning_msb); > > - mlx5_core_warn(events->dev, > - "High temperature on sensors with bit set %llx %llx", > - value_msb, value_lsb); > + if (net_ratelimit()) > + mlx5_core_warn(events->dev, > + "High temperature on sensors with bit set %llx %llx", > + value_msb, value_lsb); > > return NOTIFY_OK; > } Nice improvement, thanks Reviewed-by: Mateusz Polchlopek <mateusz.polchlopek@intel.com>
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/events.c b/drivers/net/ethernet/mellanox/mlx5/core/events.c index d91ea53eb394..e8beb6289d01 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/events.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/events.c @@ -165,9 +165,10 @@ static int temp_warn(struct notifier_block *nb, unsigned long type, void *data) value_lsb = be64_to_cpu(eqe->data.temp_warning.sensor_warning_lsb); value_msb = be64_to_cpu(eqe->data.temp_warning.sensor_warning_msb); - mlx5_core_warn(events->dev, - "High temperature on sensors with bit set %llx %llx", - value_msb, value_lsb); + if (net_ratelimit()) + mlx5_core_warn(events->dev, + "High temperature on sensors with bit set %llx %llx", + value_msb, value_lsb); return NOTIFY_OK; }