qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [RFC PATCH V4 5/6] target-arm: Common kvm_arm_vcpu_init


From: Pranavkumar Sawargaonkar
Subject: Re: [Qemu-devel] [RFC PATCH V4 5/6] target-arm: Common kvm_arm_vcpu_init() for KVM ARM and KVM ARM64
Date: Mon, 5 May 2014 17:12:47 +0530

Hi Peter,

On 5 May 2014 16:14, Peter Maydell <address@hidden> wrote:
> On 5 May 2014 10:00, Pranavkumar Sawargaonkar <address@hidden> wrote:
>> Introduce a common kvm_arm_vcpu_init() for doing KVM_ARM_VCPU_INIT
>> ioctl in KVM ARM and KVM ARM64. This also helps us factor-out few
>> common code lines from kvm_arch_init_vcpu() for KVM ARM/ARM64.
>>
>> Signed-off-by: Pranavkumar Sawargaonkar <address@hidden>
>> Signed-off-by: Anup Patel <address@hidden>
>> ---
>>  target-arm/kvm.c     |   23 +++++++++++++++++++++++
>>  target-arm/kvm32.c   |   18 +++---------------
>>  target-arm/kvm64.c   |   22 ++++++++--------------
>>  target-arm/kvm_arm.h |   14 ++++++++++++++
>>  4 files changed, 48 insertions(+), 29 deletions(-)
>>
>> diff --git a/target-arm/kvm.c b/target-arm/kvm.c
>> index 39202d7..55bc3a3 100644
>> --- a/target-arm/kvm.c
>> +++ b/target-arm/kvm.c
>> @@ -27,6 +27,29 @@ const KVMCapabilityInfo kvm_arch_required_capabilities[] 
>> = {
>>      KVM_CAP_LAST_INFO
>>  };
>>
>> +int kvm_arm_vcpu_init(CPUState *cs, uint32_t feature0_extra)
>> +{
>> +    ARMCPU *cpu = ARM_CPU(cs);
>> +    struct kvm_vcpu_init init;
>> +
>> +    if (cpu->kvm_target == QEMU_KVM_ARM_TARGET_NONE) {
>> +        fprintf(stderr, "KVM is not supported for this guest CPU type\n");
>> +        return -EINVAL;
>> +    }
>> +
>> +    init.target = cpu->kvm_target;
>> +    memset(init.features, 0, sizeof(init.features));
>> +    if (cpu->start_powered_off) {
>> +        init.features[0] |= 1 << KVM_ARM_VCPU_POWER_OFF;
>> +    }
>> +    if (kvm_check_extension(cs->kvm_state, KVM_CAP_ARM_PSCI_0_2)) {
>> +        init.features[0] |= 1 << KVM_ARM_VCPU_PSCI_0_2;
>> +    }
>> +    init.features[0] |= feature0_extra;
>> +
>> +    return kvm_vcpu_ioctl(cs, KVM_ARM_VCPU_INIT, &init);
>> +}
>
> I said back in the review comments for v2 of this series that we
> didn't need to do all this just for reset. Put the features word in
> cpu along with kvm_target:
> http://patchwork.ozlabs.org/patch/335900/

Sure, I will do it.

>
> thanks
> -- PMM
Thanks,
Pranav



reply via email to

[Prev in Thread] Current Thread [Next in Thread]