Ethernet Products
Determine ramifications of Intel® Ethernet products and technologies
5286 Discussions

AF_XDP Zero Copy Not Working

latency_hunter
Beginner
1,723 Views

I am trying to use E810-XXV PCIe NICs with zero copy AF_XDP. I have a ping/pong test where two machines (both using E810-XXVs ) pass a packet back and forth and I measure the round trip latencies.  

 

When I force XDP_COPY mode, two NICs pass packets back and forth as expected. However passing the XDP_ZEROCOPY bind flag causes an error to be emitted in dmesg:

ice 0000:0b:00.0: Registered XDP mem model MEM_TYPE_XSK_BUFF_POOL on Rx ring 1
ice 0000:0b:00.0: Failed to allocate some buffers on UMEM enabled Rx ring 1 (pf_q 1)
ice 0000:0b:00.0: Registered XDP mem model MEM_TYPE_XSK_BUFF_POOL on Rx ring 1
ice 0000:0b:00.0: Failed to allocate some buffers on UMEM enabled Rx ring 1 (pf_q 1)


In this mode the RX path appears to no longer work, and the NIC detects dropped packets.

$ sudo ethtool -S ens6f0 | grep rx_dropped
rx_dropped: 521
rx_dropped.nic: 0

 

AF_XDP zero copy is supported on these cards correct? Any Intel provided documentation on getting zero copy working?

 

Thanks!


Driver info:

$ sudo ethtool -i ens6f0
driver: ice
version: 1.12.7
firmware-version: 3.20 0x8000d853 1.3146.0
expansion-rom-version:
bus-info: 0000:0b:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: yes

Labels (1)
0 Kudos
5 Replies
Fariz_Intel
Employee
1,681 Views

Hi latency_hunter,


Thank you for the posting in Intel Ethernet Community.


Before we go further, could we get some information about your environment? For example, what is your Linux version, or are you using the dpdk? 


Best regards,

Fariz_Intel


0 Kudos
latency_hunter
Beginner
1,650 Views

I am using Debian 11, standard kernel 5.10

I am also not using the DPDK, just code from the https://github.com/xdp-project repositories.

0 Kudos
Fariz_Intel
Employee
1,634 Views

Hi latency_hunter


Thanks for the information provided.


Kindly allow some time for us to check on this. In the meantime, you can refer to the Intel E810 Application Device Queues (ADQ) document via the link below for more details on Testing ADQ with AF_XDP.


https://edc.intel.com/content/www/ca/fr/design/products/ethernet/appnote-e810-adq-config-guide/testing-adq-with-af-xdp/


Best regards,

Fariz_Intel


0 Kudos
Fariz_Intel
Employee
1,465 Views

Hi latency_hunter,


Intel Ethernet Controller E810 Feature Support Matrix shows that AF_XDP is supported (page 14). We also suggest going to Intel RDC and searching for AF_XDP or just XDP as there are a various other documents and videos. Refer to the link below for more details.


Intel Ethernet Controller E810 Feature Support Matrix

https://www.intel.com/content/www/us/en/content-details/630155/intel-ethernet-controller-e810-feature-support-matrix.html


Intel RDC

https://www.intel.com/content/www/us/en/resources-documentation/developer.html


If you have additional questions or clarifications, feel free to let us know.



Best regards,

Fariz_Intel


0 Kudos
Fariz_Intel
Employee
1,385 Views

Hi latency_hunter,


If you need any additional information, please submit a new question as this thread will no longer be monitored.


Best regards,

Fariz_Intel


0 Kudos
Reply