diff options
Diffstat (limited to 'arch/x86/kvm/svm.c')
-rw-r--r-- | arch/x86/kvm/svm.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c index 41fe0381a1ae..134260c36ce2 100644 --- a/arch/x86/kvm/svm.c +++ b/arch/x86/kvm/svm.c | |||
@@ -1535,7 +1535,7 @@ static int io_interception(struct vcpu_svm *svm) | |||
1535 | string = (io_info & SVM_IOIO_STR_MASK) != 0; | 1535 | string = (io_info & SVM_IOIO_STR_MASK) != 0; |
1536 | in = (io_info & SVM_IOIO_TYPE_MASK) != 0; | 1536 | in = (io_info & SVM_IOIO_TYPE_MASK) != 0; |
1537 | if (string || in) | 1537 | if (string || in) |
1538 | return !(emulate_instruction(vcpu, 0, 0, 0) == EMULATE_DO_MMIO); | 1538 | return emulate_instruction(vcpu, 0, 0, 0) == EMULATE_DONE; |
1539 | 1539 | ||
1540 | port = io_info >> 16; | 1540 | port = io_info >> 16; |
1541 | size = (io_info & SVM_IOIO_SIZE_MASK) >> SVM_IOIO_SIZE_SHIFT; | 1541 | size = (io_info & SVM_IOIO_SIZE_MASK) >> SVM_IOIO_SIZE_SHIFT; |
@@ -2386,16 +2386,12 @@ static int iret_interception(struct vcpu_svm *svm) | |||
2386 | 2386 | ||
2387 | static int invlpg_interception(struct vcpu_svm *svm) | 2387 | static int invlpg_interception(struct vcpu_svm *svm) |
2388 | { | 2388 | { |
2389 | if (emulate_instruction(&svm->vcpu, 0, 0, 0) != EMULATE_DONE) | 2389 | return emulate_instruction(&svm->vcpu, 0, 0, 0) == EMULATE_DONE; |
2390 | pr_unimpl(&svm->vcpu, "%s: failed\n", __func__); | ||
2391 | return 1; | ||
2392 | } | 2390 | } |
2393 | 2391 | ||
2394 | static int emulate_on_interception(struct vcpu_svm *svm) | 2392 | static int emulate_on_interception(struct vcpu_svm *svm) |
2395 | { | 2393 | { |
2396 | if (emulate_instruction(&svm->vcpu, 0, 0, 0) != EMULATE_DONE) | 2394 | return emulate_instruction(&svm->vcpu, 0, 0, 0) == EMULATE_DONE; |
2397 | pr_unimpl(&svm->vcpu, "%s: failed\n", __func__); | ||
2398 | return 1; | ||
2399 | } | 2395 | } |
2400 | 2396 | ||
2401 | static int cr8_write_interception(struct vcpu_svm *svm) | 2397 | static int cr8_write_interception(struct vcpu_svm *svm) |