[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230508184219.4049952c@kernel.org>
Date: Mon, 8 May 2023 18:42:19 -0700
From: Jakub Kicinski <kuba@...nel.org>
To: Eric Dumazet <edumazet@...gle.com>
Cc: Paolo Abeni <pabeni@...hat.com>, linux-kernel@...r.kernel.org, "Paul E.
McKenney" <paulmck@...nel.org>, Thomas Gleixner <tglx@...utronix.de>,
peterz@...radead.org, netdev@...r.kernel.org, Jason Xing
<kerneljasonxing@...il.com>
Subject: Re: [PATCH] revert: "softirq: Let ksoftirqd do its job"
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/
> Signed-off-by: Paolo Abeni <pabeni@...hat.com>
> Tested-by: Jason Xing <kerneljasonxing@...il.com>
Reviewed-by: Jakub Kicinski <kuba@...nel.org>
Powered by blists - more mailing lists