linux/drivers/net/ethernet/intel
Jakub Kicinski fd2162a501 Merge branch '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue
Tony Nguyen says:

====================
ice: use less resources in switchdev

Michal Swiatkowski says:

Switchdev is using one queue per created port representor. This can
quickly lead to Rx queue shortage, as with subfunction support user
can create high number of PRs.

Save one MSI-X and 'number of PRs' * 1 queues.
Refactor switchdev slow-path to use less resources (even no additional
resources). Do this by removing control plane VSI and move its
functionality to PF VSI. Even with current solution PF is acting like
uplink and can't be used simultaneously for other use cases (adding
filters can break slow-path).

In short, do Tx via PF VSI and Rx packets using PF resources. Rx needs
additional code in interrupt handler to choose correct PR netdev.
Previous solution had to queue filters, it was way more elegant but
needed one queue per PRs. Beside that this refactor mostly simplifies
switchdev configuration.

* '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue:
  ice: count representor stats
  ice: do switchdev slow-path Rx using PF VSI
  ice: change repr::id values
  ice: remove switchdev control plane VSI
  ice: control default Tx rule in lag
  ice: default Tx rule instead of to queue
  ice: do Tx through PF netdev in slow-path
  ice: remove eswitch changing queues algorithm
====================

Link: https://lore.kernel.org/r/20240325202623.1012287-1-anthony.l.nguyen@intel.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2024-03-28 22:50:22 -07:00
..
e1000 intel: legacy: field get conversion 2023-12-18 11:20:43 -08:00
e1000e Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2024-03-07 10:29:36 -08:00
fm10k intel: legacy: field get conversion 2023-12-18 11:20:43 -08:00
i40e net: remove gfp_mask from napi_alloc_skb() 2024-03-28 18:30:40 -07:00
iavf net: remove gfp_mask from napi_alloc_skb() 2024-03-28 18:30:40 -07:00
ice Merge branch '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue 2024-03-28 22:50:22 -07:00
idpf idpf: sprinkle __counted_by{,_le}() in the virtchnl2 header 2024-03-28 18:50:47 -07:00
igb Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2024-03-11 20:38:36 -07:00
igbvf net: adopt skb_network_offset() and similar helpers 2024-03-04 08:47:06 +00:00
igc net: remove gfp_mask from napi_alloc_skb() 2024-03-28 18:30:40 -07:00
ixgbe net: remove gfp_mask from napi_alloc_skb() 2024-03-28 18:30:40 -07:00
ixgbevf net: adopt skb_network_offset() and similar helpers 2024-03-04 08:47:06 +00:00
e100.c intel: make module parameters readable in sys filesystem 2024-03-04 20:49:58 -08:00
Kconfig igc: fix LEDS_CLASS dependency 2024-03-04 20:49:58 -08:00
Makefile idpf: add SRIOV support and other ndo_ops 2023-09-13 14:59:24 -07:00