Comments

Currently, we wake up a CPUs by sending a host IPI with
smp_send_reschedule() to thread 0 of that core, which will
take all threads out of the guest, and cause them to re-evalutate
their interrupt status on the way back in.
This adds a mechanism to differenciate real host IPIs and
IPIs sent by KVM for guest threads to poke each other,
in order to target the guest threads precisely when possible
and avoid that global switch of the core to host state.
Then use this new facility in the in-kernel XICS code
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
---
arch/powerpc/include/asm/kvm_book3s_asm.h | 8 ++-
arch/powerpc/include/asm/kvm_ppc.h | 29 ++++++++
arch/powerpc/kernel/asm-offsets.c | 2 +
arch/powerpc/kvm/book3s_hv.c | 26 ++++++-
arch/powerpc/kvm/book3s_hv_rmhandlers.S | 112 +++++++++++++++++++++++------
arch/powerpc/kvm/book3s_xics.c | 2 +-
arch/powerpc/sysdev/xics/icp-native.c | 8 +++
7 files changed, 163 insertions(+), 24 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html