[dpdk-users] Error in rte_eal_init using dpdk 16.04 and Qlogic (Broadcom) bnx2x driver in a SECONDARY process

David Coen d.coen at resi.it
Wed May 4 11:15:25 CEST 2016


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




More information about the users mailing list