DPDK and DMA

Dmitry Kozlyuk dmitry.kozliuk at gmail.com
Wed Jan 11 21:14:27 CET 2023


2023-01-11 13:05 (UTC-0500), fwefew 4t4tg:
> Thank you for taking time to provide a nice reply. The upshot here is that
> DPDK
> already uses DMA in a smart way to move packet data into TXQs. I presume the
> reverse also happens: NIC uses DMA to move packets out of its HW RXQs into
> the host machine's memory using the mempool associated with it.

Almost, except that the NIC does not know about mempools.
It's DPDK PMD (as Stephen clarified) that allocates mbufs from mempool,
does Rx descriptor setup to point to the buffers
and then requests the NIC to write packet data to host RAM using DMA.

If you want to study this area, take a look at "ixy" project family:

https://github.com/ixy-languages/ixy-languages

It's like "micro DPDK" for educational purposes.


More information about the users mailing list