Re: [PATCH v6.1-rt 00/15] net: Backport backlog-NAPI threads to resolve PREEMPT_RT softirq warning in SMP flush

From: Sebastian Andrzej Siewior

Date: Wed Oct 14 2026 - 11:10:10 EST


Please keep the networking folks out of the loop. This is a backport
request which goes entirely via the RT-queue.

On 2026-10-14 01:58:34 [+0800], wen.yang@xxxxxxxxx wrote:
> From: Wen Yang <wen.yang@xxxxxxxxx>
>
> *** Overview ***
> Backport the backlog-NAPI smpboot-thread mechanism and its prerequisite
> NAPI/RPS/defer_list work from upstream (v6.4 - v6.9) to v6.1-rt-next.
>
> *** Problem ***
> On PREEMPT_RT, RPS steers packets to a remote CPU's backlog by sending an
> IPI. The IPI handler (rps_trigger_softirq) calls ____napi_schedule(), which
> raises NET_RX_SOFTIRQ. do_softirq_post_smp_call_flush() then sees a softirq
> pending that was not pending before the flush, and NET_RX_SOFTIRQ is not
> masked by SCHED_SOFTIRQ_MASK, so it fires:

I was about to point out that v6.1-RT should have duct tape for this but
from reading 1/15 is see that this duct is not complete and is missing
RPS. Indeed.

A backport of what is merged is my preference, too. However, we should
get v6.6-rt fixed first then v6.1-rt. Otherwise users upgrading from
v6.1 to v6.6 will have this case broken.

Clark, any objections here from your side?

Sebastian