git: edf4edbd1ca0 - stable/14 - ixgbe: disable VF multicast reception for empty list

Kevin Bowling <[email protected]>
Newsgroups gmane.os.freebsd.devel.cvs.src
Message-ID <6a767bdd.3eaf6.59c6aa0c__35035.2186172799$1786149981$gmane$org@gitrepo.freebsd.org>
The branch stable/14 has been updated by kbowling:

URL: https://cgit.FreeBSD.org/src/commit/?id=edf4edbd1ca09ee9b0c255d7506f3b5bc9542557

commit edf4edbd1ca09ee9b0c255d7506f3b5bc9542557
Author:     Wei Zhao <[email protected]>
AuthorDate: 2026-07-28 11:20:32 +0000
Commit:     Kevin Bowling <[email protected]>
CommitDate: 2026-08-08 00:42:40 +0000

    ixgbe: disable VF multicast reception for empty list
    
    Clear ROMPE for an empty list and enable it only for a nonempty list.
    FreeBSD already clears ROMPE when resetting a VF, so that part of the
    DPDK change is not needed.
    
    DPDK commit message
    
    net/ixgbe: fix over using multicast table for VF
    
    VMOLR.ROMPE allows a VF to receive packets matching the shared multicast
    table.  Leaving it enabled after the VF removes its last multicast
    address lets PF or peer-VF table entries continue selecting that VF.
    
    Signed-off-by: Wei Zhao <[email protected]>
    Acked-by: Qi Zhang <[email protected]>
    
    Obtained from:  DPDK (dc5a6e7422)
    
    (cherry picked from commit 786c71845f80b8bf733d07f9155de9740a8cbc19)
---
 sys/dev/ixgbe/if_sriov.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/sys/dev/ixgbe/if_sriov.c b/sys/dev/ixgbe/if_sriov.c
index c822303a4067..8d4e20fcf8bf 100644
--- a/sys/dev/ixgbe/if_sriov.c
+++ b/sys/dev/ixgbe/if_sriov.c
@@ -437,7 +437,10 @@ ixgbe_vf_set_mc_addr(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 *msg)
 		IXGBE_WRITE_REG(&sc->hw, IXGBE_MTA(vec_reg), mta_reg);
 	}
 
-	vmolr |= IXGBE_VMOLR_ROMPE;
+	if (entries == 0)
+		vmolr &= ~IXGBE_VMOLR_ROMPE;
+	else
+		vmolr |= IXGBE_VMOLR_ROMPE;
 	IXGBE_WRITE_REG(&sc->hw, IXGBE_VMOLR(vf->pool), vmolr);
 	ixgbe_send_vf_success(sc, vf, msg[0]);
 } /* ixgbe_vf_set_mc_addr */
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.