On 01/04/2012 03:10 AM, Alexander Graf wrote: > Our vcpu kick implementation differs a bit from x86 which resulted in us not > disabling preemption during the kick. Get it a bit closer to what x86 does. > > Signed-off-by: Alexander Graf <agraf@xxxxxxx> > --- > arch/powerpc/kvm/powerpc.c | 7 ++++++- > 1 files changed, 6 insertions(+), 1 deletions(-) > > diff --git a/arch/powerpc/kvm/powerpc.c b/arch/powerpc/kvm/powerpc.c > index c952f13..ef8c990 100644 > --- a/arch/powerpc/kvm/powerpc.c > +++ b/arch/powerpc/kvm/powerpc.c > @@ -557,12 +557,17 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_vcpu *vcpu, struct kvm_run *run) > > void kvm_vcpu_kick(struct kvm_vcpu *vcpu) > { > + int me; > + int cpu = vcpu->cpu; > + > + me = get_cpu(); Whitespace. > if (waitqueue_active(&vcpu->wq)) { > wake_up_interruptible(vcpu->arch.wqp); > vcpu->stat.halt_wakeup++; > - } else if (vcpu->cpu != -1) { > + } else if (cpu != me && cpu != -1) { > smp_send_reschedule(vcpu->cpu); > } > + put_cpu(); > } > > int kvm_vcpu_ioctl_interrupt(struct kvm_vcpu *vcpu, struct kvm_interrupt *irq) Eventually, let's move kvm_vcpu_kick() to generic code. -- error compiling committee.c: too many arguments to function -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html