All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vladimir Murzin <vladimir.murzin@arm.com>
To: Alexandru Elisei <alexandru.elisei@arm.com>
Cc: maz@kernel.org, will@kernel.org, kvmarm@lists.cs.columbia.edu,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH kvmtool] aarch64: Give up with MTE for AArch32 guest
Date: Fri, 20 May 2022 14:48:10 +0100	[thread overview]
Message-ID: <a0162c84-3dc9-7a25-2db6-3943073e693a@arm.com> (raw)
In-Reply-To: <YoeYF/J2O/cLXmXZ@monolith.localdoman>

Hi Alexandru,

On 5/20/22 14:31, Alexandru Elisei wrote:
> Hi Vladimir,
> 
> When I run an --aarch32 guest with --debug this is the message that I'm
> getting:
> 
>   Info: (arm/aarch64/kvm.c) kvm__arch_enable_mte:146: MTE capability not available
> 
> Would you mind elaborating on the merits of the message that you are
> proposing:
> 
>   Info: (arm/aarch64/kvm.c) kvm__arch_enable_mte:124: MTE is incompatible with AArch32
> 
> Is it because it explains why the capability is not available?

Hmm, without this patch I'm getting

 lkvm run -k /opt/kvm/guest-0/Image -d /opt/kvm/guest-0/fs.ext2 -c 4 -m 681 --console virtio '--irqchip=gicv3' --params 'console=hvc earlycon swiotlb=1024' --aarch32 --debug

+ lkvm run -k /opt/kvm/guest-0/Image -m 681 -c 4 --name guest-115
  Info: (arm/aarch64/kvm.c) kvm__get_vm_type:76: max_ipa aa8fffff ipa_bits 32 max_ipa_bits 40
  Info: (arm/aarch64/kvm.c) kvm__arch_enable_mte:104: MTE capability enabled
  Info: (arm/kvm.c) kvm__arch_load_kernel_image:118: Loaded kernel to 0x80008000 (17280980 bytes)
  Info: (arm/kvm.c) kvm__arch_load_kernel_image:134: Placing fdt at 0x8fe00000 - 0x8fffffff
  Fatal: Unable to initialise vcpu

with patch applied

lkvm run -k /opt/kvm/guest-0/Image -d /opt/kvm/guest-0/fs.ext2 -c 4 -m 681 --console virtio '--irqchip=gicv3' --params 'console=hvc earlycon swiotlb=1024' --aarch32 --debug
+ lkvm run -k /opt/kvm/guest-0/Image -d /opt/kvm/guest-0/fs.ext2 -c 4 -m 681 --console virtio '--irqchip=gicv3' --params 'console=hvc earlycon swiotlb=1024' --aarch32 --debug
  # lkvm run -k /opt/kvm/guest-0/Image -m 681 -c 4 --name guest-114
  Info: (arm/aarch64/kvm.c) kvm__get_vm_type:76: max_ipa aa8fffff ipa_bits 32 max_ipa_bits 40
  Info: (arm/aarch64/kvm.c) kvm__arch_enable_mte:92: MTE is incompatible with AArch32
  Info: (arm/kvm.c) kvm__arch_load_kernel_image:118: Loaded kernel to 0x80008000 (17280980 bytes)
  Info: (arm/kvm.c) kvm__arch_load_kernel_image:134: Placing fdt at 0x8fe00000 - 0x8fffffff
  Info: (virtio/mmio.c) virtio_mmio_init:325: virtio-mmio.devices=0x200@0x3000000:36
  Info: (virtio/mmio.c) virtio_mmio_init:325: virtio-mmio.devices=0x200@0x3000200:37
  Info: (virtio/mmio.c) virtio_mmio_init:325: virtio-mmio.devices=0x200@0x3000400:38

My host and guest kernel is 5.15, maybe I'm just missing some backport?

Cheers
Vladimir

