On Tue, May 26, 2015 at 10:38 AM, Jiri Benc <jb...@redhat.com> wrote: > Currently, openvswitch tries to disable LRO from the user space. This does > not work correctly when the device added is a vlan interface, though. > Instead of dealing with possibly complex stacked cross name space relations > in the user space, do the same as bridging does and call dev_disable_lro in > the kernel. > > As there are use cases of openvswitch setup that can keep LRO enabled and > there's a planned feature to optimize such use cases (and stop disabling LRO > unconditionally from the user space daemon), allow the user space to > override this when adding the interface. >
OVS interface for generic networking device operation looks odd. have you considered adding new device ioctl to do this? > Signed-off-by: Jiri Benc <jb...@redhat.com> > --- > include/uapi/linux/openvswitch.h | 9 +++++++++ > net/openvswitch/vport-netdev.c | 3 +++ > 2 files changed, 12 insertions(+) > > diff --git a/include/uapi/linux/openvswitch.h > b/include/uapi/linux/openvswitch.h > index bbd49a0c46c7..3832953a4f27 100644 > --- a/include/uapi/linux/openvswitch.h > +++ b/include/uapi/linux/openvswitch.h > @@ -252,6 +252,15 @@ enum ovs_vport_attr { > > #define OVS_VPORT_ATTR_MAX (__OVS_VPORT_ATTR_MAX - 1) > > +/* OVS_VPORT_ATTR_OPTIONS attributes for netdev vports. > + */ > +enum { > + OVS_NETDEV_ATTR_KEEP_LRO, /* flag */ > + __OVS_NETDEV_ATTR_MAX > +}; > + > +#define OVS_NETDEV_ATTR_MAX (__OVS_NETDEV_ATTR_MAX - 1) > + > enum { > OVS_VXLAN_EXT_UNSPEC, > OVS_VXLAN_EXT_GBP, /* Flag or __u32 */ _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev