[ovs-dev] [PATCH] Support vlan_group workaround implemented in XenServer kernels.
blp at nicira.com
Wed Mar 16 14:40:23 PDT 2011
On Wed, Mar 16, 2011 at 02:18:55PM -0700, Jesse Gross wrote:
> On Tue, Mar 15, 2011 at 12:18 PM, Ben Pfaff <blp at nicira.com> wrote:
> > Some Linux network drivers support a feature called "VLAN acceleration",
> > associated with a data structure called a "vlan_group". ?A vlan_group is,
> > abstractly, a dictionary that maps from a VLAN ID (in the range 0...4095)
> > to a VLAN device, that is, a Linux network device associated with a
> > particular VLAN, e.g. "eth0.9" for VLAN 9 on eth0.
> > Some drivers that support VLAN acceleration have bugs that fall roughly
> > into the following categories:
> > ? ?* Some NICs strip VLAN tags on receive if no vlan_group is registered,
> > ? ? ?so that the tag is completely lost.
> > ? ?* Some drivers size their receive buffers based on whether a vlan_group
> > ? ? ?is enabled, meaning that a maximum size packet with a VLAN tag will
> > ? ? ?not fit if a vlan_group is not configured.
> > ? ?* On transmit some drivers expect that VLAN acceleration will be used
> > ? ? ?if it is available (which can only be done if a vlan_group is
> > ? ? ?configured). ?In these cases, the driver may fail to parse the packet
> > ? ? ?and correctly setup checksum offloading and/or TSO.
> > The correct long term solution is to fix these driver bugs. ?To cope until
> > then, we have prepared a patch to the Linux kernel network stack that works
> > around these problems. ?This commit adds support for the workaround
> > implemented by that patch.
> > Signed-off-by: Ben Pfaff <blp at nicira.com>
> Acked-by: Jesse Gross <jesse at nicira.com>
Thank you. I pushed this out.
More information about the dev