[net] i40e: Fix I40E_FLAG_VF_VLAN_PRUNING value

Message ID 20231018112621.463893-1-ivecera@redhat.com
State New
Headers
Series [net] i40e: Fix I40E_FLAG_VF_VLAN_PRUNING value |

Commit Message

Ivan Vecera Oct. 18, 2023, 11:26 a.m. UTC
  Commit c87c938f62d8f1 ("i40e: Add VF VLAN pruning") added new
PF flag I40E_FLAG_VF_VLAN_PRUNING but its value collides with
existing I40E_FLAG_TOTAL_PORT_SHUTDOWN_ENABLED flag.

Move the affected flag at the end of the flags and fix its value.

Cc: Mateusz Palczewski <mateusz.palczewski@intel.com>
Signed-off-by: Ivan Vecera <ivecera@redhat.com>
---
 drivers/net/ethernet/intel/i40e/i40e.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Przemek Kitszel Oct. 18, 2023, 12:30 p.m. UTC | #1
On 10/18/23 13:26, Ivan Vecera wrote:
> Commit c87c938f62d8f1 ("i40e: Add VF VLAN pruning") added new
> PF flag I40E_FLAG_VF_VLAN_PRUNING but its value collides with
> existing I40E_FLAG_TOTAL_PORT_SHUTDOWN_ENABLED flag.
> 
> Move the affected flag at the end of the flags and fix its value.
> 
> Cc: Mateusz Palczewski <mateusz.palczewski@intel.com>
> Signed-off-by: Ivan Vecera <ivecera@redhat.com>
> ---
>   drivers/net/ethernet/intel/i40e/i40e.h | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/intel/i40e/i40e.h b/drivers/net/ethernet/intel/i40e/i40e.h
> index 6e310a53946782..55bb0b5310d5b4 100644
> --- a/drivers/net/ethernet/intel/i40e/i40e.h
> +++ b/drivers/net/ethernet/intel/i40e/i40e.h
> @@ -580,7 +580,6 @@ struct i40e_pf {
>   #define I40E_FLAG_DISABLE_FW_LLDP		BIT(24)
>   #define I40E_FLAG_RS_FEC			BIT(25)
>   #define I40E_FLAG_BASE_R_FEC			BIT(26)
> -#define I40E_FLAG_VF_VLAN_PRUNING		BIT(27)
>   /* TOTAL_PORT_SHUTDOWN
>    * Allows to physically disable the link on the NIC's port.
>    * If enabled, (after link down request from the OS)
> @@ -603,6 +602,7 @@ struct i40e_pf {

such mistake happened only because list of flags is dispersed so much :/

>    *   in abilities field of i40e_aq_set_phy_config structure
>    */
>   #define I40E_FLAG_TOTAL_PORT_SHUTDOWN_ENABLED	BIT(27)
> +#define I40E_FLAG_VF_VLAN_PRUNING		BIT(28)
>   
>   	struct i40e_client_instance *cinst;
>   	bool stat_offsets_loaded;

Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>
  
Simon Horman Oct. 19, 2023, 9:15 a.m. UTC | #2
On Wed, Oct 18, 2023 at 01:26:20PM +0200, Ivan Vecera wrote:
> Commit c87c938f62d8f1 ("i40e: Add VF VLAN pruning") added new
> PF flag I40E_FLAG_VF_VLAN_PRUNING but its value collides with
> existing I40E_FLAG_TOTAL_PORT_SHUTDOWN_ENABLED flag.
> 
> Move the affected flag at the end of the flags and fix its value.
> 
> Cc: Mateusz Palczewski <mateusz.palczewski@intel.com>
> Signed-off-by: Ivan Vecera <ivecera@redhat.com>

Hi Ivan,

I agree with the correctness of this patch and that it was
introduced by the cited commit.

However, I do wonder if, as a fix for 'net':

1) The patch description could include some discussion of
   what problem is resolved, and, ideally, how I user might
   get into such a situation.

2) The following fixes tag is appropriate.

Fixes: c87c938f62d8 ("i40e: Add VF VLAN pruning")

...
  
Ivan Vecera Oct. 19, 2023, 4:35 p.m. UTC | #3
On 19. 10. 23 11:15, Simon Horman wrote:
> On Wed, Oct 18, 2023 at 01:26:20PM +0200, Ivan Vecera wrote:
>> Commit c87c938f62d8f1 ("i40e: Add VF VLAN pruning") added new
>> PF flag I40E_FLAG_VF_VLAN_PRUNING but its value collides with
>> existing I40E_FLAG_TOTAL_PORT_SHUTDOWN_ENABLED flag.
>>
>> Move the affected flag at the end of the flags and fix its value.
>>
>> Cc: Mateusz Palczewski <mateusz.palczewski@intel.com>
>> Signed-off-by: Ivan Vecera <ivecera@redhat.com>
> 
> Hi Ivan,
> 
> I agree with the correctness of this patch and that it was
> introduced by the cited commit.
> 
> However, I do wonder if, as a fix for 'net':
> 
> 1) The patch description could include some discussion of
>     what problem is resolved, and, ideally, how I user might
>     get into such a situation.
> 
> 2) The following fixes tag is appropriate.
> 
> Fixes: c87c938f62d8 ("i40e: Add VF VLAN pruning")
> 
Ahh, thanks Simon! I forgot to add Fixes: tag.

Will fix it by v2 and add the reproducer.

Thanks,
Ivan
  
