Skip to contentSkip to conversation

net/mlx5: errors when sending from extbuf pool

Bug 949 [email protected] 1 participant 2 messages Mar 4, 2022 – Mar 13, 2022

lore
Share & tools
lore
#0 lore raw

https://bugs.dpdk.org/show_bug.cgi?id=949

            Bug ID: 949
           Summary: net/mlx5: errors when sending from extbuf pool
           Product: DPDK
           Version: 21.11
          Hardware: x86
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: ethdev
          Assignee: [email protected]
          Reporter: [email protected]

Target Milestone: ---

Created attachment 193
--> https://bugs.dpdk.org/attachment.cgi?id=193&action=edit
Example code

Given the lack of documentation it's likely that I'm just holding it wrong, but I'm having trouble when trying to transmit segmented packets where one of the segments is from a pool created with rte_pktmbuf_pool_create_extbuf.

I've reduced my test to the attached program. The test builds and transmits multicast UDP (IPv4) frames. The L2-L4 headers are in a regular mbuf, chained to a separate mbuf holding the payload. If the USE_EXTERNAL define at the top is changed to 0, the payload mbuf is a boring standard mbuf, and everything works and I can receive the packets on another machine. When USE_EXTERNAL=1, a single huge page is allocated with mmap, then used to back the mempool for payloads (via rte_pktmbuf_pool_create_extbuf). In this case, I get a whole bunch of files written with names like dpdk_mlx5_port_0_txq_0_index_0_1383899876, reporting CQ and SQ errors, and I don't receive the packets (and the tx ethtool counters don't go up).

Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.