mbox series

[net-next,v3,0/5] net: xilinx: axienet: Multicast fixes and improvements

Message ID 20240822154059.1066595-1-sean.anderson@linux.dev (mailing list archive)
Headers show
Series net: xilinx: axienet: Multicast fixes and improvements | expand

Message

Sean Anderson Aug. 22, 2024, 3:40 p.m. UTC
This series has a few small patches improving the handling of multicast
addresses. In particular, it makes the driver a whole lot less spammy,
and adjusts things so we aren't in promiscuous mode when we have more
than four multicast addresses (a common occurance on modern systems).

As the hardware has a 4-entry CAM, the ideal method would be to "pack"
multiple addresses into one CAM entry. Something like:

entry.address = address[0] | address[1];
entry.mask = ~(address[0] ^ address[1]);

Which would make the entry match both addresses (along with some others
that would need to be filtered in software).

Mapping addresses to entries in an efficient way is a bit tricky. If
anyone knows of an in-tree example of something like this, I'd be glad
to hear about it.

Changes in v3:
- Rebase onto net-next/main

Changes in v2:
- Split off IFF_PROMISC change from printing changes

Sean Anderson (5):
  net: xilinx: axienet: Always disable promiscuous mode
  net: xilinx: axienet: Fix dangling multicast addresses
  net: xilinx: axienet: Don't print if we go into promiscuous mode
  net: xilinx: axienet: Don't set IFF_PROMISC in ndev->flags
  net: xilinx: axienet: Support IFF_ALLMULTI

 drivers/net/ethernet/xilinx/xilinx_axienet.h  |  3 ++
 .../net/ethernet/xilinx/xilinx_axienet_main.c | 52 +++++++++----------
 2 files changed, 29 insertions(+), 26 deletions(-)

Comments

patchwork-bot+netdevbpf@kernel.org Aug. 22, 2024, 8:10 p.m. UTC | #1
Hello:

This series was applied to netdev/net.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Thu, 22 Aug 2024 11:40:54 -0400 you wrote:
> This series has a few small patches improving the handling of multicast
> addresses. In particular, it makes the driver a whole lot less spammy,
> and adjusts things so we aren't in promiscuous mode when we have more
> than four multicast addresses (a common occurance on modern systems).
> 
> As the hardware has a 4-entry CAM, the ideal method would be to "pack"
> multiple addresses into one CAM entry. Something like:
> 
> [...]

Here is the summary with links:
  - [net-next,v3,1/5] net: xilinx: axienet: Always disable promiscuous mode
    https://git.kernel.org/netdev/net/c/4ae738dfef2c
  - [net-next,v3,2/5] net: xilinx: axienet: Fix dangling multicast addresses
    https://git.kernel.org/netdev/net/c/797a68c9de0f
  - [net-next,v3,3/5] net: xilinx: axienet: Don't print if we go into promiscuous mode
    (no matching commit)
  - [net-next,v3,4/5] net: xilinx: axienet: Don't set IFF_PROMISC in ndev->flags
    (no matching commit)
  - [net-next,v3,5/5] net: xilinx: axienet: Support IFF_ALLMULTI
    (no matching commit)

You are awesome, thank you!
patchwork-bot+netdevbpf@kernel.org Aug. 26, 2024, 5 p.m. UTC | #2
Hello:

This series was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Thu, 22 Aug 2024 11:40:54 -0400 you wrote:
> This series has a few small patches improving the handling of multicast
> addresses. In particular, it makes the driver a whole lot less spammy,
> and adjusts things so we aren't in promiscuous mode when we have more
> than four multicast addresses (a common occurance on modern systems).
> 
> As the hardware has a 4-entry CAM, the ideal method would be to "pack"
> multiple addresses into one CAM entry. Something like:
> 
> [...]

Here is the summary with links:
  - [net-next,v3,1/5] net: xilinx: axienet: Always disable promiscuous mode
    (no matching commit)
  - [net-next,v3,2/5] net: xilinx: axienet: Fix dangling multicast addresses
    (no matching commit)
  - [net-next,v3,3/5] net: xilinx: axienet: Don't print if we go into promiscuous mode
    https://git.kernel.org/netdev/net-next/c/cd039e6787ff
  - [net-next,v3,4/5] net: xilinx: axienet: Don't set IFF_PROMISC in ndev->flags
    https://git.kernel.org/netdev/net-next/c/7a826fb3e4c6
  - [net-next,v3,5/5] net: xilinx: axienet: Support IFF_ALLMULTI
    https://git.kernel.org/netdev/net-next/c/749e67d5b297

You are awesome, thank you!