mirror of
https://github.com/torvalds/linux.git
synced 2026-08-06 07:21:55 +02:00
* Unwinder implementations for both nVHE modes (classic and
protected), complete with an overflow stack
* Rework of the sysreg access from userspace, with a complete
rewrite of the vgic-v3 view to allign with the rest of the
infrastructure
* Disagregation of the vcpu flags in separate sets to better track
their use model.
* A fix for the GICv2-on-v3 selftest
* A small set of cosmetic fixes
RISC-V:
* Track ISA extensions used by Guest using bitmap
* Added system instruction emulation framework
* Added CSR emulation framework
* Added gfp_custom flag in struct kvm_mmu_memory_cache
* Added G-stage ioremap() and iounmap() functions
* Added support for Svpbmt inside Guest
s390:
* add an interface to provide a hypervisor dump for secure guests
* improve selftests to use TAP interface
* enable interpretive execution of zPCI instructions (for PCI passthrough)
* First part of deferred teardown
* CPU Topology
* PV attestation
* Minor fixes
x86:
* Permit guests to ignore single-bit ECC errors
* Intel IPI virtualization
* Allow getting/setting pending triple fault with KVM_GET/SET_VCPU_EVENTS
* PEBS virtualization
* Simplify PMU emulation by just using PERF_TYPE_RAW events
* More accurate event reinjection on SVM (avoid retrying instructions)
* Allow getting/setting the state of the speaker port data bit
* Refuse starting the kvm-intel module if VM-Entry/VM-Exit controls are inconsistent
* "Notify" VM exit (detect microarchitectural hangs) for Intel
* Use try_cmpxchg64 instead of cmpxchg64
* Ignore benign host accesses to PMU MSRs when PMU is disabled
* Allow disabling KVM's "MONITOR/MWAIT are NOPs!" behavior
* Allow NX huge page mitigation to be disabled on a per-vm basis
* Port eager page splitting to shadow MMU as well
* Enable CMCI capability by default and handle injected UCNA errors
* Expose pid of vcpu threads in debugfs
* x2AVIC support for AMD
* cleanup PIO emulation
* Fixes for LLDT/LTR emulation
* Don't require refcounted "struct page" to create huge SPTEs
* Miscellaneous cleanups:
** MCE MSR emulation
** Use separate namespaces for guest PTEs and shadow PTEs bitmasks
** PIO emulation
** Reorganize rmap API, mostly around rmap destruction
** Do not workaround very old KVM bugs for L0 that runs with nesting enabled
** new selftests API for CPUID
Generic:
* Fix races in gfn->pfn cache refresh; do not pin pages tracked by the cache
* new selftests API using struct kvm_vcpu instead of a (vm, id) tuple
-----BEGIN PGP SIGNATURE-----
iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmLnyo4UHHBib256aW5p
QHJlZGhhdC5jb20ACgkQv/vSX3jHroMtQQf/XjVWiRcWLPR9dqzRM/vvRXpiG+UL
jU93R7m6ma99aqTtrxV/AE+kHgamBlma3Cwo+AcWk9uCVNbIhFjv2YKg6HptKU0e
oJT3zRYp+XIjEo7Kfw+TwroZbTlG6gN83l1oBLFMqiFmHsMLnXSI2mm8MXyi3dNB
vR2uIcTAl58KIprqNNsYJ2dNn74ogOMiXYx9XzoA9/5Xb6c0h4rreHJa5t+0s9RO
Gz7Io3PxumgsbJngjyL1Ve5oxhlIAcZA8DU0PQmjxo3eS+k6BcmavGFd45gNL5zg
iLpCh4k86spmzh8CWkAAwWPQE4dZknK6jTctJc0OFVad3Z7+X7n0E8TFrA==
=PM8o
-----END PGP SIGNATURE-----
Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm
Pull kvm updates from Paolo Bonzini:
"Quite a large pull request due to a selftest API overhaul and some
patches that had come in too late for 5.19.
ARM:
- Unwinder implementations for both nVHE modes (classic and
protected), complete with an overflow stack
- Rework of the sysreg access from userspace, with a complete rewrite
of the vgic-v3 view to allign with the rest of the infrastructure
- Disagregation of the vcpu flags in separate sets to better track
their use model.
- A fix for the GICv2-on-v3 selftest
- A small set of cosmetic fixes
RISC-V:
- Track ISA extensions used by Guest using bitmap
- Added system instruction emulation framework
- Added CSR emulation framework
- Added gfp_custom flag in struct kvm_mmu_memory_cache
- Added G-stage ioremap() and iounmap() functions
- Added support for Svpbmt inside Guest
s390:
- add an interface to provide a hypervisor dump for secure guests
- improve selftests to use TAP interface
- enable interpretive execution of zPCI instructions (for PCI
passthrough)
- First part of deferred teardown
- CPU Topology
- PV attestation
- Minor fixes
x86:
- Permit guests to ignore single-bit ECC errors
- Intel IPI virtualization
- Allow getting/setting pending triple fault with
KVM_GET/SET_VCPU_EVENTS
- PEBS virtualization
- Simplify PMU emulation by just using PERF_TYPE_RAW events
- More accurate event reinjection on SVM (avoid retrying
instructions)
- Allow getting/setting the state of the speaker port data bit
- Refuse starting the kvm-intel module if VM-Entry/VM-Exit controls
are inconsistent
- "Notify" VM exit (detect microarchitectural hangs) for Intel
- Use try_cmpxchg64 instead of cmpxchg64
- Ignore benign host accesses to PMU MSRs when PMU is disabled
- Allow disabling KVM's "MONITOR/MWAIT are NOPs!" behavior
- Allow NX huge page mitigation to be disabled on a per-vm basis
- Port eager page splitting to shadow MMU as well
- Enable CMCI capability by default and handle injected UCNA errors
- Expose pid of vcpu threads in debugfs
- x2AVIC support for AMD
- cleanup PIO emulation
- Fixes for LLDT/LTR emulation
- Don't require refcounted "struct page" to create huge SPTEs
- Miscellaneous cleanups:
- MCE MSR emulation
- Use separate namespaces for guest PTEs and shadow PTEs bitmasks
- PIO emulation
- Reorganize rmap API, mostly around rmap destruction
- Do not workaround very old KVM bugs for L0 that runs with nesting enabled
- new selftests API for CPUID
Generic:
- Fix races in gfn->pfn cache refresh; do not pin pages tracked by
the cache
- new selftests API using struct kvm_vcpu instead of a (vm, id)
tuple"
* tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (606 commits)
selftests: kvm: set rax before vmcall
selftests: KVM: Add exponent check for boolean stats
selftests: KVM: Provide descriptive assertions in kvm_binary_stats_test
selftests: KVM: Check stat name before other fields
KVM: x86/mmu: remove unused variable
RISC-V: KVM: Add support for Svpbmt inside Guest/VM
RISC-V: KVM: Use PAGE_KERNEL_IO in kvm_riscv_gstage_ioremap()
RISC-V: KVM: Add G-stage ioremap() and iounmap() functions
KVM: Add gfp_custom flag in struct kvm_mmu_memory_cache
RISC-V: KVM: Add extensible CSR emulation framework
RISC-V: KVM: Add extensible system instruction emulation framework
RISC-V: KVM: Factor-out instruction emulation into separate sources
RISC-V: KVM: move preempt_disable() call in kvm_arch_vcpu_ioctl_run
RISC-V: KVM: Make kvm_riscv_guest_timer_init a void function
RISC-V: KVM: Fix variable spelling mistake
RISC-V: KVM: Improve ISA extension by using a bitmap
KVM, x86/mmu: Fix the comment around kvm_tdp_mmu_zap_leafs()
KVM: SVM: Dump Virtual Machine Save Area (VMSA) to klog
KVM: x86/mmu: Treat NX as a valid SPTE bit for NPT
KVM: x86: Do not block APIC write for non ICR registers
...
|
||
|---|---|---|
| .. | ||
| android | ||
| byteorder | ||
| caif | ||
| can | ||
| cifs | ||
| dvb | ||
| genwqe | ||
| hdlc | ||
| hsi | ||
| iio | ||
| isdn | ||
| misc | ||
| mmc | ||
| netfilter | ||
| netfilter_arp | ||
| netfilter_bridge | ||
| netfilter_ipv4 | ||
| netfilter_ipv6 | ||
| nfsd | ||
| raid | ||
| sched | ||
| spi | ||
| sunrpc | ||
| surface_aggregator | ||
| tc_act | ||
| tc_ematch | ||
| usb | ||
| a.out.h | ||
| acct.h | ||
| acrn.h | ||
| adb.h | ||
| adfs_fs.h | ||
| affs_hardblocks.h | ||
| agpgart.h | ||
| aio_abi.h | ||
| am437x-vpfe.h | ||
| amt.h | ||
| apm_bios.h | ||
| arcfb.h | ||
| arm_sdei.h | ||
| aspeed-lpc-ctrl.h | ||
| aspeed-p2a-ctrl.h | ||
| atalk.h | ||
| atm_eni.h | ||
| atm_he.h | ||
| atm_idt77105.h | ||
| atm_nicstar.h | ||
| atm_tcp.h | ||
| atm.h | ||
| atmapi.h | ||
| atmarp.h | ||
| atmbr2684.h | ||
| atmclip.h | ||
| atmdev.h | ||
| atmioc.h | ||
| atmlec.h | ||
| atmmpc.h | ||
| atmppp.h | ||
| atmsap.h | ||
| atmsvc.h | ||
| audit.h | ||
| auto_dev-ioctl.h | ||
| auto_fs.h | ||
| auto_fs4.h | ||
| auxvec.h | ||
| ax25.h | ||
| batadv_packet.h | ||
| batman_adv.h | ||
| baycom.h | ||
| bcm933xx_hcs.h | ||
| bfs_fs.h | ||
| binfmts.h | ||
| blkpg.h | ||
| blktrace_api.h | ||
| blkzoned.h | ||
| bpf_common.h | ||
| bpf_perf_event.h | ||
| bpf.h | ||
| bpfilter.h | ||
| bpqether.h | ||
| bsg.h | ||
| bt-bmc.h | ||
| btf.h | ||
| btrfs_tree.h | ||
| btrfs.h | ||
| cachefiles.h | ||
| can.h | ||
| capability.h | ||
| capi.h | ||
| cciss_defs.h | ||
| cciss_ioctl.h | ||
| ccs.h | ||
| cdrom.h | ||
| cec-funcs.h | ||
| cec.h | ||
| cfm_bridge.h | ||
| cgroupstats.h | ||
| chio.h | ||
| close_range.h | ||
| cm4000_cs.h | ||
| cn_proc.h | ||
| coda.h | ||
| coff.h | ||
| comedi.h | ||
| connector.h | ||
| const.h | ||
| coresight-stm.h | ||
| counter.h | ||
| cramfs_fs.h | ||
| cryptouser.h | ||
| cuda.h | ||
| cxl_mem.h | ||
| cyclades.h | ||
| cycx_cfm.h | ||
| dcbnl.h | ||
| dccp.h | ||
| devlink.h | ||
| dlm_device.h | ||
| dlm_netlink.h | ||
| dlm_plock.h | ||
| dlm.h | ||
| dlmconstants.h | ||
| dm-ioctl.h | ||
| dm-log-userspace.h | ||
| dma-buf.h | ||
| dma-heap.h | ||
| dn.h | ||
| dns_resolver.h | ||
| dqblk_xfs.h | ||
| edd.h | ||
| efs_fs_sb.h | ||
| elf-em.h | ||
| elf-fdpic.h | ||
| elf.h | ||
| errno.h | ||
| errqueue.h | ||
| erspan.h | ||
| ethtool_netlink.h | ||
| ethtool.h | ||
| eventpoll.h | ||
| f2fs.h | ||
| fadvise.h | ||
| falloc.h | ||
| fanotify.h | ||
| fb.h | ||
| fcntl.h | ||
| fd.h | ||
| fdreg.h | ||
| fib_rules.h | ||
| fiemap.h | ||
| filter.h | ||
| firewire-cdev.h | ||
| firewire-constants.h | ||
| fou.h | ||
| fpga-dfl.h | ||
| fs.h | ||
| fscrypt.h | ||
| fsi.h | ||
| fsl_hypervisor.h | ||
| fsl_mc.h | ||
| fsmap.h | ||
| fsverity.h | ||
| fuse.h | ||
| futex.h | ||
| gameport.h | ||
| gen_stats.h | ||
| genetlink.h | ||
| gfs2_ondisk.h | ||
| gpio.h | ||
| gsmmux.h | ||
| gtp.h | ||
| hash_info.h | ||
| hdlc.h | ||
| hdlcdrv.h | ||
| hdreg.h | ||
| hid.h | ||
| hiddev.h | ||
| hidraw.h | ||
| hpet.h | ||
| hsr_netlink.h | ||
| hw_breakpoint.h | ||
| hyperv.h | ||
| i2c-dev.h | ||
| i2c.h | ||
| i2o-dev.h | ||
| i8k.h | ||
| icmp.h | ||
| icmpv6.h | ||
| idxd.h | ||
| if_addr.h | ||
| if_addrlabel.h | ||
| if_alg.h | ||
| if_arcnet.h | ||
| if_arp.h | ||
| if_bonding.h | ||
| if_bridge.h | ||
| if_cablemodem.h | ||
| if_eql.h | ||
| if_ether.h | ||
| if_fc.h | ||
| if_fddi.h | ||
| if_hippi.h | ||
| if_infiniband.h | ||
| if_link.h | ||
| if_ltalk.h | ||
| if_macsec.h | ||
| if_packet.h | ||
| if_phonet.h | ||
| if_plip.h | ||
| if_ppp.h | ||
| if_pppol2tp.h | ||
| if_pppox.h | ||
| if_slip.h | ||
| if_team.h | ||
| if_tun.h | ||
| if_tunnel.h | ||
| if_vlan.h | ||
| if_x25.h | ||
| if_xdp.h | ||
| if.h | ||
| ife.h | ||
| igmp.h | ||
| ila.h | ||
| in_route.h | ||
| in.h | ||
| in6.h | ||
| inet_diag.h | ||
| inotify.h | ||
| input-event-codes.h | ||
| input.h | ||
| io_uring.h | ||
| ioam6_genl.h | ||
| ioam6_iptunnel.h | ||
| ioam6.h | ||
| ioctl.h | ||
| iommu.h | ||
| ioprio.h | ||
| ip_vs.h | ||
| ip.h | ||
| ip6_tunnel.h | ||
| ipc.h | ||
| ipmi_bmc.h | ||
| ipmi_msgdefs.h | ||
| ipmi.h | ||
| ipsec.h | ||
| ipv6_route.h | ||
| ipv6.h | ||
| irqnr.h | ||
| iso_fs.h | ||
| isst_if.h | ||
| ivtv.h | ||
| ivtvfb.h | ||
| jffs2.h | ||
| joystick.h | ||
| kcm.h | ||
| kcmp.h | ||
| kcov.h | ||
| kd.h | ||
| kdev_t.h | ||
| kernel-page-flags.h | ||
| kernel.h | ||
| kernelcapi.h | ||
| kexec.h | ||
| keyboard.h | ||
| keyctl.h | ||
| kfd_ioctl.h | ||
| kfd_sysfs.h | ||
| kvm_para.h | ||
| kvm.h | ||
| l2tp.h | ||
| landlock.h | ||
| libc-compat.h | ||
| limits.h | ||
| lirc.h | ||
| llc.h | ||
| loadpin.h | ||
| loop.h | ||
| lp.h | ||
| lwtunnel.h | ||
| magic.h | ||
| major.h | ||
| map_to_7segment.h | ||
| map_to_14segment.h | ||
| matroxfb.h | ||
| max2175.h | ||
| mctp.h | ||
| mdio.h | ||
| media-bus-format.h | ||
| media.h | ||
| mei.h | ||
| membarrier.h | ||
| memfd.h | ||
| mempolicy.h | ||
| meye.h | ||
| mii.h | ||
| minix_fs.h | ||
| mman.h | ||
| mmtimer.h | ||
| module.h | ||
| mount.h | ||
| mpls_iptunnel.h | ||
| mpls.h | ||
| mptcp.h | ||
| mqueue.h | ||
| mroute.h | ||
| mroute6.h | ||
| mrp_bridge.h | ||
| msdos_fs.h | ||
| msg.h | ||
| mtio.h | ||
| nbd-netlink.h | ||
| nbd.h | ||
| ncsi.h | ||
| ndctl.h | ||
| neighbour.h | ||
| net_dropmon.h | ||
| net_namespace.h | ||
| net_tstamp.h | ||
| net.h | ||
| netconf.h | ||
| netdevice.h | ||
| netfilter_arp.h | ||
| netfilter_bridge.h | ||
| netfilter_decnet.h | ||
| netfilter_ipv4.h | ||
| netfilter_ipv6.h | ||
| netfilter.h | ||
| netlink_diag.h | ||
| netlink.h | ||
| netrom.h | ||
| nexthop.h | ||
| nfc.h | ||
| nfs_fs.h | ||
| nfs_idmap.h | ||
| nfs_mount.h | ||
| nfs.h | ||
| nfs2.h | ||
| nfs3.h | ||
| nfs4_mount.h | ||
| nfs4.h | ||
| nfsacl.h | ||
| nilfs2_api.h | ||
| nilfs2_ondisk.h | ||
| nitro_enclaves.h | ||
| nl80211-vnd-intel.h | ||
| nl80211.h | ||
| nsfs.h | ||
| nubus.h | ||
| nvme_ioctl.h | ||
| nvram.h | ||
| omap3isp.h | ||
| omapfb.h | ||
| oom.h | ||
| openat2.h | ||
| openvswitch.h | ||
| packet_diag.h | ||
| param.h | ||
| parport.h | ||
| patchkey.h | ||
| pci_regs.h | ||
| pci.h | ||
| pcitest.h | ||
| perf_event.h | ||
| personality.h | ||
| pfkeyv2.h | ||
| pfrut.h | ||
| pg.h | ||
| phantom.h | ||
| phonet.h | ||
| pidfd.h | ||
| pkt_cls.h | ||
| pkt_sched.h | ||
| pktcdvd.h | ||
| pmu.h | ||
| poll.h | ||
| posix_acl_xattr.h | ||
| posix_acl.h | ||
| posix_types.h | ||
| ppdev.h | ||
| ppp_defs.h | ||
| ppp-comp.h | ||
| ppp-ioctl.h | ||
| pps.h | ||
| pr.h | ||
| prctl.h | ||
| psample.h | ||
| psci.h | ||
| psp-sev.h | ||
| ptp_clock.h | ||
| ptrace.h | ||
| qemu_fw_cfg.h | ||
| qnx4_fs.h | ||
| qnxtypes.h | ||
| qrtr.h | ||
| quota.h | ||
| radeonfb.h | ||
| random.h | ||
| rds.h | ||
| reboot.h | ||
| reiserfs_fs.h | ||
| reiserfs_xattr.h | ||
| remoteproc_cdev.h | ||
| resource.h | ||
| rfkill.h | ||
| rio_cm_cdev.h | ||
| rio_mport_cdev.h | ||
| rkisp1-config.h | ||
| romfs_fs.h | ||
| rose.h | ||
| route.h | ||
| rpl_iptunnel.h | ||
| rpl.h | ||
| rpmsg_types.h | ||
| rpmsg.h | ||
| rseq.h | ||
| rtc.h | ||
| rtnetlink.h | ||
| rxrpc.h | ||
| scc.h | ||
| sched.h | ||
| scif_ioctl.h | ||
| screen_info.h | ||
| sctp.h | ||
| seccomp.h | ||
| securebits.h | ||
| sed-opal.h | ||
| seg6_genl.h | ||
| seg6_hmac.h | ||
| seg6_iptunnel.h | ||
| seg6_local.h | ||
| seg6.h | ||
| selinux_netlink.h | ||
| sem.h | ||
| serial_core.h | ||
| serial_reg.h | ||
| serial.h | ||
| serio.h | ||
| sev-guest.h | ||
| shm.h | ||
| signal.h | ||
| signalfd.h | ||
| smc_diag.h | ||
| smc.h | ||
| smiapp.h | ||
| snmp.h | ||
| sock_diag.h | ||
| socket.h | ||
| sockios.h | ||
| sonet.h | ||
| sonypi.h | ||
| sound.h | ||
| soundcard.h | ||
| stat.h | ||
| stddef.h | ||
| stm.h | ||
| string.h | ||
| suspend_ioctls.h | ||
| swab.h | ||
| switchtec_ioctl.h | ||
| sync_file.h | ||
| synclink.h | ||
| sysctl.h | ||
| sysinfo.h | ||
| target_core_user.h | ||
| taskstats.h | ||
| tcp_metrics.h | ||
| tcp.h | ||
| tee.h | ||
| termios.h | ||
| thermal.h | ||
| time_types.h | ||
| time.h | ||
| timerfd.h | ||
| times.h | ||
| timex.h | ||
| tiocl.h | ||
| tipc_config.h | ||
| tipc_netlink.h | ||
| tipc_sockets_diag.h | ||
| tipc.h | ||
| tls.h | ||
| toshiba.h | ||
| tty_flags.h | ||
| tty.h | ||
| types.h | ||
| ublk_cmd.h | ||
| udf_fs_i.h | ||
| udmabuf.h | ||
| udp.h | ||
| uhid.h | ||
| uinput.h | ||
| uio.h | ||
| uleds.h | ||
| ultrasound.h | ||
| um_timetravel.h | ||
| un.h | ||
| unistd.h | ||
| unix_diag.h | ||
| usbdevice_fs.h | ||
| usbip.h | ||
| userfaultfd.h | ||
| userio.h | ||
| utime.h | ||
| utsname.h | ||
| uuid.h | ||
| uvcvideo.h | ||
| v4l2-common.h | ||
| v4l2-controls.h | ||
| v4l2-dv-timings.h | ||
| v4l2-mediabus.h | ||
| v4l2-subdev.h | ||
| vbox_err.h | ||
| vbox_vmmdev_types.h | ||
| vboxguest.h | ||
| vdpa.h | ||
| vduse.h | ||
| veth.h | ||
| vfio_ccw.h | ||
| vfio_zdev.h | ||
| vfio.h | ||
| vhost_types.h | ||
| vhost.h | ||
| videodev2.h | ||
| virtio_9p.h | ||
| virtio_balloon.h | ||
| virtio_blk.h | ||
| virtio_bt.h | ||
| virtio_config.h | ||
| virtio_console.h | ||
| virtio_crypto.h | ||
| virtio_fs.h | ||
| virtio_gpio.h | ||
| virtio_gpu.h | ||
| virtio_i2c.h | ||
| virtio_ids.h | ||
| virtio_input.h | ||
| virtio_iommu.h | ||
| virtio_mem.h | ||
| virtio_mmio.h | ||
| virtio_net.h | ||
| virtio_pci.h | ||
| virtio_pcidev.h | ||
| virtio_pmem.h | ||
| virtio_ring.h | ||
| virtio_rng.h | ||
| virtio_scmi.h | ||
| virtio_scsi.h | ||
| virtio_snd.h | ||
| virtio_types.h | ||
| virtio_vsock.h | ||
| vm_sockets_diag.h | ||
| vm_sockets.h | ||
| vmcore.h | ||
| vsockmon.h | ||
| vt.h | ||
| vtpm_proxy.h | ||
| wait.h | ||
| watch_queue.h | ||
| watchdog.h | ||
| wireguard.h | ||
| wireless.h | ||
| wmi.h | ||
| wwan.h | ||
| x25.h | ||
| xattr.h | ||
| xdp_diag.h | ||
| xfrm.h | ||
| xilinx-v4l2-controls.h | ||
| zorro_ids.h | ||
| zorro.h | ||