aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/bge
diff options
context:
space:
mode:
authorBill Paul <wpaul@FreeBSD.org>2003-08-04 05:50:53 +0000
committerBill Paul <wpaul@FreeBSD.org>2003-08-04 05:50:53 +0000
commit859c6c7d0372a2b5374c394d928fb8bc9c31547e (patch)
tree5b2dc1aeacf8ebf1b7eba9e04e3a7b870b82c80a /sys/dev/bge
parent183498934bdc4eedcb346ef8fdb32415e2f30d27 (diff)
Set the BGE_RX_MTU register correctly so that we can receive slightly
larger than normal frames, to account for the case where a bge(4) NIC is used with VLANs. Since we set the IFCAP_VLAN_MTU flag, we must allow reception of frames up to 1522 bytes in size rather than 1518. Note that it is possible to work around this bug by doing: # ifconfig bge0 mtu 1504 prior to configuring any VLAN interfaces.
Notes
svn path=/head/; revision=118417
Diffstat (limited to 'sys/dev/bge')
-rw-r--r--sys/dev/bge/if_bge.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/bge/if_bge.c b/sys/dev/bge/if_bge.c
index 85c4376c6bff..6f781e81e651 100644
--- a/sys/dev/bge/if_bge.c
+++ b/sys/dev/bge/if_bge.c
@@ -3182,7 +3182,7 @@ bge_init(xsc)
/* Specify MTU. */
CSR_WRITE_4(sc, BGE_RX_MTU, ifp->if_mtu +
- ETHER_HDR_LEN + ETHER_CRC_LEN);
+ ETHER_HDR_LEN + ETHER_CRC_LEN + ETHER_VLAN_ENCAP_LEN);
/* Load our MAC address. */
m = (u_int16_t *)&sc->arpcom.ac_enaddr[0];