diff options
author | rmacklem <rmacklem@FreeBSD.org> | 2014-04-15 21:48:35 +0000 |
---|---|---|
committer | rmacklem <rmacklem@FreeBSD.org> | 2014-04-15 21:48:35 +0000 |
commit | 6067137dbdfa199da937bd3c3404c875e6a8eee6 (patch) | |
tree | 980d728965057747b656d4b5712625e11971ad7b /sys/net/if_vlan.c | |
parent | 03a8cfa7d96a094ff8e6eda2cf42f8a486264c7c (diff) | |
download | FreeBSD-src-6067137dbdfa199da937bd3c3404c875e6a8eee6.zip FreeBSD-src-6067137dbdfa199da937bd3c3404c875e6a8eee6.tar.gz |
Vlan did not set the value of if_hw_tsomax, so when vlan
was stacked on top of a network interface that set if_hw_tsomax,
tcp_output() would see the default value instead of the value
set by the network interface. This patch modifies vlan so that
it sets if_hw_tsomax to the value of the parent interface.
Reviewed by: glebius
MFC after: 2 weeks
Diffstat (limited to 'sys/net/if_vlan.c')
-rw-r--r-- | sys/net/if_vlan.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/net/if_vlan.c b/sys/net/if_vlan.c index 75699fb..00d99ed 100644 --- a/sys/net/if_vlan.c +++ b/sys/net/if_vlan.c @@ -1511,6 +1511,8 @@ vlan_capabilities(struct ifvlan *ifv) * propagate the hardware-assisted flag. TSO on VLANs * does not necessarily require hardware VLAN tagging. */ + if (p->if_hw_tsomax > 0) + ifp->if_hw_tsomax = p->if_hw_tsomax; if (p->if_capabilities & IFCAP_VLAN_HWTSO) ifp->if_capabilities |= p->if_capabilities & IFCAP_TSO; if (p->if_capenable & IFCAP_VLAN_HWTSO) { |