linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v8 0/5] MTE support for KVM guest
@ 2021-02-05 13:57 Steven Price
  2021-02-05 13:57 ` [PATCH v8 1/5] arm64: mte: Sync tags for pages where PTE is untagged Steven Price
                   ` (4 more replies)
  0 siblings, 5 replies; 8+ messages in thread
From: Steven Price @ 2021-02-05 13:57 UTC (permalink / raw)
  To: Catalin Marinas, Marc Zyngier, Will Deacon
  Cc: Steven Price, James Morse, Julien Thierry, Suzuki K Poulose,
	kvmarm, linux-arm-kernel, linux-kernel, Dave Martin,
	Mark Rutland, Thomas Gleixner, qemu-devel, Juan Quintela,
	Dr. David Alan Gilbert, Richard Henderson, Peter Maydell,
	Haibo Xu, Andrew Jones

Another round of updates following review comments from Marc (thanks!).
This is rather late for v5.12, so I'll rebase again after -rc1 is out.

This series adds support for using the Arm Memory Tagging Extensions
(MTE) in a KVM guest.

This version splits the change to the tag synchronisation out to it's
own patch (patch 1), and also separates the introduction and exposing of
KVM_ARM_CAP_MTE into two patches (2 and 4) to avoid a dependency problem
with the save/restore patch (3). As before patch 5 is an RFC for adding
a new ioctl for reading/writing tags (I would appreciate feedback!).

Changes since v7[1]:
 * Split into hopefully more logic patches.
 * Save/restore of TFSRE0_EL1 is now done in C code.
 * Make save/restore of TFSR_EL1 conditional on the VM having MTE
   enabled.
 * Replaced register descriptions boilerplate in sys_regs.c with a new
   MTE_REG() macro.

[1] https://lore.kernel.org/r/20210115152811.8398-1-steven.price%40arm.com

Steven Price (5):
  arm64: mte: Sync tags for pages where PTE is untagged
  arm64: kvm: Introduce MTE VM feature
  arm64: kvm: Save/restore MTE registers
  arm64: kvm: Expose KVM_ARM_CAP_MTE
  KVM: arm64: ioctl to fetch/store tags in a guest

 arch/arm64/include/asm/kvm_emulate.h       |  3 +
 arch/arm64/include/asm/kvm_host.h          |  9 +++
 arch/arm64/include/asm/kvm_mte.h           | 66 ++++++++++++++++++++++
 arch/arm64/include/asm/pgtable.h           |  2 +-
 arch/arm64/include/asm/sysreg.h            |  3 +-
 arch/arm64/include/uapi/asm/kvm.h          | 13 +++++
 arch/arm64/kernel/asm-offsets.c            |  3 +
 arch/arm64/kernel/mte.c                    | 16 ++++--
 arch/arm64/kvm/arm.c                       | 66 ++++++++++++++++++++++
 arch/arm64/kvm/hyp/entry.S                 |  7 +++
 arch/arm64/kvm/hyp/exception.c             |  3 +-
 arch/arm64/kvm/hyp/include/hyp/sysreg-sr.h | 21 +++++++
 arch/arm64/kvm/mmu.c                       | 16 ++++++
 arch/arm64/kvm/sys_regs.c                  | 28 +++++++--
 include/uapi/linux/kvm.h                   |  2 +
 15 files changed, 246 insertions(+), 12 deletions(-)
 create mode 100644 arch/arm64/include/asm/kvm_mte.h

-- 
2.20.1


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-02-10 16:05 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-05 13:57 [PATCH v8 0/5] MTE support for KVM guest Steven Price
2021-02-05 13:57 ` [PATCH v8 1/5] arm64: mte: Sync tags for pages where PTE is untagged Steven Price
2021-02-05 13:58 ` [PATCH v8 2/5] arm64: kvm: Introduce MTE VM feature Steven Price
2021-02-05 13:58 ` [PATCH v8 3/5] arm64: kvm: Save/restore MTE registers Steven Price
2021-02-05 13:58 ` [PATCH v8 4/5] arm64: kvm: Expose KVM_ARM_CAP_MTE Steven Price
2021-02-05 13:58 ` [RFC PATCH v8 5/5] KVM: arm64: ioctl to fetch/store tags in a guest Steven Price
2021-02-08 17:31   ` Peter Maydell
2021-02-10 16:03     ` Steven Price

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).