netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [net-next v3 0/2] igc: Link IRQs and queues to NAPIs
@ 2024-10-18 17:13 Joe Damato
  2024-10-18 17:13 ` [net-next v3 1/2] igc: Link IRQs to NAPI instances Joe Damato
  2024-10-18 17:13 ` [net-next v3 2/2] igc: Link queues " Joe Damato
  0 siblings, 2 replies; 10+ messages in thread
From: Joe Damato @ 2024-10-18 17:13 UTC (permalink / raw)
  To: netdev
  Cc: kurt, vinicius.gomes, Joe Damato, Alexei Starovoitov,
	open list:XDP (eXpress Data Path), Daniel Borkmann,
	David S. Miller, Eric Dumazet,
	moderated list:INTEL ETHERNET DRIVERS, Jakub Kicinski,
	Jesper Dangaard Brouer, John Fastabend, open list, Paolo Abeni,
	Przemek Kitszel, Tony Nguyen

Greetings:

Welcome to v3.

See changelog below and in each patch for changes from rfc v2 [1].

This series adds support for netdev-genl to igc so that userland apps
can query IRQ, queue, and NAPI instance relationships. This is useful
because developers who have igc NICs (for example, in their Intel NUCs)
who are working on epoll-based busy polling apps and using
SO_INCOMING_NAPI_ID, need access to this API to map NAPI IDs back to
queues.

See the commit messages of each patch for example output I got on my igc
hardware.

I've taken the feedback from both Kurt Kanzenbach and Vinicius Costa
Gomes to simplify the code from the rfc v2.

Thanks to reviewers and maintainers for their comments/feedback!

Thanks,
Joe

[1]: https://lore.kernel.org/netdev/Zw8QZowkIRM-8-U1@LQ3V64L9R2/T/

v3:
  - No longer an RFC
  - Patch 1: no changes
  - Patch 2:
      - Replace igc_unset_queue_napi with igc_set_queue_napi(..., NULL),
        as suggested by Vinicius Costa Gomes
      - Simplify implementation of igc_set_queue_napi as suggested by Kurt
        Kanzenbach, with a minor change to use the ring->queue_index

rfcv2: https://lore.kernel.org/netdev/20241014213012.187976-1-jdamato@fastly.com/
  - Patch 1: update line wrapping to 80 chars
  - Patch 2:
    - Update commit message to include output for IGC_FLAG_QUEUE_PAIRS
      enabled and disabled
    - Significant refactor to move queue mapping code to helpers to be
      called from multiple locations
    - Adjusted code to handle IGC_FLAG_QUEUE_PAIRS disabled as suggested
      by Kurt Kanzenbach
    - Map / unmap queues in igc_xdp_disable_pool and
      igc_xdp_enable_pool, respectively, as suggested by Vinicius Costa
      Gomes to handle the XDP case

rfcv1: https://lore.kernel.org/lkml/20241003233850.199495-1-jdamato@fastly.com/


Joe Damato (2):
  igc: Link IRQs to NAPI instances
  igc: Link queues to NAPI instances

 drivers/net/ethernet/intel/igc/igc.h      |  2 ++
 drivers/net/ethernet/intel/igc/igc_main.c | 36 ++++++++++++++++++++---
 drivers/net/ethernet/intel/igc/igc_xdp.c  |  2 ++
 3 files changed, 36 insertions(+), 4 deletions(-)


base-commit: 160a810b2a8588187ec2b1536d0355c0aab8981c
-- 
2.25.1


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

end of thread, other threads:[~2024-10-22 20:58 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-18 17:13 [net-next v3 0/2] igc: Link IRQs and queues to NAPIs Joe Damato
2024-10-18 17:13 ` [net-next v3 1/2] igc: Link IRQs to NAPI instances Joe Damato
2024-10-21 17:48   ` Vinicius Costa Gomes
2024-10-22 18:50   ` Jacob Keller
2024-10-22 19:54     ` Joe Damato
2024-10-18 17:13 ` [net-next v3 2/2] igc: Link queues " Joe Damato
2024-10-21 17:48   ` Vinicius Costa Gomes
2024-10-22 20:28   ` Joe Damato
2024-10-22 20:53     ` Jacob Keller
2024-10-22 20:58       ` Joe Damato

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).