diff options
author | Suraj Jitindar Singh <sjitindarsingh@gmail.com> | 2018-12-14 08:29:09 +0300 |
---|---|---|
committer | Paul Mackerras <paulus@ozlabs.org> | 2018-12-17 03:33:50 +0300 |
commit | 6ff887b8bd0d820d9f3371c0ce093d96b73035d6 (patch) | |
tree | 4bb68e2052a282e42a8eb6628a95bc70b5baba4c /arch/powerpc/kvm/book3s_hv.c | |
parent | 873db2cd9a6d7f017d8f4c637cf4166c038c27d6 (diff) | |
download | linux-6ff887b8bd0d820d9f3371c0ce093d96b73035d6.tar.xz |
KVM: PPC: Book3S: Introduce new hcall H_COPY_TOFROM_GUEST to access quadrants 1 & 2
A guest cannot access quadrants 1 or 2 as this would result in an
exception. Thus introduce the hcall H_COPY_TOFROM_GUEST to be used by a
guest when it wants to perform an access to quadrants 1 or 2, for
example when it wants to access memory for one of its nested guests.
Also provide an implementation for the kvm-hv module.
Signed-off-by: Suraj Jitindar Singh <sjitindarsingh@gmail.com>
Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
Diffstat (limited to 'arch/powerpc/kvm/book3s_hv.c')
-rw-r--r-- | arch/powerpc/kvm/book3s_hv.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/powerpc/kvm/book3s_hv.c b/arch/powerpc/kvm/book3s_hv.c index ca7de15f4a70..5a066fc299e1 100644 --- a/arch/powerpc/kvm/book3s_hv.c +++ b/arch/powerpc/kvm/book3s_hv.c @@ -996,7 +996,11 @@ int kvmppc_pseries_do_hcall(struct kvm_vcpu *vcpu) if (nesting_enabled(vcpu->kvm)) ret = kvmhv_do_nested_tlbie(vcpu); break; - + case H_COPY_TOFROM_GUEST: + ret = H_FUNCTION; + if (nesting_enabled(vcpu->kvm)) + ret = kvmhv_copy_tofrom_guest_nested(vcpu); + break; default: return RESUME_HOST; } |