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 <ma...@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. Do you have other suggestion? Matan