]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: s390: allow only one SIGP STOP (AND STORE STATUS) at a time
authorDavid Hildenbrand <dahi@linux.vnet.ibm.com>
Thu, 15 May 2014 12:25:25 +0000 (14:25 +0200)
committerChristian Borntraeger <borntraeger@de.ibm.com>
Thu, 10 Jul 2014 12:09:34 +0000 (14:09 +0200)
commitd1884be0f3e8fd8f41a6e5a720b00840c2fb9e7b
tree7e6c0eb4c64de8b57e191b5ca5e17a53824d156d
parent94a4dd0d3426accd8bcdfe0025c283824a62f9fc
KVM: s390: allow only one SIGP STOP (AND STORE STATUS) at a time

A SIGP STOP (AND STORE STATUS) order is complete as soon as the VCPU has been
stopped. This patch makes sure that only one SIGP STOP (AND STORE STATUS) may
be pending at a time (as defined by the architecture). If the action_bits are
still set, a SIGP STOP has been issued but not completed yet. The VCPU is busy
for further SIGP STOP orders.

Also set the CPUSTAT_STOP_INT after the action_bits variable has been modified
(the same order that is used when injecting a KVM_S390_SIGP_STOP from
userspace).

Both changes are needed in preparation for a user space driven VCPU state change
(to avoid race conditions).

Signed-off-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
arch/s390/kvm/sigp.c