powerpc/64s/idle: avoid sync for KVM state when waking from idle
authorNicholas Piggin <npiggin@gmail.com>
Fri, 17 Nov 2017 14:08:06 +0000 (00:08 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Sat, 31 Mar 2018 13:47:47 +0000 (00:47 +1100)
commit8c1c7fb0b5ec95c392e9b585a6cf8cde254308d3
tree59df28bcb598514ca3c236f77e506e40a6d067ef
parent3d4fbffdd703d2b968db443911f2147c732a4a48
powerpc/64s/idle: avoid sync for KVM state when waking from idle

When waking from a CPU idle instruction (e.g., nap or stop), the sync
for ordering the KVM secondary thread state can be avoided if there
wakeup is coming from a kernel context rather than KVM context.

This improves performance for ping-pong benchmark with the stop0 idle
state by 0.46% for 2 threads in the same core, and 1.02% for different
cores.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/kernel/idle_book3s.S