Dear Brian,

Thank you for your patch.

Am 26.01.26 um 15:46 schrieb Brian Vazquez via Intel-wired-lan:
The code uses the vidx for the IRQ name but that doesn't match ethtool
reporting or netdev naming, this makes it hard to tune the device and
associate queues with IRQs. Sequentially requesting irqs starting from
'0' makes the output consistent.

Before:

ethtool -L eth1 tx 1 combined 3

grep . /proc/irq/*/*idpf*/../smp_affinity_list
/proc/irq/67/idpf-Mailbox-0/../smp_affinity_list:0-55,112-167
/proc/irq/68/idpf-eth1-TxRx-1/../smp_affinity_list:0
/proc/irq/70/idpf-eth1-TxRx-3/../smp_affinity_list:1
/proc/irq/71/idpf-eth1-TxRx-4/../smp_affinity_list:2
/proc/irq/72/idpf-eth1-Tx-5/../smp_affinity_list:3

ethtool -S eth1 | grep -v ': 0'
NIC statistics:
      tx_q-0_pkts: 1002
      tx_q-1_pkts: 2679
      tx_q-2_pkts: 1113
      tx_q-3_pkts: 1192 <----- tx_q-3 vs idpf-eth1-Tx-5
      rx_q-0_pkts: 1143
      rx_q-1_pkts: 3172
      rx_q-2_pkts: 1074

After:

ethtool -L eth1 tx 1 combined 3

grep . /proc/irq/*/*idpf*/../smp_affinity_list

/proc/irq/67/idpf-Mailbox-0/../smp_affinity_list:0-55,112-167
/proc/irq/68/idpf-eth1-TxRx-0/../smp_affinity_list:0
/proc/irq/70/idpf-eth1-TxRx-1/../smp_affinity_list:1
/proc/irq/71/idpf-eth1-TxRx-2/../smp_affinity_list:2
/proc/irq/72/idpf-eth1-Tx-3/../smp_affinity_list:3

ethtool -S eth1 | grep -v ': 0'
NIC statistics:
      tx_q-0_pkts: 118
      tx_q-1_pkts: 134
      tx_q-2_pkts: 228
      tx_q-3_pkts: 138 <--- tx_q-3 matches idpf-eth1-Tx-3
      rx_q-0_pkts: 111
      rx_q-1_pkts: 366
      rx_q-2_pkts: 120

Fixes: d4d558718266 ("idpf: initialize interrupts and enable vport")
Signed-off-by: Brian Vazquez <[email protected]>
Reviewed-by: Brett Creeley <[email protected]>
Reviewed-by: Aleksandr Loktionov <[email protected]>
---
V2: Add mising Fixes tag

  drivers/net/ethernet/intel/idpf/idpf_txrx.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/intel/idpf/idpf_txrx.c 
b/drivers/net/ethernet/intel/idpf/idpf_txrx.c
index c2a1fe3c79ec..c1f8dfc570ce 100644
--- a/drivers/net/ethernet/intel/idpf/idpf_txrx.c
+++ b/drivers/net/ethernet/intel/idpf/idpf_txrx.c
@@ -4093,7 +4093,7 @@ static int idpf_vport_intr_req_irq(struct idpf_vport 
*vport,
                        continue;
name = kasprintf(GFP_KERNEL, "%s-%s-%s-%d", drv_name, if_name,
-                                vec_name, vidx);
+                                vec_name, vector);
err = request_irq(irq_num, idpf_vport_intr_clean_queues, 0,
                                  name, q_vector);

With Andrew’s comment addressed in the commit message, this looks sensible.

Reviewed-by: Paul Menzel <[email protected]>


Kind regards,

Paul

Reply via email to