git: b1a39c31a356 - main - vlan: Respect IFCAP_LRO mask
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 12 Aug 2023 16:39:39 UTC
The branch main has been updated by kbowling:
URL: https://cgit.FreeBSD.org/src/commit/?id=b1a39c31a3569bd045a0f40057c3773fc8166f6d
commit b1a39c31a3569bd045a0f40057c3773fc8166f6d
Author: Kevin Bowling <kbowling@FreeBSD.org>
AuthorDate: 2023-08-12 16:31:22 +0000
Commit: Kevin Bowling <kbowling@FreeBSD.org>
CommitDate: 2023-08-12 16:39:23 +0000
vlan: Respect IFCAP_LRO mask
vlan_capabilities(), used by the IFCAP ioctl, was not respecting the
IFCAP_LRO bit if it was masked by the requestor.
This prevented if_bridge(4) from automasking LRO with a message like:
bridge0: can't disable some capabilities on em3.11: 0x400
This also prevented manually disabling LRO from any vlan interface.
PR: 254596
Reported by: Paul Vixie <paul@redbarn.org>
MFC after: 1 week
---
sys/net/if_vlan.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys/net/if_vlan.c b/sys/net/if_vlan.c
index 6aa872a19364..51f0bc63ebda 100644
--- a/sys/net/if_vlan.c
+++ b/sys/net/if_vlan.c
@@ -2074,7 +2074,7 @@ vlan_capabilities(struct ifvlan *ifv)
if (p->if_capabilities & IFCAP_VLAN_HWCSUM)
cap |= p->if_capabilities & IFCAP_LRO;
if (p->if_capenable & IFCAP_VLAN_HWCSUM)
- ena |= p->if_capenable & IFCAP_LRO;
+ ena |= mena & IFCAP_LRO;
/*
* If the parent interface can offload TCP connections over VLANs then