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: Rob Herring
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 08:42:55 -0500

On Mon, May 5, 2014 at 6:42 AM, Pranavkumar Sawargaonkar
<address@hidden> wrote:
> 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(-)

Rather than add this in 2 places, shouldn't this come after patch 5?

Rob

>>>
>>> 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]