Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

KVM: s390: Use kvm_vcpu_wake_up in kvm_s390_vcpu_wakeup

Use kvm_vcpu_wake_up() in kvm_s390_vcpu_wakeup().

Suggested-by: Paolo Bonzini <pbonzini@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Radim Krčmář <rkrcmar@redhat.com>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Wanpeng Li <wanpengli@tencent.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

authored by

Wanpeng Li and committed by
Paolo Bonzini
d9847409 d73eb57b

+3 -20
+3 -20
arch/s390/kvm/interrupt.c
··· 1224 1224 1225 1225 void kvm_s390_vcpu_wakeup(struct kvm_vcpu *vcpu) 1226 1226 { 1227 - /* 1228 - * We cannot move this into the if, as the CPU might be already 1229 - * in kvm_vcpu_block without having the waitqueue set (polling) 1230 - */ 1231 1227 vcpu->valid_wakeup = true; 1228 + kvm_vcpu_wake_up(vcpu); 1229 + 1232 1230 /* 1233 - * This is mostly to document, that the read in swait_active could 1234 - * be moved before other stores, leading to subtle races. 1235 - * All current users do not store or use an atomic like update 1236 - */ 1237 - smp_mb__after_atomic(); 1238 - if (swait_active(&vcpu->wq)) { 1239 - /* 1240 - * The vcpu gave up the cpu voluntarily, mark it as a good 1241 - * yield-candidate. 1242 - */ 1243 - vcpu->ready = true; 1244 - swake_up_one(&vcpu->wq); 1245 - vcpu->stat.halt_wakeup++; 1246 - } 1247 - /* 1248 - * The VCPU might not be sleeping but is executing the VSIE. Let's 1231 + * The VCPU might not be sleeping but rather executing VSIE. Let's 1249 1232 * kick it, so it leaves the SIE to process the request. 1250 1233 */ 1251 1234 kvm_s390_vsie_kick(vcpu);