KVM: s390: fix bug in sigp emergency signal injection
authorJens Freimann <jfrei@linux.vnet.ibm.com>
Thu, 18 Dec 2014 14:48:14 +0000 (15:48 +0100)
committerChristian Borntraeger <borntraeger@de.ibm.com>
Fri, 23 Jan 2015 12:25:39 +0000 (13:25 +0100)
commit49538d12380fa8970f35db1f063189e49e69399c
treed0f52d203c2a87c67855d7aa03a15b5690958ab1
parent3cfad02380f761af99770f22c327e5eedfad3934
KVM: s390: fix bug in sigp emergency signal injection

Currently we are always setting the wrong bit in the
bitmap for pending emergency signals. Instead of using
emerg.code from the passed in irq parameter, we use the
value in our per-vcpu local_int structure, which is always zero.
That means all emergency signals will have address 0 as parameter.
If two CPUs send a SIGP to the same target, one might be lost.

Let's fix this by using the value from the parameter and
also trace the correct value.

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