summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGreg Rose <gregory.v.rose@intel.com>2012-03-24 00:26:44 +0000
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2012-05-02 02:12:52 -0700
commit2ee7065fdd7d3232e4accade2b5cace8af2c7d74 (patch)
tree37d8c54924f7035f0d847b9c6466a6c30d345285
parent3ca8bc6de2b336d483bb9d83e0dfe16cde535fa6 (diff)
downloadlinux-3.10-2ee7065fdd7d3232e4accade2b5cace8af2c7d74.tar.gz
linux-3.10-2ee7065fdd7d3232e4accade2b5cace8af2c7d74.tar.bz2
linux-3.10-2ee7065fdd7d3232e4accade2b5cace8af2c7d74.zip
ixgbe: Deny MACVLAN requests from VFs with admin set MAC
If the host VMM administrator has set the virtual function device's MAC address then also deny VF requests for MACVLAN filters. Signed-off-by: Greg Rose <gregory.v.rose@intel.com> Tested-by: Garrett, Robert <robertx.e.garrett@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-rw-r--r--drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c
index 88a58cb0856..39856371acb 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c
@@ -635,6 +635,12 @@ static int ixgbe_rcv_msg_from_vf(struct ixgbe_adapter *adapter, u32 vf)
}
break;
case IXGBE_VF_SET_MACVLAN:
+ if (adapter->vfinfo[vf].pf_set_mac) {
+ e_warn(drv, "VF %d requested MACVLAN filter but is "
+ "administratively denied\n", vf);
+ retval = -1;
+ break;
+ }
index = (msgbuf[0] & IXGBE_VT_MSGINFO_MASK) >>
IXGBE_VT_MSGINFO_SHIFT;
/*