...
 
Commits (3)
......@@ -43,7 +43,7 @@ static inline void stack_overflow_check(struct pt_regs *regs)
return;
if (IS_ENABLED(CONFIG_IPIPE))
sp = current_stack_pointer();
sp = current_stack_pointer;
else
sp = regs->sp;
......
......@@ -8453,6 +8453,10 @@ static void vmx_handle_external_intr(struct kvm_vcpu *vcpu)
unsigned long tmp;
#endif
#ifdef CONFIG_IPIPE
__clear_bit(IPIPE_STALL_FLAG,
&ipipe_this_cpu_root_context()->status);
#endif
vector = exit_intr_info & INTR_INFO_VECTOR_MASK;
desc = (gate_desc *)vmx->host_idt_base + vector;
entry = gate_offset(*desc);
......
......@@ -6639,6 +6639,7 @@ static int vcpu_enter_guest(struct kvm_vcpu *vcpu)
|| need_resched() || signal_pending(current)) {
vcpu->mode = OUTSIDE_GUEST_MODE;
smp_wmb();
__ipipe_exit_vm();
hard_cond_local_irq_enable();
local_irq_enable();
preempt_enable();
......