[Intel-wired-lan] [next PATCH v2 14/15] i40e: Update feature flags to reflect newly enabled features

Alexander Duyck alexander.duyck at gmail.com
Fri Jan 22 21:34:44 UTC 2016


On Fri, Jan 22, 2016 at 1:15 PM, Singhai, Anjali
<anjali.singhai at intel.com> wrote:
>
>
> On 1/21/2016 4:28 PM, Alexander Duyck wrote:
>>
>> Recent changes should have enabled support for IPv6 based tunnels and
>> support for TSO with outer UDP checksums.  As such we can update the
>> feature flags to reflect that.
>>
>> In addition we can clean-up the flags that aren't needed such as SCTP and
>> RXCSUM since having the bits there doesn't add any value.
>>
>> Signed-off-by: Alexander Duyck <aduyck at mirantis.com>
>> ---
>>   drivers/net/ethernet/intel/i40e/i40e_main.c |   16 ++++++++++------
>>   1 file changed, 10 insertions(+), 6 deletions(-)
>>
>> diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c
>> b/drivers/net/ethernet/intel/i40e/i40e_main.c
>> index e3a903f01d73..1d969acf9517 100644
>> --- a/drivers/net/ethernet/intel/i40e/i40e_main.c
>> +++ b/drivers/net/ethernet/intel/i40e/i40e_main.c
>> @@ -9023,12 +9023,14 @@ static int i40e_config_netdev(struct i40e_vsi
>> *vsi)
>>         np = netdev_priv(netdev);
>>         np->vsi = vsi;
>>   -     netdev->hw_enc_features |= NETIF_F_IP_CSUM        |
>> -                                  NETIF_F_RXCSUM         |
>> -                                  NETIF_F_SCTP_CRC       |
>> -                                  NETIF_F_GSO_UDP_TUNNEL |
>> -                                  NETIF_F_GSO_GRE        |
>> -                                  NETIF_F_TSO            |
>> +       netdev->hw_enc_features |= NETIF_F_IP_CSUM             |
>> +                                  NETIF_F_IPV6_CSUM           |
>> +                                  NETIF_F_TSO                 |
>> +                                  NETIF_F_TSO6                |
>> +                                  NETIF_F_TSO_ECN             |
>> +                                  NETIF_F_GSO_GRE             |
>> +                                  NETIF_F_GSO_UDP_TUNNEL      |
>> +                                  NETIF_F_GSO_UDP_TUNNEL_CSUM |
>>                                    0;
>
>
> TUNNEL_CSUM in this case requires the PF_FLAG check for OUTER_UDP_CSUM as
> well

Actually it doesn't.  The hw_enc_features is just a mask.  So if the
device cannot enable TUNNEL_CSUM via the check below, then the feature
will never be exposed to the tunnel anyway.  For hw_features it
matters, but for hw_enc_features it doesn't.

>>         netdev->features = NETIF_F_SG                  |
>> @@ -9050,6 +9052,8 @@ static int i40e_config_netdev(struct i40e_vsi *vsi)
>>         if (!(pf->flags & I40E_FLAG_MFP_ENABLED))
>>                 netdev->features |= NETIF_F_NTUPLE;
>> +       if (pf->flags & I40E_FLAG_OUTER_UDP_CSUM_CAPABLE)
>> +               netdev->features |= NETIF_F_GSO_UDP_TUNNEL_CSUM;
>>         /* copy netdev features into list of user selectable features */
>>         netdev->hw_features |= netdev->features;
>>
>> _______________________________________________
>> Intel-wired-lan mailing list
>> Intel-wired-lan at lists.osuosl.org
>> http://lists.osuosl.org/mailman/listinfo/intel-wired-lan
>
>
> _______________________________________________
> Intel-wired-lan mailing list
> Intel-wired-lan at lists.osuosl.org
> http://lists.osuosl.org/mailman/listinfo/intel-wired-lan


More information about the Intel-wired-lan mailing list