summaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2013-09-06 13:24:35 +1000
committerAlexander Graf <agraf@suse.de>2013-10-17 14:45:01 +0200
commit8c2dbb79c62e9da4857b873435925d3654d9fccd (patch)
treef2ddb353aa55859891e2e4d9a031d27d8974c354 /kernel
parentc934243ca0aa464610a8b8ff85c7a777bf066ce4 (diff)
downloadblackbird-op-linux-8c2dbb79c62e9da4857b873435925d3654d9fccd.tar.gz
blackbird-op-linux-8c2dbb79c62e9da4857b873435925d3654d9fccd.zip
KVM: PPC: Book3S HV: Avoid unbalanced increments of VPA yield count
The yield count in the VPA is supposed to be incremented every time we enter the guest, and every time we exit the guest, so that its value is even when the vcpu is running in the guest and odd when it isn't. However, it's currently possible that we increment the yield count on the way into the guest but then find that other CPU threads are already exiting the guest, so we go back to nap mode via the secondary_too_late label. In this situation we don't increment the yield count again, breaking the relationship between the LSB of the count and whether the vcpu is in the guest. To fix this, we move the increment of the yield count to a point after we have checked whether other CPU threads are exiting. Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'kernel')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud