Netdev List
 help / color / mirror / Atom feed
* [PATCH net-next 0/2] eth: bnxt: preserve IRQ affinity across IRQ reallocation
@ 2026-08-13 19:32 Jakub Kicinski
  2026-08-13 19:32 ` [PATCH net-next 1/2] eth: bnxt: decrease indent in bnxt_init_int_mode() Jakub Kicinski
  2026-08-13 19:32 ` [PATCH net-next 2/2] eth: bnxt: preserve IRQ affinity across IRQ reallocation Jakub Kicinski
  0 siblings, 2 replies; 3+ messages in thread
From: Jakub Kicinski @ 2026-08-13 19:32 UTC (permalink / raw)
  To: davem; +Cc: netdev, michael.chan, pavan.chebbi, Jakub Kicinski

bnxt currently discards the IRQ affinity when changing ring count:

  # ethtool -l ens9np0
  [...] Combined:	8 [...]
  # ynl --family netdev --dump napi-get --json '{"ifindex": 2}'
  [...]
   {'defer-hard-irqs': 0,
  'gro-flush-timeout': 0,
  'id': 70,
  'ifindex': 2,
  'irq': 170,                << IRQ 170 is for NAPI 1 (second to last)
  'irq-suspend-timeout': 0,
  'threaded': 'disabled'},
 {'defer-hard-irqs': 0,
  'gro-flush-timeout': 0,
  'id': 69,
  'ifindex': 2,
  'irq': 169,
  'irq-suspend-timeout': 0,
  'threaded': 'disabled'}]

  # cat /proc/irq/170/smp_affinity_list 
  1     <<< system config script set CPU 1 for this IRQ
  # ethtool -L ens9np0 combined 1
  # ethtool -L ens9np0 combined 8
  # cat /proc/irq/170/smp_affinity_list 
  0-31  <<< system has 32 CPUs

After this series:

  # cat /proc/irq/170/smp_affinity_list 
  1
  # ethtool -L ens9np0 combined 1
  # ethtool -L ens9np0 combined 8
  # cat /proc/irq/170/smp_affinity_list 
  1

We recently added the ability to networking core to track the affinity.
bnxt doesn't use it because it needs TPH programming as well.
Let's align its local behavior.

The loss of IRQ config is a real production problem, but it also breaks
some of the NIPA tests.

Jakub Kicinski (2):
  eth: bnxt: decrease indent in bnxt_init_int_mode()
  eth: bnxt: preserve IRQ affinity across IRQ reallocation

 drivers/net/ethernet/broadcom/bnxt/bnxt.h |  11 +-
 drivers/net/ethernet/broadcom/bnxt/bnxt.c | 131 +++++++++++++++-------
 2 files changed, 98 insertions(+), 44 deletions(-)

-- 
2.55.0


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-08-13 19:32 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-13 19:32 [PATCH net-next 0/2] eth: bnxt: preserve IRQ affinity across IRQ reallocation Jakub Kicinski
2026-08-13 19:32 ` [PATCH net-next 1/2] eth: bnxt: decrease indent in bnxt_init_int_mode() Jakub Kicinski
2026-08-13 19:32 ` [PATCH net-next 2/2] eth: bnxt: preserve IRQ affinity across IRQ reallocation Jakub Kicinski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox