[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