Patch "net/mlx5: Tolerate irq_set_affinity_hint() failures" has been added to the 4.9-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
net/mlx5: Tolerate irq_set_affinity_hint() failures
to the 4.9-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
net-mlx5-tolerate-irq_set_affinity_hint-failures.patch
and it can be found in the queue-4.9 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From foo@baz Mon Apr 9 17:09:24 CEST 2018
From: Tariq Toukan <[email protected]>
Date: Thu, 18 May 2017 13:34:43 +0300
Subject: net/mlx5: Tolerate irq_set_affinity_hint() failures
From: Tariq Toukan <[email protected]>
[ Upstream commit b665d98edc9ab295169be2fc5bb4e89a46de0a1a ]
Add tolerance to failures of irq_set_affinity_hint(). Its role is to give hints that optimizes performance, and should not block the driver load.
In non-SMP systems, functionality is not available as there is a single core, and all these calls definitely fail. Hence, do not call the function and avoid the warning prints.
--- drivers/net/ethernet/mellanox/mlx5/core/main.c | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-)
drivers/net/ethernet/mellanox/mlx5/core/main.c +4 -11
@@ -548,7 +548,6 @@ static int mlx5_irq_set_affinity_hint(ststruct mlx5_priv *priv = &mdev->priv;struct msix_entry *msix = priv->msix_arr;int irq = msix[i +MLX5_EQ_VEC_COMP_BASE ].vector; -int err;if (!zalloc_cpumask_var (&priv->irq_info[i].mask,GFP_KERNEL )) {mlx5_core_warn (mdev,"zalloc_cpumask_var failed" );
@@ -558,18 +557,12 @@ static int mlx5_irq_set_affinity_hint(stcpumask_set_cpu (cpumask_local_spread (i, priv->numa_node), priv->irq_info[i].mask); - err =irq_set_affinity_hint (irq, priv->irq_info[i].mask); -if (err) { -mlx5_core_warn (mdev,"irq_set_affinity_hint failed,irq 0x%.4x" , - irq); - goto err_clear_mask; - } +#ifdef CONFIG_SMP +if (irq_set_affinity_hint (irq, priv->irq_info[i].mask)) +mlx5_core_warn (mdev,"irq_set_affinity_hint failed, irq 0x%.4x" , irq); +#endif return 0 ; - -err_clear_mask: -free_cpumask_var (priv->irq_info[i].mask); -return err; }static void mlx5_irq_clear_affinity_hint (struct mlx5_core_dev *mdev,int i)
Patches currently in stable-queue which might be from [email protected] are
queue-4.9/net-mlx4_en-change-default-qos-settings.patch queue-4.9/net-mlx4_en-avoid-adding-steering-rules-with-invalid-ring.patch queue-4.9/net-mlx4-fix-the-check-in-attaching-steering-rules.patch queue-4.9/net-mlx5-tolerate-irq_set_affinity_hint-failures.patch queue-4.9/net-mlx4-check-if-granular-qos-per-vf-has-been-enabled-before-updating-qp-qos_vport.patch