This series, based on kvmtool master [1], implements basic support for pointer authentication and SVE for guests. A git tree is also available [2]. For pointer auth, I include Amit's v10 patch [3], with some additional refactoring to sit nicely alongside SVE, and some cosmetic / diagnostic tidyups discussed during review on-list. (I've kept the extra changes separate for easier review, but they could be folded if desired.) [Maintainer note: I'd like Amit to comment on my changes on top of his pointer auth patch, but the first 4 patches just re-sync headers and could be pulled earlier if you feel like it.] This series has been tested against Linux v5.2-rc1. If people have a strong view on the --sve-vls parameter, I'd be interested to discuss what that should look like. Since this is primarily a debug/experimentation option, the current implementation is probably good enough though. [1] git://git.kernel.org/pub/scm/linux/kernel/git/will/kvmtool.git master https://git.kernel.org/pub/scm/linux/kernel/git/will/kvmtool.git/log/ eaeaf60808d6 ("virtio/blk: Avoid taking pointer to packed struct") [2] [PATCH v10 3/5] KVM: arm64: Add userspace flag to enable pointer authentication https://lore.kernel.org/linux-arm-kernel/1555994558-26349-6-git-send-email-amit.kachhap@xxxxxxx/ [3] git://linux-arm.org/kvmtool-dm.git sve/v3/head http://linux-arm.org/git?p=kvmtool-dm.git;a=shortlog;h=refs/heads/sve/v3/head Amit Daniel Kachhap (1): KVM: arm/arm64: Add a vcpu feature for pointer authentication Dave Martin (8): update_headers.sh: Add missing shell quoting update_headers.sh: Cleanly report failure on error update_headers.sh: arm64: Copy sve_context.h if available update_headers: Sync kvm UAPI headers with linux v5.1-rc1 arm/arm64: Factor out ptrauth vcpu feature setup arm64: Make ptrauth enable/disable diagnostics more user-friendly arm64: Add SVE support arm64: Select SVE vector lengths via the command line arm/aarch32/include/kvm/kvm-cpu-arch.h | 7 ++ arm/aarch64/include/asm/kvm.h | 43 +++++++++ arm/aarch64/include/asm/sve_context.h | 53 +++++++++++ arm/aarch64/include/kvm/kvm-config-arch.h | 16 +++- arm/aarch64/include/kvm/kvm-cpu-arch.h | 3 + arm/aarch64/kvm-cpu.c | 148 ++++++++++++++++++++++++++++++ arm/include/arm-common/kvm-config-arch.h | 5 + arm/kvm-cpu.c | 5 + include/linux/kvm.h | 15 ++- powerpc/include/asm/kvm.h | 48 ++++++++++ util/update_headers.sh | 25 +++-- x86/include/asm/kvm.h | 1 + 12 files changed, 360 insertions(+), 9 deletions(-) create mode 100644 arm/aarch64/include/asm/sve_context.h -- 2.1.4 _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/mailman/listinfo/kvmarm