[PATCH] net: increase the maximum of RX/TX descriptors

Stephen Hemminger stephen at networkplumber.org
Tue Nov 5 16:55:14 CET 2024


On Tue, 5 Nov 2024 09:49:39 +0100
Morten Brørup <mb at smartsharesystems.com> wrote:

> > 
> > I suspect AF_PACKET provides an intermediate step which can buffer more
> > or spread out the work.  
> 
> Agree. It's a Linux scheduling issue.
> 
> With DPDK polling, there is no interrupt in the kernel scheduler.
> If the CPU core running the DPDK polling thread is running some other thread when the packets arrive on the hardware, the DPDK polling thread is NOT scheduled immediately, but has to wait for the kernel scheduler to switch to this thread instead of the other thread.
> Quite a lot of time can pass before this happens - the kernel scheduler does not know that the DPDK polling thread has urgent work pending.
> And the number of RX descriptors needs to be big enough to absorb all packets arriving during the scheduling delay.
> It is not well described how to *guarantee* that nothing but the DPDK polling thread runs on a dedicated CPU core.

That why any non-trivial DPDK application needs to run on isolated cpu's.


More information about the dev mailing list