git: d2309d9d6dc6 - main - ixl: enforce the assigned VF MAC address
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 01 Aug 2026 08:56:04 UTC
The branch main has been updated by kbowling:
URL: https://cgit.FreeBSD.org/src/commit/?id=d2309d9d6dc6d5a9141314652d6c96ab46a9a62c
commit d2309d9d6dc6d5a9141314652d6c96ab46a9a62c
Author: Kevin Bowling <kbowling@FreeBSD.org>
AuthorDate: 2026-08-01 02:38:54 +0000
Commit: Kevin Bowling <kbowling@FreeBSD.org>
CommitDate: 2026-08-01 08:55:50 +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")
MFC after: 3 days
---
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);
}
-