Messages in this thread | | | Subject | Re: Softirq priority inversion from "softirq: reduce latencies" | From | Eric Dumazet <> | Date | Mon, 29 Feb 2016 07:27:23 -0800 |
| |
On lun., 2016-02-29 at 07:03 -0800, Peter Hurley wrote:
> The reason why Eric's change is so effective for Eric's workload is > that it fixes the problem where NET_RX keeps getting new network packets > so it keeps looping, servicing more NET_RX softirq.
You have very little idea of what is happening in networking land.
Once hard irq for RX has triggered, we arm a NAPI (NET_RX softirq), and no more irq will come unless the napi handler ran. Then when NAPI is complete, we re-allow interrupt to be delivered when a new packet is coming.
Yes, ksoftirqd runs under load, and this is _wanted_.
Sure, it might add a latency if some high prio task is wanting the same cpu, but this is exactly the purpose of having multi tasking.
| |