KVM: PPC: Book3S: PR: Fix preemption
We were leaking preemption counters. Fix the code to always toggle between preempt and non-preempt properly. Signed-off-by: Alexander Graf <agraf@suse.de> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
parent
e1f8acf838
commit
592f5d87b3
|
@ -777,6 +777,7 @@ program_interrupt:
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
preempt_disable();
|
||||||
if (!(r & RESUME_HOST)) {
|
if (!(r & RESUME_HOST)) {
|
||||||
/* To avoid clobbering exit_reason, only check for signals if
|
/* To avoid clobbering exit_reason, only check for signals if
|
||||||
* we aren't already exiting to userspace for some other
|
* we aren't already exiting to userspace for some other
|
||||||
|
@ -798,8 +799,6 @@ program_interrupt:
|
||||||
run->exit_reason = KVM_EXIT_INTR;
|
run->exit_reason = KVM_EXIT_INTR;
|
||||||
r = -EINTR;
|
r = -EINTR;
|
||||||
} else {
|
} else {
|
||||||
preempt_disable();
|
|
||||||
|
|
||||||
/* In case an interrupt came in that was triggered
|
/* In case an interrupt came in that was triggered
|
||||||
* from userspace (like DEC), we need to check what
|
* from userspace (like DEC), we need to check what
|
||||||
* to inject now! */
|
* to inject now! */
|
||||||
|
|
Loading…
Reference in New Issue