Hello David, By looking on driver sources (bnx2x_ethdev.c) assertion `sc->bar[0].base_addr' fail is caused by pci_dev->mem_resource[0].addr == NULL. It means that MMIO mapping of region nr. 0 failed. The reason of this may be print reported on ring level some time before crash:
"EAL: memzone_reserve_aligned_thread_unsafe(): memzone <RG_MP_log_history> already exists RING: Cannot reserve memory." I suspect some memory allocation issue but not 100% sure. Regards, Dawid > Hello, > > We are trying to run the > "dpdk-16.04\examples\multi_process\client_server_mp" sample application > on a RHEL6.7 linux server, with DPDK 16.04 and the following network > interfaces: > > Network devices using DPDK-compatible driver > ============================================ > 0000:10:00.0 'BCM57840 NetXtreme II 10 Gigabit Ethernet' drv=igb_uio > unused=bnx2x > 0000:10:00.1 'BCM57840 NetXtreme II 10 Gigabit Ethernet' drv=igb_uio > unused=bnx2x > =================================== > > PMD: bnx2x_print_adapter_info(): ASIC : 0x168d1010 > PMD: bnx2x_print_adapter_info(): Rev : B1 > PMD: bnx2x_print_adapter_info(): Bus PCIe : 8, > PMD: bnx2x_print_adapter_info(): 5 Gbps > PMD: bnx2x_print_adapter_info(): Flags : > PMD: bnx2x_print_adapter_info(): MSI > PMD: bnx2x_print_adapter_info(): | > PMD: bnx2x_print_adapter_info(): MSI-X > PMD: bnx2x_print_adapter_info(): Queues : > PMD: bnx2x_print_adapter_info(): RSS : 1 > PMD: bnx2x_print_adapter_info(): DPDK : DPDK 16.04.0 > PMD: bnx2x_print_adapter_info(): Driver : BNX2X PMD 1.78.18_1.0.0 > PMD: bnx2x_print_adapter_info(): Firmware : 7.2.51 > PMD: bnx2x_print_adapter_info(): Bootcode : 7.13.24 > PMD: bnx2x_print_adapter_info(): > > We can run the server process, without problems, with the following command. > > ./mp_server -c 6 -n 4 -- -p 3 -n 1 > > .than, in a second shell, we run the client process with the following > command . > > ./mp_client -c 8 -n 4 --proc-type=auto -- -n 0 > > .and we always get this output: > > EAL: Detected lcore 0 as core 0 on socket 0 > EAL: Detected lcore 1 as core 1 on socket 0 > EAL: Detected lcore 2 as core 2 on socket 0 > EAL: Detected lcore 3 as core 3 on socket 0 > EAL: Detected lcore 4 as core 4 on socket 0 > EAL: Detected lcore 5 as core 5 on socket 0 > EAL: Detected lcore 6 as core 0 on socket 1 > EAL: Detected lcore 7 as core 1 on socket 1 > EAL: Detected lcore 8 as core 2 on socket 1 > EAL: Detected lcore 9 as core 3 on socket 1 > EAL: Detected lcore 10 as core 4 on socket 1 > EAL: Detected lcore 11 as core 5 on socket 1 > EAL: Support maximum 128 logical core(s) by configuration. > EAL: Detected 12 lcore(s) > EAL: Auto-detected process type: SECONDARY > EAL: Setting up physically contiguous memory... > EAL: Analysing 16 files > EAL: Mapped segment 0 of size 0x200000000 > EAL: Mapped segment 1 of size 0x200000000 > EAL: memzone_reserve_aligned_thread_unsafe(): memzone <RG_MP_log_history> > already exists > RING: Cannot reserve memory > EAL: TSC frequency is ~2400000 KHz > EAL: Master lcore 3 is ready (tid=f7fec880;cpuset=[3]) > PMD: rte_bnx2x_pmd_init(): >> > PMD: rte_bnx2xvf_pmd_init(): >> > EAL: PCI device 0000:10:00.0 on NUMA socket 0 > EAL: probe driver: 14e4:16a1 rte_bnx2x_pmd > EAL: PCI memory mapped at 0x7fffc0000000 > EAL: PCI memory mapped at 0x7fffc0800000 > EAL: PCI memory mapped at 0x7fffc1000000 > PMD: eth_bnx2x_dev_init(): >> > PMD: bnx2x_common_dev_init(): >> > mp_client: /root/dpdk/dpdk-16.04/drivers/net/bnx2x/bnx2x_ethdev.c:430: > bnx2x_common_dev_init: Assertion `sc->bar[0].base_addr' failed. > Aborted (core dumped) > > and this is the call stack from dump file: > > (gdb) bt > #0 0x000000363c032625 in raise () from /lib64/libc.so.6 > #1 0x000000363c033e05 in abort () from /lib64/libc.so.6 > #2 0x000000363c02b74e in __assert_fail_base () from /lib64/libc.so.6 > #3 0x000000363c02b810 in __assert_fail () from /lib64/libc.so.6 > #4 0x00000000004b8ed3 in bnx2x_common_dev_init () > #5 0x0000000000473bfa in rte_eth_dev_init () > #6 0x0000000000482422 in rte_eal_pci_probe () > #7 0x00000000004779b8 in rte_eal_init () > #8 0x0000000000420e7c in main () > > All this steps on different server with Intel NICs make the application > (server side e client side) run with no problems at all. > > Is there someone that could help us to understand this issue with Qlogic > (Broadcom) driver? > > Thanks in advance, > David Coen > > >