KVM: s390: Fix SIGP set prefix ioctl
authorChristian Borntraeger <borntraeger@de.ibm.com>
Thu, 22 Jan 2009 09:29:08 +0000 (10:29 +0100)
committerAvi Kivity <avi@redhat.com>
Tue, 24 Mar 2009 09:03:07 +0000 (11:03 +0200)
This patch fixes the SET PREFIX interrupt if triggered by userspace.
Until now, it was not necessary, but life migration will need it. In
addition, it helped me creating SMP support for my kvm_crashme tool
(lets kvm execute random guest memory content).

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
arch/s390/kvm/interrupt.c

index f4fe28a..0189356 100644 (file)
@@ -555,9 +555,14 @@ int kvm_s390_inject_vcpu(struct kvm_vcpu *vcpu,
                VCPU_EVENT(vcpu, 3, "inject: program check %d (from user)",
                           s390int->parm);
                break;
+       case KVM_S390_SIGP_SET_PREFIX:
+               inti->prefix.address = s390int->parm;
+               inti->type = s390int->type;
+               VCPU_EVENT(vcpu, 3, "inject: set prefix to %x (from user)",
+                          s390int->parm);
+               break;
        case KVM_S390_SIGP_STOP:
        case KVM_S390_RESTART:
-       case KVM_S390_SIGP_SET_PREFIX:
        case KVM_S390_INT_EMERGENCY:
                VCPU_EVENT(vcpu, 3, "inject: type %x", s390int->type);
                inti->type = s390int->type;