Index: e1000/if_igb.c =================================================================== --- e1000/if_igb.c (revision 191201) +++ e1000/if_igb.c (working copy) @@ -4274,6 +4274,8 @@ struct adapter *adapter = ifp->if_softc; u32 ctrl, rctl, index, vfta; + if (strcmp("igb",ifp->if_dname)) return; + ctrl = E1000_READ_REG(&adapter->hw, E1000_CTRL); ctrl |= E1000_CTRL_VME; E1000_WRITE_REG(&adapter->hw, E1000_CTRL, ctrl); @@ -4306,6 +4308,8 @@ struct adapter *adapter = ifp->if_softc; u32 index, vfta; + if (strcmp("igb",ifp->if_dname)) return; + /* Remove entry in the hardware filter table */ index = ((vtag >> 5) & 0x7F); vfta = E1000_READ_REG_ARRAY(&adapter->hw, E1000_VFTA, index); Index: e1000/if_em.c =================================================================== --- e1000/if_em.c (revision 191201) +++ e1000/if_em.c (working copy) @@ -4771,6 +4771,8 @@ struct adapter *adapter = ifp->if_softc; u32 ctrl, rctl, index, vfta; + if (strcmp("em",ifp->if_dname)) return; + ctrl = E1000_READ_REG(&adapter->hw, E1000_CTRL); ctrl |= E1000_CTRL_VME; E1000_WRITE_REG(&adapter->hw, E1000_CTRL, ctrl); @@ -4803,6 +4805,8 @@ struct adapter *adapter = ifp->if_softc; u32 index, vfta; + if (strcmp("em",ifp->if_dname)) return; + /* Remove entry in the hardware filter table */ index = ((vtag >> 5) & 0x7F); vfta = E1000_READ_REG_ARRAY(&adapter->hw, E1000_VFTA, index); Index: ixgbe/ixgbe.c =================================================================== --- ixgbe/ixgbe.c (revision 191201) +++ ixgbe/ixgbe.c (working copy) @@ -4031,6 +4031,8 @@ struct adapter *adapter = ifp->if_softc; u32 ctrl, rctl, index, vfta; + if (strcmp("ixgbe",ifp->if_dname)) return; + ctrl = IXGBE_READ_REG(&adapter->hw, IXGBE_VLNCTRL); ctrl |= IXGBE_VLNCTRL_VME | IXGBE_VLNCTRL_VFE; ctrl &= ~IXGBE_VLNCTRL_CFIEN; @@ -4050,6 +4052,8 @@ struct adapter *adapter = ifp->if_softc; u32 index, vfta; + if (strcmp("ixgbe",ifp->if_dname)) return; + /* Remove entry in the hardware filter table */ ixgbe_set_vfta(&adapter->hw, vtag, 0, FALSE);