[PATCH] powerpc/64s: Fix doorbell wakeup msgclr optimisation
Michael Ellerman
patch-notifications at ellerman.id.au
Mon Apr 6 23:05:53 AEST 2020
On Thu, 2020-04-02 at 12:12:12 UTC, Nicholas Piggin wrote:
> Commit 3282a3da25bd ("powerpc/64: Implement soft interrupt replay in C")
> broke the doorbell wakeup optimisation introduced by commit a9af97aa0a12
> ("powerpc/64s: msgclr when handling doorbell exceptions from system
> reset").
>
> This patch restores it, in C code. It's moved explicitly to the system
> reset wakeup path, rather than the doorbell replay path, because it is
> always the right thing to do in the wakeup case, but it could be rare to
> have a pending message in other cases in which case it's wasted work --
> we would have to be done to see if that was a worthwhile optimisation,
> and I suspect it would not be.
>
> The results are similar to those in the original commit, test on POWER8
> of context_switch selftests benchmark with polling idle disabled (e.g.,
> always nap, giving cross-CPU IPIs) gives the following results:
>
> broken patched
> Different threads, same core: 317k/s 375k/s +18.7%
> Different cores: 280k/s 282k/s +1.0%
>
> Fixes: 3282a3da25bd ("powerpc/64: Implement soft interrupt replay in C")
> Signed-off-by: Nicholas Piggin <npiggin at gmail.com>
Applied to powerpc next, thanks.
https://git.kernel.org/powerpc/c/0c89649a70bed679fd408c1eb82fa99dbe1354a0
cheers
More information about the Linuxppc-dev
mailing list