aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/kvm
diff options
context:
space:
mode:
authorChristian Borntraeger <borntraeger@de.ibm.com>2012-06-11 16:06:57 +0200
committerMarcelo Tosatti <mtosatti@redhat.com>2012-06-13 20:53:45 -0300
commit61bde82caee95426bf1ad53fefc8dc691b8ba37c (patch)
treefbca6b53225bddba6af6053879ff35c23b373aff /arch/s390/kvm
parent00763e41138267a307531397f9745835aecb8c7b (diff)
downloadkernel_goldelico_gta04-61bde82caee95426bf1ad53fefc8dc691b8ba37c.zip
kernel_goldelico_gta04-61bde82caee95426bf1ad53fefc8dc691b8ba37c.tar.gz
kernel_goldelico_gta04-61bde82caee95426bf1ad53fefc8dc691b8ba37c.tar.bz2
KVM: s390: Set CPU in stopped state on initial cpu reset
The initial cpu reset sets the cpu in the stopped state. Several places check for the cpu state (e.g. sigp set prefix) and not setting the STOPPED state triggered errors with newer guest kernels after reboot. Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Diffstat (limited to 'arch/s390/kvm')
-rw-r--r--arch/s390/kvm/kvm-s390.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/s390/kvm/kvm-s390.c b/arch/s390/kvm/kvm-s390.c
index 664766d..ace9360 100644
--- a/arch/s390/kvm/kvm-s390.c
+++ b/arch/s390/kvm/kvm-s390.c
@@ -347,6 +347,7 @@ static void kvm_s390_vcpu_initial_reset(struct kvm_vcpu *vcpu)
vcpu->arch.guest_fpregs.fpc = 0;
asm volatile("lfpc %0" : : "Q" (vcpu->arch.guest_fpregs.fpc));
vcpu->arch.sie_block->gbea = 1;
+ atomic_set_mask(CPUSTAT_STOPPED, &vcpu->arch.sie_block->cpuflags);
}
int kvm_arch_vcpu_setup(struct kvm_vcpu *vcpu)