Re: [dpdk-users] Wrong OFED version for DPDK 17.11.1 ?

2018-04-12 Thread Yongseok Koh
Hi, Iain

Can you please check whether the OFED has been installed with '--upstream-libs 
--dpdk' options? I mean,
./mlnxofedinstall --upstream-libs --dpdk
It is documented in "21.7. Quick Start Guide on OFED".
Since 17.11, we started to support upstream libraries (rdma-core in linux 
community).

Thanks,
Yongseok

> On Apr 10, 2018, at 1:39 PM, Thomas Monjalon  wrote:
> 
> Please someone to answer on the mailing list?
> 
> -
> 
> Subject: [dpdk-users] Wrong OFED version for DPDK 17.11.1 ?
> Date: mardi 10 avril 2018, 21:11:49 CEST
> From: Iain Barker 
> À : users@dpdk.org
> 
> Hi all,
> 
> I'm trying to build 17.11.1 against libibverbs from OFED 4.2-1.0.0.0 but 
> having some API compatibility issues.
> 
> According to the DPDK docs, that's the correct version for DPDK 17.11  
> Ref: "Mellanox OFED version: 4.2" in 
> https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdpdk.org%2Fdoc%2Fguides-17.11%2Fnics%2Fmlx5.html&data=02%7C01%7Cyskoh%40mellanox.com%7Cad42663d102c4442522308d59f23392d%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C636589895991842393&sdata=Av22fZ218%2BMBAe77rgP0kxsCEet4bbm4dc7Z%2Fs7thSA%3D&reserved=0
> 
> But I get multiple errors which suggest the API versions are incompatible.  
> For example:
> 
>   priv->hw_csum =
>  !!(device_attr_ex.device_cap_flags_ex &
> IBV_DEVICE_RAW_IP_CSUM);
> 
> drivers/net/mlx5/mlx5.c:794:21: error: 'struct ibv_device_attr_ex' has no 
> member named 'device_cap_flags_ex'
> 
> MLNX_OFED_SRC-4.2-1.0.0.0 contains libibverbs-41mlnx1, and that has 
> include/infiniband/verbs.h with the following typedef:
> struct ibv_device_attr_ex {
>  struct ibv_device_attr  orig_attr;
>  uint32_t  comp_mask;
>  struct ibv_odp_caps odp_caps;
> };
> 
> So the docs appear to be wrong. no way the OFED 4.2 version of mlx5.c is 
> going to compile against that header.
> 
> What version of libibverbs should I actually be using for DPDK 17.11.1 ?
> 
> thanks,
> Iain
> 
> 



Re: [dpdk-users] Wrong OFED version for DPDK 17.11.1 ?

2018-04-11 Thread Shahaf Shuler
Hi Iain, 

Tuesday, April 10, 2018 10:12 PM, Iain Barker:
> Subject: [dpdk-users] Wrong OFED version for DPDK 17.11.1 ?
> 
> Hi all,
> 
> I'm trying to build 17.11.1 against libibverbs from OFED 4.2-1.0.0.0 but 
> having
> some API compatibility issues.
> 
> According to the DPDK docs, that's the correct version for DPDK 17.11
> Ref: "Mellanox OFED version: 4.2" in
> https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdp
> dk.org%2Fdoc%2Fguides-
> 17.11%2Fnics%2Fmlx5.html&data=02%7C01%7Cshahafs%40mellanox.com%7
> C00e205bcc93b4ab687ce08d59f16ec56%7Ca652971c7d2e4d9ba6a4d149256f4
> 61b%7C0%7C0%7C636589843233074081&sdata=tRgQGtKP3WlalZ8XYVp6Qvq
> pkStiVgdup6EmZSKEC3c%3D&reserved=0
> 
> But I get multiple errors which suggest the API versions are incompatible.  
> For
> example:
> 
>priv->hw_csum =
>   !!(device_attr_ex.device_cap_flags_ex &
>  IBV_DEVICE_RAW_IP_CSUM);
> 
> drivers/net/mlx5/mlx5.c:794:21: error: 'struct ibv_device_attr_ex' has no
> member named 'device_cap_flags_ex'
> 
> MLNX_OFED_SRC-4.2-1.0.0.0 contains libibverbs-41mlnx1, and that has
> include/infiniband/verbs.h with the following typedef:
> struct ibv_device_attr_ex {
>   struct ibv_device_attr  orig_attr;
>   uint32_t  comp_mask;
>   struct ibv_odp_caps odp_caps;
> };
> 
> So the docs appear to be wrong. no way the OFED 4.2 version of mlx5.c is
> going to compile against that header.
> 
> What version of libibverbs should I actually be using for DPDK 17.11.1 ?

Starting from DPDK 17.11 MLX5 PMD uses rdma-core as the user space instead of 
libibverbs/libmlx5. As you can see from the doc it will be installed when 
calling mlnx ofed installation script using --usptream-libs. 

You were installing the legacy ibverbs, hence the compilation errors. Try to 
install rdma-core instead. 

> 
> thanks,
> Iain