On Fri, Nov 06, 2015 at 02:39:31PM +0000, Richardson, Bruce wrote: [...] > > > Hi Adrien, > > > > > > I'm trying to dig into this a bit more now, and try out using a static > > > inline function, but I'm having trouble getting DPDK to compile with > > > the mlx drivers turned on in the config. I'm trying to follow the > > instructions here: > > > http://dpdk.org/doc/guides/nics/mlx4.html, but it's not clearly called > > > out what requirements are for compilation vs requirements for running > > the PMD. > > > > > > I'm running Fedora 23, and installed the libibverbs-devel package, but > > > when I compile I get the following error: > > > > > > == Build drivers/net/mlx4 > > > CC mlx4.o > > > /home/bruce/ethdev-cleanup/drivers/net/mlx4/mlx4.c: In function > > ?txq_cleanup?: > > > /home/bruce/ethdev-cleanup/drivers/net/mlx4/mlx4.c:886:37: error: > > storage size of ?params? isn?t known > > > struct ibv_exp_release_intf_params params; > > > ^ compilation terminated due to > > > -Wfatal-errors. > > > > > > Any suggestions on the fix for this? > > > > This is a known issue, libibverbs-devel package from Fedora 23 most likely > > does not support extended types and functions required by mlx4. You should > > remove the packages that come with your distribution and install libraries > > versions from Mellanox OFED as described in the next section: > > > > http://dpdk.org/doc/guides/nics/mlx4.html#getting-mellanox-ofed > > > > Note: no need to fully install OFED for compilation checks, you can > > extract an updated libibverbs package from the archive. > > > > -- > > Adrien Mazarguil > > 6WIND > > Hi again, > > I've installed the libibverbs and libibverbs-devel packages from the mellanox > site, > but I'm still getting the same error. Anything else I might be missing? > > $ rpm -qa | grep mlnx > libibverbs-devel-1.1.8mlnx1-OFED.3.1.1.0.0.x86_64 > libmlx5-1.0.2mlnx1-OFED.3.1.1.0.3.x86_64 > libmlx4-1.0.6mlnx1-OFED.3.1.1.0.0.x86_64 > libibverbs-1.1.8mlnx1-OFED.3.1.1.0.0.x86_64 > libmlx4-devel-1.0.6mlnx1-OFED.3.1.1.0.0.x86_64 > libmlx5-devel-1.0.2mlnx1-OFED.3.1.1.0.3.x86_64
That's weird, 'struct ibv_exp_release_intf_param' must be defined in /usr/include/infiniband/verbs_exp.h, itself included by infiniband/verbs.h, both normally part of the libibverbs-devel package above. Make sure you don't have an old version of infiniband/verbs.h somewhere else such as in /usr/local/include after a manual compilation of libibverbs. -- Adrien Mazarguil 6WIND