[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250130202634.eeb9TfkW@linutronix.de>
Date: Thu, 30 Jan 2025 21:26:34 +0100
From: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
To: Shrikanth Hegde <sshegde@...ux.ibm.com>
Cc: mpe@...erman.id.au, maddy@...ux.ibm.com, linuxppc-dev@...ts.ozlabs.org,
npiggin@...il.com, christophe.leroy@...roup.eu,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3 1/1] powerpc: Enable dynamic preemption
On 2025-01-30 22:27:07 [+0530], Shrikanth Hegde wrote:
> > | #DEFINE need_irq_preemption() \
> > | (static_branch_unlikely(&sk_dynamic_irqentry_exit_cond_resched))
> > |
> > | if (need_irq_preemption()) {
> >
> > be a bit smaller/ quicker? This could be a fast path ;)
>
> I am okay with either way. I did try both[1], there wasn't any significant difference,
> hence chose a simpler one. May be system size, workload pattern might matter.
>
> Let me do some more testing to see which one wins.
> Is there any specific benchmark which might help here?
No idea. As per bean counting: preempt_model_preemptible() should
resolve in two function calls + conditional in the dynamic case. This
should be more expensive compared to a nop/ branch ;)
But you would still need preempt_model_preemptible() for the !DYN case.
> > > + preempt_model_voluntary() ? "voluntary" :
> > > + preempt_model_full() ? "full" :
> > > + preempt_model_lazy() ? "lazy" :
> > > + "",
> >
> > So intend to rework this part. I have patches stashed at
> > https://git.kernel.org/pub/scm/linux/kernel/git/bigeasy/staging.git/log/?h=preemption_string
> >
> > which I didn't sent yet due to the merge window. Just a heads up ;)
>
> Makes sense. I had seen at-least two places where this code was there, ftrace/powerpc.
> There were way more places..
>
> You want me to remove this part?
No, just be aware.
I don't know how this will be routed I guess we merge the sched pieces
first and then I submit the other pieces via the relevant maintainer
tree. In that case please be aware that all parts get removed/ replaced
properly.
Sebastian
Powered by blists - more mailing lists