git: c6fb3ad1533b - stable/15 - ixl: enforce the assigned VF MAC address
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 04 Aug 2026 18:41:08 UTC
The branch stable/15 has been updated by kbowling:
URL: https://cgit.FreeBSD.org/src/commit/?id=c6fb3ad1533b23ab72e9a15593153c6676447f28
commit c6fb3ad1533b23ab72e9a15593153c6676447f28
Author: Kevin Bowling <kbowling@FreeBSD.org>
AuthorDate: 2026-08-01 02:38:54 +0000
Commit: Kevin Bowling <kbowling@FreeBSD.org>
CommitDate: 2026-08-04 18:40:58 +0000
ixl: enforce the assigned VF MAC address
When allow-set-mac is disabled, the MAC filter validation condition
rejects the assigned VF unicast address while allowing any different
unicast address. The equality test was accidentally inverted when this
code moved to the boolean address helper.
Accept multicast and the assigned unicast address, and reject other
unicast addresses as intended.
Fixes: 7d4dceec1030 ("ixl(4): Fix VLAN HW filtering")
(cherry picked from commit d2309d9d6dc6d5a9141314652d6c96ab46a9a62c)
---
sys/dev/ixl/ixl_pf_iov.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sys/dev/ixl/ixl_pf_iov.c b/sys/dev/ixl/ixl_pf_iov.c
index ca2759557066..1e475e4767cc 100644
--- a/sys/dev/ixl/ixl_pf_iov.c
+++ b/sys/dev/ixl/ixl_pf_iov.c
@@ -1022,7 +1022,7 @@ ixl_vf_mac_valid(struct ixl_vf *vf, const uint8_t *addr)
* is not its assigned MAC.
*/
if (!(vf->vf_flags & VF_FLAG_SET_MAC_CAP) &&
- !(ETHER_IS_MULTICAST(addr) || !ixl_ether_is_equal(addr, vf->mac)))
+ !(ETHER_IS_MULTICAST(addr) || ixl_ether_is_equal(addr, vf->mac)))
return (EPERM);
return (0);
@@ -1824,4 +1824,3 @@ out:
return (error);
}
-