Skip to content

Commit 858e6c3

Browse files
amirvdavem330
authored andcommitted
net/mlx4_en: cq->irq_desc wasn't set in legacy EQ's
Fix a regression introduced by commit 35f6f45 ("net/mlx4_en: Don't use irq_affinity_notifier to track changes in IRQ affinity map"). When core is started in legacy EQ's (number of IRQ's < rx rings), cq->irq_desc was NULL. This caused a kernel crash under heavy traffic - when having more than rx NAPI budget completions. Fixed to have it set for both EQ modes. Signed-off-by: Amir Vadai <amirv@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent a4b70a0 commit 858e6c3

File tree

1 file changed

+4
-3
lines changed
  • drivers/net/ethernet/mellanox/mlx4

1 file changed

+4
-3
lines changed

drivers/net/ethernet/mellanox/mlx4/en_cq.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -129,14 +129,15 @@ int mlx4_en_activate_cq(struct mlx4_en_priv *priv, struct mlx4_en_cq *cq,
129129
name);
130130
}
131131

132-
cq->irq_desc =
133-
irq_to_desc(mlx4_eq_get_irq(mdev->dev,
134-
cq->vector));
135132
}
136133
} else {
137134
cq->vector = (cq->ring + 1 + priv->port) %
138135
mdev->dev->caps.num_comp_vectors;
139136
}
137+
138+
cq->irq_desc =
139+
irq_to_desc(mlx4_eq_get_irq(mdev->dev,
140+
cq->vector));
140141
} else {
141142
/* For TX we use the same irq per
142143
ring we assigned for the RX */

0 commit comments

Comments
 (0)