KVM: s390: move vcpu wakeup code to a central point
authorDavid Hildenbrand <dahi@linux.vnet.ibm.com>
Fri, 16 May 2014 09:59:46 +0000 (11:59 +0200)
committerChristian Borntraeger <borntraeger@de.ibm.com>
Mon, 21 Jul 2014 11:22:38 +0000 (13:22 +0200)
commit0e9c85a5a312fef3e2e79d3ce2d8b6e5b6115e90
tree3b902259f325f4c4529a2d0367337259a66f0143
parent433b9ee43c233790c0ae7c02785d6d73fd4d4455
KVM: s390: move vcpu wakeup code to a central point

Let's move the vcpu wakeup code to a central point.

We should set the vcpu->preempted flag only if the target is actually sleeping
and before the real wakeup happens. Otherwise the preempted flag might be set,
when not necessary. This may result in immediate reschedules after schedule()
in some scenarios.

The wakeup code doesn't require the local_int.lock to be held.

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