> 
> Thanks,
> Alex
> 
> On Fri, May 20, 2022 at 01:38:44PM +0100, Vladimir Murzin wrote:
>> KVM doesn't support combination of MTE and AArch32 guest, so do not
>> even try.
>>
>> Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
>> ---
>>  arm/aarch64/kvm.c | 5 +++++
>>  1 file changed, 5 insertions(+)
>>
>> diff --git a/arm/aarch64/kvm.c b/arm/aarch64/kvm.c
>> index 1b992dd..f3fe854 100644
>> --- a/arm/aarch64/kvm.c
>> +++ b/arm/aarch64/kvm.c
>> @@ -120,6 +120,11 @@ void kvm__arch_enable_mte(struct kvm *kvm)
>>  		.cap = KVM_CAP_ARM_MTE,
>>  	};
>>  
>> +	if (kvm->cfg.arch.aarch32_guest) {
>> +		pr_debug("MTE is incompatible with AArch32");
>> +		return;
>> +	}
>> +
>>  	if (kvm->cfg.arch.mte_disabled) {
>>  		pr_debug("MTE disabled by user");
>>  		return;
>> -- 
>> 2.25.1
>>

_______________________________________________
kvmarm mailing list
kvmarm@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm

WARNING: multiple messages have this Message-ID (diff)
From: Vladimir Murzin <vladimir.murzin@arm.com>
To: Alexandru Elisei <alexandru.elisei@arm.com>
Cc: linux-arm-kernel@lists.infradead.org,
	kvmarm@lists.cs.columbia.edu, will@kernel.org, maz@kernel.org
Subject: Re: [PATCH kvmtool] aarch64: Give up with MTE for AArch32 guest
Date: Fri, 20 May 2022 14:48:10 +0100	[thread overview]
Message-ID: <a0162c84-3dc9-7a25-2db6-3943073e693a@arm.com> (raw)
In-Reply-To: <YoeYF/J2O/cLXmXZ@monolith.localdoman>

Hi Alexandru,

On 5/20/22 14:31, Alexandru Elisei wrote:
> Hi Vladimir,
> 
> When I run an --aarch32 guest with --debug this is the message that I'm
> getting:
> 
>   Info: (arm/aarch64/kvm.c) kvm__arch_enable_mte:146: MTE capability not available
> 
> Would you mind elaborating on the merits of the message that you are
> proposing:
> 
>   Info: (arm/aarch64/kvm.c) kvm__arch_enable_mte:124: MTE is incompatible with AArch32
> 
> Is it because it explains why the capability is not available?

Hmm, without this patch I'm getting

 lkvm run -k /opt/kvm/guest-0/Image -d /opt/kvm/guest-0/fs.ext2 -c 4 -m 681 --console virtio '--irqchip=gicv3' --params 'console=hvc earlycon swiotlb=1024' --aarch32 --debug

+ lkvm run -k /opt/kvm/guest-0/Image -m 681 -c 4 --name guest-115
  Info: (arm/aarch64/kvm.c) kvm__get_vm_type:76: max_ipa aa8fffff ipa_bits 32 max_ipa_bits 40
  Info: (arm/aarch64/kvm.c) kvm__arch_enable_mte:104: MTE capability enabled
  Info: (arm/kvm.c) kvm__arch_load_kernel_image:118: Loaded kernel to 0x80008000 (17280980 bytes)
  Info: (arm/kvm.c) kvm__arch_load_kernel_image:134: Placing fdt at 0x8fe00000 - 0x8fffffff
  Fatal: Unable to initialise vcpu

with patch applied

lkvm run -k /opt/kvm/guest-0/Image -d /opt/kvm/guest-0/fs.ext2 -c 4 -m 681 --console virtio '--irqchip=gicv3' --params 'console=hvc earlycon swiotlb=1024' --aarch32 --debug
+ lkvm run -k /opt/kvm/guest-0/Image -d /opt/kvm/guest-0/fs.ext2 -c 4 -m 681 --console virtio '--irqchip=gicv3' --params 'console=hvc earlycon swiotlb=1024' --aarch32 --debug
  # lkvm run -k /opt/kvm/guest-0/Image -m 681 -c 4 --name guest-114
  Info: (arm/aarch64/kvm.c) kvm__get_vm_type:76: max_ipa aa8fffff ipa_bits 32 max_ipa_bits 40
  Info: (arm/aarch64/kvm.c) kvm__arch_enable_mte:92: MTE is incompatible with AArch32
  Info: (arm/kvm.c) kvm__arch_load_kernel_image:118: Loaded kernel to 0x80008000 (17280980 bytes)
  Info: (arm/kvm.c) kvm__arch_load_kernel_image:134: Placing fdt at 0x8fe00000 - 0x8fffffff
  Info: (virtio/mmio.c) virtio_mmio_init:325: virtio-mmio.devices=0x200@0x3000000:36
  Info: (virtio/mmio.c) virtio_mmio_init:325: virtio-mmio.devices=0x200@0x3000200:37
  Info: (virtio/mmio.c) virtio_mmio_init:325: virtio-mmio.devices=0x200@0x3000400:38

My host and guest kernel is 5.15, maybe I'm just missing some backport?

Cheers
Vladimir

> 
> Thanks,
> Alex
> 
> On Fri, May 20, 2022 at 01:38:44PM +0100, Vladimir Murzin wrote:
>> KVM doesn't support combination of MTE and AArch32 guest, so do not
>> even try.
>>
>> Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
>> ---
>>  arm/aarch64/kvm.c | 5 +++++
>>  1 file changed, 5 insertions(+)
>>
>> diff --git a/arm/aarch64/kvm.c b/arm/aarch64/kvm.c
>> index 1b992dd..f3fe854 100644
>> --- a/arm/aarch64/kvm.c
>> +++ b/arm/aarch64/kvm.c
>> @@ -120,6 +120,11 @@ void kvm__arch_enable_mte(struct kvm *kvm)
>>  		.cap = KVM_CAP_ARM_MTE,
>>  	};
>>  
>> +	if (kvm->cfg.arch.aarch32_guest) {
>> +		pr_debug("MTE is incompatible with AArch32");
>> +		return;
>> +	}
>> +
>>  	if (kvm->cfg.arch.mte_disabled) {
>>  		pr_debug("MTE disabled by user");
>>  		return;
>> -- 
>> 2.25.1
>>


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2022-05-20 13:48 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-20 12:38 [PATCH kvmtool] aarch64: Give up with MTE for AArch32 guest Vladimir Murzin
2022-05-20 12:38 ` Vladimir Murzin
2022-05-20 13:31 ` Alexandru Elisei
2022-05-20 13:31   ` Alexandru Elisei
2022-05-20 13:48   ` Vladimir Murzin [this message]
2022-05-20 13:48     ` Vladimir Murzin
2022-05-20 14:01     ` Alexandru Elisei
2022-05-20 14:01       ` Alexandru Elisei
2022-05-20 20:51 ` Will Deacon
2022-05-20 20:51   ` Will Deacon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a0162c84-3dc9-7a25-2db6-3943073e693a@arm.com \
    --to=vladimir.murzin@arm.com \
    --cc=alexandru.elisei@arm.com \
    --cc=kvmarm@lists.cs.columbia.edu \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=maz@kernel.org \
    --cc=will@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.