Jacob Keller Oct. 19, 2023, 7:20 p.m. UTC | #4
On 10/18/2023 5:30 AM, Przemek Kitszel wrote:
> On 10/18/23 13:26, Ivan Vecera wrote:
>> Commit c87c938f62d8f1 ("i40e: Add VF VLAN pruning") added new
>> PF flag I40E_FLAG_VF_VLAN_PRUNING but its value collides with
>> existing I40E_FLAG_TOTAL_PORT_SHUTDOWN_ENABLED flag.
>>
>> Move the affected flag at the end of the flags and fix its value.
>>
>> Cc: Mateusz Palczewski <mateusz.palczewski@intel.com>
>> Signed-off-by: Ivan Vecera <ivecera@redhat.com>
>> ---
>>   drivers/net/ethernet/intel/i40e/i40e.h | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/ethernet/intel/i40e/i40e.h b/drivers/net/ethernet/intel/i40e/i40e.h
>> index 6e310a53946782..55bb0b5310d5b4 100644
>> --- a/drivers/net/ethernet/intel/i40e/i40e.h
>> +++ b/drivers/net/ethernet/intel/i40e/i40e.h
>> @@ -580,7 +580,6 @@ struct i40e_pf {
>>   #define I40E_FLAG_DISABLE_FW_LLDP		BIT(24)
>>   #define I40E_FLAG_RS_FEC			BIT(25)
>>   #define I40E_FLAG_BASE_R_FEC			BIT(26)
>> -#define I40E_FLAG_VF_VLAN_PRUNING		BIT(27)
>>   /* TOTAL_PORT_SHUTDOWN
>>    * Allows to physically disable the link on the NIC's port.
>>    * If enabled, (after link down request from the OS)
>> @@ -603,6 +602,7 @@ struct i40e_pf {
> 
> such mistake happened only because list of flags is dispersed so much :/

Better yet if we didn't hard-code the bits, and instead defined them via
an enumeration so that its not possible :D These aren't even ABI so
there's not a backwards compatibility risk either.

Thanks,
Jake
  
Jacob Keller Oct. 19, 2023, 10:34 p.m. UTC | #5
On 10/19/2023 12:48 PM, Ivan Vecera wrote:
> Dne čt 19. 10. 2023 21:24 uživatel Jacob Keller <jacob.e.keller@intel.com>
> napsal:
> 
>>
>>
>> On 10/18/2023 5:30 AM, Przemek Kitszel wrote:
>>> On 10/18/23 13:26, Ivan Vecera wrote:
>>>> Commit c87c938f62d8f1 ("i40e: Add VF VLAN pruning") added new
>>>> PF flag I40E_FLAG_VF_VLAN_PRUNING but its value collides with
>>>> existing I40E_FLAG_TOTAL_PORT_SHUTDOWN_ENABLED flag.
>>>>
>>>> Move the affected flag at the end of the flags and fix its value.
>>>>
>>>> Cc: Mateusz Palczewski <mateusz.palczewski@intel.com>
>>>> Signed-off-by: Ivan Vecera <ivecera@redhat.com>
>>>> ---
>>>>   drivers/net/ethernet/intel/i40e/i40e.h | 2 +-
>>>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/drivers/net/ethernet/intel/i40e/i40e.h
>> b/drivers/net/ethernet/intel/i40e/i40e.h
>>>> index 6e310a53946782..55bb0b5310d5b4 100644
>>>> --- a/drivers/net/ethernet/intel/i40e/i40e.h
>>>> +++ b/drivers/net/ethernet/intel/i40e/i40e.h
>>>> @@ -580,7 +580,6 @@ struct i40e_pf {
>>>>   #define I40E_FLAG_DISABLE_FW_LLDP          BIT(24)
>>>>   #define I40E_FLAG_RS_FEC                   BIT(25)
>>>>   #define I40E_FLAG_BASE_R_FEC                       BIT(26)
>>>> -#define I40E_FLAG_VF_VLAN_PRUNING           BIT(27)
>>>>   /* TOTAL_PORT_SHUTDOWN
>>>>    * Allows to physically disable the link on the NIC's port.
>>>>    * If enabled, (after link down request from the OS)
>>>> @@ -603,6 +602,7 @@ struct i40e_pf {
>>>
>>> such mistake happened only because list of flags is dispersed so much :/
>>
>> Better yet if we didn't hard-code the bits, and instead defined them via
>> an enumeration so that its not possible :D These aren't even ABI so
>> there's not a backwards compatibility risk either.
>>
>> Thanks,
>> Jake
>>
> 
> Hi Jake,
> I have been preparing another series for iwl-next that covers this
> conversion. I will submit it tomorrow or on the weekend.
> 
> Ivan
> 

Great, thanks!

-Jake

>>
>
  

Patch

diff --git a/drivers/net/ethernet/intel/i40e/i40e.h b/drivers/net/ethernet/intel/i40e/i40e.h
index 6e310a53946782..55bb0b5310d5b4 100644
--- a/drivers/net/ethernet/intel/i40e/i40e.h
+++ b/drivers/net/ethernet/intel/i40e/i40e.h
@@ -580,7 +580,6 @@  struct i40e_pf {
 #define I40E_FLAG_DISABLE_FW_LLDP		BIT(24)
 #define I40E_FLAG_RS_FEC			BIT(25)
 #define I40E_FLAG_BASE_R_FEC			BIT(26)
-#define I40E_FLAG_VF_VLAN_PRUNING		BIT(27)
 /* TOTAL_PORT_SHUTDOWN
  * Allows to physically disable the link on the NIC's port.
  * If enabled, (after link down request from the OS)
@@ -603,6 +602,7 @@  struct i40e_pf {
  *   in abilities field of i40e_aq_set_phy_config structure
  */
 #define I40E_FLAG_TOTAL_PORT_SHUTDOWN_ENABLED	BIT(27)
+#define I40E_FLAG_VF_VLAN_PRUNING		BIT(28)
 
 	struct i40e_client_instance *cinst;
 	bool stat_offsets_loaded;