NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/44243: Enable ETHERCAP_VLAN_MTU in vr(4)

>Number:         44243
>Category:       kern
>Synopsis:       Enable ETHERCAP_VLAN_MTU in vr(4)
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Thu Dec 16 15:15:00 +0000 2010
>Release:        NetBSD 5.1.0_PATCH
System: NetBSD 5.1.0_PATCH NetBSD 5.1.0_PATCH (ADSLGATE) 
#1: Wed Dec 15 14:58:38 GMT 2010
Architecture: i386
Machine: i386
When vr(4) interfaces are used with vlan(4), MTU on the vlan interface is 
reduced to 1496, because vr(4) doesn't list the ETHERCAP_VLAN_MTU flag.  
However, equivalent functionality is available in FreeBSD for the vr(4) driver, 
and NetBSD's vr(4) appears to work fine when it's enabled in NetBSD.

Tested with:
vr0 at pci0 dev 9 function 0: VIA VT6105M (Rhine III) 10/100 Ethernet

Note: while this patch seems to work fine for me, I haven't done extensive

# ifconfig vlan0 create
# ifconfig vlan0 vlan 1 vlanif vr0
# ifconfig vlan0

Index: if_vr.c
RCS file: /cvsroot/src/sys/dev/pci/if_vr.c,v
retrieving revision
diff -u -r1.95.4.2 if_vr.c
--- if_vr.c     3 Oct 2009 21:53:36 -0000
+++ if_vr.c     16 Dec 2010 15:00:54 -0000
@@ -1674,6 +1674,8 @@
                VR_DSRX(sc, i)->ds_mbuf = NULL;
+       sc->vr_ec.ec_capabilities |= ETHERCAP_VLAN_MTU;
        ifp = &sc->vr_ec.ec_if;
        ifp->if_softc = sc;
        ifp->if_mtu = ETHERMTU;

Home | Main Index | Thread Index | Old Index