From 82330517a326dae74df84233855a49da0ecff0cc Mon Sep 17 00:00:00 2001 From: Ido Shamay Date: Sun, 9 Mar 2014 13:35:04 +0200 Subject: [PATCH] mlx4: Clean IRQ affinity hint when freeing it This is done to avoid kernel's warning when affinty hint of IRQ is set, when free_irq is called. WARNING: at kernel/irq/manage.c:1002 __free_irq+0x22d/0x250() Call Trace: [] ? warn_slowpath_common+0x87/0xc0 [] ? warn_slowpath_null+0x1a/0x20 [] ? __free_irq+0x22d/0x250 [] ? free_irq+0x4e/0xb0 [] ? mlx4_release_eq+0x9d/0xc0 [mlx4_core] Signed-off-by: Ido Shamay (Ported from Mellanox OFED 2.4) Signed-off-by: Mukesh Kacker --- drivers/net/ethernet/mellanox/mlx4/eq.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/ethernet/mellanox/mlx4/eq.c b/drivers/net/ethernet/mellanox/mlx4/eq.c index 4e9c01be5fcf..8127529325e1 100644 --- a/drivers/net/ethernet/mellanox/mlx4/eq.c +++ b/drivers/net/ethernet/mellanox/mlx4/eq.c @@ -1432,6 +1432,8 @@ void mlx4_release_eq(struct mlx4_dev *dev, int vec) Belonging to a legacy EQ*/ mutex_lock(&priv->msix_ctl.pool_lock); if (priv->msix_ctl.pool_bm & 1ULL << i) { + irq_set_affinity_hint(priv->eq_table.eq[vec].irq, + NULL); free_irq(priv->eq_table.eq[vec].irq, &priv->eq_table.eq[vec]); priv->msix_ctl.pool_bm &= ~(1ULL << i); -- 2.50.1