• Jacob Keller's avatar
    i40e: drop is_vf and is_netdev fields in struct i40e_mac_filter · 1bc87e80
    Jacob Keller authored
    Originally the is_vf and is_netdev fields were added in order to
    distinguish between VF and netdev filters in a single VSI. However, it
    can be noted that we use separate VSI for SRIOV VFs and for netdev VSI.
    Thus, since a single VSI should only ever have one type of filter, we
    can simply remove the checks and remove the typing.
    
    In a similar fashion, we can note that the only remaining way to get
    multiple filters of a single type is through a debug command that was
    added to debugfs. This command is useless in practice, and results in
    causing bugs if we keep counter tracking but lose the is_vf and
    is_netdev protections as desired above.
    
    Since the only time we'd actually have a counter value besides 0 and
    1 is through use of this debugfs hook, we can remove this unnecessary
    command, and the entire counter logic it required.
    
    We vastly simplify mac filters by removing
    
    (a) the distinction between VF and netdev filters
    (b) counting logic
    (c) the ability to add and remove filters bypassing the stack via debugfs
    
    Change-ID: Idf916dd2a1159b1188ddbab5bef6b85ea6bf27d9
    Signed-off-by: default avatarJacob Keller <jacob.e.keller@intel.com>
    Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
    1bc87e80
i40e_virtchnl_pf.c 84.6 KB