Skip to content

Commit 5907cf6

Browse files
Patryk MałekJeff Kirsher
authored andcommitted
i40e: Prevent deleting MAC address from VF when set by PF
To prevent VF from deleting MAC address that was assigned by the PF we need to check for that scenario when we try to delete a MAC address from a VF. Signed-off-by: Patryk Małek <[email protected]> Tested-by: Andrew Bowers <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
1 parent babbcc6 commit 5907cf6

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2569,6 +2569,16 @@ static int i40e_vc_del_mac_addr_msg(struct i40e_vf *vf, u8 *msg, u16 msglen)
25692569
ret = I40E_ERR_INVALID_MAC_ADDR;
25702570
goto error_param;
25712571
}
2572+
2573+
if (vf->pf_set_mac &&
2574+
ether_addr_equal(al->list[i].addr,
2575+
vf->default_lan_addr.addr)) {
2576+
dev_err(&pf->pdev->dev,
2577+
"MAC addr %pM has been set by PF, cannot delete it for VF %d, reset VF to change MAC addr\n",
2578+
vf->default_lan_addr.addr, vf->vf_id);
2579+
ret = I40E_ERR_PARAM;
2580+
goto error_param;
2581+
}
25722582
}
25732583
vsi = pf->vsi[vf->lan_vsi_idx];
25742584

0 commit comments

Comments
 (0)