Re: [PATCH 24/50] KVM: PPC: align vcpu_kick with x86

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Jan 8, 2012, at 7:14 AM, Alexander Graf wrote:

> 
> On 08.01.2012, at 14:24, Avi Kivity wrote:
> 
>> 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.
> 
> 
> Yup :). I think Christoffer is working on that.
> 

yes, it's done actually and will be shipped any day now.

-Christoffer--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM Development]     [KVM ARM]     [KVM ia64]     [Linux Virtualization]     [Linux USB Devel]     [Linux Video]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux