On Fri, May 17, 2019 at 05:59:36AM +0200, Paolo Bonzini wrote: > Linus, > > The following changes since commit 7a223e06b1a411cef6c4cd7a9b9a33c8d225b10e: > > KVM: x86: avoid misreporting level-triggered irqs as edge-triggered in tracing (2019-04-16 15:38:08 +0200) > > are available in the git repository at: > > https://git.kernel.org/pub/scm/virt/kvm/kvm.git tags/for-linus > > for you to fetch changes up to dd53f6102c30a774e0db8e55d49017a38060f6f6: > > Merge tag 'kvmarm-for-v5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD (2019-05-15 23:41:43 +0200) > > ---------------------------------------------------------------- > > * ARM: support for SVE and Pointer Authentication in guests, PMU improvements > > * POWER: support for direct access to the POWER9 XIVE interrupt controller, > memory and performance optimizations. > > * x86: support for accessing memory not backed by struct page, fixes and refactoring > > * Generic: dirty page tracking improvements > > ---------------------------------------------------------------- > Aaron Lewis (5): > tests: kvm: Add tests to .gitignore > tests: kvm: Add tests for KVM_CAP_MAX_VCPUS and KVM_CAP_MAX_CPU_ID > KVM: nVMX: KVM_SET_NESTED_STATE - Tear down old EVMCS state before setting new state > tests: kvm: Add tests for KVM_SET_NESTED_STATE > kvm: nVMX: Set nested_run_pending in vmx_set_nested_state after checks complete > > Alexey Kardashevskiy (3): > KVM: PPC: Book3S HV: Fix lockdep warning when entering the guest > KVM: PPC: Book3S HV: Avoid lockdep debugging in TCE realmode handlers > KVM: PPC: Book3S: Allocate guest TCEs on demand too > > Amit Daniel Kachhap (3): > KVM: arm64: Add a vcpu flag to control ptrauth for guest > KVM: arm64: Add userspace flag to enable pointer authentication > KVM: arm64: Add capability to advertise ptrauth for guest > > Andrew Murray (9): > arm64: arm_pmu: Remove unnecessary isb instruction > arm64: KVM: Encapsulate kvm_cpu_context in kvm_host_data > arm64: KVM: Add accessors to track guest/host only counters > arm64: arm_pmu: Add !VHE support for exclude_host/exclude_guest attributes > arm64: KVM: Enable !VHE support for :G/:H perf event modifiers > arm64: KVM: Enable VHE support for :G/:H perf event modifiers > arm64: KVM: Avoid isb's by using direct pmxevtyper sysreg > arm64: docs: Document perf event attributes > arm64: KVM: Fix perf cycle counter support for VHE > > Borislav Petkov (1): > x86/kvm: Implement HWCR support > > Christian Borntraeger (9): > KVM: s390: add vector enhancements facility 2 to cpumodel > KVM: s390: add vector BCD enhancements facility to cpumodel > KVM: s390: add MSA9 to cpumodel > KVM: s390: provide query function for instructions returning 32 byte > KVM: s390: add enhanced sort facilty to cpu model > KVM: s390: add deflate conversion facilty to cpu model > KVM: s390: enable MSA9 keywrapping functions depending on cpu model > KVM: polling: add architecture backend to disable polling > KVM: s390: provide kvm_arch_no_poll function > > Colin Ian King (1): > KVM: PPC: Book3S HV: XIVE: Fix spelling mistake "acessing" -> "accessing" > > Cédric Le Goater (18): > powerpc/xive: add OPAL extensions for the XIVE native exploitation support > KVM: PPC: Book3S HV: Add a new KVM device for the XIVE native exploitation mode > KVM: PPC: Book3S HV: XIVE: Introduce a new capability KVM_CAP_PPC_IRQ_XIVE > KVM: PPC: Book3S HV: XIVE: add a control to initialize a source > KVM: PPC: Book3S HV: XIVE: Add a control to configure a source > KVM: PPC: Book3S HV: XIVE: Add controls for the EQ configuration > KVM: PPC: Book3S HV: XIVE: Add a global reset control > KVM: PPC: Book3S HV: XIVE: Add a control to sync the sources > KVM: PPC: Book3S HV: XIVE: Add a control to dirty the XIVE EQ pages > KVM: PPC: Book3S HV: XIVE: Add get/set accessors for the VP XIVE state > KVM: Introduce a 'mmap' method for KVM devices > KVM: PPC: Book3S HV: XIVE: Add a TIMA mapping > KVM: PPC: Book3S HV: XIVE: Add a mapping for the source ESB pages > KVM: PPC: Book3S HV: XIVE: Add passthrough support > KVM: PPC: Book3S HV: XIVE: Activate XIVE exploitation mode > KVM: Introduce a 'release' method for KVM devices > KVM: PPC: Book3S HV: XIVE: Replace the 'destroy' method by a 'release' method > KVM: PPC: Book3S: Remove useless checks in 'release' method of KVM device > > Dan Carpenter (1): > KVM: vmx: clean up some debug output > > Dave Martin (41): > KVM: Documentation: Document arm64 core registers in detail > arm64: fpsimd: Always set TIF_FOREIGN_FPSTATE on task state flush > KVM: arm64: Delete orphaned declaration for __fpsimd_enabled() > KVM: arm64: Refactor kvm_arm_num_regs() for easier maintenance > KVM: arm64: Add missing #includes to kvm_host.h > arm64/sve: Clarify role of the VQ map maintenance functions > arm64/sve: Check SVE virtualisability > arm64/sve: Enable SVE state tracking for non-task contexts > KVM: arm64: Add a vcpu flag to control SVE visibility for the guest > KVM: arm64: Propagate vcpu into read_id_reg() > KVM: arm64: Support runtime sysreg visibility filtering > KVM: arm64/sve: System register context switch and access support > KVM: arm64/sve: Context switch the SVE registers > KVM: Allow 2048-bit register access via ioctl interface > KVM: arm64: Add missing #include of <linux/string.h> in guest.c > KVM: arm64: Factor out core register ID enumeration > KVM: arm64: Reject ioctl access to FPSIMD V-regs on SVE vcpus > KVM: arm64/sve: Add SVE support to register access ioctl interface > KVM: arm64: Enumerate SVE register indices for KVM_GET_REG_LIST > arm64/sve: In-kernel vector length availability query interface > KVM: arm/arm64: Add hook for arch-specific KVM initialisation > KVM: arm/arm64: Add KVM_ARM_VCPU_FINALIZE ioctl > KVM: arm64/sve: Add pseudo-register for the guest's vector lengths > KVM: arm64/sve: Allow userspace to enable SVE for vcpus > KVM: arm64: Add a capability to advertise SVE support > KVM: Document errors for KVM_GET_ONE_REG and KVM_SET_ONE_REG > KVM: arm64/sve: Document KVM API extensions for SVE > arm64/sve: Clarify vq map semantics > KVM: arm/arm64: Demote kvm_arm_init_arch_resources() to just set up SVE > KVM: arm: Make vcpu finalization stubs into inline functions > KVM: arm64/sve: sys_regs: Demote redundant vcpu_has_sve() checks to WARNs > KVM: arm64/sve: Clean up UAPI register ID definitions > KVM: arm64/sve: Miscellaneous tidyups in guest.c > KVM: arm64/sve: Make register ioctl access errors more consistent > KVM: arm64/sve: WARN when avoiding divide-by-zero in sve_reg_to_region() > KVM: arm64/sve: Simplify KVM_REG_ARM64_SVE_VLS array sizing > KVM: arm64/sve: Explain validity checks in set_sve_vls() > KVM: arm/arm64: Clean up vcpu finalization function parameter naming > KVM: Clarify capability requirements for KVM_ARM_VCPU_FINALIZE > KVM: Clarify KVM_{SET,GET}_ONE_REG error code documentation > KVM: arm64: Clarify access behaviour for out-of-range SVE register slice IDs > > Eric Farman (1): > KVM: s390: Fix potential spectre warnings > > Filippo Sironi (1): > X86/KVM: Handle PFNs outside of kernel reach when touching GPTEs > > Jiang Biao (1): > kvm_main: fix some comments > > Kai Huang (1): > kvm: x86: Fix L1TF mitigation for shadow MMU > > KarimAllah Ahmed (13): > X86/nVMX: handle_vmon: Read 4 bytes from guest memory > X86/nVMX: Update the PML table without mapping and unmapping the page > KVM: Introduce a new guest mapping API This commit causes a build failure on arm64 defconfig: $ make -j$(nproc) ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- O=out defconfig Image.gz ... ../arch/arm64/kvm/../../../virt/kvm/kvm_main.c: In function '__kvm_map_gfn': ../arch/arm64/kvm/../../../virt/kvm/kvm_main.c:1763:9: error: implicit declaration of function 'memremap'; did you mean 'memset_p'? [-Werror=implicit-function-declaration] hva = memremap(pfn_to_hpa(pfn), PAGE_SIZE, MEMREMAP_WB); ^~~~~~~~ memset_p CC kernel/cgroup/rstat.o ../arch/arm64/kvm/../../../virt/kvm/kvm_main.c:1763:46: error: 'MEMREMAP_WB' undeclared (first use in this function) hva = memremap(pfn_to_hpa(pfn), PAGE_SIZE, MEMREMAP_WB); ^~~~~~~~~~~ ../arch/arm64/kvm/../../../virt/kvm/kvm_main.c:1763:46: note: each undeclared identifier is reported only once for each function it appears in ../arch/arm64/kvm/../../../virt/kvm/kvm_main.c: In function 'kvm_vcpu_unmap': ../arch/arm64/kvm/../../../virt/kvm/kvm_main.c:1795:3: error: implicit declaration of function 'memunmap'; did you mean 'vm_munmap'? [-Werror=implicit-function-declaration] memunmap(map->hva); ^~~~~~~~ vm_munmap It seems that the <asm/io.h> include should probably be converted into <linux/io.h>. Cheers, Nathan