[Intel-wired-lan] [PATCH iwl-next v3 2/2] ice: Implement 'flow-type ether' rules
Plachno, Lukasz
lukasz.plachno at intel.com
Tue Dec 19 14:04:59 UTC 2023
On 12/16/2023 11:03 AM, Simon Horman wrote:
> On Thu, Dec 14, 2023 at 05:34:49AM +0100, Lukasz Plachno wrote:
>
> ...
>
>> @@ -1199,6 +1212,99 @@ ice_set_fdir_ip6_usr_seg(struct ice_flow_seg_info *seg,
>> return 0;
>> }
>>
>> +/**
>> + * ice_fdir_vlan_valid - validate VLAN data for Flow Director rule
>> + * @fsp: pointer to ethtool Rx flow specification
>> + *
>> + * Return: true if vlan data is valid, false otherwise
>> + */
>> +static bool ice_fdir_vlan_valid(struct ethtool_rx_flow_spec *fsp)
>> +{
>> + if (fsp->m_ext.vlan_etype &&
>> + ntohs(fsp->h_ext.vlan_etype) & ~(ETH_P_8021Q | ETH_P_8021AD))
>> + return false;
>
> Hi Jakub and Lukasz,
>
> It is not obvious to me that a bitwise comparison of the vlan_ethtype is
> correct. Possibly naively I expected something more like
> (completely untested!):
>
> if (!eth_type_vlan(sp->m_ext.vlan_etype))
> return false:
>
>> +
>> + if (fsp->m_ext.vlan_tci &&
>> + ntohs(fsp->h_ext.vlan_tci) >= VLAN_N_VID)
>> + return false;
>> +
>> + return true;
>> +}
eth_type_vlan() does what is needed here and is much more readable, I
will switch to it in V4
Thanks,
Łukasz
More information about the Intel-wired-lan
mailing list