[dpdk-dev] kni: define HAVE_VF_VLAN_PROTO for SLES12SP3

Message ID 20170331113240.2399-1-ndas@suse.de (mailing list archive)
State Changes Requested, archived
Headers

Checks

Context Check Description
ci/checkpatch warning coding style issues
ci/Intel-compilation success Compilation OK

Commit Message

Nirmoy Das March 31, 2017, 11:32 a.m. UTC
  Add support for SLES12SP3, which uses kernel 4.4,
but backported features from newer kernels.

Signed-off-by: Nirmoy Das <ndas@suse.de>
---
 lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
  

Comments

Ferruh Yigit March 31, 2017, 2:10 p.m. UTC | #1
On 3/31/2017 12:32 PM, Nirmoy Das wrote:
> Add support for SLES12SP3, which uses kernel 4.4,
> but backported features from newer kernels.
> 
> Signed-off-by: Nirmoy Das <ndas@suse.de>
> ---
>  lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
> index 84826b26e..3d22d8e69 100644
> --- a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
> +++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
> @@ -3929,8 +3929,10 @@ skb_set_hash(struct sk_buff *skb, __u32 hash, __always_unused int type)
>  #define vlan_tx_tag_present skb_vlan_tag_present
>  #endif
>  
> -#if ( LINUX_VERSION_CODE >= KERNEL_VERSION(4,9,0) )
> +#if (( LINUX_VERSION_CODE >= KERNEL_VERSION(4,9,0) ) \
> +    || (defined(CONFIG_SUSE_KERNEL) && \
> +       (LINUX_VERSION_CODE >= KERNEL_VERSION(4,4,57))))
>  #define HAVE_VF_VLAN_PROTO
> -#endif /* >= 4.9.0 */
> +#endif /* >= 4.9.0, >= SLES12SP3 */

To make condition simple, what about separating SUSE related check?

There is already "#ifdef CONFIG_SUSE_KERNEL" check in line 699, which is
mainly to set SLE_VERSION_CODE, but this check can be added end of that
block, what do you think?

Thanks,
ferruh

>  
>  #endif /* _KCOMPAT_H_ */
>
  
Nirmoy Das April 3, 2017, 8:05 a.m. UTC | #2
On 03/31/2017 04:10 PM, Ferruh Yigit wrote:
> On 3/31/2017 12:32 PM, Nirmoy Das wrote:
>> Add support for SLES12SP3, which uses kernel 4.4,
>> but backported features from newer kernels.
>>
>> Signed-off-by: Nirmoy Das <ndas@suse.de>
>> ---
>>  lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h | 6 ++++--
>>  1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
>> index 84826b26e..3d22d8e69 100644
>> --- a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
>> +++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
>> @@ -3929,8 +3929,10 @@ skb_set_hash(struct sk_buff *skb, __u32 hash, __always_unused int type)
>>  #define vlan_tx_tag_present skb_vlan_tag_present
>>  #endif
>>  
>> -#if ( LINUX_VERSION_CODE >= KERNEL_VERSION(4,9,0) )
>> +#if (( LINUX_VERSION_CODE >= KERNEL_VERSION(4,9,0) ) \
>> +    || (defined(CONFIG_SUSE_KERNEL) && \
>> +       (LINUX_VERSION_CODE >= KERNEL_VERSION(4,4,57))))
>>  #define HAVE_VF_VLAN_PROTO
>> -#endif /* >= 4.9.0 */
>> +#endif /* >= 4.9.0, >= SLES12SP3 */
> 
> To make condition simple, what about separating SUSE related check?
> 
> There is already "#ifdef CONFIG_SUSE_KERNEL" check in line 699, which is
> mainly to set SLE_VERSION_CODE, but this check can be added end of that
> block, what do you think?
> 
Thanks, looks like I missed that. I will come up with V2.

> Thanks,
> ferruh
> 
>>  
>>  #endif /* _KCOMPAT_H_ */
>>
> 
Regards,
Nirmoy
  

Patch

diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
index 84826b26e..3d22d8e69 100644
--- a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
+++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
@@ -3929,8 +3929,10 @@  skb_set_hash(struct sk_buff *skb, __u32 hash, __always_unused int type)
 #define vlan_tx_tag_present skb_vlan_tag_present
 #endif
 
-#if ( LINUX_VERSION_CODE >= KERNEL_VERSION(4,9,0) )
+#if (( LINUX_VERSION_CODE >= KERNEL_VERSION(4,9,0) ) \
+    || (defined(CONFIG_SUSE_KERNEL) && \
+       (LINUX_VERSION_CODE >= KERNEL_VERSION(4,4,57))))
 #define HAVE_VF_VLAN_PROTO
-#endif /* >= 4.9.0 */
+#endif /* >= 4.9.0, >= SLES12SP3 */
 
 #endif /* _KCOMPAT_H_ */