* Re: I need DPDK MLX5 Probe error support [not found] ` <HE1PR07MB42201B7FB0F61E6FCB39AAE9F3A79@HE1PR07MB4220.eurprd07.prod.outlook.com> @ 2021-09-29 11:16 ` Thomas Monjalon 2021-10-02 10:57 ` Jaeeun Ham 0 siblings, 1 reply; 13+ messages in thread From: Thomas Monjalon @ 2021-09-29 11:16 UTC (permalink / raw) To: Jaeeun Ham; +Cc: users, alialnu, rasland, asafp 27/09/2021 02:18, Jaeeun Ham: > Hi, > > I hope you are well. > My name is Jaeeun Ham and I have been working for the Ericsson. > > I am suffering from enabling MLX5 NIC, so could you take a look at how to run it? > There are two pci address for the SRIOV(vfio) mlx5 nic support but it doesn't run correctly. (12:01.0, 12:01.1) > > I started one process which is running inside the docker process that is on the MLX5 NIC support host server. > The process started to run with following option. > -d /usr/local/lib/librte_net_mlx5.so > And the docker process has mlx5 libraries as below. Did you try on the host outside of any container? Please could you try following commands (variables to be replaced)? dpdk-hugepages.py --reserve 1G ip link set $netdev netns $container docker run --cap-add SYS_NICE --cap-add IPC_LOCK --cap-add NET_ADMIN \ --device /dev/infiniband/ $image echo show port summary all | dpdk-testpmd --in-memory -- -i > 706a37a35d29:/usr/local/lib # ls -1 | grep mlx > librte_common_mlx5.so > librte_common_mlx5.so.21 > librte_common_mlx5.so.21.0 > librte_net_mlx5.so > librte_net_mlx5.so.21 > librte_net_mlx5.so.21.0 > > But I failed to run the process with following error. (MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1) > > --- > > mlx5_pci: unable to recognize master/representors on the multiple IB devices > common_mlx5: Failed to load driver = mlx5_pci. > EAL: Requested device 0000:12:01.0 cannot be used > mlx5_pci: unable to recognize master/representors on the multiple IB devices > common_mlx5: Failed to load driver = mlx5_pci. > EAL: Requested device 0000:12:01.1 cannot be used > EAL: Bus (pci) probe failed. > > --- > > For the success case of pci address 12:01.2, it showed following messages. > > --- > > EAL: Detected 64 lcore(s) > EAL: Detected 2 NUMA nodes > EAL: Multi-process socket /var/run/dpdk/nah2/mp_socket > EAL: Probing VFIO support... > EAL: VFIO support initialized > EAL: PCI device 0000:12:01.2 on NUMA socket 0 > EAL: probe driver: 15b3:1016 net_mlx5 > net_mlx5: MPLS over GRE/UDP tunnel offloading disabled due to old OFED/rdma-core version or firmware configuration > net_mlx5: port 0 the requested maximum Rx packet size (2056) is larger than a single mbuf (2048) and scattered mode has not been requested > USER1: rte_ip_frag_table_create: allocated of 6291584 bytes at socket 0 > > --- > > BR/Jaeeun ^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: I need DPDK MLX5 Probe error support 2021-09-29 11:16 ` I need DPDK MLX5 Probe error support Thomas Monjalon @ 2021-10-02 10:57 ` Jaeeun Ham 2021-10-03 7:51 ` Thomas Monjalon 0 siblings, 1 reply; 13+ messages in thread From: Jaeeun Ham @ 2021-10-02 10:57 UTC (permalink / raw) To: Thomas Monjalon; +Cc: users, alialnu, rasland, asafp Hi, Could you teach me how to install dpdk-testpmd? I have to run the application on the host server, not a development server. So, I don't know how to get dpdk-testpmd. By the way, testpmd run result is as below. root@seroics05590:~/ejaeham# testpmd EAL: Detected 64 lcore(s) EAL: libmlx4.so.1: cannot open shared object file: No such file or directory EAL: FATAL: Cannot init plugins EAL: Cannot init plugins PANIC in main(): Cannot init EAL 5: [testpmd(_start+0x2a) [0x55d301d98e1a]] 4: [/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) [0x7f5e044a4bf7]] 3: [testpmd(main+0x907) [0x55d301d98d07]] 2: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(__rte_panic+0xbd) [0x7f5e04ca3cfd]] 1: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(rte_dump_stack+0x2e) [0x7f5e04cac19e]] Aborted I added option below when the process is starting in the docker. dv_flow_en=0 \ --log-level=pmd,8 \ < MLX5 log > 415a695ba348:/tmp/logs # cat epp.log MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1 MIDHAUL_IP_ADDR:10.255.21.177, BACKHAUL_IP_ADDR:10.255.21.178 mlx5_pci: unable to recognize master/representors on the multiple IB devices common_mlx5: Failed to load driver = mlx5_pci. EAL: Requested device 0000:12:01.0 cannot be used mlx5_pci: unable to recognize master/representors on the multiple IB devices common_mlx5: Failed to load driver = mlx5_pci. EAL: Requested device 0000:12:01.1 cannot be used EAL: Bus (pci) probe failed. EAL: Trying to obtain current memory policy. EAL: Setting policy MPOL_PREFERRED for socket 1 Caught signal 15 EAL: Restoring previous memory policy: 0 EAL: Calling mem event callback 'MLX5_MEM_EVENT_CB:(nil)' EAL: request: mp_malloc_sync EAL: Heap on socket 1 was expanded by 5120MB FATAL: epp_init.c::copy_mac_addr:130: Call to rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: -19 (Unknown error -19), rte_errno=0 (not set) Caught signal 6 Obtained 7 stack frames, tid=713. tid=713, /usr/local/bin/ericsson-packet-processor() [0x40a4a4] tid=713, /lib64/libpthread.so.0(+0x13f80) [0x7f7e1eae8f80] tid=713, /lib64/libc.so.6(gsignal+0x10b) [0x7f7e1c5f818b] tid=713, /lib64/libc.so.6(abort+0x175) [0x7f7e1c5f9585] tid=713, /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] tid=713, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f7e1c5e334d] tid=713, /usr/local/bin/ericsson-packet-processor(_start+0x2a) [0x4091ca] < i40e log > cat epp.log MIDHAUL_PCI_ADDR:0000:3b:0d.5, BACKHAUL_PCI_ADDR:0000:3b:0d.4 MIDHAUL_IP_ADDR:10.51.21.112, BACKHAUL_IP_ADDR:10.51.21.113 EAL: Trying to obtain current memory policy. EAL: Setting policy MPOL_PREFERRED for socket 1 EAL: Restoring previous memory policy: 0 EAL: Calling mem event callback 'vfio_mem_event_clb:(nil)' EAL: request: mp_malloc_sync EAL: Heap on socket 1 was expanded by 5120MB i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 28 i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=0, queue=0. i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on Tx queue 0 i40evf_dev_start(): >> i40evf_config_rss(): No hash flag is set i40e_set_rx_function(): Vector Rx path will be used on port=0. i40e_set_tx_function(): Xmit tx finally be used. i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 6 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 7 i40evf_add_del_all_mac_addr(): add/rm mac:62:64:21:84:83:b0 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 10 i40evf_dev_rx_queue_start(): >> i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 8 i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event i40evf_dev_tx_queue_start(): >> i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 8 i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 14 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 14 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 14 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 28 i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=1, queue=0. i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on Tx queue 0 i40evf_dev_start(): >> i40evf_config_rss(): No hash flag is set i40e_set_rx_function(): Vector Rx path will be used on port=1. i40e_set_tx_function(): Xmit tx finally be used. i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 6 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 7 i40evf_add_del_all_mac_addr(): add/rm mac:c2:88:5c:a9:a2:ef i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 10 i40evf_dev_rx_queue_start(): >> i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 8 i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event i40evf_dev_tx_queue_start(): >> i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 8 i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 14 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 14 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 14 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 i40evf_dev_mtu_set(): port 1 must be stopped before configuration i40evf_dev_mtu_set(): port 0 must be stopped before configuration Caught signal 10 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 15 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 15 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 15 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 15 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 15 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 15 Caught signal 10 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 15 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 15 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 15 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 15 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 15 i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported i40evf_handle_aq_msg(): adminq response is received, opcode = 15 process start option which is triggered by shell script is as below. < start-epp.sh > exec /usr/local/bin/ericsson-packet-processor \ $(get_dpdk_core_list_parameter) \ $(get_dpdk_mem_parameter) \ $(get_dpdk_hugepage_parameters) \ -d /usr/local/lib/librte_mempool_ring.so \ -d /usr/local/lib/librte_mempool_stack.so \ -d /usr/local/lib/librte_net_pcap.so \ -d /usr/local/lib/librte_net_i40e.so \ -d /usr/local/lib/librte_net_mlx5.so \ -d /usr/local/lib/librte_event_dsw.so \ $DPDK_PCI_OPTIONS \ --vdev=event_dsw0 \ --vdev=eth_pcap0,iface=midhaul_edk \ --vdev=eth_pcap1,iface=backhaul_edk \ --file-prefix=container \ --log-level lib.eal:debug \ dv_flow_en=0 \ --log-level=pmd,8 \ -- \ $(get_epp_mempool_parameter) \ "--neighbor-discovery-interface=midhaul_ker,${MIDHAUL_IP_ADDR},mac_addr_dev=${MIDHAUL_MAC_ADDR_DEV},vr_id=0" \ "--neighbor-discovery-interface=backhaul_ker,${BACKHAUL_IP_ADDR},mac_addr_dev=${BACKHAUL_MAC_ADDR_DEV},vr_id=1" BR/Jaeeun -----Original Message----- From: Thomas Monjalon <thomas@monjalon.net> Sent: Wednesday, September 29, 2021 8:16 PM To: Jaeeun Ham <jaeeun.ham@ericsson.com> Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; asafp@nvidia.com Subject: Re: I need DPDK MLX5 Probe error support 27/09/2021 02:18, Jaeeun Ham: > Hi, > > I hope you are well. > My name is Jaeeun Ham and I have been working for the Ericsson. > > I am suffering from enabling MLX5 NIC, so could you take a look at how to run it? > There are two pci address for the SRIOV(vfio) mlx5 nic support but it > doesn't run correctly. (12:01.0, 12:01.1) > > I started one process which is running inside the docker process that is on the MLX5 NIC support host server. > The process started to run with following option. > -d /usr/local/lib/librte_net_mlx5.so And the docker process has > mlx5 libraries as below. Did you try on the host outside of any container? Please could you try following commands (variables to be replaced)? dpdk-hugepages.py --reserve 1G ip link set $netdev netns $container docker run --cap-add SYS_NICE --cap-add IPC_LOCK --cap-add NET_ADMIN \ --device /dev/infiniband/ $image echo show port summary all | dpdk-testpmd --in-memory -- -i > 706a37a35d29:/usr/local/lib # ls -1 | grep mlx librte_common_mlx5.so > librte_common_mlx5.so.21 > librte_common_mlx5.so.21.0 > librte_net_mlx5.so > librte_net_mlx5.so.21 > librte_net_mlx5.so.21.0 > > But I failed to run the process with following error. > (MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1) > > --- > > mlx5_pci: unable to recognize master/representors on the multiple IB > devices > common_mlx5: Failed to load driver = mlx5_pci. > EAL: Requested device 0000:12:01.0 cannot be used > mlx5_pci: unable to recognize master/representors on the multiple IB > devices > common_mlx5: Failed to load driver = mlx5_pci. > EAL: Requested device 0000:12:01.1 cannot be used > EAL: Bus (pci) probe failed. > > --- > > For the success case of pci address 12:01.2, it showed following messages. > > --- > > EAL: Detected 64 lcore(s) > EAL: Detected 2 NUMA nodes > EAL: Multi-process socket /var/run/dpdk/nah2/mp_socket > EAL: Probing VFIO support... > EAL: VFIO support initialized > EAL: PCI device 0000:12:01.2 on NUMA socket 0 > EAL: probe driver: 15b3:1016 net_mlx5 > net_mlx5: MPLS over GRE/UDP tunnel offloading disabled due to old > OFED/rdma-core version or firmware configuration > net_mlx5: port 0 the requested maximum Rx packet size (2056) is larger > than a single mbuf (2048) and scattered mode has not been requested > USER1: rte_ip_frag_table_create: allocated of 6291584 bytes at socket > 0 > > --- > > BR/Jaeeun ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: I need DPDK MLX5 Probe error support 2021-10-02 10:57 ` Jaeeun Ham @ 2021-10-03 7:51 ` Thomas Monjalon 2021-10-03 8:10 ` Jaeeun Ham ` (2 more replies) 0 siblings, 3 replies; 13+ messages in thread From: Thomas Monjalon @ 2021-10-03 7:51 UTC (permalink / raw) To: Jaeeun Ham; +Cc: users, alialnu, rasland, asafp Hi, I think you need to read the documentation. For DPDK install on Linux: https://doc.dpdk.org/guides/linux_gsg/build_dpdk.html#compiling-and-installing-dpdk-system-wide For mlx5 specific dependencies, install rdma-core package: https://doc.dpdk.org/guides/nics/mlx5.html#linux-prerequisites 02/10/2021 12:57, Jaeeun Ham: > Hi, > > Could you teach me how to install dpdk-testpmd? > I have to run the application on the host server, not a development server. > So, I don't know how to get dpdk-testpmd. > > By the way, testpmd run result is as below. > root@seroics05590:~/ejaeham# testpmd > EAL: Detected 64 lcore(s) > EAL: libmlx4.so.1: cannot open shared object file: No such file or directory > EAL: FATAL: Cannot init plugins > > EAL: Cannot init plugins > > PANIC in main(): > Cannot init EAL > 5: [testpmd(_start+0x2a) [0x55d301d98e1a]] > 4: [/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) [0x7f5e044a4bf7]] > 3: [testpmd(main+0x907) [0x55d301d98d07]] > 2: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(__rte_panic+0xbd) [0x7f5e04ca3cfd]] > 1: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(rte_dump_stack+0x2e) [0x7f5e04cac19e]] > Aborted > > > I added option below when the process is starting in the docker. > dv_flow_en=0 \ > --log-level=pmd,8 \ > < MLX5 log > > 415a695ba348:/tmp/logs # cat epp.log > MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1 > MIDHAUL_IP_ADDR:10.255.21.177, BACKHAUL_IP_ADDR:10.255.21.178 > mlx5_pci: unable to recognize master/representors on the multiple IB devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.0 cannot be used > mlx5_pci: unable to recognize master/representors on the multiple IB devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.1 cannot be used > EAL: Bus (pci) probe failed. > EAL: Trying to obtain current memory policy. > EAL: Setting policy MPOL_PREFERRED for socket 1 > Caught signal 15 > EAL: Restoring previous memory policy: 0 > EAL: Calling mem event callback 'MLX5_MEM_EVENT_CB:(nil)' > EAL: request: mp_malloc_sync > EAL: Heap on socket 1 was expanded by 5120MB > FATAL: epp_init.c::copy_mac_addr:130: Call to rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: -19 (Unknown error -19), rte_errno=0 (not set) > > Caught signal 6 > Obtained 7 stack frames, tid=713. > tid=713, /usr/local/bin/ericsson-packet-processor() [0x40a4a4] > tid=713, /lib64/libpthread.so.0(+0x13f80) [0x7f7e1eae8f80] > tid=713, /lib64/libc.so.6(gsignal+0x10b) [0x7f7e1c5f818b] > tid=713, /lib64/libc.so.6(abort+0x175) [0x7f7e1c5f9585] > tid=713, /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] > tid=713, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f7e1c5e334d] > tid=713, /usr/local/bin/ericsson-packet-processor(_start+0x2a) [0x4091ca] > > < i40e log > > cat epp.log > MIDHAUL_PCI_ADDR:0000:3b:0d.5, BACKHAUL_PCI_ADDR:0000:3b:0d.4 > MIDHAUL_IP_ADDR:10.51.21.112, BACKHAUL_IP_ADDR:10.51.21.113 > EAL: Trying to obtain current memory policy. > EAL: Setting policy MPOL_PREFERRED for socket 1 > EAL: Restoring previous memory policy: 0 > EAL: Calling mem event callback 'vfio_mem_event_clb:(nil)' > EAL: request: mp_malloc_sync > EAL: Heap on socket 1 was expanded by 5120MB > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=0, queue=0. > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on Tx queue 0 > > i40evf_dev_start(): >> > i40evf_config_rss(): No hash flag is set > i40e_set_rx_function(): Vector Rx path will be used on port=0. > i40e_set_tx_function(): Xmit tx finally be used. > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > i40evf_add_del_all_mac_addr(): add/rm mac:62:64:21:84:83:b0 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > i40evf_dev_rx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_tx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=1, queue=0. > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on Tx queue 0 > > i40evf_dev_start(): >> > i40evf_config_rss(): No hash flag is set > i40e_set_rx_function(): Vector Rx path will be used on port=1. > i40e_set_tx_function(): Xmit tx finally be used. > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > i40evf_add_del_all_mac_addr(): add/rm mac:c2:88:5c:a9:a2:ef > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > i40evf_dev_rx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_tx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket -1 > i40evf_dev_mtu_set(): port 1 must be stopped before configuration > i40evf_dev_mtu_set(): port 0 must be stopped before configuration > Caught signal 10 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > Caught signal 10 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > process start option which is triggered by shell script is as below. > > < start-epp.sh > > exec /usr/local/bin/ericsson-packet-processor \ > $(get_dpdk_core_list_parameter) \ > $(get_dpdk_mem_parameter) \ > $(get_dpdk_hugepage_parameters) \ > -d /usr/local/lib/librte_mempool_ring.so \ > -d /usr/local/lib/librte_mempool_stack.so \ > -d /usr/local/lib/librte_net_pcap.so \ > -d /usr/local/lib/librte_net_i40e.so \ > -d /usr/local/lib/librte_net_mlx5.so \ > -d /usr/local/lib/librte_event_dsw.so \ > $DPDK_PCI_OPTIONS \ > --vdev=event_dsw0 \ > --vdev=eth_pcap0,iface=midhaul_edk \ > --vdev=eth_pcap1,iface=backhaul_edk \ > --file-prefix=container \ > --log-level lib.eal:debug \ > dv_flow_en=0 \ > --log-level=pmd,8 \ > -- \ > $(get_epp_mempool_parameter) \ > "--neighbor-discovery-interface=midhaul_ker,${MIDHAUL_IP_ADDR},mac_addr_dev=${MIDHAUL_MAC_ADDR_DEV},vr_id=0" \ > "--neighbor-discovery-interface=backhaul_ker,${BACKHAUL_IP_ADDR},mac_addr_dev=${BACKHAUL_MAC_ADDR_DEV},vr_id=1" > > BR/Jaeeun > > -----Original Message----- > From: Thomas Monjalon <thomas@monjalon.net> > Sent: Wednesday, September 29, 2021 8:16 PM > To: Jaeeun Ham <jaeeun.ham@ericsson.com> > Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; asafp@nvidia.com > Subject: Re: I need DPDK MLX5 Probe error support > > 27/09/2021 02:18, Jaeeun Ham: > > Hi, > > > > I hope you are well. > > My name is Jaeeun Ham and I have been working for the Ericsson. > > > > I am suffering from enabling MLX5 NIC, so could you take a look at how to run it? > > There are two pci address for the SRIOV(vfio) mlx5 nic support but it > > doesn't run correctly. (12:01.0, 12:01.1) > > > > I started one process which is running inside the docker process that is on the MLX5 NIC support host server. > > The process started to run with following option. > > -d /usr/local/lib/librte_net_mlx5.so And the docker process has > > mlx5 libraries as below. > > Did you try on the host outside of any container? > > Please could you try following commands (variables to be replaced)? > > dpdk-hugepages.py --reserve 1G > ip link set $netdev netns $container > docker run --cap-add SYS_NICE --cap-add IPC_LOCK --cap-add NET_ADMIN \ > --device /dev/infiniband/ $image > echo show port summary all | dpdk-testpmd --in-memory -- -i > > > > > 706a37a35d29:/usr/local/lib # ls -1 | grep mlx librte_common_mlx5.so > > librte_common_mlx5.so.21 > > librte_common_mlx5.so.21.0 > > librte_net_mlx5.so > > librte_net_mlx5.so.21 > > librte_net_mlx5.so.21.0 > > > > But I failed to run the process with following error. > > (MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1) > > > > --- > > > > mlx5_pci: unable to recognize master/representors on the multiple IB > > devices > > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.0 cannot be used > > mlx5_pci: unable to recognize master/representors on the multiple IB > > devices > > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.1 cannot be used > > EAL: Bus (pci) probe failed. > > > > --- > > > > For the success case of pci address 12:01.2, it showed following messages. > > > > --- > > > > EAL: Detected 64 lcore(s) > > EAL: Detected 2 NUMA nodes > > EAL: Multi-process socket /var/run/dpdk/nah2/mp_socket > > EAL: Probing VFIO support... > > EAL: VFIO support initialized > > EAL: PCI device 0000:12:01.2 on NUMA socket 0 > > EAL: probe driver: 15b3:1016 net_mlx5 > > net_mlx5: MPLS over GRE/UDP tunnel offloading disabled due to old > > OFED/rdma-core version or firmware configuration > > net_mlx5: port 0 the requested maximum Rx packet size (2056) is larger > > than a single mbuf (2048) and scattered mode has not been requested > > USER1: rte_ip_frag_table_create: allocated of 6291584 bytes at socket > > 0 > > > > --- > > > > BR/Jaeeun > ^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: I need DPDK MLX5 Probe error support 2021-10-03 7:51 ` Thomas Monjalon @ 2021-10-03 8:10 ` Jaeeun Ham 2021-10-03 18:44 ` Thomas Monjalon 2021-10-05 1:17 ` Jaeeun Ham 2021-10-06 9:57 ` Jaeeun Ham 2 siblings, 1 reply; 13+ messages in thread From: Jaeeun Ham @ 2021-10-03 8:10 UTC (permalink / raw) To: Thomas Monjalon; +Cc: users, alialnu, rasland, asafp Hi Thomas, Thank you so much for your sincere support. I will follow your suggestion and do my best to solve this issue. By the way, is it okay to use mlx5_core driver by different applications which have different DPDK versions? 0000:12:01.0 (DPDK 20.11 - mlx5_pci: unable to recognize master/representors on the multiple IB) 0000:12:01.1 (DPDK 20.11 - mlx5_pci: unable to recognize master/representors on the multiple IB) 0000:12:01.2 (DPDK 18.11 - currently used) root@seroics05111:~# ethtool -i enp18s1 driver: mlx5_core version: 5.3-1.0.0 firmware-version: 14.27.4000 (HP_2420110034) expansion-rom-version: bus-info: 0000:12:01.0 supports-statistics: yes supports-test: yes supports-eeprom-access: no supports-register-dump: no supports-priv-flags: yes root@seroics05111:~# ethtool -i enp18s1f1 driver: mlx5_core version: 5.3-1.0.0 firmware-version: 14.27.4000 (HP_2420110034) expansion-rom-version: bus-info: 0000:12:01.1 supports-statistics: yes supports-test: yes supports-eeprom-access: no supports-register-dump: no supports-priv-flags: yes root@seroics05111:~# ethtool -i enp18s1f2 driver: mlx5_core version: 5.3-1.0.0 firmware-version: 14.27.4000 (HP_2420110034) expansion-rom-version: bus-info: 0000:12:01.2 supports-statistics: yes supports-test: yes supports-eeprom-access: no supports-register-dump: no supports-priv-flags: yes BR/Jaeeun -----Original Message----- From: Thomas Monjalon <thomas@monjalon.net> Sent: Sunday, October 3, 2021 4:51 PM To: Jaeeun Ham <jaeeun.ham@ericsson.com> Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; asafp@nvidia.com Subject: Re: I need DPDK MLX5 Probe error support Hi, I think you need to read the documentation. For DPDK install on Linux: https://protect2.fireeye.com/v1/url?k=7925aba3-26be92c2-7925eb38-86d8a30ca42b-d871f122b4a0a61a&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3&u=https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Flinux_gsg%2Fbuild_dpdk.html%23compiling-and-installing-dpdk-system-wide For mlx5 specific dependencies, install rdma-core package: https://protect2.fireeye.com/v1/url?k=9bce4984-c45570e5-9bce091f-86d8a30ca42b-25bd3d467b5f290d&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3&u=https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Fnics%2Fmlx5.html%23linux-prerequisites 02/10/2021 12:57, Jaeeun Ham: > Hi, > > Could you teach me how to install dpdk-testpmd? > I have to run the application on the host server, not a development server. > So, I don't know how to get dpdk-testpmd. > > By the way, testpmd run result is as below. > root@seroics05590:~/ejaeham# testpmd > EAL: Detected 64 lcore(s) > EAL: libmlx4.so.1: cannot open shared object file: No such file or > directory > EAL: FATAL: Cannot init plugins > > EAL: Cannot init plugins > > PANIC in main(): > Cannot init EAL > 5: [testpmd(_start+0x2a) [0x55d301d98e1a]] > 4: [/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) > [0x7f5e044a4bf7]] > 3: [testpmd(main+0x907) [0x55d301d98d07]] > 2: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(__rte_panic+0xbd) > [0x7f5e04ca3cfd]] > 1: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(rte_dump_stack+0x2e) > [0x7f5e04cac19e]] Aborted > > > I added option below when the process is starting in the docker. > dv_flow_en=0 \ > --log-level=pmd,8 \ > < MLX5 log > > 415a695ba348:/tmp/logs # cat epp.log > MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1 > MIDHAUL_IP_ADDR:10.255.21.177, BACKHAUL_IP_ADDR:10.255.21.178 > mlx5_pci: unable to recognize master/representors on the multiple IB > devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.0 cannot be used > mlx5_pci: unable to recognize master/representors on the multiple IB > devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.1 cannot be used > EAL: Bus (pci) probe failed. > EAL: Trying to obtain current memory policy. > EAL: Setting policy MPOL_PREFERRED for socket 1 Caught signal 15 > EAL: Restoring previous memory policy: 0 > EAL: Calling mem event callback 'MLX5_MEM_EVENT_CB:(nil)' > EAL: request: mp_malloc_sync > EAL: Heap on socket 1 was expanded by 5120MB > FATAL: epp_init.c::copy_mac_addr:130: Call to > rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: -19 > (Unknown error -19), rte_errno=0 (not set) > > Caught signal 6 > Obtained 7 stack frames, tid=713. > tid=713, /usr/local/bin/ericsson-packet-processor() [0x40a4a4] > tid=713, /lib64/libpthread.so.0(+0x13f80) [0x7f7e1eae8f80] tid=713, > /lib64/libc.so.6(gsignal+0x10b) [0x7f7e1c5f818b] tid=713, > /lib64/libc.so.6(abort+0x175) [0x7f7e1c5f9585] tid=713, > /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] > tid=713, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f7e1c5e334d] > tid=713, /usr/local/bin/ericsson-packet-processor(_start+0x2a) > [0x4091ca] > > < i40e log > > cat epp.log > MIDHAUL_PCI_ADDR:0000:3b:0d.5, BACKHAUL_PCI_ADDR:0000:3b:0d.4 > MIDHAUL_IP_ADDR:10.51.21.112, BACKHAUL_IP_ADDR:10.51.21.113 > EAL: Trying to obtain current memory policy. > EAL: Setting policy MPOL_PREFERRED for socket 1 > EAL: Restoring previous memory policy: 0 > EAL: Calling mem event callback 'vfio_mem_event_clb:(nil)' > EAL: request: mp_malloc_sync > EAL: Heap on socket 1 was expanded by 5120MB > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=0, queue=0. > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on > Tx queue 0 > > i40evf_dev_start(): >> > i40evf_config_rss(): No hash flag is set > i40e_set_rx_function(): Vector Rx path will be used on port=0. > i40e_set_tx_function(): Xmit tx finally be used. > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > i40evf_add_del_all_mac_addr(): add/rm mac:62:64:21:84:83:b0 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > i40evf_dev_rx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_tx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=1, queue=0. > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on > Tx queue 0 > > i40evf_dev_start(): >> > i40evf_config_rss(): No hash flag is set > i40e_set_rx_function(): Vector Rx path will be used on port=1. > i40e_set_tx_function(): Xmit tx finally be used. > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > i40evf_add_del_all_mac_addr(): add/rm mac:c2:88:5c:a9:a2:ef > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > i40evf_dev_rx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_tx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > i40evf_dev_mtu_set(): port 1 must be stopped before configuration > i40evf_dev_mtu_set(): port 0 must be stopped before configuration > Caught signal 10 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > Caught signal 10 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > process start option which is triggered by shell script is as below. > > < start-epp.sh > > exec /usr/local/bin/ericsson-packet-processor \ > $(get_dpdk_core_list_parameter) \ > $(get_dpdk_mem_parameter) \ > $(get_dpdk_hugepage_parameters) \ > -d /usr/local/lib/librte_mempool_ring.so \ -d > /usr/local/lib/librte_mempool_stack.so \ -d > /usr/local/lib/librte_net_pcap.so \ -d > /usr/local/lib/librte_net_i40e.so \ -d > /usr/local/lib/librte_net_mlx5.so \ -d > /usr/local/lib/librte_event_dsw.so \ $DPDK_PCI_OPTIONS \ > --vdev=event_dsw0 \ > --vdev=eth_pcap0,iface=midhaul_edk \ > --vdev=eth_pcap1,iface=backhaul_edk \ --file-prefix=container \ > --log-level lib.eal:debug \ > dv_flow_en=0 \ > --log-level=pmd,8 \ > -- \ > $(get_epp_mempool_parameter) \ > > "--neighbor-discovery-interface=midhaul_ker,${MIDHAUL_IP_ADDR},mac_addr_dev=${MIDHAUL_MAC_ADDR_DEV},vr_id=0" \ "--neighbor-discovery-interface=backhaul_ker,${BACKHAUL_IP_ADDR},mac_addr_dev=${BACKHAUL_MAC_ADDR_DEV},vr_id=1" > > BR/Jaeeun > > -----Original Message----- > From: Thomas Monjalon <thomas@monjalon.net> > Sent: Wednesday, September 29, 2021 8:16 PM > To: Jaeeun Ham <jaeeun.ham@ericsson.com> > Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; > asafp@nvidia.com > Subject: Re: I need DPDK MLX5 Probe error support > > 27/09/2021 02:18, Jaeeun Ham: > > Hi, > > > > I hope you are well. > > My name is Jaeeun Ham and I have been working for the Ericsson. > > > > I am suffering from enabling MLX5 NIC, so could you take a look at how to run it? > > There are two pci address for the SRIOV(vfio) mlx5 nic support but > > it doesn't run correctly. (12:01.0, 12:01.1) > > > > I started one process which is running inside the docker process that is on the MLX5 NIC support host server. > > The process started to run with following option. > > -d /usr/local/lib/librte_net_mlx5.so And the docker process has > > mlx5 libraries as below. > > Did you try on the host outside of any container? > > Please could you try following commands (variables to be replaced)? > > dpdk-hugepages.py --reserve 1G > ip link set $netdev netns $container > docker run --cap-add SYS_NICE --cap-add IPC_LOCK --cap-add NET_ADMIN \ > --device /dev/infiniband/ $image > echo show port summary all | dpdk-testpmd --in-memory -- -i > > > > > 706a37a35d29:/usr/local/lib # ls -1 | grep mlx librte_common_mlx5.so > > librte_common_mlx5.so.21 > > librte_common_mlx5.so.21.0 > > librte_net_mlx5.so > > librte_net_mlx5.so.21 > > librte_net_mlx5.so.21.0 > > > > But I failed to run the process with following error. > > (MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1) > > > > --- > > > > mlx5_pci: unable to recognize master/representors on the multiple IB > > devices > > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.0 cannot be used > > mlx5_pci: unable to recognize master/representors on the multiple IB > > devices > > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.1 cannot be used > > EAL: Bus (pci) probe failed. > > > > --- > > > > For the success case of pci address 12:01.2, it showed following messages. > > > > --- > > > > EAL: Detected 64 lcore(s) > > EAL: Detected 2 NUMA nodes > > EAL: Multi-process socket /var/run/dpdk/nah2/mp_socket > > EAL: Probing VFIO support... > > EAL: VFIO support initialized > > EAL: PCI device 0000:12:01.2 on NUMA socket 0 > > EAL: probe driver: 15b3:1016 net_mlx5 > > net_mlx5: MPLS over GRE/UDP tunnel offloading disabled due to old > > OFED/rdma-core version or firmware configuration > > net_mlx5: port 0 the requested maximum Rx packet size (2056) is > > larger than a single mbuf (2048) and scattered mode has not been > > requested > > USER1: rte_ip_frag_table_create: allocated of 6291584 bytes at > > socket > > 0 > > > > --- > > > > BR/Jaeeun > ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: I need DPDK MLX5 Probe error support 2021-10-03 8:10 ` Jaeeun Ham @ 2021-10-03 18:44 ` Thomas Monjalon 0 siblings, 0 replies; 13+ messages in thread From: Thomas Monjalon @ 2021-10-03 18:44 UTC (permalink / raw) To: Jaeeun Ham; +Cc: users, alialnu, rasland, asafp 03/10/2021 10:10, Jaeeun Ham: > Hi Thomas, > > Thank you so much for your sincere support. > I will follow your suggestion and do my best to solve this issue. > > By the way, is it okay to use mlx5_core driver by different applications which have different DPDK versions? > 0000:12:01.0 (DPDK 20.11 - mlx5_pci: unable to recognize master/representors on the multiple IB) > 0000:12:01.1 (DPDK 20.11 - mlx5_pci: unable to recognize master/representors on the multiple IB) > 0000:12:01.2 (DPDK 18.11 - currently used) I think it should be OK but it is not well tested. ^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: I need DPDK MLX5 Probe error support 2021-10-03 7:51 ` Thomas Monjalon 2021-10-03 8:10 ` Jaeeun Ham @ 2021-10-05 1:17 ` Jaeeun Ham 2021-10-05 6:00 ` Thomas Monjalon 2021-10-06 9:57 ` Jaeeun Ham 2 siblings, 1 reply; 13+ messages in thread From: Jaeeun Ham @ 2021-10-05 1:17 UTC (permalink / raw) To: Thomas Monjalon; +Cc: users, alialnu, rasland, asafp Hi Thomas, I attached the testpmd result which is gathered on the host sever. Could you please take a look at the mlx5_core PCI issue? Thank you in advance. BR/Jaeeun -----Original Message----- From: Thomas Monjalon <thomas@monjalon.net> Sent: Sunday, October 3, 2021 4:51 PM To: Jaeeun Ham <jaeeun.ham@ericsson.com> Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; asafp@nvidia.com Subject: Re: I need DPDK MLX5 Probe error support Hi, I think you need to read the documentation. For DPDK install on Linux: https://protect2.fireeye.com/v1/url?k=7925aba3-26be92c2-7925eb38-86d8a30ca42b-d871f122b4a0a61a&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3&u=https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Flinux_gsg%2Fbuild_dpdk.html%23compiling-and-installing-dpdk-system-wide For mlx5 specific dependencies, install rdma-core package: https://protect2.fireeye.com/v1/url?k=9bce4984-c45570e5-9bce091f-86d8a30ca42b-25bd3d467b5f290d&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3&u=https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Fnics%2Fmlx5.html%23linux-prerequisites 02/10/2021 12:57, Jaeeun Ham: > Hi, > > Could you teach me how to install dpdk-testpmd? > I have to run the application on the host server, not a development server. > So, I don't know how to get dpdk-testpmd. > > By the way, testpmd run result is as below. > root@seroics05590:~/ejaeham# testpmd > EAL: Detected 64 lcore(s) > EAL: libmlx4.so.1: cannot open shared object file: No such file or > directory > EAL: FATAL: Cannot init plugins > > EAL: Cannot init plugins > > PANIC in main(): > Cannot init EAL > 5: [testpmd(_start+0x2a) [0x55d301d98e1a]] > 4: [/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) > [0x7f5e044a4bf7]] > 3: [testpmd(main+0x907) [0x55d301d98d07]] > 2: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(__rte_panic+0xbd) > [0x7f5e04ca3cfd]] > 1: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(rte_dump_stack+0x2e) > [0x7f5e04cac19e]] Aborted > > > I added option below when the process is starting in the docker. > dv_flow_en=0 \ > --log-level=pmd,8 \ > < MLX5 log > > 415a695ba348:/tmp/logs # cat epp.log > MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1 > MIDHAUL_IP_ADDR:10.255.21.177, BACKHAUL_IP_ADDR:10.255.21.178 > mlx5_pci: unable to recognize master/representors on the multiple IB > devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.0 cannot be used > mlx5_pci: unable to recognize master/representors on the multiple IB > devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.1 cannot be used > EAL: Bus (pci) probe failed. > EAL: Trying to obtain current memory policy. > EAL: Setting policy MPOL_PREFERRED for socket 1 Caught signal 15 > EAL: Restoring previous memory policy: 0 > EAL: Calling mem event callback 'MLX5_MEM_EVENT_CB:(nil)' > EAL: request: mp_malloc_sync > EAL: Heap on socket 1 was expanded by 5120MB > FATAL: epp_init.c::copy_mac_addr:130: Call to > rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: -19 > (Unknown error -19), rte_errno=0 (not set) > > Caught signal 6 > Obtained 7 stack frames, tid=713. > tid=713, /usr/local/bin/ericsson-packet-processor() [0x40a4a4] > tid=713, /lib64/libpthread.so.0(+0x13f80) [0x7f7e1eae8f80] tid=713, > /lib64/libc.so.6(gsignal+0x10b) [0x7f7e1c5f818b] tid=713, > /lib64/libc.so.6(abort+0x175) [0x7f7e1c5f9585] tid=713, > /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] > tid=713, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f7e1c5e334d] > tid=713, /usr/local/bin/ericsson-packet-processor(_start+0x2a) > [0x4091ca] > > < i40e log > > cat epp.log > MIDHAUL_PCI_ADDR:0000:3b:0d.5, BACKHAUL_PCI_ADDR:0000:3b:0d.4 > MIDHAUL_IP_ADDR:10.51.21.112, BACKHAUL_IP_ADDR:10.51.21.113 > EAL: Trying to obtain current memory policy. > EAL: Setting policy MPOL_PREFERRED for socket 1 > EAL: Restoring previous memory policy: 0 > EAL: Calling mem event callback 'vfio_mem_event_clb:(nil)' > EAL: request: mp_malloc_sync > EAL: Heap on socket 1 was expanded by 5120MB > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=0, queue=0. > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on > Tx queue 0 > > i40evf_dev_start(): >> > i40evf_config_rss(): No hash flag is set > i40e_set_rx_function(): Vector Rx path will be used on port=0. > i40e_set_tx_function(): Xmit tx finally be used. > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > i40evf_add_del_all_mac_addr(): add/rm mac:62:64:21:84:83:b0 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > i40evf_dev_rx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_tx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=1, queue=0. > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on > Tx queue 0 > > i40evf_dev_start(): >> > i40evf_config_rss(): No hash flag is set > i40e_set_rx_function(): Vector Rx path will be used on port=1. > i40e_set_tx_function(): Xmit tx finally be used. > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > i40evf_add_del_all_mac_addr(): add/rm mac:c2:88:5c:a9:a2:ef > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > i40evf_dev_rx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_tx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > i40evf_dev_mtu_set(): port 1 must be stopped before configuration > i40evf_dev_mtu_set(): port 0 must be stopped before configuration > Caught signal 10 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > Caught signal 10 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > process start option which is triggered by shell script is as below. > > < start-epp.sh > > exec /usr/local/bin/ericsson-packet-processor \ > $(get_dpdk_core_list_parameter) \ > $(get_dpdk_mem_parameter) \ > $(get_dpdk_hugepage_parameters) \ > -d /usr/local/lib/librte_mempool_ring.so \ -d > /usr/local/lib/librte_mempool_stack.so \ -d > /usr/local/lib/librte_net_pcap.so \ -d > /usr/local/lib/librte_net_i40e.so \ -d > /usr/local/lib/librte_net_mlx5.so \ -d > /usr/local/lib/librte_event_dsw.so \ $DPDK_PCI_OPTIONS \ > --vdev=event_dsw0 \ > --vdev=eth_pcap0,iface=midhaul_edk \ > --vdev=eth_pcap1,iface=backhaul_edk \ --file-prefix=container \ > --log-level lib.eal:debug \ > dv_flow_en=0 \ > --log-level=pmd,8 \ > -- \ > $(get_epp_mempool_parameter) \ > > "--neighbor-discovery-interface=midhaul_ker,${MIDHAUL_IP_ADDR},mac_addr_dev=${MIDHAUL_MAC_ADDR_DEV},vr_id=0" \ "--neighbor-discovery-interface=backhaul_ker,${BACKHAUL_IP_ADDR},mac_addr_dev=${BACKHAUL_MAC_ADDR_DEV},vr_id=1" > > BR/Jaeeun > > -----Original Message----- > From: Thomas Monjalon <thomas@monjalon.net> > Sent: Wednesday, September 29, 2021 8:16 PM > To: Jaeeun Ham <jaeeun.ham@ericsson.com> > Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; > asafp@nvidia.com > Subject: Re: I need DPDK MLX5 Probe error support > > 27/09/2021 02:18, Jaeeun Ham: > > Hi, > > > > I hope you are well. > > My name is Jaeeun Ham and I have been working for the Ericsson. > > > > I am suffering from enabling MLX5 NIC, so could you take a look at how to run it? > > There are two pci address for the SRIOV(vfio) mlx5 nic support but > > it doesn't run correctly. (12:01.0, 12:01.1) > > > > I started one process which is running inside the docker process that is on the MLX5 NIC support host server. > > The process started to run with following option. > > -d /usr/local/lib/librte_net_mlx5.so And the docker process has > > mlx5 libraries as below. > > Did you try on the host outside of any container? > > Please could you try following commands (variables to be replaced)? > > dpdk-hugepages.py --reserve 1G > ip link set $netdev netns $container > docker run --cap-add SYS_NICE --cap-add IPC_LOCK --cap-add NET_ADMIN \ > --device /dev/infiniband/ $image > echo show port summary all | dpdk-testpmd --in-memory -- -i > > > > > 706a37a35d29:/usr/local/lib # ls -1 | grep mlx librte_common_mlx5.so > > librte_common_mlx5.so.21 > > librte_common_mlx5.so.21.0 > > librte_net_mlx5.so > > librte_net_mlx5.so.21 > > librte_net_mlx5.so.21.0 > > > > But I failed to run the process with following error. > > (MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1) > > > > --- > > > > mlx5_pci: unable to recognize master/representors on the multiple IB > > devices > > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.0 cannot be used > > mlx5_pci: unable to recognize master/representors on the multiple IB > > devices > > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.1 cannot be used > > EAL: Bus (pci) probe failed. > > > > --- > > > > For the success case of pci address 12:01.2, it showed following messages. > > > > --- > > > > EAL: Detected 64 lcore(s) > > EAL: Detected 2 NUMA nodes > > EAL: Multi-process socket /var/run/dpdk/nah2/mp_socket > > EAL: Probing VFIO support... > > EAL: VFIO support initialized > > EAL: PCI device 0000:12:01.2 on NUMA socket 0 > > EAL: probe driver: 15b3:1016 net_mlx5 > > net_mlx5: MPLS over GRE/UDP tunnel offloading disabled due to old > > OFED/rdma-core version or firmware configuration > > net_mlx5: port 0 the requested maximum Rx packet size (2056) is > > larger than a single mbuf (2048) and scattered mode has not been > > requested > > USER1: rte_ip_frag_table_create: allocated of 6291584 bytes at > > socket > > 0 > > > > --- > > > > BR/Jaeeun > -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: testpmd_output.txt URL: <http://mails.dpdk.org/archives/users/attachments/20211005/516e43c2/attachment.txt> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: I need DPDK MLX5 Probe error support 2021-10-05 1:17 ` Jaeeun Ham @ 2021-10-05 6:00 ` Thomas Monjalon 0 siblings, 0 replies; 13+ messages in thread From: Thomas Monjalon @ 2021-10-05 6:00 UTC (permalink / raw) To: Jaeeun Ham; +Cc: users, alialnu, rasland, asafp 05/10/2021 03:17, Jaeeun Ham: > Hi Thomas, > > I attached the testpmd result which is gathered on the host sever. > Could you please take a look at the mlx5_core PCI issue? I see no real issue in the log. For doing more tests, I recommend using the latest DPDK version. > Thank you in advance. > > BR/Jaeeun > > -----Original Message----- > From: Thomas Monjalon <thomas@monjalon.net> > Sent: Sunday, October 3, 2021 4:51 PM > To: Jaeeun Ham <jaeeun.ham@ericsson.com> > Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; asafp@nvidia.com > Subject: Re: I need DPDK MLX5 Probe error support > > Hi, > > I think you need to read the documentation. > For DPDK install on Linux: > https://protect2.fireeye.com/v1/url?k=7925aba3-26be92c2-7925eb38-86d8a30ca42b-d871f122b4a0a61a&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3&u=https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Flinux_gsg%2Fbuild_dpdk.html%23compiling-and-installing-dpdk-system-wide > For mlx5 specific dependencies, install rdma-core package: > https://protect2.fireeye.com/v1/url?k=9bce4984-c45570e5-9bce091f-86d8a30ca42b-25bd3d467b5f290d&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3&u=https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Fnics%2Fmlx5.html%23linux-prerequisites > > > 02/10/2021 12:57, Jaeeun Ham: > > Hi, > > > > Could you teach me how to install dpdk-testpmd? > > I have to run the application on the host server, not a development server. > > So, I don't know how to get dpdk-testpmd. > > > > By the way, testpmd run result is as below. > > root@seroics05590:~/ejaeham# testpmd > > EAL: Detected 64 lcore(s) > > EAL: libmlx4.so.1: cannot open shared object file: No such file or > > directory > > EAL: FATAL: Cannot init plugins > > > > EAL: Cannot init plugins > > > > PANIC in main(): > > Cannot init EAL > > 5: [testpmd(_start+0x2a) [0x55d301d98e1a]] > > 4: [/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) > > [0x7f5e044a4bf7]] > > 3: [testpmd(main+0x907) [0x55d301d98d07]] > > 2: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(__rte_panic+0xbd) > > [0x7f5e04ca3cfd]] > > 1: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(rte_dump_stack+0x2e) > > [0x7f5e04cac19e]] Aborted > > > > > > I added option below when the process is starting in the docker. > > dv_flow_en=0 \ > > --log-level=pmd,8 \ > > < MLX5 log > > > 415a695ba348:/tmp/logs # cat epp.log > > MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1 > > MIDHAUL_IP_ADDR:10.255.21.177, BACKHAUL_IP_ADDR:10.255.21.178 > > mlx5_pci: unable to recognize master/representors on the multiple IB > > devices > > common_mlx5: Failed to load driver = mlx5_pci. > > > > EAL: Requested device 0000:12:01.0 cannot be used > > mlx5_pci: unable to recognize master/representors on the multiple IB > > devices > > common_mlx5: Failed to load driver = mlx5_pci. > > > > EAL: Requested device 0000:12:01.1 cannot be used > > EAL: Bus (pci) probe failed. > > EAL: Trying to obtain current memory policy. > > EAL: Setting policy MPOL_PREFERRED for socket 1 Caught signal 15 > > EAL: Restoring previous memory policy: 0 > > EAL: Calling mem event callback 'MLX5_MEM_EVENT_CB:(nil)' > > EAL: request: mp_malloc_sync > > EAL: Heap on socket 1 was expanded by 5120MB > > FATAL: epp_init.c::copy_mac_addr:130: Call to > > rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: -19 > > (Unknown error -19), rte_errno=0 (not set) > > > > Caught signal 6 > > Obtained 7 stack frames, tid=713. > > tid=713, /usr/local/bin/ericsson-packet-processor() [0x40a4a4] > > tid=713, /lib64/libpthread.so.0(+0x13f80) [0x7f7e1eae8f80] tid=713, > > /lib64/libc.so.6(gsignal+0x10b) [0x7f7e1c5f818b] tid=713, > > /lib64/libc.so.6(abort+0x175) [0x7f7e1c5f9585] tid=713, > > /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] > > tid=713, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f7e1c5e334d] > > tid=713, /usr/local/bin/ericsson-packet-processor(_start+0x2a) > > [0x4091ca] > > > > < i40e log > > > cat epp.log > > MIDHAUL_PCI_ADDR:0000:3b:0d.5, BACKHAUL_PCI_ADDR:0000:3b:0d.4 > > MIDHAUL_IP_ADDR:10.51.21.112, BACKHAUL_IP_ADDR:10.51.21.113 > > EAL: Trying to obtain current memory policy. > > EAL: Setting policy MPOL_PREFERRED for socket 1 > > EAL: Restoring previous memory policy: 0 > > EAL: Calling mem event callback 'vfio_mem_event_clb:(nil)' > > EAL: request: mp_malloc_sync > > EAL: Heap on socket 1 was expanded by 5120MB > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=0, queue=0. > > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on > > Tx queue 0 > > > > i40evf_dev_start(): >> > > i40evf_config_rss(): No hash flag is set > > i40e_set_rx_function(): Vector Rx path will be used on port=0. > > i40e_set_tx_function(): Xmit tx finally be used. > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > > i40evf_add_del_all_mac_addr(): add/rm mac:62:64:21:84:83:b0 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > > i40evf_dev_rx_queue_start(): >> > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > i40evf_dev_tx_queue_start(): >> > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=1, queue=0. > > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on > > Tx queue 0 > > > > i40evf_dev_start(): >> > > i40evf_config_rss(): No hash flag is set > > i40e_set_rx_function(): Vector Rx path will be used on port=1. > > i40e_set_tx_function(): Xmit tx finally be used. > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > > i40evf_add_del_all_mac_addr(): add/rm mac:c2:88:5c:a9:a2:ef > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > > i40evf_dev_rx_queue_start(): >> > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > i40evf_dev_tx_queue_start(): >> > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > i40evf_dev_mtu_set(): port 1 must be stopped before configuration > > i40evf_dev_mtu_set(): port 0 must be stopped before configuration > > Caught signal 10 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > Caught signal 10 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > > > > process start option which is triggered by shell script is as below. > > > > < start-epp.sh > > > exec /usr/local/bin/ericsson-packet-processor \ > > $(get_dpdk_core_list_parameter) \ > > $(get_dpdk_mem_parameter) \ > > $(get_dpdk_hugepage_parameters) \ > > -d /usr/local/lib/librte_mempool_ring.so \ -d > > /usr/local/lib/librte_mempool_stack.so \ -d > > /usr/local/lib/librte_net_pcap.so \ -d > > /usr/local/lib/librte_net_i40e.so \ -d > > /usr/local/lib/librte_net_mlx5.so \ -d > > /usr/local/lib/librte_event_dsw.so \ $DPDK_PCI_OPTIONS \ > > --vdev=event_dsw0 \ > > --vdev=eth_pcap0,iface=midhaul_edk \ > > --vdev=eth_pcap1,iface=backhaul_edk \ --file-prefix=container \ > > --log-level lib.eal:debug \ > > dv_flow_en=0 \ > > --log-level=pmd,8 \ > > -- \ > > $(get_epp_mempool_parameter) \ > > > > "--neighbor-discovery-interface=midhaul_ker,${MIDHAUL_IP_ADDR},mac_addr_dev=${MIDHAUL_MAC_ADDR_DEV},vr_id=0" \ "--neighbor-discovery-interface=backhaul_ker,${BACKHAUL_IP_ADDR},mac_addr_dev=${BACKHAUL_MAC_ADDR_DEV},vr_id=1" > > > > BR/Jaeeun > > > > -----Original Message----- > > From: Thomas Monjalon <thomas@monjalon.net> > > Sent: Wednesday, September 29, 2021 8:16 PM > > To: Jaeeun Ham <jaeeun.ham@ericsson.com> > > Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; > > asafp@nvidia.com > > Subject: Re: I need DPDK MLX5 Probe error support > > > > 27/09/2021 02:18, Jaeeun Ham: > > > Hi, > > > > > > I hope you are well. > > > My name is Jaeeun Ham and I have been working for the Ericsson. > > > > > > I am suffering from enabling MLX5 NIC, so could you take a look at how to run it? > > > There are two pci address for the SRIOV(vfio) mlx5 nic support but > > > it doesn't run correctly. (12:01.0, 12:01.1) > > > > > > I started one process which is running inside the docker process that is on the MLX5 NIC support host server. > > > The process started to run with following option. > > > -d /usr/local/lib/librte_net_mlx5.so And the docker process has > > > mlx5 libraries as below. > > > > Did you try on the host outside of any container? > > > > Please could you try following commands (variables to be replaced)? > > > > dpdk-hugepages.py --reserve 1G > > ip link set $netdev netns $container > > docker run --cap-add SYS_NICE --cap-add IPC_LOCK --cap-add NET_ADMIN \ > > --device /dev/infiniband/ $image > > echo show port summary all | dpdk-testpmd --in-memory -- -i > > > > > > > > > 706a37a35d29:/usr/local/lib # ls -1 | grep mlx librte_common_mlx5.so > > > librte_common_mlx5.so.21 > > > librte_common_mlx5.so.21.0 > > > librte_net_mlx5.so > > > librte_net_mlx5.so.21 > > > librte_net_mlx5.so.21.0 > > > > > > But I failed to run the process with following error. > > > (MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1) > > > > > > --- > > > > > > mlx5_pci: unable to recognize master/representors on the multiple IB > > > devices > > > common_mlx5: Failed to load driver = mlx5_pci. > > > EAL: Requested device 0000:12:01.0 cannot be used > > > mlx5_pci: unable to recognize master/representors on the multiple IB > > > devices > > > common_mlx5: Failed to load driver = mlx5_pci. > > > EAL: Requested device 0000:12:01.1 cannot be used > > > EAL: Bus (pci) probe failed. > > > > > > --- > > > > > > For the success case of pci address 12:01.2, it showed following messages. > > > > > > --- > > > > > > EAL: Detected 64 lcore(s) > > > EAL: Detected 2 NUMA nodes > > > EAL: Multi-process socket /var/run/dpdk/nah2/mp_socket > > > EAL: Probing VFIO support... > > > EAL: VFIO support initialized > > > EAL: PCI device 0000:12:01.2 on NUMA socket 0 > > > EAL: probe driver: 15b3:1016 net_mlx5 > > > net_mlx5: MPLS over GRE/UDP tunnel offloading disabled due to old > > > OFED/rdma-core version or firmware configuration > > > net_mlx5: port 0 the requested maximum Rx packet size (2056) is > > > larger than a single mbuf (2048) and scattered mode has not been > > > requested > > > USER1: rte_ip_frag_table_create: allocated of 6291584 bytes at > > > socket > > > 0 > > > > > > --- > > > > > > BR/Jaeeun > > > > > > ^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: I need DPDK MLX5 Probe error support 2021-10-03 7:51 ` Thomas Monjalon 2021-10-03 8:10 ` Jaeeun Ham 2021-10-05 1:17 ` Jaeeun Ham @ 2021-10-06 9:57 ` Jaeeun Ham 2021-10-06 10:58 ` Thomas Monjalon 2 siblings, 1 reply; 13+ messages in thread From: Jaeeun Ham @ 2021-10-06 9:57 UTC (permalink / raw) To: Thomas Monjalon; +Cc: users, alialnu, rasland, asafp Hi Thomas, Could you take a look at the attached file? My engineer managed to compile DPDK 20.11 to support MLX5. Please find the output from dpdk-testpmd command in attached file. As you can see testpmd was able to probe mlx5_pci drivers and get MAC addresses. The key issue in his case for enabling MLX5 support was to export rdma-core lib path to shared libs for meson/ninja commands as new build system automatically enables MLX5 support if needed dependencies are available. BR/Jaeeun -----Original Message----- From: Thomas Monjalon <thomas@monjalon.net> Sent: Sunday, October 3, 2021 4:51 PM To: Jaeeun Ham <jaeeun.ham@ericsson.com> Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; asafp@nvidia.com Subject: Re: I need DPDK MLX5 Probe error support Hi, I think you need to read the documentation. For DPDK install on Linux: https://protect2.fireeye.com/v1/url?k=7925aba3-26be92c2-7925eb38-86d8a30ca42b-d871f122b4a0a61a&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3&u=https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Flinux_gsg%2Fbuild_dpdk.html%23compiling-and-installing-dpdk-system-wide For mlx5 specific dependencies, install rdma-core package: https://protect2.fireeye.com/v1/url?k=9bce4984-c45570e5-9bce091f-86d8a30ca42b-25bd3d467b5f290d&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3&u=https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Fnics%2Fmlx5.html%23linux-prerequisites 02/10/2021 12:57, Jaeeun Ham: > Hi, > > Could you teach me how to install dpdk-testpmd? > I have to run the application on the host server, not a development server. > So, I don't know how to get dpdk-testpmd. > > By the way, testpmd run result is as below. > root@seroics05590:~/ejaeham# testpmd > EAL: Detected 64 lcore(s) > EAL: libmlx4.so.1: cannot open shared object file: No such file or > directory > EAL: FATAL: Cannot init plugins > > EAL: Cannot init plugins > > PANIC in main(): > Cannot init EAL > 5: [testpmd(_start+0x2a) [0x55d301d98e1a]] > 4: [/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) > [0x7f5e044a4bf7]] > 3: [testpmd(main+0x907) [0x55d301d98d07]] > 2: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(__rte_panic+0xbd) > [0x7f5e04ca3cfd]] > 1: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(rte_dump_stack+0x2e) > [0x7f5e04cac19e]] Aborted > > > I added option below when the process is starting in the docker. > dv_flow_en=0 \ > --log-level=pmd,8 \ > < MLX5 log > > 415a695ba348:/tmp/logs # cat epp.log > MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1 > MIDHAUL_IP_ADDR:10.255.21.177, BACKHAUL_IP_ADDR:10.255.21.178 > mlx5_pci: unable to recognize master/representors on the multiple IB > devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.0 cannot be used > mlx5_pci: unable to recognize master/representors on the multiple IB > devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.1 cannot be used > EAL: Bus (pci) probe failed. > EAL: Trying to obtain current memory policy. > EAL: Setting policy MPOL_PREFERRED for socket 1 Caught signal 15 > EAL: Restoring previous memory policy: 0 > EAL: Calling mem event callback 'MLX5_MEM_EVENT_CB:(nil)' > EAL: request: mp_malloc_sync > EAL: Heap on socket 1 was expanded by 5120MB > FATAL: epp_init.c::copy_mac_addr:130: Call to > rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: -19 > (Unknown error -19), rte_errno=0 (not set) > > Caught signal 6 > Obtained 7 stack frames, tid=713. > tid=713, /usr/local/bin/ericsson-packet-processor() [0x40a4a4] > tid=713, /lib64/libpthread.so.0(+0x13f80) [0x7f7e1eae8f80] tid=713, > /lib64/libc.so.6(gsignal+0x10b) [0x7f7e1c5f818b] tid=713, > /lib64/libc.so.6(abort+0x175) [0x7f7e1c5f9585] tid=713, > /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] > tid=713, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f7e1c5e334d] > tid=713, /usr/local/bin/ericsson-packet-processor(_start+0x2a) > [0x4091ca] > > < i40e log > > cat epp.log > MIDHAUL_PCI_ADDR:0000:3b:0d.5, BACKHAUL_PCI_ADDR:0000:3b:0d.4 > MIDHAUL_IP_ADDR:10.51.21.112, BACKHAUL_IP_ADDR:10.51.21.113 > EAL: Trying to obtain current memory policy. > EAL: Setting policy MPOL_PREFERRED for socket 1 > EAL: Restoring previous memory policy: 0 > EAL: Calling mem event callback 'vfio_mem_event_clb:(nil)' > EAL: request: mp_malloc_sync > EAL: Heap on socket 1 was expanded by 5120MB > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=0, queue=0. > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on > Tx queue 0 > > i40evf_dev_start(): >> > i40evf_config_rss(): No hash flag is set > i40e_set_rx_function(): Vector Rx path will be used on port=0. > i40e_set_tx_function(): Xmit tx finally be used. > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > i40evf_add_del_all_mac_addr(): add/rm mac:62:64:21:84:83:b0 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > i40evf_dev_rx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_tx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=1, queue=0. > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on > Tx queue 0 > > i40evf_dev_start(): >> > i40evf_config_rss(): No hash flag is set > i40e_set_rx_function(): Vector Rx path will be used on port=1. > i40e_set_tx_function(): Xmit tx finally be used. > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > i40evf_add_del_all_mac_addr(): add/rm mac:c2:88:5c:a9:a2:ef > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > i40evf_dev_rx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_tx_queue_start(): >> > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > -1 > i40evf_dev_mtu_set(): port 1 must be stopped before configuration > i40evf_dev_mtu_set(): port 0 must be stopped before configuration > Caught signal 10 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > Caught signal 10 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > process start option which is triggered by shell script is as below. > > < start-epp.sh > > exec /usr/local/bin/ericsson-packet-processor \ > $(get_dpdk_core_list_parameter) \ > $(get_dpdk_mem_parameter) \ > $(get_dpdk_hugepage_parameters) \ > -d /usr/local/lib/librte_mempool_ring.so \ -d > /usr/local/lib/librte_mempool_stack.so \ -d > /usr/local/lib/librte_net_pcap.so \ -d > /usr/local/lib/librte_net_i40e.so \ -d > /usr/local/lib/librte_net_mlx5.so \ -d > /usr/local/lib/librte_event_dsw.so \ $DPDK_PCI_OPTIONS \ > --vdev=event_dsw0 \ > --vdev=eth_pcap0,iface=midhaul_edk \ > --vdev=eth_pcap1,iface=backhaul_edk \ --file-prefix=container \ > --log-level lib.eal:debug \ > dv_flow_en=0 \ > --log-level=pmd,8 \ > -- \ > $(get_epp_mempool_parameter) \ > > "--neighbor-discovery-interface=midhaul_ker,${MIDHAUL_IP_ADDR},mac_addr_dev=${MIDHAUL_MAC_ADDR_DEV},vr_id=0" \ "--neighbor-discovery-interface=backhaul_ker,${BACKHAUL_IP_ADDR},mac_addr_dev=${BACKHAUL_MAC_ADDR_DEV},vr_id=1" > > BR/Jaeeun > > -----Original Message----- > From: Thomas Monjalon <thomas@monjalon.net> > Sent: Wednesday, September 29, 2021 8:16 PM > To: Jaeeun Ham <jaeeun.ham@ericsson.com> > Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; > asafp@nvidia.com > Subject: Re: I need DPDK MLX5 Probe error support > > 27/09/2021 02:18, Jaeeun Ham: > > Hi, > > > > I hope you are well. > > My name is Jaeeun Ham and I have been working for the Ericsson. > > > > I am suffering from enabling MLX5 NIC, so could you take a look at how to run it? > > There are two pci address for the SRIOV(vfio) mlx5 nic support but > > it doesn't run correctly. (12:01.0, 12:01.1) > > > > I started one process which is running inside the docker process that is on the MLX5 NIC support host server. > > The process started to run with following option. > > -d /usr/local/lib/librte_net_mlx5.so And the docker process has > > mlx5 libraries as below. > > Did you try on the host outside of any container? > > Please could you try following commands (variables to be replaced)? > > dpdk-hugepages.py --reserve 1G > ip link set $netdev netns $container > docker run --cap-add SYS_NICE --cap-add IPC_LOCK --cap-add NET_ADMIN \ > --device /dev/infiniband/ $image > echo show port summary all | dpdk-testpmd --in-memory -- -i > > > > > 706a37a35d29:/usr/local/lib # ls -1 | grep mlx librte_common_mlx5.so > > librte_common_mlx5.so.21 > > librte_common_mlx5.so.21.0 > > librte_net_mlx5.so > > librte_net_mlx5.so.21 > > librte_net_mlx5.so.21.0 > > > > But I failed to run the process with following error. > > (MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1) > > > > --- > > > > mlx5_pci: unable to recognize master/representors on the multiple IB > > devices > > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.0 cannot be used > > mlx5_pci: unable to recognize master/representors on the multiple IB > > devices > > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.1 cannot be used > > EAL: Bus (pci) probe failed. > > > > --- > > > > For the success case of pci address 12:01.2, it showed following messages. > > > > --- > > > > EAL: Detected 64 lcore(s) > > EAL: Detected 2 NUMA nodes > > EAL: Multi-process socket /var/run/dpdk/nah2/mp_socket > > EAL: Probing VFIO support... > > EAL: VFIO support initialized > > EAL: PCI device 0000:12:01.2 on NUMA socket 0 > > EAL: probe driver: 15b3:1016 net_mlx5 > > net_mlx5: MPLS over GRE/UDP tunnel offloading disabled due to old > > OFED/rdma-core version or firmware configuration > > net_mlx5: port 0 the requested maximum Rx packet size (2056) is > > larger than a single mbuf (2048) and scattered mode has not been > > requested > > USER1: rte_ip_frag_table_create: allocated of 6291584 bytes at > > socket > > 0 > > > > --- > > > > BR/Jaeeun > -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: meson_mlx5_related_info.txt URL: <http://mails.dpdk.org/archives/users/attachments/20211006/89660a1c/attachment.txt> -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: meson_build_summary.txt URL: <http://mails.dpdk.org/archives/users/attachments/20211006/89660a1c/attachment-0001.txt> -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: dpdk-testpmd_output.txt URL: <http://mails.dpdk.org/archives/users/attachments/20211006/89660a1c/attachment-0002.txt> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: I need DPDK MLX5 Probe error support 2021-10-06 9:57 ` Jaeeun Ham @ 2021-10-06 10:58 ` Thomas Monjalon [not found] ` <HE1PR07MB42208754E63C0DE2D0F0D138F3B09@HE1PR07MB4220.eurprd07.prod.outlook.com> 0 siblings, 1 reply; 13+ messages in thread From: Thomas Monjalon @ 2021-10-06 10:58 UTC (permalink / raw) To: Jaeeun Ham; +Cc: users, alialnu, rasland, asafp Installing dependencies is not an issue. I don't understand which support you need. 06/10/2021 11:57, Jaeeun Ham: > Hi Thomas, > > Could you take a look at the attached file? > My engineer managed to compile DPDK 20.11 to support MLX5. Please find the output from dpdk-testpmd command in attached file. As you can see testpmd was able to probe mlx5_pci drivers and get MAC addresses. > The key issue in his case for enabling MLX5 support was to export rdma-core lib path to shared libs for meson/ninja commands as new build system automatically enables MLX5 support if needed dependencies are available. > > BR/Jaeeun > > -----Original Message----- > From: Thomas Monjalon <thomas@monjalon.net> > Sent: Sunday, October 3, 2021 4:51 PM > To: Jaeeun Ham <jaeeun.ham@ericsson.com> > Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; asafp@nvidia.com > Subject: Re: I need DPDK MLX5 Probe error support > > Hi, > > I think you need to read the documentation. > For DPDK install on Linux: > https://protect2.fireeye.com/v1/url?k=7925aba3-26be92c2-7925eb38-86d8a30ca42b-d871f122b4a0a61a&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3&u=https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Flinux_gsg%2Fbuild_dpdk.html%23compiling-and-installing-dpdk-system-wide > For mlx5 specific dependencies, install rdma-core package: > https://protect2.fireeye.com/v1/url?k=9bce4984-c45570e5-9bce091f-86d8a30ca42b-25bd3d467b5f290d&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3&u=https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Fnics%2Fmlx5.html%23linux-prerequisites > > > 02/10/2021 12:57, Jaeeun Ham: > > Hi, > > > > Could you teach me how to install dpdk-testpmd? > > I have to run the application on the host server, not a development server. > > So, I don't know how to get dpdk-testpmd. > > > > By the way, testpmd run result is as below. > > root@seroics05590:~/ejaeham# testpmd > > EAL: Detected 64 lcore(s) > > EAL: libmlx4.so.1: cannot open shared object file: No such file or > > directory > > EAL: FATAL: Cannot init plugins > > > > EAL: Cannot init plugins > > > > PANIC in main(): > > Cannot init EAL > > 5: [testpmd(_start+0x2a) [0x55d301d98e1a]] > > 4: [/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) > > [0x7f5e044a4bf7]] > > 3: [testpmd(main+0x907) [0x55d301d98d07]] > > 2: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(__rte_panic+0xbd) > > [0x7f5e04ca3cfd]] > > 1: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(rte_dump_stack+0x2e) > > [0x7f5e04cac19e]] Aborted > > > > > > I added option below when the process is starting in the docker. > > dv_flow_en=0 \ > > --log-level=pmd,8 \ > > < MLX5 log > > > 415a695ba348:/tmp/logs # cat epp.log > > MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1 > > MIDHAUL_IP_ADDR:10.255.21.177, BACKHAUL_IP_ADDR:10.255.21.178 > > mlx5_pci: unable to recognize master/representors on the multiple IB > > devices > > common_mlx5: Failed to load driver = mlx5_pci. > > > > EAL: Requested device 0000:12:01.0 cannot be used > > mlx5_pci: unable to recognize master/representors on the multiple IB > > devices > > common_mlx5: Failed to load driver = mlx5_pci. > > > > EAL: Requested device 0000:12:01.1 cannot be used > > EAL: Bus (pci) probe failed. > > EAL: Trying to obtain current memory policy. > > EAL: Setting policy MPOL_PREFERRED for socket 1 Caught signal 15 > > EAL: Restoring previous memory policy: 0 > > EAL: Calling mem event callback 'MLX5_MEM_EVENT_CB:(nil)' > > EAL: request: mp_malloc_sync > > EAL: Heap on socket 1 was expanded by 5120MB > > FATAL: epp_init.c::copy_mac_addr:130: Call to > > rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: -19 > > (Unknown error -19), rte_errno=0 (not set) > > > > Caught signal 6 > > Obtained 7 stack frames, tid=713. > > tid=713, /usr/local/bin/ericsson-packet-processor() [0x40a4a4] > > tid=713, /lib64/libpthread.so.0(+0x13f80) [0x7f7e1eae8f80] tid=713, > > /lib64/libc.so.6(gsignal+0x10b) [0x7f7e1c5f818b] tid=713, > > /lib64/libc.so.6(abort+0x175) [0x7f7e1c5f9585] tid=713, > > /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] > > tid=713, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f7e1c5e334d] > > tid=713, /usr/local/bin/ericsson-packet-processor(_start+0x2a) > > [0x4091ca] > > > > < i40e log > > > cat epp.log > > MIDHAUL_PCI_ADDR:0000:3b:0d.5, BACKHAUL_PCI_ADDR:0000:3b:0d.4 > > MIDHAUL_IP_ADDR:10.51.21.112, BACKHAUL_IP_ADDR:10.51.21.113 > > EAL: Trying to obtain current memory policy. > > EAL: Setting policy MPOL_PREFERRED for socket 1 > > EAL: Restoring previous memory policy: 0 > > EAL: Calling mem event callback 'vfio_mem_event_clb:(nil)' > > EAL: request: mp_malloc_sync > > EAL: Heap on socket 1 was expanded by 5120MB > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=0, queue=0. > > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on > > Tx queue 0 > > > > i40evf_dev_start(): >> > > i40evf_config_rss(): No hash flag is set > > i40e_set_rx_function(): Vector Rx path will be used on port=0. > > i40e_set_tx_function(): Xmit tx finally be used. > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > > i40evf_add_del_all_mac_addr(): add/rm mac:62:64:21:84:83:b0 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > > i40evf_dev_rx_queue_start(): >> > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > i40evf_dev_tx_queue_start(): >> > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=1, queue=0. > > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on > > Tx queue 0 > > > > i40evf_dev_start(): >> > > i40evf_config_rss(): No hash flag is set > > i40e_set_rx_function(): Vector Rx path will be used on port=1. > > i40e_set_tx_function(): Xmit tx finally be used. > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > > i40evf_add_del_all_mac_addr(): add/rm mac:c2:88:5c:a9:a2:ef > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > > i40evf_dev_rx_queue_start(): >> > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > i40evf_dev_tx_queue_start(): >> > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at socket > > -1 > > i40evf_dev_mtu_set(): port 1 must be stopped before configuration > > i40evf_dev_mtu_set(): port 0 must be stopped before configuration > > Caught signal 10 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > Caught signal 10 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > > > > process start option which is triggered by shell script is as below. > > > > < start-epp.sh > > > exec /usr/local/bin/ericsson-packet-processor \ > > $(get_dpdk_core_list_parameter) \ > > $(get_dpdk_mem_parameter) \ > > $(get_dpdk_hugepage_parameters) \ > > -d /usr/local/lib/librte_mempool_ring.so \ -d > > /usr/local/lib/librte_mempool_stack.so \ -d > > /usr/local/lib/librte_net_pcap.so \ -d > > /usr/local/lib/librte_net_i40e.so \ -d > > /usr/local/lib/librte_net_mlx5.so \ -d > > /usr/local/lib/librte_event_dsw.so \ $DPDK_PCI_OPTIONS \ > > --vdev=event_dsw0 \ > > --vdev=eth_pcap0,iface=midhaul_edk \ > > --vdev=eth_pcap1,iface=backhaul_edk \ --file-prefix=container \ > > --log-level lib.eal:debug \ > > dv_flow_en=0 \ > > --log-level=pmd,8 \ > > -- \ > > $(get_epp_mempool_parameter) \ > > > > "--neighbor-discovery-interface=midhaul_ker,${MIDHAUL_IP_ADDR},mac_addr_dev=${MIDHAUL_MAC_ADDR_DEV},vr_id=0" \ "--neighbor-discovery-interface=backhaul_ker,${BACKHAUL_IP_ADDR},mac_addr_dev=${BACKHAUL_MAC_ADDR_DEV},vr_id=1" > > > > BR/Jaeeun > > > > -----Original Message----- > > From: Thomas Monjalon <thomas@monjalon.net> > > Sent: Wednesday, September 29, 2021 8:16 PM > > To: Jaeeun Ham <jaeeun.ham@ericsson.com> > > Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; > > asafp@nvidia.com > > Subject: Re: I need DPDK MLX5 Probe error support > > > > 27/09/2021 02:18, Jaeeun Ham: > > > Hi, > > > > > > I hope you are well. > > > My name is Jaeeun Ham and I have been working for the Ericsson. > > > > > > I am suffering from enabling MLX5 NIC, so could you take a look at how to run it? > > > There are two pci address for the SRIOV(vfio) mlx5 nic support but > > > it doesn't run correctly. (12:01.0, 12:01.1) > > > > > > I started one process which is running inside the docker process that is on the MLX5 NIC support host server. > > > The process started to run with following option. > > > -d /usr/local/lib/librte_net_mlx5.so And the docker process has > > > mlx5 libraries as below. > > > > Did you try on the host outside of any container? > > > > Please could you try following commands (variables to be replaced)? > > > > dpdk-hugepages.py --reserve 1G > > ip link set $netdev netns $container > > docker run --cap-add SYS_NICE --cap-add IPC_LOCK --cap-add NET_ADMIN \ > > --device /dev/infiniband/ $image > > echo show port summary all | dpdk-testpmd --in-memory -- -i > > > > > > > > > 706a37a35d29:/usr/local/lib # ls -1 | grep mlx librte_common_mlx5.so > > > librte_common_mlx5.so.21 > > > librte_common_mlx5.so.21.0 > > > librte_net_mlx5.so > > > librte_net_mlx5.so.21 > > > librte_net_mlx5.so.21.0 > > > > > > But I failed to run the process with following error. > > > (MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1) > > > > > > --- > > > > > > mlx5_pci: unable to recognize master/representors on the multiple IB > > > devices > > > common_mlx5: Failed to load driver = mlx5_pci. > > > EAL: Requested device 0000:12:01.0 cannot be used > > > mlx5_pci: unable to recognize master/representors on the multiple IB > > > devices > > > common_mlx5: Failed to load driver = mlx5_pci. > > > EAL: Requested device 0000:12:01.1 cannot be used > > > EAL: Bus (pci) probe failed. > > > > > > --- > > > > > > For the success case of pci address 12:01.2, it showed following messages. > > > > > > --- > > > > > > EAL: Detected 64 lcore(s) > > > EAL: Detected 2 NUMA nodes > > > EAL: Multi-process socket /var/run/dpdk/nah2/mp_socket > > > EAL: Probing VFIO support... > > > EAL: VFIO support initialized > > > EAL: PCI device 0000:12:01.2 on NUMA socket 0 > > > EAL: probe driver: 15b3:1016 net_mlx5 > > > net_mlx5: MPLS over GRE/UDP tunnel offloading disabled due to old > > > OFED/rdma-core version or firmware configuration > > > net_mlx5: port 0 the requested maximum Rx packet size (2056) is > > > larger than a single mbuf (2048) and scattered mode has not been > > > requested > > > USER1: rte_ip_frag_table_create: allocated of 6291584 bytes at > > > socket > > > 0 > > > > > > --- > > > > > > BR/Jaeeun > > > > > > ^ permalink raw reply [flat|nested] 13+ messages in thread
[parent not found: <HE1PR07MB42208754E63C0DE2D0F0D138F3B09@HE1PR07MB4220.eurprd07.prod.outlook.com>]
* Re: I need DPDK MLX5 Probe error support [not found] ` <HE1PR07MB42208754E63C0DE2D0F0D138F3B09@HE1PR07MB4220.eurprd07.prod.outlook.com> @ 2021-10-06 13:19 ` Thomas Monjalon 2021-10-09 1:12 ` Jaeeun Ham 0 siblings, 1 reply; 13+ messages in thread From: Thomas Monjalon @ 2021-10-06 13:19 UTC (permalink / raw) To: Jaeeun Ham; +Cc: users, alialnu, rasland, asafp I don't even know which Linux distribution you are using. Please send the Dockerfile. If it compiles in Docker, it should run. 06/10/2021 14:27, Jaeeun Ham: > Hi Thomas, > > The cause is that I fail to load mlx5 driver using pci address on the docker container. > So, I tried to add rdma-core library to solve dependency issue you mentioned as below. > Docker image is built with these Dockerfiles. > This docker image is built with DPDK20.11. > How should I add rdma-core library? > > I don't find any rdma related so files in the docker container. > b273016e5be8:/usr/local/lib # ls *mlx* > librte_common_mlx5.so librte_common_mlx5.so.21 librte_common_mlx5.so.21.0 librte_net_mlx5.so librte_net_mlx5.so.21 librte_net_mlx5.so.21.0 > b273016e5be8:/usr/local/lib # ls *rdma* > ls: cannot access '*rdma*': No such file or directory > > dpdk-20.11/doc/guides/rel_notes/release_20_11.rst > 911: * rdma-core: > 913: * rdma-core-31.0-1 and above > > > > < error log > > f1d23550a947:/ # cat /tmp/logs/epp.log > MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1 MIDHAUL_IP_ADDR:10.255.20.125, BACKHAUL_IP_ADDR:10.255.20.124 > mlx5_pci: unable to recognize master/representors on the multiple IB devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.0 cannot be used > mlx5_pci: unable to recognize master/representors on the multiple IB devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.1 cannot be used > EAL: Bus (pci) probe failed. > FATAL: epp_init.c::copy_mac_addr:130: Call to rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: -19 (Unknown error -19), rte_errno=0 (not set) > > Caught signal 6 > Obtained 7 stack frames, tid=1377. > tid=1377, /usr/local/bin/ericsson-packet-processor() [0x40a3c4] tid=1377, /lib64/libpthread.so.0(+0x13f80) [0x7f56c4786f80] tid=1377, /lib64/libc.so.6(gsignal+0x10b) [0x7f56c229018b] tid=1377, /lib64/libc.so.6(abort+0x175) [0x7f56c2291585] tid=1377, /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] tid=1377, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f56c227b34d] tid=1377, /usr/local/bin/ericsson-packet-processor(_start+0x2a) [0x4090ea] > > > > BR/Jaeeun > > -----Original Message----- > From: Thomas Monjalon <thomas@monjalon.net> > Sent: Wednesday, October 6, 2021 7:59 PM > To: Jaeeun Ham <jaeeun.ham@ericsson.com> > Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; asafp@nvidia.com > Subject: Re: I need DPDK MLX5 Probe error support > > Installing dependencies is not an issue. > I don't understand which support you need. > > > 06/10/2021 11:57, Jaeeun Ham: > > Hi Thomas, > > > > Could you take a look at the attached file? > > My engineer managed to compile DPDK 20.11 to support MLX5. Please find the output from dpdk-testpmd command in attached file. As you can see testpmd was able to probe mlx5_pci drivers and get MAC addresses. > > The key issue in his case for enabling MLX5 support was to export rdma-core lib path to shared libs for meson/ninja commands as new build system automatically enables MLX5 support if needed dependencies are available. > > > > BR/Jaeeun > > > > -----Original Message----- > > From: Thomas Monjalon <thomas@monjalon.net<mailto:thomas@monjalon.net>> > > Sent: Sunday, October 3, 2021 4:51 PM > > To: Jaeeun Ham <jaeeun.ham@ericsson.com<mailto:jaeeun.ham@ericsson.com>> > > Cc: users@dpdk.org<mailto:users@dpdk.org>; alialnu@nvidia.com<mailto:alialnu@nvidia.com>; rasland@nvidia.com<mailto:rasland@nvidia.com>; > > asafp@nvidia.com<mailto:asafp@nvidia.com> > > Subject: Re: I need DPDK MLX5 Probe error support > > > > Hi, > > > > I think you need to read the documentation. > > For DPDK install on Linux: > > https://protect2.fireeye.com/v1/url?k=7925aba3-26be92c2-7925eb38-86d8a > > 30ca42b-d871f122b4a0a61a&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3&u= > > https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Flinux_gsg%2Fbuild_dpdk.html%23co > > mpiling-and-installing-dpdk-system-wide > > For mlx5 specific dependencies, install rdma-core package: > > https://protect2.fireeye.com/v1/url?k=9bce4984-c45570e5-9bce091f-86d8a > > 30ca42b-25bd3d467b5f290d&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3&u= > > https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Fnics%2Fmlx5.html%23linux-prerequ > > isites > > > > > > 02/10/2021 12:57, Jaeeun Ham: > > > Hi, > > > > > > Could you teach me how to install dpdk-testpmd? > > > I have to run the application on the host server, not a development server. > > > So, I don't know how to get dpdk-testpmd. > > > > > > By the way, testpmd run result is as below. > > > root@seroics05590:~/ejaeham# testpmd > > > EAL: Detected 64 lcore(s) > > > EAL: libmlx4.so.1: cannot open shared object file: No such file or > > > directory > > > EAL: FATAL: Cannot init plugins > > > > > > EAL: Cannot init plugins > > > > > > PANIC in main(): > > > Cannot init EAL > > > 5: [testpmd(_start+0x2a) [0x55d301d98e1a]] > > > 4: [/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) > > > [0x7f5e044a4bf7]] > > > 3: [testpmd(main+0x907) [0x55d301d98d07]] > > > 2: [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(__rte_panic+0xbd) > > > [0x7f5e04ca3cfd]] > > > 1: > > > [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(rte_dump_stack+0x2e) > > > [0x7f5e04cac19e]] Aborted > > > > > > > > > I added option below when the process is starting in the docker. > > > dv_flow_en=0 \ > > > --log-level=pmd,8 \ > > > < MLX5 log > > > > 415a695ba348:/tmp/logs # cat epp.log MIDHAUL_PCI_ADDR:0000:12:01.0, > > > BACKHAUL_PCI_ADDR:0000:12:01.1 MIDHAUL_IP_ADDR:10.255.21.177, > > > BACKHAUL_IP_ADDR:10.255.21.178 > > > mlx5_pci: unable to recognize master/representors on the multiple IB > > > devices > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > > > EAL: Requested device 0000:12:01.0 cannot be used > > > mlx5_pci: unable to recognize master/representors on the multiple IB > > > devices > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > > > EAL: Requested device 0000:12:01.1 cannot be used > > > EAL: Bus (pci) probe failed. > > > EAL: Trying to obtain current memory policy. > > > EAL: Setting policy MPOL_PREFERRED for socket 1 Caught signal 15 > > > EAL: Restoring previous memory policy: 0 > > > EAL: Calling mem event callback 'MLX5_MEM_EVENT_CB:(nil)' > > > EAL: request: mp_malloc_sync > > > EAL: Heap on socket 1 was expanded by 5120MB > > > FATAL: epp_init.c::copy_mac_addr:130: Call to > > > rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: > > > -19 (Unknown error -19), rte_errno=0 (not set) > > > > > > Caught signal 6 > > > Obtained 7 stack frames, tid=713. > > > tid=713, /usr/local/bin/ericsson-packet-processor() [0x40a4a4] > > > tid=713, /lib64/libpthread.so.0(+0x13f80) [0x7f7e1eae8f80] tid=713, > > > /lib64/libc.so.6(gsignal+0x10b) [0x7f7e1c5f818b] tid=713, > > > /lib64/libc.so.6(abort+0x175) [0x7f7e1c5f9585] tid=713, > > > /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] > > > tid=713, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f7e1c5e334d] > > > tid=713, /usr/local/bin/ericsson-packet-processor(_start+0x2a) > > > [0x4091ca] > > > > > > < i40e log > > > > cat epp.log > > > MIDHAUL_PCI_ADDR:0000:3b:0d.5, BACKHAUL_PCI_ADDR:0000:3b:0d.4 > > > MIDHAUL_IP_ADDR:10.51.21.112, BACKHAUL_IP_ADDR:10.51.21.113 > > > EAL: Trying to obtain current memory policy. > > > EAL: Setting policy MPOL_PREFERRED for socket 1 > > > EAL: Restoring previous memory policy: 0 > > > EAL: Calling mem event callback 'vfio_mem_event_clb:(nil)' > > > EAL: request: mp_malloc_sync > > > EAL: Heap on socket 1 was expanded by 5120MB > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > > > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=0, queue=0. > > > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on > > > Tx queue 0 > > > > > > i40evf_dev_start(): >> > > > i40evf_config_rss(): No hash flag is set > > > i40e_set_rx_function(): Vector Rx path will be used on port=0. > > > i40e_set_tx_function(): Xmit tx finally be used. > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > > > i40evf_add_del_all_mac_addr(): add/rm mac:62:64:21:84:83:b0 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > > > i40evf_dev_rx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_tx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > > > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=1, queue=0. > > > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled on > > > Tx queue 0 > > > > > > i40evf_dev_start(): >> > > > i40evf_config_rss(): No hash flag is set > > > i40e_set_rx_function(): Vector Rx path will be used on port=1. > > > i40e_set_tx_function(): Xmit tx finally be used. > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > > > i40evf_add_del_all_mac_addr(): add/rm mac:c2:88:5c:a9:a2:ef > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > > > i40evf_dev_rx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_tx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > i40evf_dev_mtu_set(): port 1 must be stopped before configuration > > > i40evf_dev_mtu_set(): port 0 must be stopped before configuration > > > Caught signal 10 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > Caught signal 10 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > > > > > > > process start option which is triggered by shell script is as below. > > > > > > < start-epp.sh > > > > exec /usr/local/bin/ericsson-packet-processor \ > > > $(get_dpdk_core_list_parameter) \ > > > $(get_dpdk_mem_parameter) \ > > > $(get_dpdk_hugepage_parameters) \ > > > -d /usr/local/lib/librte_mempool_ring.so \ -d > > > /usr/local/lib/librte_mempool_stack.so \ -d > > > /usr/local/lib/librte_net_pcap.so \ -d > > > /usr/local/lib/librte_net_i40e.so \ -d > > > /usr/local/lib/librte_net_mlx5.so \ -d > > > /usr/local/lib/librte_event_dsw.so \ $DPDK_PCI_OPTIONS \ > > > --vdev=event_dsw0 \ > > > --vdev=eth_pcap0,iface=midhaul_edk \ > > > --vdev=eth_pcap1,iface=backhaul_edk \ --file-prefix=container \ > > > --log-level lib.eal:debug \ > > > dv_flow_en=0 \ > > > --log-level=pmd,8 \ > > > -- \ > > > $(get_epp_mempool_parameter) \ > > > > > > "--neighbor-discovery-interface=midhaul_ker,${MIDHAUL_IP_ADDR},mac_addr_dev=${MIDHAUL_MAC_ADDR_DEV},vr_id=0" \ "--neighbor-discovery-interface=backhaul_ker,${BACKHAUL_IP_ADDR},mac_addr_dev=${BACKHAUL_MAC_ADDR_DEV},vr_id=1" > > > > > > BR/Jaeeun > > > > > > -----Original Message----- > > > From: Thomas Monjalon <thomas@monjalon.net<mailto:thomas@monjalon.net>> > > > Sent: Wednesday, September 29, 2021 8:16 PM > > > To: Jaeeun Ham <jaeeun.ham@ericsson.com<mailto:jaeeun.ham@ericsson.com>> > > > Cc: users@dpdk.org<mailto:users@dpdk.org>; alialnu@nvidia.com<mailto:alialnu@nvidia.com>; rasland@nvidia.com<mailto:rasland@nvidia.com>; > > > asafp@nvidia.com<mailto:asafp@nvidia.com> > > > Subject: Re: I need DPDK MLX5 Probe error support > > > > > > 27/09/2021 02:18, Jaeeun Ham: > > > > Hi, > > > > > > > > I hope you are well. > > > > My name is Jaeeun Ham and I have been working for the Ericsson. > > > > > > > > I am suffering from enabling MLX5 NIC, so could you take a look at how to run it? > > > > There are two pci address for the SRIOV(vfio) mlx5 nic support but > > > > it doesn't run correctly. (12:01.0, 12:01.1) > > > > > > > > I started one process which is running inside the docker process that is on the MLX5 NIC support host server. > > > > The process started to run with following option. > > > > -d /usr/local/lib/librte_net_mlx5.so And the docker process > > > > has > > > > mlx5 libraries as below. > > > > > > Did you try on the host outside of any container? > > > > > > Please could you try following commands (variables to be replaced)? > > > > > > dpdk-hugepages.py --reserve 1G > > > ip link set $netdev netns $container > > > docker run --cap-add SYS_NICE --cap-add IPC_LOCK --cap-add NET_ADMIN \ > > > --device /dev/infiniband/ $image > > > echo show port summary all | dpdk-testpmd --in-memory -- -i > > > > > > > > > > > > > 706a37a35d29:/usr/local/lib # ls -1 | grep mlx > > > > librte_common_mlx5.so > > > > librte_common_mlx5.so.21 > > > > librte_common_mlx5.so.21.0 > > > > librte_net_mlx5.so > > > > librte_net_mlx5.so.21 > > > > librte_net_mlx5.so.21.0 > > > > > > > > But I failed to run the process with following error. > > > > (MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1) > > > > > > > > --- > > > > > > > > mlx5_pci: unable to recognize master/representors on the multiple > > > > IB devices > > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > EAL: Requested device 0000:12:01.0 cannot be used > > > > mlx5_pci: unable to recognize master/representors on the multiple > > > > IB devices > > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > EAL: Requested device 0000:12:01.1 cannot be used > > > > EAL: Bus (pci) probe failed. > > > > > > > > --- > > > > > > > > For the success case of pci address 12:01.2, it showed following messages. > > > > > > > > --- > > > > > > > > EAL: Detected 64 lcore(s) > > > > EAL: Detected 2 NUMA nodes > > > > EAL: Multi-process socket /var/run/dpdk/nah2/mp_socket > > > > EAL: Probing VFIO support... > > > > EAL: VFIO support initialized > > > > EAL: PCI device 0000:12:01.2 on NUMA socket 0 > > > > EAL: probe driver: 15b3:1016 net_mlx5 > > > > net_mlx5: MPLS over GRE/UDP tunnel offloading disabled due to old > > > > OFED/rdma-core version or firmware configuration > > > > net_mlx5: port 0 the requested maximum Rx packet size (2056) is > > > > larger than a single mbuf (2048) and scattered mode has not been > > > > requested > > > > USER1: rte_ip_frag_table_create: allocated of 6291584 bytes at > > > > socket > > > > 0 > > > > > > > > --- > > > > > > > > BR/Jaeeun ^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: I need DPDK MLX5 Probe error support 2021-10-06 13:19 ` Thomas Monjalon @ 2021-10-09 1:12 ` Jaeeun Ham 2021-10-09 1:15 ` Jaeeun Ham 0 siblings, 1 reply; 13+ messages in thread From: Jaeeun Ham @ 2021-10-09 1:12 UTC (permalink / raw) To: Thomas Monjalon; +Cc: users, alialnu, rasland, asafp Hi Thomas, I am sorry for the inconvenience. Docker is compiled as a layered, so three attached Dockerfiles are used. Dockerfile.prod.base: application base Dockerfile.prod: application Dockerfile.build: tool chains < docker container version > 4a9d999f0c15:/ # uname -a Linux 4a9d999f0c15 4.15.0-46-generic #49-Ubuntu SMP Wed Feb 6 09:33:07 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux BR/Jaeeun -----Original Message----- From: Thomas Monjalon <thomas@monjalon.net> Sent: Wednesday, October 6, 2021 10:19 PM To: Jaeeun Ham <jaeeun.ham@ericsson.com> Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; asafp@nvidia.com Subject: Re: I need DPDK MLX5 Probe error support I don't even know which Linux distribution you are using. Please send the Dockerfile. If it compiles in Docker, it should run. 06/10/2021 14:27, Jaeeun Ham: > Hi Thomas, > > The cause is that I fail to load mlx5 driver using pci address on the docker container. > So, I tried to add rdma-core library to solve dependency issue you mentioned as below. > Docker image is built with these Dockerfiles. > This docker image is built with DPDK20.11. > How should I add rdma-core library? > > I don't find any rdma related so files in the docker container. > b273016e5be8:/usr/local/lib # ls *mlx* librte_common_mlx5.so > librte_common_mlx5.so.21 librte_common_mlx5.so.21.0 > librte_net_mlx5.so librte_net_mlx5.so.21 librte_net_mlx5.so.21.0 > b273016e5be8:/usr/local/lib # ls *rdma* > ls: cannot access '*rdma*': No such file or directory > > dpdk-20.11/doc/guides/rel_notes/release_20_11.rst > 911: * rdma-core: > 913: * rdma-core-31.0-1 and above > > > > < error log > > f1d23550a947:/ # cat /tmp/logs/epp.log MIDHAUL_PCI_ADDR:0000:12:01.0, > BACKHAUL_PCI_ADDR:0000:12:01.1 MIDHAUL_IP_ADDR:10.255.20.125, > BACKHAUL_IP_ADDR:10.255.20.124 > mlx5_pci: unable to recognize master/representors on the multiple IB > devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.0 cannot be used > mlx5_pci: unable to recognize master/representors on the multiple IB > devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.1 cannot be used > EAL: Bus (pci) probe failed. > FATAL: epp_init.c::copy_mac_addr:130: Call to > rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: -19 > (Unknown error -19), rte_errno=0 (not set) > > Caught signal 6 > Obtained 7 stack frames, tid=1377. > tid=1377, /usr/local/bin/ericsson-packet-processor() [0x40a3c4] > tid=1377, /lib64/libpthread.so.0(+0x13f80) [0x7f56c4786f80] tid=1377, > /lib64/libc.so.6(gsignal+0x10b) [0x7f56c229018b] tid=1377, > /lib64/libc.so.6(abort+0x175) [0x7f56c2291585] tid=1377, > /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] > tid=1377, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f56c227b34d] > tid=1377, /usr/local/bin/ericsson-packet-processor(_start+0x2a) > [0x4090ea] > > > > BR/Jaeeun > > -----Original Message----- > From: Thomas Monjalon <thomas@monjalon.net> > Sent: Wednesday, October 6, 2021 7:59 PM > To: Jaeeun Ham <jaeeun.ham@ericsson.com> > Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; > asafp@nvidia.com > Subject: Re: I need DPDK MLX5 Probe error support > > Installing dependencies is not an issue. > I don't understand which support you need. > > > 06/10/2021 11:57, Jaeeun Ham: > > Hi Thomas, > > > > Could you take a look at the attached file? > > My engineer managed to compile DPDK 20.11 to support MLX5. Please find the output from dpdk-testpmd command in attached file. As you can see testpmd was able to probe mlx5_pci drivers and get MAC addresses. > > The key issue in his case for enabling MLX5 support was to export rdma-core lib path to shared libs for meson/ninja commands as new build system automatically enables MLX5 support if needed dependencies are available. > > > > BR/Jaeeun > > > > -----Original Message----- > > From: Thomas Monjalon > > <thomas@monjalon.net<mailto:thomas@monjalon.net>> > > Sent: Sunday, October 3, 2021 4:51 PM > > To: Jaeeun Ham > > <jaeeun.ham@ericsson.com<mailto:jaeeun.ham@ericsson.com>> > > Cc: users@dpdk.org<mailto:users@dpdk.org>; > > alialnu@nvidia.com<mailto:alialnu@nvidia.com>; > > rasland@nvidia.com<mailto:rasland@nvidia.com>; > > asafp@nvidia.com<mailto:asafp@nvidia.com> > > Subject: Re: I need DPDK MLX5 Probe error support > > > > Hi, > > > > I think you need to read the documentation. > > For DPDK install on Linux: > > https://protect2.fireeye.com/v1/url?k=7925aba3-26be92c2-7925eb38-86d > > 8a > > 30ca42b-d871f122b4a0a61a&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3& > > u= > > https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Flinux_gsg%2Fbuild_dpdk.html%23 > > co mpiling-and-installing-dpdk-system-wide > > For mlx5 specific dependencies, install rdma-core package: > > https://protect2.fireeye.com/v1/url?k=9bce4984-c45570e5-9bce091f-86d > > 8a > > 30ca42b-25bd3d467b5f290d&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3& > > u= > > https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Fnics%2Fmlx5.html%23linux-prere > > qu > > isites > > > > > > 02/10/2021 12:57, Jaeeun Ham: > > > Hi, > > > > > > Could you teach me how to install dpdk-testpmd? > > > I have to run the application on the host server, not a development server. > > > So, I don't know how to get dpdk-testpmd. > > > > > > By the way, testpmd run result is as below. > > > root@seroics05590:~/ejaeham# testpmd > > > EAL: Detected 64 lcore(s) > > > EAL: libmlx4.so.1: cannot open shared object file: No such file or > > > directory > > > EAL: FATAL: Cannot init plugins > > > > > > EAL: Cannot init plugins > > > > > > PANIC in main(): > > > Cannot init EAL > > > 5: [testpmd(_start+0x2a) [0x55d301d98e1a]] > > > 4: [/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) > > > [0x7f5e044a4bf7]] > > > 3: [testpmd(main+0x907) [0x55d301d98d07]] > > > 2: > > > [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(__rte_panic+0xbd) > > > [0x7f5e04ca3cfd]] > > > 1: > > > [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(rte_dump_stack+0x2e > > > ) > > > [0x7f5e04cac19e]] Aborted > > > > > > > > > I added option below when the process is starting in the docker. > > > dv_flow_en=0 \ > > > --log-level=pmd,8 \ > > > < MLX5 log > > > > 415a695ba348:/tmp/logs # cat epp.log > > > MIDHAUL_PCI_ADDR:0000:12:01.0, > > > BACKHAUL_PCI_ADDR:0000:12:01.1 MIDHAUL_IP_ADDR:10.255.21.177, > > > BACKHAUL_IP_ADDR:10.255.21.178 > > > mlx5_pci: unable to recognize master/representors on the multiple > > > IB devices > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > > > EAL: Requested device 0000:12:01.0 cannot be used > > > mlx5_pci: unable to recognize master/representors on the multiple > > > IB devices > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > > > EAL: Requested device 0000:12:01.1 cannot be used > > > EAL: Bus (pci) probe failed. > > > EAL: Trying to obtain current memory policy. > > > EAL: Setting policy MPOL_PREFERRED for socket 1 Caught signal 15 > > > EAL: Restoring previous memory policy: 0 > > > EAL: Calling mem event callback 'MLX5_MEM_EVENT_CB:(nil)' > > > EAL: request: mp_malloc_sync > > > EAL: Heap on socket 1 was expanded by 5120MB > > > FATAL: epp_init.c::copy_mac_addr:130: Call to > > > rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: > > > -19 (Unknown error -19), rte_errno=0 (not set) > > > > > > Caught signal 6 > > > Obtained 7 stack frames, tid=713. > > > tid=713, /usr/local/bin/ericsson-packet-processor() [0x40a4a4] > > > tid=713, /lib64/libpthread.so.0(+0x13f80) [0x7f7e1eae8f80] > > > tid=713, > > > /lib64/libc.so.6(gsignal+0x10b) [0x7f7e1c5f818b] tid=713, > > > /lib64/libc.so.6(abort+0x175) [0x7f7e1c5f9585] tid=713, > > > /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] > > > tid=713, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f7e1c5e334d] > > > tid=713, /usr/local/bin/ericsson-packet-processor(_start+0x2a) > > > [0x4091ca] > > > > > > < i40e log > > > > cat epp.log > > > MIDHAUL_PCI_ADDR:0000:3b:0d.5, BACKHAUL_PCI_ADDR:0000:3b:0d.4 > > > MIDHAUL_IP_ADDR:10.51.21.112, BACKHAUL_IP_ADDR:10.51.21.113 > > > EAL: Trying to obtain current memory policy. > > > EAL: Setting policy MPOL_PREFERRED for socket 1 > > > EAL: Restoring previous memory policy: 0 > > > EAL: Calling mem event callback 'vfio_mem_event_clb:(nil)' > > > EAL: request: mp_malloc_sync > > > EAL: Heap on socket 1 was expanded by 5120MB > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > > > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=0, queue=0. > > > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled > > > on Tx queue 0 > > > > > > i40evf_dev_start(): >> > > > i40evf_config_rss(): No hash flag is set > > > i40e_set_rx_function(): Vector Rx path will be used on port=0. > > > i40e_set_tx_function(): Xmit tx finally be used. > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > > > i40evf_add_del_all_mac_addr(): add/rm mac:62:64:21:84:83:b0 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > > > i40evf_dev_rx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_tx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > > > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=1, queue=0. > > > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled > > > on Tx queue 0 > > > > > > i40evf_dev_start(): >> > > > i40evf_config_rss(): No hash flag is set > > > i40e_set_rx_function(): Vector Rx path will be used on port=1. > > > i40e_set_tx_function(): Xmit tx finally be used. > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > > > i40evf_add_del_all_mac_addr(): add/rm mac:c2:88:5c:a9:a2:ef > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > > > i40evf_dev_rx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_tx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > i40evf_dev_mtu_set(): port 1 must be stopped before configuration > > > i40evf_dev_mtu_set(): port 0 must be stopped before configuration > > > Caught signal 10 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > Caught signal 10 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > > > > > > > process start option which is triggered by shell script is as below. > > > > > > < start-epp.sh > > > > exec /usr/local/bin/ericsson-packet-processor \ > > > $(get_dpdk_core_list_parameter) \ > > > $(get_dpdk_mem_parameter) \ > > > $(get_dpdk_hugepage_parameters) \ -d > > > /usr/local/lib/librte_mempool_ring.so \ -d > > > /usr/local/lib/librte_mempool_stack.so \ -d > > > /usr/local/lib/librte_net_pcap.so \ -d > > > /usr/local/lib/librte_net_i40e.so \ -d > > > /usr/local/lib/librte_net_mlx5.so \ -d > > > /usr/local/lib/librte_event_dsw.so \ $DPDK_PCI_OPTIONS \ > > > --vdev=event_dsw0 \ > > > --vdev=eth_pcap0,iface=midhaul_edk \ > > > --vdev=eth_pcap1,iface=backhaul_edk \ --file-prefix=container \ > > > --log-level lib.eal:debug \ > > > dv_flow_en=0 \ > > > --log-level=pmd,8 \ > > > -- \ > > > $(get_epp_mempool_parameter) \ > > > > > > "--neighbor-discovery-interface=midhaul_ker,${MIDHAUL_IP_ADDR},mac_addr_dev=${MIDHAUL_MAC_ADDR_DEV},vr_id=0" \ "--neighbor-discovery-interface=backhaul_ker,${BACKHAUL_IP_ADDR},mac_addr_dev=${BACKHAUL_MAC_ADDR_DEV},vr_id=1" > > > > > > BR/Jaeeun > > > > > > -----Original Message----- > > > From: Thomas Monjalon > > > <thomas@monjalon.net<mailto:thomas@monjalon.net>> > > > Sent: Wednesday, September 29, 2021 8:16 PM > > > To: Jaeeun Ham > > > <jaeeun.ham@ericsson.com<mailto:jaeeun.ham@ericsson.com>> > > > Cc: users@dpdk.org<mailto:users@dpdk.org>; > > > alialnu@nvidia.com<mailto:alialnu@nvidia.com>; > > > rasland@nvidia.com<mailto:rasland@nvidia.com>; > > > asafp@nvidia.com<mailto:asafp@nvidia.com> > > > Subject: Re: I need DPDK MLX5 Probe error support > > > > > > 27/09/2021 02:18, Jaeeun Ham: > > > > Hi, > > > > > > > > I hope you are well. > > > > My name is Jaeeun Ham and I have been working for the Ericsson. > > > > > > > > I am suffering from enabling MLX5 NIC, so could you take a look at how to run it? > > > > There are two pci address for the SRIOV(vfio) mlx5 nic support > > > > but it doesn't run correctly. (12:01.0, 12:01.1) > > > > > > > > I started one process which is running inside the docker process that is on the MLX5 NIC support host server. > > > > The process started to run with following option. > > > > -d /usr/local/lib/librte_net_mlx5.so And the docker process > > > > has > > > > mlx5 libraries as below. > > > > > > Did you try on the host outside of any container? > > > > > > Please could you try following commands (variables to be replaced)? > > > > > > dpdk-hugepages.py --reserve 1G > > > ip link set $netdev netns $container > > > docker run --cap-add SYS_NICE --cap-add IPC_LOCK --cap-add NET_ADMIN \ > > > --device /dev/infiniband/ $image > > > echo show port summary all | dpdk-testpmd --in-memory -- -i > > > > > > > > > > > > > 706a37a35d29:/usr/local/lib # ls -1 | grep mlx > > > > librte_common_mlx5.so > > > > librte_common_mlx5.so.21 > > > > librte_common_mlx5.so.21.0 > > > > librte_net_mlx5.so > > > > librte_net_mlx5.so.21 > > > > librte_net_mlx5.so.21.0 > > > > > > > > But I failed to run the process with following error. > > > > (MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1) > > > > > > > > --- > > > > > > > > mlx5_pci: unable to recognize master/representors on the > > > > multiple IB devices > > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > EAL: Requested device 0000:12:01.0 cannot be used > > > > mlx5_pci: unable to recognize master/representors on the > > > > multiple IB devices > > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > EAL: Requested device 0000:12:01.1 cannot be used > > > > EAL: Bus (pci) probe failed. > > > > > > > > --- > > > > > > > > For the success case of pci address 12:01.2, it showed following messages. > > > > > > > > --- > > > > > > > > EAL: Detected 64 lcore(s) > > > > EAL: Detected 2 NUMA nodes > > > > EAL: Multi-process socket /var/run/dpdk/nah2/mp_socket > > > > EAL: Probing VFIO support... > > > > EAL: VFIO support initialized > > > > EAL: PCI device 0000:12:01.2 on NUMA socket 0 > > > > EAL: probe driver: 15b3:1016 net_mlx5 > > > > net_mlx5: MPLS over GRE/UDP tunnel offloading disabled due to > > > > old OFED/rdma-core version or firmware configuration > > > > net_mlx5: port 0 the requested maximum Rx packet size (2056) is > > > > larger than a single mbuf (2048) and scattered mode has not been > > > > requested > > > > USER1: rte_ip_frag_table_create: allocated of 6291584 bytes at > > > > socket > > > > 0 > > > > > > > > --- > > > > > > > > BR/Jaeeun ^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: I need DPDK MLX5 Probe error support 2021-10-09 1:12 ` Jaeeun Ham @ 2021-10-09 1:15 ` Jaeeun Ham 2021-10-09 4:42 ` Jaeeun Ham 0 siblings, 1 reply; 13+ messages in thread From: Jaeeun Ham @ 2021-10-09 1:15 UTC (permalink / raw) To: Thomas Monjalon; +Cc: users, alialnu, rasland, asafp, Keunho Shin, Joonmo Koo +Keunho Shin <keunho.shin@ericsson.com>; Joonmo Koo <joonmo.koo@ericsson.com> -----Original Message----- From: Jaeeun Ham Sent: Saturday, October 9, 2021 10:12 AM To: Thomas Monjalon <thomas@monjalon.net> Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; asafp@nvidia.com Subject: RE: I need DPDK MLX5 Probe error support Hi Thomas, I am sorry for the inconvenience. Docker is compiled as a layered, so three attached Dockerfiles are used. Dockerfile.prod.base: application base Dockerfile.prod: application Dockerfile.build: tool chains < docker container version > 4a9d999f0c15:/ # uname -a Linux 4a9d999f0c15 4.15.0-46-generic #49-Ubuntu SMP Wed Feb 6 09:33:07 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux BR/Jaeeun -----Original Message----- From: Thomas Monjalon <thomas@monjalon.net> Sent: Wednesday, October 6, 2021 10:19 PM To: Jaeeun Ham <jaeeun.ham@ericsson.com> Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; asafp@nvidia.com Subject: Re: I need DPDK MLX5 Probe error support I don't even know which Linux distribution you are using. Please send the Dockerfile. If it compiles in Docker, it should run. 06/10/2021 14:27, Jaeeun Ham: > Hi Thomas, > > The cause is that I fail to load mlx5 driver using pci address on the docker container. > So, I tried to add rdma-core library to solve dependency issue you mentioned as below. > Docker image is built with these Dockerfiles. > This docker image is built with DPDK20.11. > How should I add rdma-core library? > > I don't find any rdma related so files in the docker container. > b273016e5be8:/usr/local/lib # ls *mlx* librte_common_mlx5.so > librte_common_mlx5.so.21 librte_common_mlx5.so.21.0 > librte_net_mlx5.so librte_net_mlx5.so.21 librte_net_mlx5.so.21.0 > b273016e5be8:/usr/local/lib # ls *rdma* > ls: cannot access '*rdma*': No such file or directory > > dpdk-20.11/doc/guides/rel_notes/release_20_11.rst > 911: * rdma-core: > 913: * rdma-core-31.0-1 and above > > > > < error log > > f1d23550a947:/ # cat /tmp/logs/epp.log MIDHAUL_PCI_ADDR:0000:12:01.0, > BACKHAUL_PCI_ADDR:0000:12:01.1 MIDHAUL_IP_ADDR:10.255.20.125, > BACKHAUL_IP_ADDR:10.255.20.124 > mlx5_pci: unable to recognize master/representors on the multiple IB > devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.0 cannot be used > mlx5_pci: unable to recognize master/representors on the multiple IB > devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.1 cannot be used > EAL: Bus (pci) probe failed. > FATAL: epp_init.c::copy_mac_addr:130: Call to > rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: -19 > (Unknown error -19), rte_errno=0 (not set) > > Caught signal 6 > Obtained 7 stack frames, tid=1377. > tid=1377, /usr/local/bin/ericsson-packet-processor() [0x40a3c4] > tid=1377, /lib64/libpthread.so.0(+0x13f80) [0x7f56c4786f80] tid=1377, > /lib64/libc.so.6(gsignal+0x10b) [0x7f56c229018b] tid=1377, > /lib64/libc.so.6(abort+0x175) [0x7f56c2291585] tid=1377, > /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] > tid=1377, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f56c227b34d] > tid=1377, /usr/local/bin/ericsson-packet-processor(_start+0x2a) > [0x4090ea] > > > > BR/Jaeeun > > -----Original Message----- > From: Thomas Monjalon <thomas@monjalon.net> > Sent: Wednesday, October 6, 2021 7:59 PM > To: Jaeeun Ham <jaeeun.ham@ericsson.com> > Cc: users@dpdk.org; alialnu@nvidia.com; rasland@nvidia.com; > asafp@nvidia.com > Subject: Re: I need DPDK MLX5 Probe error support > > Installing dependencies is not an issue. > I don't understand which support you need. > > > 06/10/2021 11:57, Jaeeun Ham: > > Hi Thomas, > > > > Could you take a look at the attached file? > > My engineer managed to compile DPDK 20.11 to support MLX5. Please find the output from dpdk-testpmd command in attached file. As you can see testpmd was able to probe mlx5_pci drivers and get MAC addresses. > > The key issue in his case for enabling MLX5 support was to export rdma-core lib path to shared libs for meson/ninja commands as new build system automatically enables MLX5 support if needed dependencies are available. > > > > BR/Jaeeun > > > > -----Original Message----- > > From: Thomas Monjalon > > <thomas@monjalon.net<mailto:thomas@monjalon.net>> > > Sent: Sunday, October 3, 2021 4:51 PM > > To: Jaeeun Ham > > <jaeeun.ham@ericsson.com<mailto:jaeeun.ham@ericsson.com>> > > Cc: users@dpdk.org<mailto:users@dpdk.org>; > > alialnu@nvidia.com<mailto:alialnu@nvidia.com>; > > rasland@nvidia.com<mailto:rasland@nvidia.com>; > > asafp@nvidia.com<mailto:asafp@nvidia.com> > > Subject: Re: I need DPDK MLX5 Probe error support > > > > Hi, > > > > I think you need to read the documentation. > > For DPDK install on Linux: > > https://protect2.fireeye.com/v1/url?k=7925aba3-26be92c2-7925eb38-86d > > 8a > > 30ca42b-d871f122b4a0a61a&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3& > > u= > > https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Flinux_gsg%2Fbuild_dpdk.html%23 > > co mpiling-and-installing-dpdk-system-wide > > For mlx5 specific dependencies, install rdma-core package: > > https://protect2.fireeye.com/v1/url?k=9bce4984-c45570e5-9bce091f-86d > > 8a > > 30ca42b-25bd3d467b5f290d&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3& > > u= > > https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Fnics%2Fmlx5.html%23linux-prere > > qu > > isites > > > > > > 02/10/2021 12:57, Jaeeun Ham: > > > Hi, > > > > > > Could you teach me how to install dpdk-testpmd? > > > I have to run the application on the host server, not a development server. > > > So, I don't know how to get dpdk-testpmd. > > > > > > By the way, testpmd run result is as below. > > > root@seroics05590:~/ejaeham# testpmd > > > EAL: Detected 64 lcore(s) > > > EAL: libmlx4.so.1: cannot open shared object file: No such file or > > > directory > > > EAL: FATAL: Cannot init plugins > > > > > > EAL: Cannot init plugins > > > > > > PANIC in main(): > > > Cannot init EAL > > > 5: [testpmd(_start+0x2a) [0x55d301d98e1a]] > > > 4: [/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) > > > [0x7f5e044a4bf7]] > > > 3: [testpmd(main+0x907) [0x55d301d98d07]] > > > 2: > > > [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(__rte_panic+0xbd) > > > [0x7f5e04ca3cfd]] > > > 1: > > > [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(rte_dump_stack+0x2e > > > ) > > > [0x7f5e04cac19e]] Aborted > > > > > > > > > I added option below when the process is starting in the docker. > > > dv_flow_en=0 \ > > > --log-level=pmd,8 \ > > > < MLX5 log > > > > 415a695ba348:/tmp/logs # cat epp.log > > > MIDHAUL_PCI_ADDR:0000:12:01.0, > > > BACKHAUL_PCI_ADDR:0000:12:01.1 MIDHAUL_IP_ADDR:10.255.21.177, > > > BACKHAUL_IP_ADDR:10.255.21.178 > > > mlx5_pci: unable to recognize master/representors on the multiple > > > IB devices > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > > > EAL: Requested device 0000:12:01.0 cannot be used > > > mlx5_pci: unable to recognize master/representors on the multiple > > > IB devices > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > > > EAL: Requested device 0000:12:01.1 cannot be used > > > EAL: Bus (pci) probe failed. > > > EAL: Trying to obtain current memory policy. > > > EAL: Setting policy MPOL_PREFERRED for socket 1 Caught signal 15 > > > EAL: Restoring previous memory policy: 0 > > > EAL: Calling mem event callback 'MLX5_MEM_EVENT_CB:(nil)' > > > EAL: request: mp_malloc_sync > > > EAL: Heap on socket 1 was expanded by 5120MB > > > FATAL: epp_init.c::copy_mac_addr:130: Call to > > > rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: > > > -19 (Unknown error -19), rte_errno=0 (not set) > > > > > > Caught signal 6 > > > Obtained 7 stack frames, tid=713. > > > tid=713, /usr/local/bin/ericsson-packet-processor() [0x40a4a4] > > > tid=713, /lib64/libpthread.so.0(+0x13f80) [0x7f7e1eae8f80] > > > tid=713, > > > /lib64/libc.so.6(gsignal+0x10b) [0x7f7e1c5f818b] tid=713, > > > /lib64/libc.so.6(abort+0x175) [0x7f7e1c5f9585] tid=713, > > > /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] > > > tid=713, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f7e1c5e334d] > > > tid=713, /usr/local/bin/ericsson-packet-processor(_start+0x2a) > > > [0x4091ca] > > > > > > < i40e log > > > > cat epp.log > > > MIDHAUL_PCI_ADDR:0000:3b:0d.5, BACKHAUL_PCI_ADDR:0000:3b:0d.4 > > > MIDHAUL_IP_ADDR:10.51.21.112, BACKHAUL_IP_ADDR:10.51.21.113 > > > EAL: Trying to obtain current memory policy. > > > EAL: Setting policy MPOL_PREFERRED for socket 1 > > > EAL: Restoring previous memory policy: 0 > > > EAL: Calling mem event callback 'vfio_mem_event_clb:(nil)' > > > EAL: request: mp_malloc_sync > > > EAL: Heap on socket 1 was expanded by 5120MB > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > > > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=0, queue=0. > > > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled > > > on Tx queue 0 > > > > > > i40evf_dev_start(): >> > > > i40evf_config_rss(): No hash flag is set > > > i40e_set_rx_function(): Vector Rx path will be used on port=0. > > > i40e_set_tx_function(): Xmit tx finally be used. > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > > > i40evf_add_del_all_mac_addr(): add/rm mac:62:64:21:84:83:b0 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > > > i40evf_dev_rx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_tx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > > > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=1, queue=0. > > > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled > > > on Tx queue 0 > > > > > > i40evf_dev_start(): >> > > > i40evf_config_rss(): No hash flag is set > > > i40e_set_rx_function(): Vector Rx path will be used on port=1. > > > i40e_set_tx_function(): Xmit tx finally be used. > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > > > i40evf_add_del_all_mac_addr(): add/rm mac:c2:88:5c:a9:a2:ef > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > > > i40evf_dev_rx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_tx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > i40evf_dev_mtu_set(): port 1 must be stopped before configuration > > > i40evf_dev_mtu_set(): port 0 must be stopped before configuration > > > Caught signal 10 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > Caught signal 10 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > > > > > > > process start option which is triggered by shell script is as below. > > > > > > < start-epp.sh > > > > exec /usr/local/bin/ericsson-packet-processor \ > > > $(get_dpdk_core_list_parameter) \ > > > $(get_dpdk_mem_parameter) \ > > > $(get_dpdk_hugepage_parameters) \ -d > > > /usr/local/lib/librte_mempool_ring.so \ -d > > > /usr/local/lib/librte_mempool_stack.so \ -d > > > /usr/local/lib/librte_net_pcap.so \ -d > > > /usr/local/lib/librte_net_i40e.so \ -d > > > /usr/local/lib/librte_net_mlx5.so \ -d > > > /usr/local/lib/librte_event_dsw.so \ $DPDK_PCI_OPTIONS \ > > > --vdev=event_dsw0 \ > > > --vdev=eth_pcap0,iface=midhaul_edk \ > > > --vdev=eth_pcap1,iface=backhaul_edk \ --file-prefix=container \ > > > --log-level lib.eal:debug \ > > > dv_flow_en=0 \ > > > --log-level=pmd,8 \ > > > -- \ > > > $(get_epp_mempool_parameter) \ > > > > > > "--neighbor-discovery-interface=midhaul_ker,${MIDHAUL_IP_ADDR},mac_addr_dev=${MIDHAUL_MAC_ADDR_DEV},vr_id=0" \ "--neighbor-discovery-interface=backhaul_ker,${BACKHAUL_IP_ADDR},mac_addr_dev=${BACKHAUL_MAC_ADDR_DEV},vr_id=1" > > > > > > BR/Jaeeun > > > > > > -----Original Message----- > > > From: Thomas Monjalon > > > <thomas@monjalon.net<mailto:thomas@monjalon.net>> > > > Sent: Wednesday, September 29, 2021 8:16 PM > > > To: Jaeeun Ham > > > <jaeeun.ham@ericsson.com<mailto:jaeeun.ham@ericsson.com>> > > > Cc: users@dpdk.org<mailto:users@dpdk.org>; > > > alialnu@nvidia.com<mailto:alialnu@nvidia.com>; > > > rasland@nvidia.com<mailto:rasland@nvidia.com>; > > > asafp@nvidia.com<mailto:asafp@nvidia.com> > > > Subject: Re: I need DPDK MLX5 Probe error support > > > > > > 27/09/2021 02:18, Jaeeun Ham: > > > > Hi, > > > > > > > > I hope you are well. > > > > My name is Jaeeun Ham and I have been working for the Ericsson. > > > > > > > > I am suffering from enabling MLX5 NIC, so could you take a look at how to run it? > > > > There are two pci address for the SRIOV(vfio) mlx5 nic support > > > > but it doesn't run correctly. (12:01.0, 12:01.1) > > > > > > > > I started one process which is running inside the docker process that is on the MLX5 NIC support host server. > > > > The process started to run with following option. > > > > -d /usr/local/lib/librte_net_mlx5.so And the docker process > > > > has > > > > mlx5 libraries as below. > > > > > > Did you try on the host outside of any container? > > > > > > Please could you try following commands (variables to be replaced)? > > > > > > dpdk-hugepages.py --reserve 1G > > > ip link set $netdev netns $container > > > docker run --cap-add SYS_NICE --cap-add IPC_LOCK --cap-add NET_ADMIN \ > > > --device /dev/infiniband/ $image > > > echo show port summary all | dpdk-testpmd --in-memory -- -i > > > > > > > > > > > > > 706a37a35d29:/usr/local/lib # ls -1 | grep mlx > > > > librte_common_mlx5.so > > > > librte_common_mlx5.so.21 > > > > librte_common_mlx5.so.21.0 > > > > librte_net_mlx5.so > > > > librte_net_mlx5.so.21 > > > > librte_net_mlx5.so.21.0 > > > > > > > > But I failed to run the process with following error. > > > > (MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1) > > > > > > > > --- > > > > > > > > mlx5_pci: unable to recognize master/representors on the > > > > multiple IB devices > > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > EAL: Requested device 0000:12:01.0 cannot be used > > > > mlx5_pci: unable to recognize master/representors on the > > > > multiple IB devices > > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > EAL: Requested device 0000:12:01.1 cannot be used > > > > EAL: Bus (pci) probe failed. > > > > > > > > --- > > > > > > > > For the success case of pci address 12:01.2, it showed following messages. > > > > > > > > --- > > > > > > > > EAL: Detected 64 lcore(s) > > > > EAL: Detected 2 NUMA nodes > > > > EAL: Multi-process socket /var/run/dpdk/nah2/mp_socket > > > > EAL: Probing VFIO support... > > > > EAL: VFIO support initialized > > > > EAL: PCI device 0000:12:01.2 on NUMA socket 0 > > > > EAL: probe driver: 15b3:1016 net_mlx5 > > > > net_mlx5: MPLS over GRE/UDP tunnel offloading disabled due to > > > > old OFED/rdma-core version or firmware configuration > > > > net_mlx5: port 0 the requested maximum Rx packet size (2056) is > > > > larger than a single mbuf (2048) and scattered mode has not been > > > > requested > > > > USER1: rte_ip_frag_table_create: allocated of 6291584 bytes at > > > > socket > > > > 0 > > > > > > > > --- > > > > > > > > BR/Jaeeun ^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: I need DPDK MLX5 Probe error support 2021-10-09 1:15 ` Jaeeun Ham @ 2021-10-09 4:42 ` Jaeeun Ham 0 siblings, 0 replies; 13+ messages in thread From: Jaeeun Ham @ 2021-10-09 4:42 UTC (permalink / raw) To: Thomas Monjalon; +Cc: users, alialnu, rasland, asafp, Keunho Shin, Joonmo Koo Hi Thomas, I attached both testpmd results. (host server, docker container) Could you interpret what is the fault cause? BTW, I added LD_LIBRARY_PATH=libjansson.so.4 to run the dpdk-testpmd on the host. mlx5_nl_ifindex() seems to require linux kernel 4.17 at least. mlx5_nl_send() and mlx5_nl_recv() looks normal. However, it is a bit strange that data.flags is set to MLX5_NL_CMD_GET_INDEX instead of MLX5_CMD_GET_INDEX in the second command, Anyway, rather than these functions, we estimate that the RDMA_NLDEV_CMD_PORT_GET command does not work in this function. * This is the only somewhat safe method to avoid resorting to heuristics * when faced with port representors. Unfortunately it requires at least * Linux 4.17. BR/Jaeeun -----Original Message----- From: Jaeeun Ham Sent: Saturday, October 9, 2021 10:15 AM To: 'Thomas Monjalon' <thomas@monjalon.net<mailto:thomas@monjalon.net>> Cc: 'users@dpdk.org' <users@dpdk.org<mailto:users@dpdk.org>>; 'alialnu@nvidia.com' <alialnu@nvidia.com<mailto:alialnu@nvidia.com>>; 'rasland@nvidia.com' <rasland@nvidia.com<mailto:rasland@nvidia.com>>; 'asafp@nvidia.com' <asafp@nvidia.com<mailto:asafp@nvidia.com>>; Keunho Shin <keunho.shin@ericsson.com<mailto:keunho.shin@ericsson.com>>; Joonmo Koo <joonmo.koo@ericsson.com<mailto:joonmo.koo@ericsson.com>> Subject: RE: I need DPDK MLX5 Probe error support +Keunho Shin <keunho.shin@ericsson.com<mailto:keunho.shin@ericsson.com>>; Joonmo Koo +<joonmo.koo@ericsson.com<mailto:joonmo.koo@ericsson.com>> -----Original Message----- From: Jaeeun Ham Sent: Saturday, October 9, 2021 10:12 AM To: Thomas Monjalon <thomas@monjalon.net<mailto:thomas@monjalon.net>> Cc: users@dpdk.org<mailto:users@dpdk.org>; alialnu@nvidia.com<mailto:alialnu@nvidia.com>; rasland@nvidia.com<mailto:rasland@nvidia.com>; asafp@nvidia.com<mailto:asafp@nvidia.com> Subject: RE: I need DPDK MLX5 Probe error support Hi Thomas, I am sorry for the inconvenience. Docker is compiled as a layered, so three attached Dockerfiles are used. Dockerfile.prod.base: application base Dockerfile.prod: application Dockerfile.build: tool chains < docker container version > 4a9d999f0c15:/ # uname -a Linux 4a9d999f0c15 4.15.0-46-generic #49-Ubuntu SMP Wed Feb 6 09:33:07 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux BR/Jaeeun -----Original Message----- From: Thomas Monjalon <thomas@monjalon.net<mailto:thomas@monjalon.net>> Sent: Wednesday, October 6, 2021 10:19 PM To: Jaeeun Ham <jaeeun.ham@ericsson.com<mailto:jaeeun.ham@ericsson.com>> Cc: users@dpdk.org<mailto:users@dpdk.org>; alialnu@nvidia.com<mailto:alialnu@nvidia.com>; rasland@nvidia.com<mailto:rasland@nvidia.com>; asafp@nvidia.com<mailto:asafp@nvidia.com> Subject: Re: I need DPDK MLX5 Probe error support I don't even know which Linux distribution you are using. Please send the Dockerfile. If it compiles in Docker, it should run. 06/10/2021 14:27, Jaeeun Ham: > Hi Thomas, > > The cause is that I fail to load mlx5 driver using pci address on the docker container. > So, I tried to add rdma-core library to solve dependency issue you mentioned as below. > Docker image is built with these Dockerfiles. > This docker image is built with DPDK20.11. > How should I add rdma-core library? > > I don't find any rdma related so files in the docker container. > b273016e5be8:/usr/local/lib # ls *mlx* librte_common_mlx5.so > librte_common_mlx5.so.21 librte_common_mlx5.so.21.0 > librte_net_mlx5.so librte_net_mlx5.so.21 librte_net_mlx5.so.21.0 > b273016e5be8:/usr/local/lib # ls *rdma* > ls: cannot access '*rdma*': No such file or directory > > dpdk-20.11/doc/guides/rel_notes/release_20_11.rst > 911: * rdma-core: > 913: * rdma-core-31.0-1 and above > > > > < error log > > f1d23550a947:/ # cat /tmp/logs/epp.log MIDHAUL_PCI_ADDR:0000:12:01.0, > BACKHAUL_PCI_ADDR:0000:12:01.1 MIDHAUL_IP_ADDR:10.255.20.125, > BACKHAUL_IP_ADDR:10.255.20.124 > mlx5_pci: unable to recognize master/representors on the multiple IB > devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.0 cannot be used > mlx5_pci: unable to recognize master/representors on the multiple IB > devices > common_mlx5: Failed to load driver = mlx5_pci. > > EAL: Requested device 0000:12:01.1 cannot be used > EAL: Bus (pci) probe failed. > FATAL: epp_init.c::copy_mac_addr:130: Call to > rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: -19 > (Unknown error -19), rte_errno=0 (not set) > > Caught signal 6 > Obtained 7 stack frames, tid=1377. > tid=1377, /usr/local/bin/ericsson-packet-processor() [0x40a3c4] > tid=1377, /lib64/libpthread.so.0(+0x13f80) [0x7f56c4786f80] tid=1377, > /lib64/libc.so.6(gsignal+0x10b) [0x7f56c229018b] tid=1377, > /lib64/libc.so.6(abort+0x175) [0x7f56c2291585] tid=1377, > /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] > tid=1377, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f56c227b34d] > tid=1377, /usr/local/bin/ericsson-packet-processor(_start+0x2a) > [0x4090ea] > > > > BR/Jaeeun > > -----Original Message----- > From: Thomas Monjalon <thomas@monjalon.net<mailto:thomas@monjalon.net>> > Sent: Wednesday, October 6, 2021 7:59 PM > To: Jaeeun Ham <jaeeun.ham@ericsson.com<mailto:jaeeun.ham@ericsson.com>> > Cc: users@dpdk.org<mailto:users@dpdk.org>; alialnu@nvidia.com<mailto:alialnu@nvidia.com>; rasland@nvidia.com<mailto:rasland@nvidia.com>; > asafp@nvidia.com<mailto:asafp@nvidia.com> > Subject: Re: I need DPDK MLX5 Probe error support > > Installing dependencies is not an issue. > I don't understand which support you need. > > > 06/10/2021 11:57, Jaeeun Ham: > > Hi Thomas, > > > > Could you take a look at the attached file? > > My engineer managed to compile DPDK 20.11 to support MLX5. Please find the output from dpdk-testpmd command in attached file. As you can see testpmd was able to probe mlx5_pci drivers and get MAC addresses. > > The key issue in his case for enabling MLX5 support was to export rdma-core lib path to shared libs for meson/ninja commands as new build system automatically enables MLX5 support if needed dependencies are available. > > > > BR/Jaeeun > > > > -----Original Message----- > > From: Thomas Monjalon > > <thomas@monjalon.net<mailto:thomas@monjalon.net<mailto:thomas@monjalon.net<mailto:thomas@monjalon.net>>> > > Sent: Sunday, October 3, 2021 4:51 PM > > To: Jaeeun Ham > > <jaeeun.ham@ericsson.com<mailto:jaeeun.ham@ericsson.com<mailto:jaeeun.ham@ericsson.com<mailto:jaeeun.ham@ericsson.com>>> > > Cc: users@dpdk.org<mailto:users@dpdk.org<mailto:users@dpdk.org<mailto:users@dpdk.org>>; > > alialnu@nvidia.com<mailto:alialnu@nvidia.com<mailto:alialnu@nvidia.com<mailto:alialnu@nvidia.com>>; > > rasland@nvidia.com<mailto:rasland@nvidia.com<mailto:rasland@nvidia.com<mailto:rasland@nvidia.com>>; > > asafp@nvidia.com<mailto:asafp@nvidia.com<mailto:asafp@nvidia.com<mailto:asafp@nvidia.com>> > > Subject: Re: I need DPDK MLX5 Probe error support > > > > Hi, > > > > I think you need to read the documentation. > > For DPDK install on Linux: > > https://protect2.fireeye.com/v1/url?k=7925aba3-26be92c2-7925eb38-86d > > 8a > > 30ca42b-d871f122b4a0a61a&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3& > > u= > > https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Flinux_gsg%2Fbuild_dpdk.html%23 > > co mpiling-and-installing-dpdk-system-wide > > For mlx5 specific dependencies, install rdma-core package: > > https://protect2.fireeye.com/v1/url?k=9bce4984-c45570e5-9bce091f-86d > > 8a > > 30ca42b-25bd3d467b5f290d&q=1&e=88eca0f4-aa71-4ba8-a332-179f08406da3& > > u= > > https%3A%2F%2Fdoc.dpdk.org%2Fguides%2Fnics%2Fmlx5.html%23linux-prere > > qu > > isites > > > > > > 02/10/2021 12:57, Jaeeun Ham: > > > Hi, > > > > > > Could you teach me how to install dpdk-testpmd? > > > I have to run the application on the host server, not a development server. > > > So, I don't know how to get dpdk-testpmd. > > > > > > By the way, testpmd run result is as below. > > > root@seroics05590:~/ejaeham# testpmd > > > EAL: Detected 64 lcore(s) > > > EAL: libmlx4.so.1: cannot open shared object file: No such file or > > > directory > > > EAL: FATAL: Cannot init plugins > > > > > > EAL: Cannot init plugins > > > > > > PANIC in main(): > > > Cannot init EAL > > > 5: [testpmd(_start+0x2a) [0x55d301d98e1a]] > > > 4: [/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) > > > [0x7f5e044a4bf7]] > > > 3: [testpmd(main+0x907) [0x55d301d98d07]] > > > 2: > > > [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(__rte_panic+0xbd) > > > [0x7f5e04ca3cfd]] > > > 1: > > > [/usr/lib/x86_64-linux-gnu/librte_eal.so.17.11(rte_dump_stack+0x2e > > > ) > > > [0x7f5e04cac19e]] Aborted > > > > > > > > > I added option below when the process is starting in the docker. > > > dv_flow_en=0 \ > > > --log-level=pmd,8 \ > > > < MLX5 log > > > > 415a695ba348:/tmp/logs # cat epp.log > > > MIDHAUL_PCI_ADDR:0000:12:01.0, > > > BACKHAUL_PCI_ADDR:0000:12:01.1 MIDHAUL_IP_ADDR:10.255.21.177, > > > BACKHAUL_IP_ADDR:10.255.21.178 > > > mlx5_pci: unable to recognize master/representors on the multiple > > > IB devices > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > > > EAL: Requested device 0000:12:01.0 cannot be used > > > mlx5_pci: unable to recognize master/representors on the multiple > > > IB devices > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > > > EAL: Requested device 0000:12:01.1 cannot be used > > > EAL: Bus (pci) probe failed. > > > EAL: Trying to obtain current memory policy. > > > EAL: Setting policy MPOL_PREFERRED for socket 1 Caught signal 15 > > > EAL: Restoring previous memory policy: 0 > > > EAL: Calling mem event callback 'MLX5_MEM_EVENT_CB:(nil)' > > > EAL: request: mp_malloc_sync > > > EAL: Heap on socket 1 was expanded by 5120MB > > > FATAL: epp_init.c::copy_mac_addr:130: Call to > > > rte_eth_dev_get_port_by_name(src_dpdk_dev_name, &port_id) failed: > > > -19 (Unknown error -19), rte_errno=0 (not set) > > > > > > Caught signal 6 > > > Obtained 7 stack frames, tid=713. > > > tid=713, /usr/local/bin/ericsson-packet-processor() [0x40a4a4] > > > tid=713, /lib64/libpthread.so.0(+0x13f80) [0x7f7e1eae8f80] > > > tid=713, > > > /lib64/libc.so.6(gsignal+0x10b) [0x7f7e1c5f818b] tid=713, > > > /lib64/libc.so.6(abort+0x175) [0x7f7e1c5f9585] tid=713, > > > /usr/local/bin/ericsson-packet-processor(main+0x458) [0x406818] > > > tid=713, /lib64/libc.so.6(__libc_start_main+0xed) [0x7f7e1c5e334d] > > > tid=713, /usr/local/bin/ericsson-packet-processor(_start+0x2a) > > > [0x4091ca] > > > > > > < i40e log > > > > cat epp.log > > > MIDHAUL_PCI_ADDR:0000:3b:0d.5, BACKHAUL_PCI_ADDR:0000:3b:0d.4 > > > MIDHAUL_IP_ADDR:10.51.21.112, BACKHAUL_IP_ADDR:10.51.21.113 > > > EAL: Trying to obtain current memory policy. > > > EAL: Setting policy MPOL_PREFERRED for socket 1 > > > EAL: Restoring previous memory policy: 0 > > > EAL: Calling mem event callback 'vfio_mem_event_clb:(nil)' > > > EAL: request: mp_malloc_sync > > > EAL: Heap on socket 1 was expanded by 5120MB > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > > > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=0, queue=0. > > > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled > > > on Tx queue 0 > > > > > > i40evf_dev_start(): >> > > > i40evf_config_rss(): No hash flag is set > > > i40e_set_rx_function(): Vector Rx path will be used on port=0. > > > i40e_set_tx_function(): Xmit tx finally be used. > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > > > i40evf_add_del_all_mac_addr(): add/rm mac:62:64:21:84:83:b0 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > > > i40evf_dev_rx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_tx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 28 > > > i40e_dev_rx_queue_setup(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=1, queue=0. > > > i40e_set_tx_function_flag(): Neither simple nor vector Tx enabled > > > on Tx queue 0 > > > > > > i40evf_dev_start(): >> > > > i40evf_config_rss(): No hash flag is set > > > i40e_set_rx_function(): Vector Rx path will be used on port=1. > > > i40e_set_tx_function(): Xmit tx finally be used. > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 6 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 7 > > > i40evf_add_del_all_mac_addr(): add/rm mac:c2:88:5c:a9:a2:ef > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 10 > > > i40evf_dev_rx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_tx_queue_start(): >> > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 8 > > > i40evf_handle_pf_event(): VIRTCHNL_EVENT_LINK_CHANGE event > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 14 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > USER1: rte_ip_frag_table_create: allocated of 12583040 bytes at > > > socket > > > -1 > > > i40evf_dev_mtu_set(): port 1 must be stopped before configuration > > > i40evf_dev_mtu_set(): port 0 must be stopped before configuration > > > Caught signal 10 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > Caught signal 10 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > i40evf_dev_alarm_handler(): ICR01_ADMINQ is reported > > > i40evf_handle_aq_msg(): adminq response is received, opcode = 15 > > > > > > > > > process start option which is triggered by shell script is as below. > > > > > > < start-epp.sh > > > > exec /usr/local/bin/ericsson-packet-processor \ > > > $(get_dpdk_core_list_parameter) \ > > > $(get_dpdk_mem_parameter) \ > > > $(get_dpdk_hugepage_parameters) \ -d > > > /usr/local/lib/librte_mempool_ring.so \ -d > > > /usr/local/lib/librte_mempool_stack.so \ -d > > > /usr/local/lib/librte_net_pcap.so \ -d > > > /usr/local/lib/librte_net_i40e.so \ -d > > > /usr/local/lib/librte_net_mlx5.so \ -d > > > /usr/local/lib/librte_event_dsw.so \ $DPDK_PCI_OPTIONS \ > > > --vdev=event_dsw0 \ > > > --vdev=eth_pcap0,iface=midhaul_edk \ > > > --vdev=eth_pcap1,iface=backhaul_edk \ --file-prefix=container \ > > > --log-level lib.eal:debug \ > > > dv_flow_en=0 \ > > > --log-level=pmd,8 \ > > > -- \ > > > $(get_epp_mempool_parameter) \ > > > > > > "--neighbor-discovery-interface=midhaul_ker,${MIDHAUL_IP_ADDR},mac_addr_dev=${MIDHAUL_MAC_ADDR_DEV},vr_id=0" \ "--neighbor-discovery-interface=backhaul_ker,${BACKHAUL_IP_ADDR},mac_addr_dev=${BACKHAUL_MAC_ADDR_DEV},vr_id=1" > > > > > > BR/Jaeeun > > > > > > -----Original Message----- > > > From: Thomas Monjalon > > > <thomas@monjalon.net<mailto:thomas@monjalon.net<mailto:thomas@monjalon.net<mailto:thomas@monjalon.net>>> > > > Sent: Wednesday, September 29, 2021 8:16 PM > > > To: Jaeeun Ham > > > <jaeeun.ham@ericsson.com<mailto:jaeeun.ham@ericsson.com<mailto:jaeeun.ham@ericsson.com<mailto:jaeeun.ham@ericsson.com>>> > > > Cc: users@dpdk.org<mailto:users@dpdk.org<mailto:users@dpdk.org<mailto:users@dpdk.org>>; > > > alialnu@nvidia.com<mailto:alialnu@nvidia.com<mailto:alialnu@nvidia.com<mailto:alialnu@nvidia.com>>; > > > rasland@nvidia.com<mailto:rasland@nvidia.com<mailto:rasland@nvidia.com<mailto:rasland@nvidia.com>>; > > > asafp@nvidia.com<mailto:asafp@nvidia.com<mailto:asafp@nvidia.com<mailto:asafp@nvidia.com>> > > > Subject: Re: I need DPDK MLX5 Probe error support > > > > > > 27/09/2021 02:18, Jaeeun Ham: > > > > Hi, > > > > > > > > I hope you are well. > > > > My name is Jaeeun Ham and I have been working for the Ericsson. > > > > > > > > I am suffering from enabling MLX5 NIC, so could you take a look at how to run it? > > > > There are two pci address for the SRIOV(vfio) mlx5 nic support > > > > but it doesn't run correctly. (12:01.0, 12:01.1) > > > > > > > > I started one process which is running inside the docker process that is on the MLX5 NIC support host server. > > > > The process started to run with following option. > > > > -d /usr/local/lib/librte_net_mlx5.so And the docker process > > > > has > > > > mlx5 libraries as below. > > > > > > Did you try on the host outside of any container? > > > > > > Please could you try following commands (variables to be replaced)? > > > > > > dpdk-hugepages.py --reserve 1G > > > ip link set $netdev netns $container > > > docker run --cap-add SYS_NICE --cap-add IPC_LOCK --cap-add NET_ADMIN \ > > > --device /dev/infiniband/ $image > > > echo show port summary all | dpdk-testpmd --in-memory -- -i > > > > > > > > > > > > > 706a37a35d29:/usr/local/lib # ls -1 | grep mlx > > > > librte_common_mlx5.so > > > > librte_common_mlx5.so.21 > > > > librte_common_mlx5.so.21.0 > > > > librte_net_mlx5.so > > > > librte_net_mlx5.so.21 > > > > librte_net_mlx5.so.21.0 > > > > > > > > But I failed to run the process with following error. > > > > (MIDHAUL_PCI_ADDR:0000:12:01.0, BACKHAUL_PCI_ADDR:0000:12:01.1) > > > > > > > > --- > > > > > > > > mlx5_pci: unable to recognize master/representors on the > > > > multiple IB devices > > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > EAL: Requested device 0000:12:01.0 cannot be used > > > > mlx5_pci: unable to recognize master/representors on the > > > > multiple IB devices > > > > common_mlx5: Failed to load driver = mlx5_pci. > > > > EAL: Requested device 0000:12:01.1 cannot be used > > > > EAL: Bus (pci) probe failed. > > > > > > > > --- > > > > > > > > For the success case of pci address 12:01.2, it showed following messages. > > > > > > > > --- > > > > > > > > EAL: Detected 64 lcore(s) > > > > EAL: Detected 2 NUMA nodes > > > > EAL: Multi-process socket /var/run/dpdk/nah2/mp_socket > > > > EAL: Probing VFIO support... > > > > EAL: VFIO support initialized > > > > EAL: PCI device 0000:12:01.2 on NUMA socket 0 > > > > EAL: probe driver: 15b3:1016 net_mlx5 > > > > net_mlx5: MPLS over GRE/UDP tunnel offloading disabled due to > > > > old OFED/rdma-core version or firmware configuration > > > > net_mlx5: port 0 the requested maximum Rx packet size (2056) is > > > > larger than a single mbuf (2048) and scattered mode has not been > > > > requested > > > > USER1: rte_ip_frag_table_create: allocated of 6291584 bytes at > > > > socket > > > > 0 > > > > > > > > --- > > > > > > > > BR/Jaeeun -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: testpmd-on-the-docker-container.txt URL: <http://mails.dpdk.org/archives/users/attachments/20211009/3872b91b/attachment.txt> -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: dpdk-testpmd-on-the-host.txt URL: <http://mails.dpdk.org/archives/users/attachments/20211009/3872b91b/attachment-0001.txt> -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: testpmd-on-the-docker-container.txt URL: <http://mails.dpdk.org/archives/users/attachments/20211009/3872b91b/attachment-0002.txt> -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: dpdk-testpmd-on-the-host.txt URL: <http://mails.dpdk.org/archives/users/attachments/20211009/3872b91b/attachment-0003.txt> ^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2021-10-11 6:36 UTC | newest] Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <HE1PR07MB422057B3D4E22FB2BE882D37F3A59@HE1PR07MB4220.eurprd07.prod.outlook.com> [not found] ` <HE1PR07MB42201B7FB0F61E6FCB39AAE9F3A79@HE1PR07MB4220.eurprd07.prod.outlook.com> 2021-09-29 11:16 ` I need DPDK MLX5 Probe error support Thomas Monjalon 2021-10-02 10:57 ` Jaeeun Ham 2021-10-03 7:51 ` Thomas Monjalon 2021-10-03 8:10 ` Jaeeun Ham 2021-10-03 18:44 ` Thomas Monjalon 2021-10-05 1:17 ` Jaeeun Ham 2021-10-05 6:00 ` Thomas Monjalon 2021-10-06 9:57 ` Jaeeun Ham 2021-10-06 10:58 ` Thomas Monjalon [not found] ` <HE1PR07MB42208754E63C0DE2D0F0D138F3B09@HE1PR07MB4220.eurprd07.prod.outlook.com> 2021-10-06 13:19 ` Thomas Monjalon 2021-10-09 1:12 ` Jaeeun Ham 2021-10-09 1:15 ` Jaeeun Ham 2021-10-09 4:42 ` Jaeeun Ham
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).