i40e: When removing VF MAC filters, only check PF-set MAC

JIRA: https://issues.redhat.com/browse/RHEL-104947

commit 5a0df02999dbe838c3feed54b1d59e9445f68b89
Author: Jamie Bainbridge jamie.bainbridge@gmail.com
Date: Wed Jun 25 09:29:18 2025 +1000

i40e: When removing VF MAC filters, only check PF-set MAC  

When the PF is processing an Admin Queue message to delete a VF's MACs  
from the MAC filter, we currently check if the PF set the MAC and if  
the VF is trusted.  

This results in undesirable behaviour, where if a trusted VF with a  
PF-set MAC sets itself down (which sends an AQ message to delete the  
VF's MAC filters) then the VF MAC is erased from the interface.  

This results in the VF losing its PF-set MAC which should not happen.  

There is no need to check for trust at all, because an untrusted VF  
cannot change its own MAC. The only check needed is whether the PF set  
the MAC. If the PF set the MAC, then don't erase the MAC on link-down.  

Resolve this by changing the deletion check only for PF-set MAC.  

(the out-of-tree driver has also intentionally removed the check for VF  
trust here with OOT driver version 2.26.8, this changes the Linux kernel  
driver behaviour and comment to match the OOT driver behaviour)  

Fixes: ea2a1cfc3b201 ("i40e: Fix VF MAC filter removal")  
Signed-off-by: Jamie Bainbridge <jamie.bainbridge@gmail.com>  
Reviewed-by: Simon Horman <horms@kernel.org>  
Tested-by: Rafal Romanowski <rafal.romanowski@intel.com>  
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>  

Signed-off-by: Jamie Bainbridge jbainbri@redhat.com

Merge request reports

Loading