mirror of
https://git.proxmox.com/git/mirror_ubuntu-kernels.git
synced 2026-01-27 08:58:16 +00:00
* Eager page splitting optimization for dirty logging, optionally
allowing for a VM to avoid the cost of hugepage splitting in the stage-2
fault path.
* Arm FF-A proxy for pKVM, allowing a pKVM host to safely interact with
services that live in the Secure world. pKVM intervenes on FF-A calls
to guarantee the host doesn't misuse memory donated to the hyp or a
pKVM guest.
* Support for running the split hypervisor with VHE enabled, known as
'hVHE' mode. This is extremely useful for testing the split
hypervisor on VHE-only systems, and paves the way for new use cases
that depend on having two TTBRs available at EL2.
* Generalized framework for configurable ID registers from userspace.
KVM/arm64 currently prevents arbitrary CPU feature set configuration
from userspace, but the intent is to relax this limitation and allow
userspace to select a feature set consistent with the CPU.
* Enable the use of Branch Target Identification (FEAT_BTI) in the
hypervisor.
* Use a separate set of pointer authentication keys for the hypervisor
when running in protected mode, as the host is untrusted at runtime.
* Ensure timer IRQs are consistently released in the init failure
paths.
* Avoid trapping CTR_EL0 on systems with Enhanced Virtualization Traps
(FEAT_EVT), as it is a register commonly read from userspace.
* Erratum workaround for the upcoming AmpereOne part, which has broken
hardware A/D state management.
RISC-V:
* Redirect AMO load/store misaligned traps to KVM guest
* Trap-n-emulate AIA in-kernel irqchip for KVM guest
* Svnapot support for KVM Guest
s390:
* New uvdevice secret API
* CMM selftest and fixes
* fix racy access to target CPU for diag 9c
x86:
* Fix missing/incorrect #GP checks on ENCLS
* Use standard mmu_notifier hooks for handling APIC access page
* Drop now unnecessary TR/TSS load after VM-Exit on AMD
* Print more descriptive information about the status of SEV and SEV-ES during
module load
* Add a test for splitting and reconstituting hugepages during and after
dirty logging
* Add support for CPU pinning in demand paging test
* Add support for AMD PerfMonV2, with a variety of cleanups and minor fixes
included along the way
* Add a "nx_huge_pages=never" option to effectively avoid creating NX hugepage
recovery threads (because nx_huge_pages=off can be toggled at runtime)
* Move handling of PAT out of MTRR code and dedup SVM+VMX code
* Fix output of PIC poll command emulation when there's an interrupt
* Add a maintainer's handbook to document KVM x86 processes, preferred coding
style, testing expectations, etc.
* Misc cleanups, fixes and comments
Generic:
* Miscellaneous bugfixes and cleanups
Selftests:
* Generate dependency files so that partial rebuilds work as expected
-----BEGIN PGP SIGNATURE-----
iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmSgHrIUHHBib256aW5p
QHJlZGhhdC5jb20ACgkQv/vSX3jHroORcAf+KkBlXwQMf+Q0Hy6Mfe0OtkKmh0Ae
6HJ6dsuMfOHhWv5kgukh+qvuGUGzHq+gpVKmZg2yP3h3cLHOLUAYMCDm+rjXyjsk
F4DbnJLfxq43Pe9PHRKFxxSecRcRYCNox0GD5UYL4PLKcH0FyfQrV+HVBK+GI8L3
FDzUcyJkR12Lcj1qf++7fsbzfOshL0AJPmidQCoc6wkLJpUEr/nYUqlI1Kx3YNuQ
LKmxFHS4l4/O/px3GKNDrLWDbrVlwciGIa3GZLS52PZdW3mAqT+cqcPcYK6SW71P
m1vE80VbNELX5q3YSRoOXtedoZ3Pk97LEmz/xQAsJ/jri0Z5Syk0Ok0m/Q==
=AMXp
-----END PGP SIGNATURE-----
Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm
Pull kvm updates from Paolo Bonzini:
"ARM64:
- Eager page splitting optimization for dirty logging, optionally
allowing for a VM to avoid the cost of hugepage splitting in the
stage-2 fault path.
- Arm FF-A proxy for pKVM, allowing a pKVM host to safely interact
with services that live in the Secure world. pKVM intervenes on
FF-A calls to guarantee the host doesn't misuse memory donated to
the hyp or a pKVM guest.
- Support for running the split hypervisor with VHE enabled, known as
'hVHE' mode. This is extremely useful for testing the split
hypervisor on VHE-only systems, and paves the way for new use cases
that depend on having two TTBRs available at EL2.
- Generalized framework for configurable ID registers from userspace.
KVM/arm64 currently prevents arbitrary CPU feature set
configuration from userspace, but the intent is to relax this
limitation and allow userspace to select a feature set consistent
with the CPU.
- Enable the use of Branch Target Identification (FEAT_BTI) in the
hypervisor.
- Use a separate set of pointer authentication keys for the
hypervisor when running in protected mode, as the host is untrusted
at runtime.
- Ensure timer IRQs are consistently released in the init failure
paths.
- Avoid trapping CTR_EL0 on systems with Enhanced Virtualization
Traps (FEAT_EVT), as it is a register commonly read from userspace.
- Erratum workaround for the upcoming AmpereOne part, which has
broken hardware A/D state management.
RISC-V:
- Redirect AMO load/store misaligned traps to KVM guest
- Trap-n-emulate AIA in-kernel irqchip for KVM guest
- Svnapot support for KVM Guest
s390:
- New uvdevice secret API
- CMM selftest and fixes
- fix racy access to target CPU for diag 9c
x86:
- Fix missing/incorrect #GP checks on ENCLS
- Use standard mmu_notifier hooks for handling APIC access page
- Drop now unnecessary TR/TSS load after VM-Exit on AMD
- Print more descriptive information about the status of SEV and
SEV-ES during module load
- Add a test for splitting and reconstituting hugepages during and
after dirty logging
- Add support for CPU pinning in demand paging test
- Add support for AMD PerfMonV2, with a variety of cleanups and minor
fixes included along the way
- Add a "nx_huge_pages=never" option to effectively avoid creating NX
hugepage recovery threads (because nx_huge_pages=off can be toggled
at runtime)
- Move handling of PAT out of MTRR code and dedup SVM+VMX code
- Fix output of PIC poll command emulation when there's an interrupt
- Add a maintainer's handbook to document KVM x86 processes,
preferred coding style, testing expectations, etc.
- Misc cleanups, fixes and comments
Generic:
- Miscellaneous bugfixes and cleanups
Selftests:
- Generate dependency files so that partial rebuilds work as
expected"
* tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (153 commits)
Documentation/process: Add a maintainer handbook for KVM x86
Documentation/process: Add a label for the tip tree handbook's coding style
KVM: arm64: Fix misuse of KVM_ARM_VCPU_POWER_OFF bit index
RISC-V: KVM: Remove unneeded semicolon
RISC-V: KVM: Allow Svnapot extension for Guest/VM
riscv: kvm: define vcpu_sbi_ext_pmu in header
RISC-V: KVM: Expose IMSIC registers as attributes of AIA irqchip
RISC-V: KVM: Add in-kernel virtualization of AIA IMSIC
RISC-V: KVM: Expose APLIC registers as attributes of AIA irqchip
RISC-V: KVM: Add in-kernel emulation of AIA APLIC
RISC-V: KVM: Implement device interface for AIA irqchip
RISC-V: KVM: Skeletal in-kernel AIA irqchip support
RISC-V: KVM: Set kvm_riscv_aia_nr_hgei to zero
RISC-V: KVM: Add APLIC related defines
RISC-V: KVM: Add IMSIC related defines
RISC-V: KVM: Implement guest external interrupt line management
KVM: x86: Remove PRIx* definitions as they are solely for user space
s390/uv: Update query for secret-UVCs
s390/uv: replace scnprintf with sysfs_emit
s390/uvdevice: Add 'Lock Secret Store' UVC
...
|
||
|---|---|---|
| .. | ||
| 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 | ||
| aspeed-video.h | ||
| atalk.h | ||
| atm_eni.h | ||
| atm_he.h | ||
| atm_idt77105.h | ||
| atm_nicstar.h | ||
| atm_tcp.h | ||
| atm_zatm.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_fs4.h | ||
| auto_fs.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 | ||
| 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_plock.h | ||
| dlm.h | ||
| dlmconstants.h | ||
| dm-ioctl.h | ||
| dm-log-userspace.h | ||
| dma-buf.h | ||
| dma-heap.h | ||
| dns_resolver.h | ||
| dqblk_xfs.h | ||
| dw100.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 | ||
| eventfd.h | ||
| eventpoll.h | ||
| ext4.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 | ||
| handshake.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 | ||
| in6.h | ||
| in_route.h | ||
| in.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 | ||
| iommufd.h | ||
| ioprio.h | ||
| ip6_tunnel.h | ||
| ip_vs.h | ||
| ip.h | ||
| ipc.h | ||
| ipmi_bmc.h | ||
| ipmi_msgdefs.h | ||
| ipmi_ssif_bmc.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_uuid.h | ||
| mei.h | ||
| membarrier.h | ||
| memfd.h | ||
| mempolicy.h | ||
| mii.h | ||
| minix_fs.h | ||
| mman.h | ||
| mmtimer.h | ||
| module.h | ||
| mount.h | ||
| mpls_iptunnel.h | ||
| mpls.h | ||
| mptcp.h | ||
| mqueue.h | ||
| mroute6.h | ||
| mroute.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 | ||
| netdev.h | ||
| netdevice.h | ||
| netfilter_arp.h | ||
| netfilter_bridge.h | ||
| netfilter_ipv4.h | ||
| netfilter_ipv6.h | ||
| netfilter.h | ||
| netlink_diag.h | ||
| netlink.h | ||
| netrom.h | ||
| nexthop.h | ||
| nfc.h | ||
| nfs2.h | ||
| nfs3.h | ||
| nfs4_mount.h | ||
| nfs4.h | ||
| nfs_fs.h | ||
| nfs_idmap.h | ||
| nfs_mount.h | ||
| nfs.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 | ||
| tdx-guest.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 | ||
| tps6594_pfsm.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 | ||
| user_events.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 | ||