igb: enable VLAN stripping for VMs with i350
authorStefan Assmann <sassmann@kpanic.de>
Wed, 11 Dec 2013 22:10:12 +0000 (22:10 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Thu, 20 Mar 2014 04:38:54 +0000 (21:38 -0700)
commitdc1edc67fe2da3d87b56cdffd5ef55c3a9af252c
tree0cc15090354198781e4da9ea12e65c774a74567e
parenta9baf10aafe7001501189099df4b91f90739e182
igb: enable VLAN stripping for VMs with i350

For i350 VLAN stripping for VMs is not enabled in the VMOLR register but in
the DVMOLR register. Making the changes accordingly. It's not necessary to
unset the E1000_VMOLR_STRVLAN bit on i350 as the hardware will simply ignore
it.

Without this change if a VLAN is configured for a VF assigned to a guest
via (i.e.)
ip link set p1p1 vf 0 vlan 10
the VLAN tag will not be stripped from packets going into the VM. Which they
should be because the VM itself is not aware of the VLAN at all.

Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Tested-by: Sibai Li <sibai.li@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/igb/e1000_82575.h
drivers/net/ethernet/intel/igb/e1000_regs.h
drivers/net/ethernet/intel/igb/igb_main.c