Re: [PATCH V7 4/4] softirq: Allow early break the softirq processing loop

From: Qais Yousef
Date: Fri Oct 09 2020 - 11:01:45 EST


On 09/29/20 13:44, Frederic Weisbecker wrote:
> > that will delay the net_rx/tx softirq to process, Peter's branch
> > maybe can slove
> > the problem
> > git://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git core/softirq
>
> It's probably also the right time for me to resume on this patchset:
>
> https://lwn.net/Articles/779564/
>
> In the long term this will allow us to have per vector threads that can be
> individually triggered upon high loads, and even soft interruptible by
> other vectors from irq_exit(). Also if several vectors are on high loads
> at the same time, this leaves the balance decisions to the scheduler instead
> of all these workarounds we scratch our heads on for several years now.
>
> Besides, I'm convinced that splitting the softirqs is something we want in
> the long run anyway.

So if I understood correctly we'll end up with a kthread for each softirq type
that can be scheduled individually on any CPU following the 'normal' scheduler
rules, correct?

If I got it right, I like that. I certainly think having these softirqs as RT
threads (like irq threads) makes a lot more sense. At least one would be able
to use priorities to reason about when it's okay to preempt them or not.

If I got it wrong, why we can't do that?

Thanks

--
Qais Yousef