[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v15 0/7] MTE support for KVM guest
From: |
Catalin Marinas |
Subject: |
Re: [PATCH v15 0/7] MTE support for KVM guest |
Date: |
Thu, 17 Jun 2021 13:13:22 +0100 |
User-agent: |
Mutt/1.10.1 (2018-07-13) |
On Mon, Jun 14, 2021 at 10:05:18AM +0100, Steven Price wrote:
> I realise there are still open questions[1] around the performance of
> this series (the 'big lock', tag_sync_lock, introduced in the first
> patch). But there should be no impact on non-MTE workloads and until we
> get real MTE-enabled hardware it's hard to know whether there is a need
> for something more sophisticated or not. Peter Collingbourne's patch[3]
> to clear the tags at page allocation time should hide more of the impact
> for non-VM cases. So the remaining concern is around VM startup which
> could be effectively serialised through the lock.
[...]
> [1]: https://lore.kernel.org/r/874ke7z3ng.wl-maz%40kernel.org
Start-up, VM resume, migration could be affected by this lock, basically
any time you fault a page into the guest. As you said, for now it should
be fine as long as the hardware doesn't support MTE or qemu doesn't
enable MTE in guests. But the problem won't go away.
We have a partial solution with an array of locks to mitigate against
this but there's still the question of whether we should actually bother
for something that's unlikely to happen in practice: MAP_SHARED memory
in guests (ignoring the stage 1 case for now).
If MAP_SHARED in guests is not a realistic use-case, we have the vma in
user_mem_abort() and if the VM_SHARED flag is set together with MTE
enabled for guests, we can reject the mapping.
We can discuss the stage 1 case separately from this series.
--
Catalin
- [PATCH v15 0/7] MTE support for KVM guest, Steven Price, 2021/06/14
- [PATCH v15 1/7] arm64: mte: Handle race when synchronising tags, Steven Price, 2021/06/14
- [PATCH v15 2/7] arm64: mte: Sync tags for pages where PTE is untagged, Steven Price, 2021/06/14
- [PATCH v15 3/7] KVM: arm64: Introduce MTE VM feature, Steven Price, 2021/06/14
- [PATCH v15 4/7] KVM: arm64: Save/restore MTE registers, Steven Price, 2021/06/14
- [PATCH v15 5/7] KVM: arm64: Expose KVM_ARM_CAP_MTE, Steven Price, 2021/06/14
- [PATCH v15 6/7] KVM: arm64: ioctl to fetch/store tags in a guest, Steven Price, 2021/06/14
- [PATCH v15 7/7] KVM: arm64: Document MTE capability and ioctl, Steven Price, 2021/06/14
- Re: [PATCH v15 0/7] MTE support for KVM guest,
Catalin Marinas <=