[PATCH v2 0/7] Support for running as a pKVM protected guest
Steven Price
steven.price at arm.com
Fri Aug 30 06:52:54 PDT 2024
On 30/08/2024 14:01, Will Deacon wrote:
> Hi all,
>
> This is version two of the series previously posted here:
>
> https://lore.kernel.org/r/20240730151113.1497-1-will@kernel.org
>
> Changes since v1:
> * New patch allocating additional hypercalls for future pKVM usage
>
> It looks like the CCA series is now using some of the pieces here [1],
> so it would be great to merge this with an Ack from the kvmarm
> maintainers.
Indeed, for what it's worth, patches 3 and 5 are both:
Reviewed-by: Steven Price <steven.price at arm.com>
Thanks,
Steve
> Cheers,
>
> Will
>
> [1] https://lore.kernel.org/r/20240819131924.372366-1-steven.price@arm.com
>
> Cc: Sudeep Holla <sudeep.holla at arm.com>
> Cc: Catalin Marinas <catalin.marinas at arm.com>
> Cc: Lorenzo Pieralisi <lpieralisi at kernel.org>
> Cc: Suzuki Poulose <suzuki.poulose at arm.com>
> Cc: Steven Price <steven.price at arm.com>
> Cc: Oliver Upton <oliver.upton at linux.dev>
> Cc: Marc Zyngier <maz at kernel.org>
> Cc: linux-coco at lists.linux.dev
>
> --->8
>
> Marc Zyngier (1):
> firmware/smccc: Call arch-specific hook on discovering KVM services
>
> Will Deacon (6):
> drivers/virt: pkvm: Add initial support for running as a protected
> guest
> arm64: mm: Add top-level dispatcher for internal mem_encrypt API
> drivers/virt: pkvm: Hook up mem_encrypt API using pKVM hypercalls
> arm64: mm: Add confidential computing hook to ioremap_prot()
> drivers/virt: pkvm: Intercept ioremap using pKVM MMIO_GUARD hypercall
> arm64: smccc: Reserve block of KVM "vendor" services for pKVM
> hypercalls
>
> Documentation/virt/kvm/arm/hypercalls.rst | 98 ++++++++++++++
> arch/arm/include/asm/hypervisor.h | 2 +
> arch/arm64/Kconfig | 1 +
> arch/arm64/include/asm/hypervisor.h | 11 ++
> arch/arm64/include/asm/io.h | 4 +
> arch/arm64/include/asm/mem_encrypt.h | 15 +++
> arch/arm64/include/asm/set_memory.h | 1 +
> arch/arm64/mm/Makefile | 2 +-
> arch/arm64/mm/ioremap.c | 23 +++-
> arch/arm64/mm/mem_encrypt.c | 50 +++++++
> drivers/firmware/smccc/kvm_guest.c | 2 +
> drivers/virt/coco/Kconfig | 2 +
> drivers/virt/coco/Makefile | 1 +
> drivers/virt/coco/pkvm-guest/Kconfig | 10 ++
> drivers/virt/coco/pkvm-guest/Makefile | 2 +
> drivers/virt/coco/pkvm-guest/arm-pkvm-guest.c | 127 ++++++++++++++++++
> include/linux/arm-smccc.h | 88 ++++++++++++
> 17 files changed, 437 insertions(+), 2 deletions(-)
> create mode 100644 arch/arm64/include/asm/mem_encrypt.h
> create mode 100644 arch/arm64/mm/mem_encrypt.c
> create mode 100644 drivers/virt/coco/pkvm-guest/Kconfig
> create mode 100644 drivers/virt/coco/pkvm-guest/Makefile
> create mode 100644 drivers/virt/coco/pkvm-guest/arm-pkvm-guest.c
>
More information about the linux-arm-kernel
mailing list