guest_memfd:

* Add support for host userspace mapping of guest_memfd-backed memory for VM
  types that do NOT use support KVM_MEMORY_ATTRIBUTE_PRIVATE (which isn't
  precisely the same thing as CoCo VMs, since x86's SEV-MEM and SEV-ES have
  no way to detect private vs. shared).

  This lays the groundwork for removal of guest memory from the kernel direct
  map, as well as for limited mmap() for guest_memfd-backed memory.

  For more information see:
  * a6ad54137af9 ("Merge branch 'guest-memfd-mmap' into HEAD", 2025-08-27)
  * https://github.com/firecracker-microvm/firecracker/tree/feature/secret-hiding
    (guest_memfd in Firecracker)
  * https://lore.kernel.org/all/20250221160728.1584559-1-roypat@amazon.co.uk/
    (direct map removal)
  * https://lore.kernel.org/all/20250328153133.3504118-1-tabba@google.com/
    (mmap support)

ARM:

* Add support for FF-A 1.2 as the secure memory conduit for pKVM,
  allowing more registers to be used as part of the message payload.

* Change the way pKVM allocates its VM handles, making sure that the
  privileged hypervisor is never tricked into using uninitialised
  data.

* Speed up MMIO range registration by avoiding unnecessary RCU
  synchronisation, which results in VMs starting much quicker.

* Add the dump of the instruction stream when panic-ing in the EL2
  payload, just like the rest of the kernel has always done. This will
  hopefully help debugging non-VHE setups.

* Add 52bit PA support to the stage-1 page-table walker, and make use
  of it to populate the fault level reported to the guest on failing
  to translate a stage-1 walk.

* Add NV support to the GICv3-on-GICv5 emulation code, ensuring
  feature parity for guests, irrespective of the host platform.

* Fix some really ugly architecture problems when dealing with debug
  in a nested VM. This has some bad performance impacts, but is at
  least correct.

* Add enough infrastructure to be able to disable EL2 features and
  give effective values to the EL2 control registers. This then allows
  a bunch of features to be turned off, which helps cross-host
  migration.

* Large rework of the selftest infrastructure to allow most tests to
  transparently run at EL2. This is the first step towards enabling
  NV testing.

* Various fixes and improvements all over the map, including one BE
  fix, just in time for the removal of the feature.

LoongArch:

* Detect page table walk feature on new hardware

* Add sign extension with kernel MMIO/IOCSR emulation

* Improve in-kernel IPI emulation

* Improve in-kernel PCH-PIC emulation

* Move kvm_iocsr tracepoint out of generic code

RISC-V:

* Added SBI FWFT extension for Guest/VM with misaligned delegation and
  pointer masking PMLEN features

* Added ONE_REG interface for SBI FWFT extension

* Added Zicbop and bfloat16 extensions for Guest/VM

* Enabled more common KVM selftests for RISC-V

* Added SBI v3.0 PMU enhancements in KVM and perf driver

s390:

* Improve interrupt cpu for wakeup, in particular the heuristic to decide
  which vCPU to deliver a floating interrupt to.

* Clear the PTE when discarding a swapped page because of CMMA; this
  bug was introduced in 6.16 when refactoring gmap code.

x86 selftests:

* Add #DE coverage in the fastops test (the only exception that's guest-
  triggerable in fastop-emulated instructions).

* Fix PMU selftests errors encountered on Granite Rapids (GNR), Sierra
  Forest (SRF) and Clearwater Forest (CWF).

* Minor cleanups and improvements

x86 (guest side):

* For the legacy PCI hole (memory between TOLUD and 4GiB) to UC when
  overriding guest MTRR for TDX/SNP to fix an issue where ACPI auto-mapping
  could map devices as WB and prevent the device drivers from mapping their
  devices with UC/UC-.

* Make kvm_async_pf_task_wake() a local static helper and remove its
  export.

* Use native qspinlocks when running in a VM with dedicated vCPU=>pCPU
  bindings even when PV_UNHALT is unsupported.

Generic:

* Remove a redundant __GFP_NOWARN from kvm_setup_async_pf() as __GFP_NOWARN is
  now included in GFP_NOWAIT.
Merge tag 'kvm-x86-generic-6.18' of https://github.com/kvm-x86/linux into HEAD

KVM common changes for 6.18

Remove a redundant __GFP_NOWARN from kvm_setup_async_pf() as __GFP_NOWARN is
now included in GFP_NOWAIT.