for (i = 0; i < priv->channels.num * priv->channels.params.num_tc; i++) {
struct netdev_queue *dev_queue = netdev_get_tx_queue(dev, i);
struct mlx5e_txqsq *sq = priv->txq2sq[i];
+ struct mlx5_core_dev *mdev = priv->mdev;
+ int irqn_not_used, eqn;
+ struct mlx5_eq *eq;
if (!netif_xmit_stopped(dev_queue))
continue;
netdev_err(dev, "TX timeout on queue: %d, SQ: 0x%x, CQ: 0x%x, SQ Cons: 0x%x SQ Prod: 0x%x, usecs since last trans: %u\n",
i, sq->sqn, sq->cq.mcq.cqn, sq->cc, sq->pc,
jiffies_to_usecs(jiffies - dev_queue->trans_start));
+
+ if (mlx5_vector2eqn(mdev, sq->cq.mcq.vector, &eqn,
+ &irqn_not_used))
+ continue;
+
+ eq = mlx5_eqn2eq(mdev, eqn);
+ if (!IS_ERR(eq))
+ netdev_err(dev, "EQ 0x%x: Cons = 0x%x, irqn = 0x%x\n",
+ eqn, eq->cons_index, eq->irqn);
}
if (sched_work && test_bit(MLX5E_STATE_OPENED, &priv->state))