kern/179733: lagg interfaces loses capabilities when protocol changes
Renato Botelho
garga at FreeBSD.org
Wed Jun 19 20:40:00 UTC 2013
>Number: 179733
>Category: kern
>Synopsis: lagg interfaces loses capabilities when protocol changes
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Wed Jun 19 20:40:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator: Renato Botelho
>Release: 10-current
>Organization:
ESF
>Environment:
FreeBSD freebsd1.localdomain 10.0-CURRENT FreeBSD 10.0-CURRENT #2 r250859M: Wed May 22 10:15:21 BRT 2013 root at freebsd1.localdomain:/usr/obj/usr/src/sys/GENERIC amd64
>Description:
When you change laggproto of a lagg interface, it loses all capabilities except VLAN_HWFILTER.
I don't know if the patch I'm sending is the correct fix, but it worked on my test environment.
>How-To-Repeat:
# ifconfig lagg0 create
# ifconfig lagg0 laggproto lacp laggport NIC1 laggport NIC2
# ifconfig lagg0 | grep capabilities
capabilities=1389b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_UCAST,WOL_MCAST,WOL_MAGIC,VLAN_HWFILTER>
# ifconfig lagg0 laggproto loadbalance
capabilities=10000<VLAN_HWFILTER>
>Fix:
Index: sys/net/if_lagg.c
===================================================================
--- sys/net/if_lagg.c (revision 252002)
+++ sys/net/if_lagg.c (working copy)
@@ -997,6 +997,7 @@
sc->sc_proto = lagg_protos[i].ti_proto;
if (sc->sc_proto != LAGG_PROTO_NONE)
error = lagg_protos[i].ti_attach(sc);
+ lagg_capabilities(sc);
LAGG_WUNLOCK(sc);
return (error);
}
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list