<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
Hi,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
I am trying to test the new rte_flow template and asynchronous APIs but when I start the testpmd application I got a segmentation fault.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
$ sudo ./app/dpdk-testpmd -a 04:00.1,dv_flow_en=2 -- -i --rxq=8 --txq=8</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<br>
<div>EAL: Detected CPU lcores: 48</div>
<div>EAL: Detected NUMA nodes: 2</div>
<div>EAL: Detected static linkage of DPDK</div>
<div>EAL: Multi-process socket /var/run/dpdk/rte/mp_socket</div>
<div>EAL: Selected IOVA mode 'PA'</div>
<div>EAL: VFIO support initialized</div>
<div>EAL: Probe PCI driver: mlx5_pci (15b3:101d) device: 0000:04:00.1 (socket 0)</div>
<div>mlx5_common: DevX create q counter set failed errno=22 status=0 syndrome=0</div>
<div>TELEMETRY: No legacy callbacks, legacy socket not created</div>
<div>Interactive-mode selected</div>
<div>testpmd: create a new mbuf pool <mb_pool_0>: n=523456, size=2176, socket=0</div>
<div>testpmd: preferred mempool ops selected: ring_mp_mc</div>
<div>testpmd: create a new mbuf pool <mb_pool_1>: n=523456, size=2176, socket=1</div>
<div>testpmd: preferred mempool ops selected: ring_mp_mc</div>
<div><br>
</div>
<div>Warning! port-topology=paired and odd forward ports number, the last port will pair with itself.</div>
<div><br>
</div>
<div>Configuring Port 0 (socket 0)</div>
<div>Segmentation fault</div>
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<b><br>
</b></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<b>Secondly, I also tried to debug the code and found that there are some missing functions in mlx5 PMD (mlx5_flow_hw_drv_ops): </b></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<b><br>
</b></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
Configuring Port 0 (socket 0)
<div><br>
</div>
<div>Thread 1 "dpdk-testpmd" received signal SIGSEGV, Segmentation fault.</div>
<div>0x0000000000000000 in ?? ()</div>
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
(gdb) bt
<div>#0  0x0000000000000000 in ?? ()</div>
<div>#1  0x000000000201fb7e in flow_drv_validate (dev=0x7ce4d80 <rte_eth_devices>, attr=0x7fffffffd150, items=0x7fffffffd0f0, actions=0x7fffffffd0a0, external=false, hairpin=0, error=0x7fffffffd080)</div>
<div>    at ../drivers/net/mlx5/mlx5_flow.c:3770</div>
<div>#2  0x00000000020302b1 in flow_list_create (dev=0x7ce4d80 <rte_eth_devices>, type=MLX5_FLOW_TYPE_CTL, attr=0x7fffffffd150, items=0x7fffffffd0f0, original_actions=0x7fffffffd0a0, external=false,
</div>
<div>    error=0x7fffffffd080) at ../drivers/net/mlx5/mlx5_flow.c:6872</div>
<div>#3  0x0000000002031976 in mlx5_ctrl_flow_vlan (dev=0x7ce4d80 <rte_eth_devices>, eth_spec=0x7fffffffd2c0, eth_mask=0x7fffffffd2c0, vlan_spec=0x0, vlan_mask=0x0) at ../drivers/net/mlx5/mlx5_flow.c:7626</div>
<div>#4  0x00000000020319dd in mlx5_ctrl_flow (dev=0x7ce4d80 <rte_eth_devices>, eth_spec=0x7fffffffd2c0, eth_mask=0x7fffffffd2c0) at ../drivers/net/mlx5/mlx5_flow.c:7651</div>
<div>#5  0x00000000020c86c5 in mlx5_traffic_enable (dev=0x7ce4d80 <rte_eth_devices>) at ../drivers/net/mlx5/mlx5_trigger.c:1411</div>
<div>#6  0x00000000020c7b6d in mlx5_dev_start (dev=0x7ce4d80 <rte_eth_devices>) at ../drivers/net/mlx5/mlx5_trigger.c:1173</div>
<div>#7  0x0000000000ae286a in rte_eth_dev_start (port_id=0) at ../lib/ethdev/rte_ethdev.c:1474</div>
<div>#8  0x000000000066b0ff in eth_dev_start_mp (port_id=0) at ../app/test-pmd/testpmd.c:646</div>
<div>#9  0x0000000000670135 in start_port (pid=65535) at ../app/test-pmd/testpmd.c:3027</div>
<div>#10 0x00000000006731e7 in main (argc=4, argv=0x7fffffffe3d0) at ../app/test-pmd/testpmd.c:4398</div>
<div>(gdb) </div>
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
Please correct me if I am doing anything wronf.</div>
<div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div id="Signature">
<div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Regards,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Haider</div>
</div>
</div>
</div>
</body>
</html>