aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kvm/x86.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/kvm/x86.c')
-rw-r--r--arch/x86/kvm/x86.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 40991527f54a..58a295c6bf62 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -4778,7 +4778,8 @@ int kvm_arch_vcpu_ioctl_set_mpstate(struct kvm_vcpu *vcpu,
4778 return 0; 4778 return 0;
4779} 4779}
4780 4780
4781int kvm_task_switch(struct kvm_vcpu *vcpu, u16 tss_selector, int reason) 4781int kvm_task_switch(struct kvm_vcpu *vcpu, u16 tss_selector, int reason,
4782 bool has_error_code, u32 error_code)
4782{ 4783{
4783 int cs_db, cs_l, ret; 4784 int cs_db, cs_l, ret;
4784 cache_all_regs(vcpu); 4785 cache_all_regs(vcpu);
@@ -4796,7 +4797,8 @@ int kvm_task_switch(struct kvm_vcpu *vcpu, u16 tss_selector, int reason)
4796 ? X86EMUL_MODE_PROT32 : X86EMUL_MODE_PROT16; 4797 ? X86EMUL_MODE_PROT32 : X86EMUL_MODE_PROT16;
4797 4798
4798 ret = emulator_task_switch(&vcpu->arch.emulate_ctxt, &emulate_ops, 4799 ret = emulator_task_switch(&vcpu->arch.emulate_ctxt, &emulate_ops,
4799 tss_selector, reason); 4800 tss_selector, reason, has_error_code,
4801 error_code);
4800 4802
4801 if (ret == X86EMUL_CONTINUE) 4803 if (ret == X86EMUL_CONTINUE)
4802 kvm_x86_ops->set_rflags(vcpu, vcpu->arch.emulate_ctxt.eflags); 4804 kvm_x86_ops->set_rflags(vcpu, vcpu->arch.emulate_ctxt.eflags);