diff options
author | Joerg Roedel <joerg.roedel@amd.com> | 2010-04-22 06:33:10 -0400 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2010-05-17 05:19:21 -0400 |
commit | 228070b1b31abc16c331b57bf965101c6eb1d167 (patch) | |
tree | 733389c8b0716c1c9cbe3eadc3cc565cf660f27d /arch/x86 | |
parent | 2be4fc7a02c368dcfda83a386a5101c211b9535e (diff) |
KVM: SVM: Propagate nested entry failure into guest hypervisor
This patch implements propagation of a failes guest vmrun
back into the guest instead of killing the whole guest.
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/x86')
-rw-r--r-- | arch/x86/kvm/svm.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c index 5ad9d802bd1..b10d1630c20 100644 --- a/arch/x86/kvm/svm.c +++ b/arch/x86/kvm/svm.c | |||
@@ -1715,6 +1715,10 @@ static int nested_svm_intercept(struct vcpu_svm *svm) | |||
1715 | vmexit = NESTED_EXIT_DONE; | 1715 | vmexit = NESTED_EXIT_DONE; |
1716 | break; | 1716 | break; |
1717 | } | 1717 | } |
1718 | case SVM_EXIT_ERR: { | ||
1719 | vmexit = NESTED_EXIT_DONE; | ||
1720 | break; | ||
1721 | } | ||
1718 | default: { | 1722 | default: { |
1719 | u64 exit_bits = 1ULL << (exit_code - SVM_EXIT_INTR); | 1723 | u64 exit_bits = 1ULL << (exit_code - SVM_EXIT_INTR); |
1720 | if (svm->nested.intercept & exit_bits) | 1724 | if (svm->nested.intercept & exit_bits) |