[dpdk-dev] [PATCH] common/mlx5: redefine Netlink include

Ferruh Yigit ferruh.yigit at intel.com
Mon Feb 3 17:51:31 CET 2020


On 2/3/2020 3:02 PM, Matan Azrad wrote:
> 
> 
> From: Ferruh Yigit
>> On 2/2/2020 3:59 PM, Matan Azrad wrote:
>>> The new RDMA-CORE versions may have the same sub-path to include the
>>> linux Netlink header file.
>>>
>>> It uses the pre-proccessor command #include_next what breaks the PMD
>>> gcc compilation of common/mlx5_netlink.h file in debug mode.
>>>
>>> Use specific include for linux/netlink.h to be taken from
>>> /usr/include/linux.
>>>
>>> Signed-off-by: Matan Azrad <matan at mellanox.com>
>>> ---
>>>  drivers/common/mlx5/mlx5_nl.h | 2 +-
>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/common/mlx5/mlx5_nl.h
>>> b/drivers/common/mlx5/mlx5_nl.h index 2c3f837..ebaa655 100644
>>> --- a/drivers/common/mlx5/mlx5_nl.h
>>> +++ b/drivers/common/mlx5/mlx5_nl.h
>>> @@ -5,7 +5,7 @@
>>>  #ifndef RTE_PMD_MLX5_NL_H_
>>>  #define RTE_PMD_MLX5_NL_H_
>>>
>>> -#include <linux/netlink.h>
>>> +#include "/usr/include/linux/netlink.h"
>>
>> It is odd to change the include to the exact path, can't this be fixed other
>> way, can you please give more details on the issue and the macro etc..?
> 
> I tried to find other solution but didn't find.
> 
> As I wrote in commit log, the #include_next (from RDMA-CORE) is not compiled when we compile with mlx5 debug mode (pedantic).
> The error is " error: #include_next is a GCC extension [-Werror]"
> Even If I wrap the relevant include line to disable pedantic it is not compiled with gcc.
> 
> So, I changed to include specific path from the linux headers.
Is there another "linux/netlink.h" in the rdma-core? In which version, I can't
find it.

Isn't rdma libraries/header installed into system folders? Are you providing -I
to include a custom path, does it work if you provide it as '-idirafter' instead?

Please provide more details than commit log...

> 
> Do you have other suggestion?

drop 'pedantic'? Why mlx drivers are using it?


More information about the dev mailing list