Properly advertise that if_arge can handle long frames (if_arge is set to
handle packets up to 1536 bytes) This fixes the need to frag that could happen when using vlans on top of if_arge (which is a common case for the use the switch ports as individual NICs). Previously to this commit any vlan setup with if_arge as parent would have the MTU of the parent interface reduced by the size of dot1q header (4 bytes). Tested on TP-Link 1043ND (where the WAN port is just a switch port setup to tag packets in a different VLAN than the LAN ports). Reported and tested by: Harm Weites (harm at weites.com)
This commit is contained in:
parent
bfae93299c
commit
4bd2c6a20d
@ -703,6 +703,9 @@ arge_attach(device_t dev)
|
||||
ifp->if_snd.ifq_maxlen = ifqmaxlen;
|
||||
IFQ_SET_READY(&ifp->if_snd);
|
||||
|
||||
/* Tell the upper layer(s) we support long frames. */
|
||||
ifp->if_capabilities |= IFCAP_VLAN_MTU;
|
||||
|
||||
ifp->if_capenable = ifp->if_capabilities;
|
||||
#ifdef DEVICE_POLLING
|
||||
ifp->if_capabilities |= IFCAP_POLLING;
|
||||
|
Loading…
Reference in New Issue
Block a user