On Thu, Feb 26, 2015 at 02:36:27PM +0100, Thomas Monjalon wrote: > 2015-02-26 13:51, Gleb Natapov: > > Did git pull today. After enabling mlnx pmd compilation fails with: > > > > dpdk/lib/librte_pmd_mlx4/mlx4.c: In function ?mlx4_pci_devinit?: > > dpdk/lib/librte_pmd_mlx4/mlx4.c:4636:14: error: too few arguments to > > function ?rte_eth_dev_allocate? > > eth_dev = rte_eth_dev_allocate(name); > > Yes, thanks for reporting. > I didn't test the disabled mlx4 after hotplug integration: > dpdk.org/browse/dpdk/commit/?id=9f1653e7b7e1746e7c > > Clearly, I have to improve my sanity checks. > Sorry for the inconvenience. No problem, I fixed that locally, but now I see another issue. I have several PMDs statically compiled in with my application and I expect dpdk to choose correct one depending on available HW, but mlnx pmd does not behave nicely, if its initialization fails it kills entire application:
EAL: PCI device 0000:03:00.0 on NUMA socket 0 EAL: probe driver: 15b3:1003 librte_pmd_mlx4 EAL: Error - exiting with code: 1 Cause: Requested device 0000:03:00.0 cannot be used This is how other pmds handle situation when init cannot be done: EAL: PCI device 0000:02:00.0 on NUMA socket 0 EAL: probe driver: 8086:1528 rte_ixgbe_pmd EAL: Not managed by known pt driver, skipped EAL: PCI device 0000:02:00.1 on NUMA socket 0 EAL: probe driver: 8086:1528 rte_ixgbe_pmd EAL: Not managed by known pt driver, skipped -- Gleb.