Thread (5 messages) 5 messages, 5 authors, 2023-05-09

Re: [PATCH] revert: "softirq: Let ksoftirqd do its job"

From: Jakub Kicinski <kuba@kernel.org>
Date: 2023-05-09 01:42:25
Also in: lkml

On Mon,  8 May 2023 08:17:44 +0200 Paolo Abeni wrote:
Due to the mentioned commit, when the ksoftirqd processes take charge
of softirq processing, the system can experience high latencies.

In the past a few workarounds have been implemented for specific
side-effects of the above:

commit 1ff688209e2e ("watchdog: core: make sure the watchdog_worker is not deferred")
commit 8d5755b3f77b ("watchdog: softdog: fire watchdog even if softirqs do not get to run")
commit 217f69743681 ("net: busy-poll: allow preemption in sk_busy_loop()")
commit 3c53776e29f8 ("Mark HI and TASKLET softirq synchronous")

but the latency problem still exists in real-life workloads, see the
link below.

The reverted commit intended to solve a live-lock scenario that can now
be addressed with the NAPI threaded mode, introduced with commit
29863d41bb6e ("net: implement threaded-able napi poll loop support"),
and nowadays in a pretty stable status.

While a complete solution to put softirq processing under nice resource
control would be preferable, that has proven to be a very hard task. In
the short term, remove the main pain point, and also simplify a bit the
current softirq implementation.

Note that this change also reverts commit 3c53776e29f8 ("Mark HI and
TASKLET softirq synchronous") and commit 1342d8080f61 ("softirq: Don't
skip softirq execution when softirq thread is parking"), which are
direct follow-ups of the feature commit. A single change is preferred to
avoid known bad intermediate states introduced by a patch series
reverting them individually.

Link: https://lore.kernel.org/netdev/305d7742212cbe98621b16be782b0562f1012cb6.camel@redhat.com/ (local)
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Tested-by: Jason Xing <redacted>
Reviewed-by: Jakub Kicinski <kuba@kernel.org>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help