[PATCH] kvmtool: arm64: Report missing support for 32bit guests
Marc Zyngier
maz at kernel.org
Thu Jul 2 11:51:24 EDT 2020
On 2020-07-02 16:37, Suzuki K Poulose wrote:
> Hi Marc
>
> On 07/01/2020 04:42 PM, Marc Zyngier wrote:
>> On 2020-07-01 15:20, Suzuki K Poulose wrote:
>>> When the host doesn't support 32bit guests, the kvmtool fails
>>> without a proper message on what is wrong. i.e,
>>>
>>> $ lkvm run -c 1 Image --aarch32
>>> # lkvm run -k Image -m 256 -c 1 --name guest-105618
>>> Fatal: Unable to initialise vcpu
>>>
>>> Given that there is no other easy way to check if the host supports
>>> 32bit
>>> guests, it is always good to report this by checking the capability,
>>> rather
>>> than leaving the users to hunt this down by looking at the code!
>>>
>>> After this patch:
>>>
>>> $ lkvm run -c 1 Image --aarch32
>>> # lkvm run -k Image -m 256 -c 1 --name guest-105695
>>> Fatal: 32bit guests are not supported
>>
>> Fancy!
>>
>>>
>>> Cc: Will Deacon <will at kernel.org>
>>> Reported-by: Sami Mujawar <sami.mujawar at arm.com>
>>> Signed-off-by: Suzuki K Poulose <suzuki.poulose at arm.com>
>>> ---
>>> arm/kvm-cpu.c | 4 ++++
>>> 1 file changed, 4 insertions(+)
>>>
>>> diff --git a/arm/kvm-cpu.c b/arm/kvm-cpu.c
>>> index 554414f..2acecae 100644
>>> --- a/arm/kvm-cpu.c
>>> +++ b/arm/kvm-cpu.c
>>> @@ -46,6 +46,10 @@ struct kvm_cpu *kvm_cpu__arch_init(struct kvm
>>> *kvm,
>>> unsigned long cpu_id)
>>> .features = ARM_VCPU_FEATURE_FLAGS(kvm, cpu_id)
>>> };
>>>
>>> + if (kvm->cfg.arch.aarch32_guest &&
>>> + !kvm__supports_extension(kvm, KVM_CAP_ARM_EL1_32BIT))
>>
>> Can you please check that this still compiles for 32bit host?
>
> Yes, it does. I have built this on an arm32 rootfs with make ARCH=arm.
> The kvm->cfg.arch is common across arm/arm64 and is defined here :
>
> arm/include/arm-common/kvm-config-arch.h
I was worried about the availability of KVM_CAP_ARM_EL1_32BIT,
but being a capability, it is common to all arches. It is
KVM_ARM_VCPU_EL1_32BIT that is 32bit only, but that's not what
you are using. Too many flags! ;-)
Thanks,
M.
--
Jazz is not dead. It just smells funny...
More information about the linux-arm-kernel
mailing list