net/mlx4_en: Use affinity hint
[firefly-linux-kernel-4.4.55.git] / drivers / net / ethernet / mellanox / mlx4 / en_cq.c
index 636963db598ae0025f52aa806f323c61261b7d97..ea2cd72e53680a2adc65e61f2bd35efde42f79e8 100644 (file)
@@ -118,11 +118,15 @@ int mlx4_en_activate_cq(struct mlx4_en_priv *priv, struct mlx4_en_cq *cq,
        if (cq->is_tx == RX) {
                if (mdev->dev->caps.comp_pool) {
                        if (!cq->vector) {
+                               struct mlx4_en_rx_ring *ring =
+                                       priv->rx_ring[cq->ring];
+
                                sprintf(name, "%s-%d", priv->dev->name,
                                        cq->ring);
                                /* Set IRQ for specific name (per ring) */
                                if (mlx4_assign_eq(mdev->dev, name, rmap,
-                                                  &cq->vector)) {
+                                                  &cq->vector,
+                                                  ring->affinity_mask)) {
                                        cq->vector = (cq->ring + 1 + priv->port)
                                            % mdev->dev->caps.num_comp_vectors;
                                        mlx4_warn(mdev, "Failed assigning an EQ to %s, falling back to legacy EQ's\n",