Skip to contentSkip to conversation

Linux 5.15.154

DISCUSSION Greg Kroah-Hartman 1 participant 2 messages Apr 10, 2024 Stable branch

lore
Share & tools
lore

Greg Kroah-Hartman

author maintainer
#0 lore raw

I'm announcing the release of the 5.15.154 kernel.

All users of the 5.15 kernel series must upgrade.

The updated 5.15.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.15.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary

thanks,

greg k-h

------------

 Documentation/ABI/testing/sysfs-devices-system-cpu           |    1 
 Documentation/admin-guide/filesystem-monitoring.rst          |   74 
 Documentation/admin-guide/hw-vuln/index.rst                  |    1 
 Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst |  104 
 Documentation/admin-guide/hw-vuln/spectre.rst                |   66 
 Documentation/admin-guide/index.rst                          |    1 
 Documentation/admin-guide/kernel-parameters.txt              |   39 
 Documentation/core-api/dma-api.rst                           |   14 
 Documentation/filesystems/locking.rst                        |   10 
 Documentation/filesystems/nfs/exporting.rst                  |   33 
 Documentation/x86/mds.rst                                    |   38 
 MAINTAINERS                                                  |    7 
 Makefile                                                     |    6 
 arch/Kconfig                                                 |   24 
 arch/arm/boot/dts/mmp2-brownstone.dts                        |    2 
 arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi                 |    2 
 arch/arm64/include/asm/kvm_pgtable.h                         |   18 
 arch/arm64/include/asm/stage2_pgtable.h                      |   20 
 arch/arm64/kvm/mmu.c                                         |    9 
 arch/hexagon/kernel/vmlinux.lds.S                            |    1 
 arch/ia64/Kconfig                                            |    1 
 arch/ia64/Makefile                                           |    2 
 arch/openrisc/kernel/dma.c                                   |   16 
 arch/parisc/include/asm/assembly.h                           |   18 
 arch/parisc/include/asm/checksum.h                           |   10 
 arch/powerpc/include/asm/reg_fsl_emb.h                       |   11 
 arch/powerpc/lib/Makefile                                    |    2 
 arch/riscv/include/asm/uaccess.h                             |    4 
 arch/riscv/kernel/process.c                                  |    3 
 arch/s390/kernel/entry.S                                     |    1 
 arch/sparc/kernel/nmi.c                                      |    2 
 arch/sparc/vdso/vma.c                                        |    7 
 arch/x86/Kconfig                                             |   38 
 arch/x86/boot/compressed/head_64.S                           |    8 
 arch/x86/entry/common.c                                      |    6 
 arch/x86/entry/entry.S                                       |   23 
 arch/x86/entry/entry_32.S                                    |    3 
 arch/x86/entry/entry_64.S                                    |   72 
 arch/x86/entry/entry_64_compat.S                             |    4 
 arch/x86/entry/syscall_32.c                                  |   21 
 arch/x86/entry/syscall_64.c                                  |   19 
 arch/x86/entry/syscall_x32.c                                 |   10 
 arch/x86/include/asm/asm-prototypes.h                        |    1 
 arch/x86/include/asm/asm.h                                   |    5 
 arch/x86/include/asm/cpufeature.h                            |    8 
 arch/x86/include/asm/cpufeatures.h                           |   18 
 arch/x86/include/asm/disabled-features.h                     |    3 
 arch/x86/include/asm/entry-common.h                          |    1 
 arch/x86/include/asm/linkage.h                               |   12 
 arch/x86/include/asm/msr-index.h                             |   19 
 arch/x86/include/asm/nospec-branch.h                         |   64 
 arch/x86/include/asm/required-features.h                     |    3 
 arch/x86/include/asm/suspend_32.h                            |   10 
 arch/x86/include/asm/syscall.h                               |   10 
 arch/x86/include/asm/text-patching.h                         |   31 
 arch/x86/kernel/alternative.c                                |   56 
 arch/x86/kernel/cpu/amd.c                                    |   10 
 arch/x86/kernel/cpu/bugs.c                                   |  360 ++-
 arch/x86/kernel/cpu/common.c                                 |   77 
 arch/x86/kernel/cpu/mce/core.c                               |    4 
 arch/x86/kernel/cpu/scattered.c                              |    1 
 arch/x86/kernel/kprobes/core.c                               |   38 
 arch/x86/kernel/nmi.c                                        |    3 
 arch/x86/kernel/static_call.c                                |   50 
 arch/x86/kvm/cpuid.c                                         |   29 
 arch/x86/kvm/reverse_cpuid.h                                 |   47 
 arch/x86/kvm/svm/sev.c                                       |   16 
 arch/x86/kvm/vmx/run_flags.h                                 |    7 
 arch/x86/kvm/vmx/vmenter.S                                   |   11 
 arch/x86/kvm/vmx/vmx.c                                       |   12 
 arch/x86/kvm/x86.c                                           |   17 
 arch/x86/lib/retpoline.S                                     |    5 
 arch/x86/mm/ident_map.c                                      |   23 
 block/blk-settings.c                                         |    4 
 crypto/algboss.c                                             |    4 
 drivers/accessibility/speakup/synth.c                        |    4 
 drivers/acpi/acpica/dbnames.c                                |    8 
 drivers/acpi/cppc_acpi.c                                     |   27 
 drivers/ata/ahci.c                                           |    5 
 drivers/ata/sata_mv.c                                        |   63 
 drivers/ata/sata_sx4.c                                       |    6 
 drivers/base/core.c                                          |   26 
 drivers/base/cpu.c                                           |    8 
 drivers/base/power/wakeirq.c                                 |    4 
 drivers/clk/qcom/gcc-ipq6018.c                               |    2 
 drivers/clk/qcom/gcc-ipq8074.c                               |    2 
 drivers/clk/qcom/gcc-sdm845.c                                |    1 
 drivers/clk/qcom/mmcc-apq8084.c                              |    2 
 drivers/clk/qcom/mmcc-msm8974.c                              |    2 
 drivers/clocksource/arm_global_timer.c                       |    2 
 drivers/cpufreq/brcmstb-avs-cpufreq.c                        |    5 
 drivers/cpufreq/cpufreq-dt.c                                 |    2 
 drivers/crypto/qat/qat_common/adf_aer.c                      |   23 
 drivers/firmware/efi/vars.c                                  |   17 
 drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c               |    4 
 drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c                      |    1 
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c            |    8 
 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hwseq.c           |   12 
 drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c          |    3 
 drivers/gpu/drm/drm_panel.c                                  |   17 
 drivers/gpu/drm/etnaviv/etnaviv_drv.c                        |    2 
 drivers/gpu/drm/etnaviv/etnaviv_hwdb.c                       |    9 
 drivers/gpu/drm/exynos/exynos_drm_vidi.c                     |    4 
 drivers/gpu/drm/exynos/exynos_hdmi.c                         |    4 
 drivers/gpu/drm/i915/gem/i915_gem_userptr.c                  |    3 
 drivers/gpu/drm/i915/gt/intel_engine_pm.c                    |    3 
 drivers/gpu/drm/i915/gt/intel_execlists_submission.c         |    3 
 drivers/gpu/drm/imx/parallel-display.c                       |    4 
 drivers/gpu/drm/vc4/vc4_hdmi.c                               |    2 
 drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c                      |   14 
 drivers/hid/uhid.c                                           |   20 
 drivers/hwmon/amc6821.c                                      |   11 
 drivers/i2c/busses/i2c-i801.c                                |    4 
 drivers/infiniband/core/cm_trace.h                           |    2 
 drivers/infiniband/core/cma_trace.h                          |    2 
 drivers/iommu/dma-iommu.c                                    |   15 
 drivers/iommu/iova.c                                         |    5 
 drivers/md/dm-integrity.c                                    |    2 
 drivers/md/dm-raid.c                                         |    2 
 drivers/md/dm-snap.c                                         |    4 
 drivers/media/tuners/xc4000.c                                |    4 
 drivers/misc/mei/hw-me-regs.h                                |    2 
 drivers/misc/mei/pci-me.c                                    |    2 
 drivers/mmc/core/block.c                                     |   14 
 drivers/mmc/host/tmio_mmc_core.c                             |    2 
 drivers/mtd/nand/raw/meson_nand.c                            |    2 
 drivers/mtd/ubi/fastmap.c                                    |    7 
 drivers/mtd/ubi/vtbl.c                                       |    6 
 drivers/net/ethernet/freescale/fec_main.c                    |   11 
 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_trace.h     |    8 
 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_trace.h   |    8 
 drivers/net/ethernet/intel/i40e/i40e.h                       |    6 
 drivers/net/ethernet/intel/i40e/i40e_main.c                  |   14 
 drivers/net/ethernet/intel/i40e/i40e_ptp.c                   |    6 
 drivers/net/ethernet/intel/i40e/i40e_register.h              |    3 
 drivers/net/ethernet/intel/i40e/i40e_txrx.c                  |   82 
 drivers/net/ethernet/intel/i40e/i40e_txrx.h                  |    5 
 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c           |   34 
 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c               |   16 
 drivers/net/ethernet/marvell/octeontx2/af/cgx.c              |    5 
 drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c          |    2 
 drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c         |    2 
 drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_main.c   |   31 
 drivers/net/ethernet/realtek/r8169_main.c                    |   11 
 drivers/net/ethernet/renesas/ravb_main.c                     |    8 
 drivers/net/ethernet/stmicro/stmmac/dwmac4_core.c            |   40 
 drivers/net/ethernet/stmicro/stmmac/dwxgmac2_core.c          |   38 
 drivers/net/ethernet/xilinx/ll_temac_main.c                  |    2 
 drivers/net/usb/asix.h                                       |    3 
 drivers/net/usb/asix_devices.c                               |   20 
 drivers/net/wireguard/netlink.c                              |   10 
 drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c  |    4 
 drivers/net/wireless/intel/iwlwifi/mvm/rfi.c                 |   12 
 drivers/net/xen-netfront.c                                   |    1 
 drivers/nvme/host/core.c                                     |    6 
 drivers/nvmem/meson-efuse.c                                  |   25 
 drivers/of/dynamic.c                                         |   12 
 drivers/pci/controller/dwc/pcie-designware-ep.c              |    7 
 drivers/pci/pci-driver.c                                     |   23 
 drivers/pci/pcie/dpc.c                                       |   15 
 drivers/pci/pcie/err.c                                       |   20 
 drivers/pci/quirks.c                                         |  100 
 drivers/pci/setup-res.c                                      |    8 
 drivers/phy/tegra/xusb.c                                     |   13 
 drivers/s390/crypto/zcrypt_api.c                             |    2 
 drivers/s390/net/qeth_core_main.c                            |   38 
 drivers/scsi/hosts.c                                         |    7 
 drivers/scsi/lpfc/lpfc_nvmet.c                               |    2 
 drivers/scsi/myrb.c                                          |   20 
 drivers/scsi/myrs.c                                          |   24 
 drivers/scsi/qla2xxx/qla_attr.c                              |   14 
 drivers/scsi/qla2xxx/qla_def.h                               |    2 
 drivers/scsi/qla2xxx/qla_gbl.h                               |    2 
 drivers/scsi/qla2xxx/qla_gs.c                                |    2 
 drivers/scsi/qla2xxx/qla_init.c                              |  128 -
 drivers/scsi/qla2xxx/qla_iocb.c                              |   68 
 drivers/scsi/qla2xxx/qla_mbx.c                               |    2 
 drivers/scsi/qla2xxx/qla_os.c                                |    2 
 drivers/scsi/qla2xxx/qla_target.c                            |   10 
 drivers/slimbus/core.c                                       |    4 
 drivers/soc/fsl/qbman/qman.c                                 |   98 
 drivers/staging/media/ipu3/ipu3-v4l2.c                       |   16 
 drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c        |    5 
 drivers/tee/optee/device.c                                   |    3 
 drivers/thermal/devfreq_cooling.c                            |    2 
 drivers/tty/serial/8250/8250_port.c                          |    6 
 drivers/tty/serial/fsl_lpuart.c                              |    7 
 drivers/tty/serial/imx.c                                     |   22 
 drivers/tty/serial/sc16is7xx.c                               |   15 
 drivers/tty/serial/serial_core.c                             |   12 
 drivers/tty/vt/vt.c                                          |    2 
 drivers/usb/class/cdc-wdm.c                                  |    6 
 drivers/usb/core/hub.c                                       |   23 
 drivers/usb/core/hub.h                                       |    2 
 drivers/usb/core/port.c                                      |    5 
 drivers/usb/core/sysfs.c                                     |   16 
 drivers/usb/dwc2/core.h                                      |   14 
 drivers/usb/dwc2/core_intr.c                                 |   72 
 drivers/usb/dwc2/gadget.c                                    |   10 
 drivers/usb/dwc2/hcd.c                                       |   49 
 drivers/usb/dwc2/hcd_ddma.c                                  |   17 
 drivers/usb/dwc2/hw.h                                        |    2 
 drivers/usb/dwc2/platform.c                                  |    2 
 drivers/usb/gadget/function/f_ncm.c                          |    2 
 drivers/usb/gadget/udc/core.c                                |    4 
 drivers/usb/gadget/udc/tegra-xudc.c                          |   39 
 drivers/usb/host/xhci.c                                      |    2 
 drivers/usb/phy/phy-generic.c                                |    7 
 drivers/usb/serial/cp210x.c                                  |    4 
 drivers/usb/serial/ftdi_sio.c                                |    2 
 drivers/usb/serial/ftdi_sio_ids.h                            |    6 
 drivers/usb/serial/option.c                                  |    6 
 drivers/usb/storage/isd200.c                                 |   23 
 drivers/usb/storage/scsiglue.c                               |    1 
 drivers/usb/storage/uas.c                                    |   81 
 drivers/usb/storage/usb.c                                    |    4 
 drivers/usb/typec/ucsi/ucsi.c                                |   42 
 drivers/usb/typec/ucsi/ucsi.h                                |    4 
 drivers/vfio/fsl-mc/vfio_fsl_mc_intr.c                       |    7 
 drivers/vfio/pci/vfio_pci_intrs.c                            |  176 -
 drivers/vfio/platform/vfio_platform_irq.c                    |  106 
 drivers/vfio/virqfd.c                                        |   21 
 drivers/xen/events/events_base.c                             |    5 
 fs/Kconfig                                                   |    2 
 fs/aio.c                                                     |    8 
 fs/btrfs/scrub.c                                             |   12 
 fs/btrfs/volumes.c                                           |    2 
 fs/cifs/connect.c                                            |    2 
 fs/exec.c                                                    |    1 
 fs/exportfs/expfs.c                                          |    8 
 fs/ext4/mballoc.c                                            |   17 
 fs/ext4/resize.c                                             |    3 
 fs/ext4/super.c                                              |   10 
 fs/fat/nfs.c                                                 |    6 
 fs/fuse/dir.c                                                |    4 
 fs/fuse/fuse_i.h                                             |    1 
 fs/fuse/inode.c                                              |    7 
 fs/ksmbd/smb2pdu.c                                           |   10 
 fs/lockd/host.c                                              |    2 
 fs/lockd/svc.c                                               |  217 --
 fs/lockd/svc4proc.c                                          |   29 
 fs/lockd/svclock.c                                           |   31 
 fs/lockd/svcproc.c                                           |   30 
 fs/lockd/svcsubs.c                                           |    4 
 fs/lockd/xdr.c                                               |  152 -
 fs/lockd/xdr4.c                                              |  153 -
 fs/locks.c                                                   |   85 
 fs/nfs/callback.c                                            |   96 
 fs/nfs/callback_xdr.c                                        |    5 
 fs/nfs/direct.c                                              |   11 
 fs/nfs/export.c                                              |    9 
 fs/nfs/nfs4state.c                                           |    2 
 fs/nfs/nfs4trace.h                                           |  477 ----
 fs/nfs/nfstrace.h                                            |  269 --
 fs/nfs/pnfs.h                                                |    4 
 fs/nfs/write.c                                               |    2 
 fs/nfsd/Kconfig                                              |   27 
 fs/nfsd/Makefile                                             |    8 
 fs/nfsd/acl.h                                                |    6 
 fs/nfsd/blocklayout.c                                        |    1 
 fs/nfsd/blocklayoutxdr.c                                     |    1 
 fs/nfsd/cache.h                                              |    2 
 fs/nfsd/export.h                                             |    1 
 fs/nfsd/filecache.c                                          | 1168 ++++++-----
 fs/nfsd/filecache.h                                          |   19 
 fs/nfsd/flexfilelayout.c                                     |    3 
 fs/nfsd/lockd.c                                              |    2 
 fs/nfsd/netns.h                                              |   34 
 fs/nfsd/nfs2acl.c                                            |   55 
 fs/nfsd/nfs3acl.c                                            |   85 
 fs/nfsd/nfs3proc.c                                           |  212 +
 fs/nfsd/nfs3xdr.c                                            |  444 +---
 fs/nfsd/nfs4acl.c                                            |   46 
 fs/nfsd/nfs4callback.c                                       |  125 -
 fs/nfsd/nfs4idmap.c                                          |    9 
 fs/nfsd/nfs4layouts.c                                        |    4 
 fs/nfsd/nfs4proc.c                                           |  986 +++++----
 fs/nfsd/nfs4recover.c                                        |   12 
 fs/nfsd/nfs4state.c                                          | 1041 +++++++--
 fs/nfsd/nfs4xdr.c                                            | 1115 +++++-----
 fs/nfsd/nfscache.c                                           |   63 
 fs/nfsd/nfsctl.c                                             |  146 -
 fs/nfsd/nfsd.h                                               |   35 
 fs/nfsd/nfsfh.c                                              |  270 +-
 fs/nfsd/nfsfh.h                                              |  145 -
 fs/nfsd/nfsproc.c                                            |  121 -
 fs/nfsd/nfssvc.c                                             |  263 +-
 fs/nfsd/nfsxdr.c                                             |  178 -
 fs/nfsd/state.h                                              |   59 
 fs/nfsd/stats.c                                              |   16 
 fs/nfsd/stats.h                                              |    4 
 fs/nfsd/trace.h                                              |  692 +++++-
 fs/nfsd/vfs.c                                                |  820 +++----
 fs/nfsd/vfs.h                                                |   56 
 fs/nfsd/xdr.h                                                |   35 
 fs/nfsd/xdr3.h                                               |   61 
 fs/nfsd/xdr4.h                                               |   81 
 fs/nfsd/xdr4cb.h                                             |    6 
 fs/nilfs2/btree.c                                            |    9 
 fs/nilfs2/direct.c                                           |    9 
 fs/nilfs2/inode.c                                            |    2 
 fs/notify/dnotify/dnotify.c                                  |   15 
 fs/notify/fanotify/fanotify.c                                |  361 ++-
 fs/notify/fanotify/fanotify.h                                |  212 +
 fs/notify/fanotify/fanotify_user.c                           |  441 +++-
 fs/notify/fdinfo.c                                           |   16 
 fs/notify/fsnotify.c                                         |  177 -
 fs/notify/fsnotify.h                                         |    4 
 fs/notify/group.c                                            |   36 
 fs/notify/inotify/inotify.h                                  |   11 
 fs/notify/inotify/inotify_fsnotify.c                         |    7 
 fs/notify/inotify/inotify_user.c                             |   53 
 fs/notify/mark.c                                             |  137 -
 fs/notify/notification.c                                     |   14 
 fs/open.c                                                    |   42 
 fs/pipe.c                                                    |   17 
 fs/ubifs/file.c                                              |   13 
 fs/vboxsf/super.c                                            |    3 
 include/asm-generic/vmlinux.lds.h                            |    4 
 include/linux/cpu.h                                          |    2 
 include/linux/device.h                                       |    1 
 include/linux/dma-map-ops.h                                  |    1 
 include/linux/dma-mapping.h                                  |    5 
 include/linux/dnotify.h                                      |    2 
 include/linux/exportfs.h                                     |   17 
 include/linux/fanotify.h                                     |   31 
 include/linux/fs.h                                           |   26 
 include/linux/fsnotify.h                                     |   70 
 include/linux/fsnotify_backend.h                             |  356 ++-
 include/linux/gfp.h                                          |    9 
 include/linux/hyperv.h                                       |   22 
 include/linux/iova.h                                         |    2 
 include/linux/kthread.h                                      |    1 
 include/linux/linkage.h                                      |    4 
 include/linux/lockd/lockd.h                                  |   10 
 include/linux/lockd/xdr.h                                    |   27 
 include/linux/lockd/xdr4.h                                   |   29 
 include/linux/minmax.h                                       |   17 
 include/linux/module.h                                       |    6 
 include/linux/nfs.h                                          |    8 
 include/linux/nfs4.h                                         |   17 
 include/linux/nfs_fs.h                                       |    1 
 include/linux/nfs_ssc.h                                      |    4 
 include/linux/pci.h                                          |    1 
 include/linux/phy/tegra/xusb.h                               |    1 
 include/linux/ring_buffer.h                                  |    1 
 include/linux/secretmem.h                                    |    4 
 include/linux/sunrpc/svc.h                                   |   93 
 include/linux/sunrpc/svc_xprt.h                              |   11 
 include/linux/sunrpc/svcsock.h                               |    7 
 include/linux/sunrpc/xdr.h                                   |    2 
 include/linux/timer.h                                        |   18 
 include/linux/udp.h                                          |   28 
 include/linux/vfio.h                                         |    2 
 include/net/cfg802154.h                                      |    1 
 include/net/inet_connection_sock.h                           |    1 
 include/net/sock.h                                           |    7 
 include/soc/fsl/qman.h                                       |    9 
 include/trace/events/rdma.h                                  |  168 -
 include/trace/events/rpcgss.h                                |   18 
 include/trace/events/rpcrdma.h                               |   44 
 include/trace/events/sunrpc.h                                |   74 
 include/trace/misc/fs.h                                      |  122 +
 include/trace/misc/nfs.h                                     |  387 +++
 include/trace/misc/rdma.h                                    |  168 +
 include/trace/misc/sunrpc.h                                  |   18 
 include/uapi/linux/fanotify.h                                |   29 
 include/uapi/linux/nfsd/nfsfh.h                              |  115 -
 init/initramfs.c                                             |    2 
 io_uring/io_uring.c                                          |    2 
 kernel/audit_fsnotify.c                                      |    8 
 kernel/audit_tree.c                                          |    2 
 kernel/audit_watch.c                                         |    5 
 kernel/bounds.c                                              |    2 
 kernel/bpf/verifier.c                                        |    5 
 kernel/dma/mapping.c                                         |   12 
 kernel/dma/swiotlb.c                                         |   11 
 kernel/entry/common.c                                        |    8 
 kernel/events/core.c                                         |    9 
 kernel/kthread.c                                             |   23 
 kernel/locking/rwsem.c                                       |   14 
 kernel/module.c                                              |    8 
 kernel/power/suspend.c                                       |    1 
 kernel/printk/printk.c                                       |   63 
 kernel/time/timer.c                                          |  164 -
 kernel/trace/ring_buffer.c                                   |  233 +-
 kernel/trace/trace.c                                         |   21 
 lib/Kconfig.debug                                            |    1 
 lib/pci_iomap.c                                              |    2 
 lib/test_kasan.c                                             |   21 
 mm/compaction.c                                              |    7 
 mm/memtest.c                                                 |    4 
 mm/migrate.c                                                 |    6 
 mm/page_alloc.c                                              |   10 
 mm/swapfile.c                                                |   25 
 mm/vmscan.c                                                  |    5 
 net/bluetooth/bnep/core.c                                    |    2 
 net/bluetooth/cmtp/core.c                                    |    2 
 net/bluetooth/hci_debugfs.c                                  |   48 
 net/bluetooth/hci_event.c                                    |   25 
 net/bluetooth/hidp/core.c                                    |    2 
 net/bridge/netfilter/ebtables.c                              |    6 
 net/core/skbuff.c                                            |    6 
 net/core/sock_map.c                                          |    6 
 net/ipv4/inet_connection_sock.c                              |   14 
 net/ipv4/ip_gre.c                                            |    5 
 net/ipv4/netfilter/arp_tables.c                              |    4 
 net/ipv4/netfilter/ip_tables.c                               |    4 
 net/ipv4/tcp.c                                               |    2 
 net/ipv4/udp.c                                               |    7 
 net/ipv4/udp_offload.c                                       |   20 
 net/ipv6/ip6_fib.c                                           |   14 
 net/ipv6/ip6_gre.c                                           |    3 
 net/ipv6/netfilter/ip6_tables.c                              |    4 
 net/ipv6/udp.c                                               |    2 
 net/ipv6/udp_offload.c                                       |    8 
 net/mac80211/cfg.c                                           |    5 
 net/mac802154/llsec.c                                        |   18 
 net/mptcp/protocol.c                                         |    3 
 net/mptcp/subflow.c                                          |    3 
 net/netfilter/nf_tables_api.c                                |   20 
 net/nfc/nci/core.c                                           |    5 
 net/rds/rdma.c                                               |    2 
 net/sched/act_skbmod.c                                       |   10 
 net/sunrpc/svc.c                                             |  227 --
 net/sunrpc/svc_xprt.c                                        |   68 
 net/sunrpc/svcsock.c                                         |   24 
 net/sunrpc/xdr.c                                             |   22 
 net/sunrpc/xprtrdma/svc_rdma_backchannel.c                   |    2 
 net/xfrm/xfrm_user.c                                         |    3 
 scripts/Makefile.extrawarn                                   |    2 
 security/landlock/syscalls.c                                 |   18 
 security/smack/smack_lsm.c                                   |   12 
 sound/pci/hda/patch_realtek.c                                |    9 
 sound/sh/aica.c                                              |   17 
 sound/soc/codecs/rt5682-sdw.c                                |    4 
 sound/soc/codecs/rt711-sdca-sdw.c                            |    4 
 sound/soc/codecs/rt711-sdw.c                                 |    4 
 sound/soc/soc-ops.c                                          |    2 
 tools/objtool/check.c                                        |    3 
 tools/testing/selftests/mqueue/setting                       |    1 
 tools/testing/selftests/net/mptcp/diag.sh                    |    6 
 tools/testing/selftests/net/mptcp/mptcp_connect.sh           |    7 
 tools/testing/selftests/net/reuseaddr_conflict.c             |    2 
 tools/testing/selftests/net/udpgro_fwd.sh                    |   10 
 virt/kvm/async_pf.c                                          |   31 
 446 files changed, 12088 insertions(+), 7026 deletions(-)

Al Viro (2):
nfsd_splice_actor(): handle compound pages
fs/notify: constify path

Alan Stern (3):
USB: usb-storage: Prevent divide-by-0 error in isd200_ata_command
USB: core: Add hub_get() and hub_put() routines
USB: core: Fix deadlock in usb_deauthorize_interface()

Aleksandr Loktionov (2):
i40e: fix i40e_count_filters() to count only active/new filters
i40e: fix vf may be used uninitialized in this function warning

Alex Williamson (7):
vfio/platform: Disable virqfds on cleanup vfio/pci: Disable auto-enable of exclusive INTx IRQ vfio/pci: Lock external INTx masking ops
vfio: Introduce interface to flush virqfd inject workqueue vfio/pci: Create persistent INTx handler vfio/platform: Create persistent IRQ handlers vfio/fsl-mc: Block calling interrupt handler without trigger

Alexander Aring (1):
lockd: introduce safe async lock op

Alexander Stein (1):
Revert "usb: phy: generic: Get the vbus supply"

Alexander Usyskin (2):
mei: me: add arrow lake point S DID
mei: me: add arrow lake point H DID

Alexandra Winter (1):
s390/qeth: handle deferred cc1

Amir Goldstein (37):
fsnotify: pass data_type to fsnotify_name()
fsnotify: pass dentry instead of inode data
fsnotify: clarify contract for create event hooks
fsnotify: clarify object type argument
fsnotify: separate mark iterator type from object type enum
fanotify: introduce group flag FAN_REPORT_TARGET_FID
fsnotify: generate FS_RENAME event with rich information
fanotify: use macros to get the offset to fanotify_info buffer
fanotify: use helpers to parcel fanotify_info buffer
fanotify: support secondary dir fh and name in fanotify_info
fanotify: record old and new parent and name in FAN_RENAME event
fanotify: record either old name new name or both for FAN_RENAME
fanotify: report old and/or new parent+name in FAN_RENAME event
fanotify: wire up FAN_RENAME event
fsnotify: invalidate dcache before IN_DELETE event
fsnotify: fix merge with parent's ignored mask
fsnotify: optimize FS_MODIFY events with no ignored masks
fanotify: do not allow setting dirent events in mask of non-dir
inotify: move control flags from mask to mark flags
fsnotify: pass flags argument to fsnotify_alloc_group()
fsnotify: make allow_dups a property of the group
fsnotify: create helpers for group mark_mutex lock
inotify: use fsnotify group lock helpers
nfsd: use fsnotify group lock helpers
dnotify: use fsnotify group lock helpers
fsnotify: allow adding an inode mark without pinning inode
fanotify: create helper fanotify_mark_user_flags()
fanotify: factor out helper fanotify_mark_update_flags()
fanotify: implement "evictable" inode marks
fanotify: use fsnotify group lock helpers
fanotify: enable "evictable" inode marks
fsnotify: introduce mark type iterator
fsnotify: consistent behavior for parent not watching children
fanotify: refine the validation checks on non-dir inode mask
fanotify: prepare for setting event flags in ignore mask
fanotify: cleanups for fanotify_mark() input validations
fanotify: introduce FAN_MARK_IGNORE

Amit Pundir (1):
clk: qcom: gcc-sdm845: Add soft dependency on rpmhpd

Andrei Matei (1):
bpf: Protect against int overflow for stack access size

Andrey Jr. Melnikov (1):
ahci: asm1064: correct count of reported ports

André Rösti (1):
entry: Respect changes to system call number by trace_sys_enter()

Anna Schumaker (1):
NFSD: Simplify READ_PLUS

Antoine Tenart (5):
selftests: net: gro fwd: update vxlan GRO test expectations
udp: do not accept non-tunnel GSO skbs landing in a tunnel
udp: do not transition UDP GRO fraglist partial checksums to unnecessary
udp: prevent local UDP tunnel packets from being GROed
gro: fix ownership transfer

Anton Altaparmakov (1):
x86/pm: Work around false positive kmemleak report in msr_build_context()

Arnd Bergmann (6):
kasan/test: avoid gcc warning for intentional overflow
staging: vc04_services: changen strncpy() to strscpy_pad() dm integrity: fix out-of-range warning
ata: sata_sx4: fix pdc20621_get_from_dimm() on 64-bit
scsi: mylex: Fix sysfs buffer lengths
ata: sata_mv: Fix PCI device ID table declaration compilation warning

Arseniy Krasnov (1):
mtd: rawnand: meson: fix scrambling mode value in command macro

Aurélien Jacobs (1):
USB: serial: option: add MeiG Smart SLM320 product

Bang Li (1):
fsnotify: remove redundant parameter judgment

Baokun Li (1):
ext4: correct best extent lstart adjustment logic

Bart Van Assche (3):
fs/aio: Check IOCB_AIO_RW before the struct aio_kiocb conversion
scsi: usb: Call scsi_done() directly
scsi: usb: Stop using the SCSI pointer

Bastien Nocera (1):
Bluetooth: Fix TOCTOU in HCI debugfs implementation

Benjamin Coddington (1):
NLM: Defend against file_lock changes after vfs_test_lock()

Bikash Hazarika (2):
scsi: qla2xxx: Update manufacturer details
scsi: qla2xxx: Update manufacturer detail

Bixuan Cui (1):
iwlwifi: mvm: rfi: use kmemdup() to replace kzalloc + memcpy

Bjorn Helgaas (1):
PCI: Work around Intel I210 ROM BAR overlap defect

Borislav Petkov (1):

      x86/bugs: Use sysfs_emit()

Borislav Petkov (AMD) (4):
x86/CPU/AMD: Update the Zenbleed microcode revisions
x86/mce: Make sure to grab mce_sysfs_mutex in set_bank() x86/bugs: Fix the SRSO mitigation on Zen3/4
x86/retpoline: Do the necessary fixup to the Zen3/4 srso return thunk for !SRSO

Cameron Williams (1):
USB: serial: add device ID for VeriFone adapter

Changcheng Deng (1):
NFSD:fix boolreturn.cocci warning

ChenXiaoSong (5):
nfsd: use DEFINE_PROC_SHOW_ATTRIBUTE to define nfsd_proc_ops
nfsd: use DEFINE_SHOW_ATTRIBUTE to define export_features_fops and supported_enctypes_fops
nfsd: use DEFINE_SHOW_ATTRIBUTE to define client_info_fops
nfsd: use DEFINE_SHOW_ATTRIBUTE to define nfsd_reply_cache_stats_fops
nfsd: use DEFINE_SHOW_ATTRIBUTE to define nfsd_file_cache_stats_fops

Chris Wilson (1):
drm/i915/gt: Reset queue_priority_hint on parking

Christian A. Ehrhardt (2):
usb: typec: ucsi: Ack unsupported commands
usb: typec: ucsi: Clear UCSI_CCI_RESET_COMPLETE before reset

Christian Gmeiner (1):
drm/etnaviv: Restore some id values

Christian Häggström (1):

      USB: serial: cp210x: add ID for MGP Instruments PDS100

Christophe JAILLET (4):
slimbus: core: Remove usage of the deprecated ida_simple_xx() API
nfsd: Avoid some useless tests
nfsd: Propagate some error code returned by memdup_user()
vboxsf: Avoid an spurious warning if load_nls_xxx() fails

Chuck Lever (155):
NFS: Remove unnecessary TRACE_DEFINE_ENUM()s
SUNRPC: Tracepoints should display tk_pid and cl_clid as a fixed-size field
NFS: Move generic FS show macros to global header
NFS: Move NFS protocol display macros to global header
NFSD: Optimize DRC bucket pruning
SUNRPC: Replace the "__be32 *p" parameter to .pc_decode
SUNRPC: Change return value type of .pc_decode
NFSD: Save location of NFSv4 COMPOUND status
SUNRPC: Replace the "__be32 *p" parameter to .pc_encode
SUNRPC: Change return value type of .pc_encode
NFSD: Remove be32_to_cpu() from DRC hash function
NFSD: Combine XDR error tracepoints
NFSD: De-duplicate nfsd4_decode_bitmap4()
NFSD: Clean up nfsd_vfs_write()
NFSD: De-duplicate net_generic(SVC_NET(rqstp), nfsd_net_id)
NFSD: Write verifier might go backwards
NFSD: Clean up the nfsd_net::nfssvc_boot field
NFSD: Rename boot verifier functions
NFSD: Trace boot verifier resets
NFSD: Move fill_pre_wcc() and fill_post_wcc()
NFSD: Deprecate NFS_OFFSET_MAX
orDate: Thu Sep 30 19:19:57 2021 -0400
NFSD: Skip extra computation for RC_NOCACHE case
NFSD: Streamline the rare "found" case
NFSD: Remove NFSD_PROC_ARGS_* macros
SUNRPC: Remove the .svo_enqueue_xprt method
SUNRPC: Merge svc_do_enqueue_xprt() into svc_enqueue_xprt()
SUNRPC: Remove svo_shutdown method
SUNRPC: Rename svc_create_xprt()
SUNRPC: Rename svc_close_xprt()
SUNRPC: Remove svc_shutdown_net()
NFSD: Remove svc_serv_ops::svo_module
NFSD: Move svc_serv_ops::svo_function into struct svc_serv
NFSD: Remove CONFIG_NFSD_V3
NFSD: Clean up _lm_ operation names
NFSD: Clean up nfsd_splice_actor()
NFSD: Clean up nfsd3_proc_create()
NFSD: Avoid calling fh_drop_write() twice in do_nfsd_create()
NFSD: Refactor nfsd_create_setattr()
NFSD: Refactor NFSv3 CREATE
NFSD: Refactor NFSv4 OPEN(CREATE)
NFSD: Remove do_nfsd_create()
NFSD: Clean up nfsd_open_verified()
NFSD: Instantiate a struct file when creating a regular NFSv4 file
NFSD: Remove dprintk call sites from tail of nfsd4_open()
NFSD: Fix whitespace
NFSD: Move documenting comment for nfsd4_process_open2()
NFSD: Trace filecache opens
SUNRPC: Use RMW bitops in single-threaded hot paths
NFSD: Modernize nfsd4_release_lockowner()
NFSD: Add documenting comment for nfsd4_release_lockowner()
NFSD: nfsd_file_put() can sleep
NFSD: Fix potential use-after-free in nfsd_file_put()
NFSD: Decode NFSv4 birth time attribute
NFSD: Instrument fh_verify()
NFSD: Demote a WARN to a pr_warn()
NFSD: Report filecache LRU size
NFSD: Report count of calls to nfsd_file_acquire()
NFSD: Report count of freed filecache items
NFSD: Report average age of filecache items
NFSD: Add nfsd_file_lru_dispose_list() helper
NFSD: Refactor nfsd_file_gc()
NFSD: Refactor nfsd_file_lru_scan()
NFSD: Report the number of items evicted by the LRU walk
NFSD: Record number of flush calls
NFSD: Zero counters when the filecache is re-initialized
NFSD: Hook up the filecache stat file
NFSD: WARN when freeing an item still linked via nf_lru
NFSD: Trace filecache LRU activity
NFSD: Leave open files out of the filecache LRU
NFSD: Fix the filecache LRU shrinker
NFSD: Never call nfsd_file_gc() in foreground paths
NFSD: No longer record nf_hashval in the trace log
NFSD: Remove lockdep assertion from unhash_and_release_locked()
NFSD: nfsd_file_unhash can compute hashval from nf->nf_inode
NFSD: Refactor __nfsd_file_close_inode()
NFSD: nfsd_file_hash_remove can compute hashval
NFSD: Remove nfsd_file::nf_hashval
NFSD: Replace the "init once" mechanism
NFSD: Set up an rhashtable for the filecache
NFSD: Convert the filecache to use rhashtable
NFSD: Clean up unused code after rhashtable conversion
NFSD: Separate tracepoints for acquire and create
NFSD: Move nfsd_file_trace_alloc() tracepoint
NFSD: NFSv4 CLOSE should release an nfsd_file immediately
NFSD: Ensure nf_inode is never dereferenced
NFSD: Optimize nfsd4_encode_operation()
NFSD: Optimize nfsd4_encode_fattr()
NFSD: Clean up SPLICE_OK in nfsd4_encode_read()
NFSD: Add an nfsd4_read::rd_eof field
NFSD: Optimize nfsd4_encode_readv()
NFSD: Simplify starting_len
NFSD: Use xdr_pad_size()
NFSD: Clean up nfsd4_encode_readlink()
NFSD: Fix strncpy() fortify warning
NFSD: nfserrno(-ENOMEM) is nfserr_jukebox
NFSD: Shrink size of struct nfsd4_copy_notify
NFSD: Shrink size of struct nfsd4_copy
NFSD: Reorder the fields in struct nfsd4_op
NFSD: Make nfs4_put_copy() static
NFSD: Replace boolean fields in struct nfsd4_copy
NFSD: Refactor nfsd4_cleanup_inter_ssc() (1/2)
NFSD: Refactor nfsd4_cleanup_inter_ssc() (2/2)
NFSD: Refactor nfsd4_do_copy()
NFSD: Remove kmalloc from nfsd4_do_async_copy()
NFSD: Add nfsd4_send_cb_offload()
NFSD: Move copy offload callback arguments into a separate structure
NFSD: Increase NFSD_MAX_OPS_PER_COMPOUND
NFSD: Replace dprintk() call site in fh_verify()
NFSD: Trace NFSv4 COMPOUND tags
NFSD: Add tracepoints to report NFSv4 callback completions
NFSD: Add a mechanism to wait for a DELEGRETURN
NFSD: Refactor nfsd_setattr()
NFSD: Make nfsd4_setattr() wait before returning NFS4ERR_DELAY
NFSD: Make nfsd4_rename() wait before returning NFS4ERR_DELAY
NFSD: Make nfsd4_remove() wait before returning NFS4ERR_DELAY
SUNRPC: Parametrize how much of argsize should be zeroed
NFSD: Reduce amount of struct nfsd4_compoundargs that needs clearing
NFSD: Refactor common code out of dirlist helpers
NFSD: Use xdr_inline_decode() to decode NFSv3 symlinks
NFSD: Clean up WRITE arg decoders
NFSD: Clean up nfs4svc_encode_compoundres()
NFSD: Remove "inline" directives on op_rsize_bop helpers
NFSD: Remove unused nfsd4_compoundargs::cachetype field
NFSD: Pack struct nfsd4_compoundres
NFSD: Rename the fields in copy_stateid_t
NFSD: Cap rsize_bop result based on send buffer size
NFSD: Fix trace_nfsd_fh_verify_err() crasher
NFSD: Fix reads with a non-zero offset that don't end on a page boundary
NFSD: Finish converting the NFSv3 GETACL result encoder
NFSD: Pass the target nfsd_file to nfsd_commit()
NFSD: Revert "NFSD: NFSv4 CLOSE should release an nfsd_file immediately"
NFSD: Add an NFSD_FILE_GC flag to enable nfsd_file garbage collection
NFSD: Flesh out a documenting comment for filecache.c
NFSD: Clean up nfs4_preprocess_stateid_op() call sites
NFSD: Trace stateids returned via DELEGRETURN
NFSD: Trace delegation revocations
NFSD: Use const pointers as parameters to fh_ helpers
NFSD: Update file_hashtbl() helpers
NFSD: Clean up nfsd4_init_file()
NFSD: Add a nfsd4_file_hash_remove() helper
NFSD: Clean up find_or_add_file()
NFSD: Refactor find_file()
NFSD: Use rhashtable for managing nfs4_file objects
NFSD: Fix licensing header in filecache.c
NFSD: Add an nfsd_file_fsync tracepoint
trace: Relocate event helper files
NFSD: Use only RQ_DROPME to signal the need to drop a reply Revert "SUNRPC: Use RMW bitops in single-threaded hot paths"
NFSD: Use set_bit(RQ_DROPME)
NFSD: copy the whole verifier in nfsd_copy_write_verifier
NFSD: Protect against filesystem freezing
NFSD: Convert filecache to rhltable
NFSD: Add an nfsd4_encode_nfstime4() helper
Documentation: Add missing documentation for EXPORT_OP flags

Claus Hansen Ries (1):
net: ll_temac: platform_get_resource replaced by wrong function

Colin Ian King (3):
NFSD: Initialize pointer ni with NULL and not plain integer 0
nfsd: remove redundant assignment to variable len
NFSD: Remove redundant assignment to variable host_err

Conrad Kostecki (1):
ahci: asm1064: asm1166: don't limit reported ports

Dai Ngo (23):
fs/lock: documentation cleanup. Replace inode->i_lock with flc_lock.
NFSD: add courteous server support for thread with only delegation
NFSD: add support for share reservation conflict to courteous server
NFSD: move create/destroy of laundry_wq to init_nfsd and exit_nfsd fs/lock: add helper locks_owner_has_blockers to check for blockers fs/lock: add 2 callbacks to lock_manager_operations to resolve conflict
NFSD: add support for lock conflict to courteous server
NFSD: Show state of courtesy client in client info
NFSD: refactoring v4 specific code to a helper in nfs4state.c
NFSD: keep track of the number of v4 clients in the system
NFSD: limit the number of v4 clients to 1024 per 1GB of system memory
NFSD: keep track of the number of courtesy clients in the system
NFSD: add shrinker to reap courtesy clients on low memory condition
NFSD: refactoring courtesy_client_reaper to a generic low memory shrinker
NFSD: add support for sending CB_RECALL_ANY
NFSD: add delegation reaper to react to low memory condition
NFSD: add CB_RECALL_ANY tracepoints
NFSD: register/unregister of nfsd-client shrinker at nfsd startup/shutdown time
NFSD: replace delayed_work with work_struct for nfsd_client_shrinker
NFSD: enhance inter-server copy cleanup
NFSD: fix leaked reference count of nfsd4_ssc_umount_item
NFSD: fix problems with cleanup on errors in nfsd4_copy
NFSD: Fix problem of COMMIT and NFS4ERR_DELAY in infinite loop

Damian Muszynski (1):
crypto: qat - resolve race condition during AER recovery

Damien Le Moal (1):
block: Clear zone limits for a non-zoned stacked queue

Dan Carpenter (2):
nfsd: fix double fget() bug in __write_ports_addfd()
staging: vc04_services: fix information leak in create_component()

Daniel Sneddon (2):
x86/bhi: Define SPEC_CTRL_BHI_DIS_S
KVM: x86: Add BHI_NO

Daniel Vogelbacher (1):
USB: serial: ftdi_sio: add support for GMC Z216C Adapter IR-USB

David Disseldorp (1):
exportfs: use pr_debug for unreachable debug statements

David Hildenbrand (1):
mm/secretmem: fix GUP-fast succeeding on secretmem folios

David Laight (1):
minmax: add umin(a, b) and umax(a, b)

David Thompson (3):
mlxbf_gige: stop PHY during open() error paths
mlxbf_gige: call request_irq() after NAPI initialized
mlxbf_gige: stop interface during shutdown

Davide Caratti (1):
mptcp: don't account accept() of non-MPC client as fallback to TCP

Denis Kirjanov (1):
drivers: net: convert to boolean for the mac_managed_pm flag

Dominique Martinet (1):
mmc: core: Fix switch on gp3 partition

Duje Mihanović (1):

      arm: dts: marvell: Fix maxium->maxim typo in brownstone dts

Duoming Zhou (1):
ALSA: sh: aica: reorder cleanup operations to avoid UAF bugs

Eric Dumazet (4):
tcp: properly terminate timers for kernel sockets
netfilter: validate user input for expected length net/sched: act_skbmod: prevent kernel-infoleak
erspan: make sure erspan_base_hdr is present in skb->head

Eric W. Biederman (2):
exit: Implement kthread_exit
exit: Rename module_put_and_exit to module_put_and_kthread_exit

Fedor Pchelkin (1):
mac802154: fix llsec key resources release in mac802154_llsec_key_del

Felix Fietkau (1):
wifi: mac80211: check/clear fast rx for non-4addr sta VLAN changes

Filipe Manana (1):
btrfs: fix off-by-one chunk length calculation at contains_pending_extent()

Gabor Juhos (4):
clk: qcom: gcc-ipq6018: fix terminating of frequency table arrays
clk: qcom: gcc-ipq8074: fix terminating of frequency table arrays
clk: qcom: mmcc-apq8084: fix terminating of frequency table arrays
clk: qcom: mmcc-msm8974: fix terminating of frequency table arrays

Gabriel Krisman Bertazi (27):
fsnotify: Don't insert unmergeable events in hashtable
fanotify: Fold event size calculation to its own function
fanotify: Split fsid check from other fid mode checks
inotify: Don't force FS_IN_IGNORED
fsnotify: Add helper to detect overflow_event
fsnotify: Add wrapper around fsnotify_add_event
fsnotify: Retrieve super block from the data field
fsnotify: Protect fsnotify_handle_inode_event from no-inode events
fsnotify: Pass group argument to free_event
fanotify: Support null inode event in fanotify_dfid_inode
fanotify: Allow file handle encoding for unhashed events
fanotify: Encode empty file handle when no inode is provided
fanotify: Require fid_mode for any non-fd event
fsnotify: Support FS_ERROR event type
fanotify: Reserve UAPI bits for FAN_FS_ERROR
fanotify: Pre-allocate pool of error events
fanotify: Support enqueueing of error events
fanotify: Support merging of error events
fanotify: Wrap object_fh inline space in a creator macro
fanotify: Add helpers to decide whether to report FID/DFID
fanotify: WARN_ON against too large file handles
fanotify: Report fid info for file related file system errors
fanotify: Emit generic error info for error event
fanotify: Allow users to request FAN_FS_ERROR events
ext4: Send notifications on error
docs: Document the FAN_FS_ERROR event
ext4: fix error code saved on super block during file system abort

Gaosheng Cui (3):
nfsd: remove nfsd4_prepare_cb_recall() declaration
fsnotify: remove unused declaration
fanotify: Remove obsoleted fanotify_event_has_path()

Geert Uytterhoeven (1):
net: ravb: Add R-Car Gen4 support

Geliang Tang (1):
selftests: mptcp: diag: return KSFT_FAIL not test_cnt

Gokul krishna Krishnakumar (1):
locking/rwsem: Disable preemption while trying for rwsem lock

Greg Kroah-Hartman (3):
cpufreq: brcmstb-avs-cpufreq: fix up "add check for cpufreq_cpu_get's return value"
x86: set SPECTRE_BHI_ON as default
Linux 5.15.154

Guenter Roeck (4):
parisc: Fix ip_fast_csum
parisc: Fix csum_ipv6_magic on 32-bit systems
parisc: Fix csum_ipv6_magic on 64-bit systems
parisc: Strip upper 32 bit of sum in csum_ipv6_magic for 64-bit builds

Gui-Dong Han (1):
media: xc4000: Fix atomicity violation in xc4000_get_frequency

Guilherme G. Piccoli (1):
scsi: core: Fix unremoved procfs host directory regression

H. Peter Anvin (Intel) (1):

      x86/asm: Add _ASM_RIP() macro for x86-64 (%rip) suffix

Harald Freudenberger (1):
s390/zcrypt: fix reference counting on zcrypt card objects

Hariprasad Kelam (2):
Octeontx2-af: fix pause frame configuration in GMP mode
octeontx2-af: Fix issue with loading coalesced KPU profiles

Heiner Kallweit (2):
i2c: i801: Avoid potential double call to gpiod_remove_lookup_table
r8169: fix issue caused by buggy BIOS on certain boards with RTL8168d

Herve Codina (2):
driver core: Introduce device_link_wait_removal()
of: dynamic: Synchronize of_changeset_destroy() with the devlink removals

Hidenori Kobayashi (1):
media: staging: ipu3-imgu: Set fields before media_entity_pads_init()

Huang Ying (1):
swap: comments get_swap_device() with usage rule

Hugo Villeneuve (1):
serial: sc16is7xx: convert from _raw_ to _noinc_ regmap functions for FIFO

Hui Wang (1):
Bluetooth: hci_event: set the conn encrypted before conn establishes

I Gede Agastya Darma Laksana (1):
ALSA: hda/realtek: Update Panasonic CF-SZ6 quirk to support headset with microphone

Ingo Molnar (1):
Revert "x86/mm/ident_map: Use gbpages only where full GB page should be mapped."

Ivan Vecera (2):
i40e: Remove _t suffix from enum type names
i40e: Enforce software interrupt during busy-poll exit

J. Bruce Fields (4):
nfsd: update create verifier comment
nfsd4: remove obselete comment
nfsd: improve stateid access bitmask documentation
nfs: block notification on fs with its own ->lock

Jakob Koschel (1):
nfsd: fix using the correct variable for sizeof()

Jakub Kicinski (1):
selftests: reuseaddr_conflict: add missing new line at the end of the output

Jakub Sitnicki (1):
bpf, sockmap: Prevent lock inversion deadlock in map delete elem

Jameson Thies (1):
usb: typec: ucsi: Clean up UCSI_CABLE_PROP macros

Jan Kara (1):
fat: fix uninitialized field in nostale filehandles

Jani Nikula (4):
drm/panel: do not return negative error codes from drm_panel_get_modes() drm/exynos: do not return negative values from .get_modes() drm/imx/ipuv3: do not return negative values from .get_modes() drm/vc4: hdmi: do not return negative values from .get_modes()

Jann Horn (3):
HID: uhid: Use READ_ONCE()/WRITE_ONCE() for ->running
openrisc: Fix pagewalk usage in arch_dma_{clear, set}_uncached fs/pipe: Fix lockdep false-positive in watchqueue pipe_write()

Jarred White (1):
ACPI: CPPC: Use access_width over bit_width for system memory accesses

Jason A. Donenfeld (2):
wireguard: netlink: check for dangling peer via is_dead instead of empty list
wireguard: netlink: access device through ctx instead of peer

Jeff Layton (52):
nfsd: Add errno mapping for EREMOTEIO
nfsd: Retry once in nfsd_open on an -EOPENSTALE return
nfsd: silence extraneous printk on nfsd.ko insertion
NFSD: drop fh argument from alloc_init_deleg
NFSD: verify the opened dentry after setting a delegation
nfsd: clean up mounted_on_fileid handling
nfsd: only fill out return pointer on success in nfsd4_lookup_stateid
nfsd: fix comments about spinlock handling with delegations
nfsd: make nfsd4_run_cb a bool return function
nfsd: extra checks when freeing delegation stateids
nfsd: fix nfsd_file_unhash_and_dispose
nfsd: rework hashtable handling in nfsd_do_file_acquire
nfsd: ensure we always call fh_verify_error tracepoint
nfsd: fix net-namespace logic in __nfsd_file_cache_purge
nfsd: fix use-after-free in nfsd_file_do_acquire tracepoint
nfsd: put the export reference in nfsd4_verify_deleg_dentry
lockd: use locks_inode_context helper
nfsd: use locks_inode_context helper
nfsd: ignore requests to disable unsupported versions
nfsd: move nfserrno() to vfs.c
nfsd: allow disabling NFSv2 at compile time
nfsd: remove the pages_flushed statistic from filecache
nfsd: reorganize filecache.c
filelock: add a new locks_inode_context accessor function
nfsd: fix up the filecache laundrette scheduling
nfsd: return error if nfs4_setacl fails
lockd: set missing fl_flags field when retrieving args
lockd: ensure we use the correct file descriptor when unlocking
lockd: fix file selection in nlmsvc_cancel_blocked
nfsd: rework refcounting in filecache
nfsd: fix handling of cached open files in nfsd4_open codepath
nfsd: don't free files unconditionally in __nfsd_file_cache_purge
nfsd: don't destroy global nfs4_file table in per-net shutdown
nfsd: allow nfsd_file_get to sanely handle a NULL pointer
nfsd: clean up potential nfsd_file refcount leaks in COPY codepath
nfsd: don't hand out delegation on setuid files being opened for write
nfsd: fix courtesy client with deny mode handling in nfs4_upgrade_open
nfsd: don't fsync nfsd_files on last close
nfsd: don't replace page in rq_pages if it's a continuation of last page
nfsd: call op_release, even when op_func returns an error
nfsd: don't open-code clear_and_wake_up_bit
nfsd: NFSD_FILE_KEY_INODE only needs to find GC'ed entries
nfsd: simplify test_bit return in NFSD_FILE_KEY_FULL comparator
nfsd: don't kill nfsd_files because of lease break error
nfsd: add some comments to nfsd_file_do_acquire
nfsd: don't take/put an extra reference when putting a file
nfsd: update comment over __nfsd_file_cache_purge
nfsd: allow reaping files still under writeback
nfsd: simplify the delayed disposal list code
nfsd: make a copy of struct iattr before calling notify_change
nfsd: drop the nfsd_put helper
nfsd: hold a lighter-weight client reference over CB_RECALL_ANY

Jens Axboe (1):
io_uring: ensure '0' is returned on file registration success

Jerome Brunet (1):
nvmem: meson-efuse: fix function pointer type mismatch

Jesper Dangaard Brouer (1):
xen-netfront: Add missing skb_mark_for_recycle

Jiapeng Chong (1):
NFSD: Fix inconsistent indenting

Jim Mattson (2):
KVM: x86: Advertise CPUID.(EAX=7,ECX=2):EDX[5:0] to userspace
KVM: x86: Use a switch statement and macros in __feature_translate()

Jinpeng Cui (1):
NFSD: remove redundant variable status

Joe Damato (1):
i40e: Store the irq number in i40e_q_vector

Johan Hovold (1):
arm64: dts: qcom: sc7180-trogdor: mark bluetooth address as broken

Johannes Berg (1):
wifi: iwlwifi: mvm: rfi: fix potential response leaks

Johannes Thumshirn (1):
btrfs: zoned: use zone aware sb location for scrub

John David Anglin (1):
parisc: Avoid clobbering the C/B bits in the PSW with tophys and tovirt macros

John Garry (2):
dma-mapping: add dma_opt_mapping_size()
dma-iommu: add iommu_dma_opt_mapping_size()

John Ogness (1):
printk: Update @console_may_schedule in console_trylock_spinning()

John Sperbeck (1):
init: open /initrd.image with O_LARGEFILE

Josef Bacik (1):
nfs: fix UAF in direct writes

Josh Poimboeuf (1):
x86/bugs: Change commas to semicolons in 'spectre_v2' sysfs file

Josua Mayer (1):
hwmon: (amc6821) add of_match table

Kailang Yang (1):
ALSA: hda/realtek - Fix headset Mic no show at resume back for Lenovo ALC897 platform

Kees Cook (1):
NFSD: Avoid clashing function prototypes

Kim Phillips (2):
x86/cpu: Support AMD Automatic IBRS
x86/cpu: Enable STIBP on AMD if Automatic IBRS is enabled

Krishna Kurapati (1):
usb: gadget: ncm: Fix handling of zero block length packets

Kuniyuki Iwashima (1):
ipv6: Fix infinite recursion in fib6_dump_done().

Leo Ma (1):
drm/amd/display: Fix noise issue on HDMI AV mute

Lin Yujun (1):
Documentation/hw-vuln: Update spectre doc

Linus Torvalds (1):
x86/syscall: Don't force use of indirect calls for system calls

Mahmoud Adam (1):
net/rds: fix possible cp null dereference

Marek Szyprowski (1):
cpufreq: dt: always allocate zeroed cpumask

Marios Makassikis (1):
ksmbd: retrieve number of blocks using vfs_getattr in set_file_allocation_info

Martin Blumenstingl (1):
clocksource/drivers/arm_global_timer: Fix maximum prescaler value

Mathias Nyman (1):
usb: port: Don't try to peer unused USB ports based on location

Matthew Wilcox (Oracle) (2):
bounds: support non-power-of-two CONFIG_NR_CPUS
ubifs: Set page uptodate in the correct place

Maulik Shah (1):
PM: suspend: Set mem_sleep_current during kernel command line setup

Max Filippov (1):
exec: Fix NOMMU linux_binprm::exec in transfer_args_to_stack()

Maximilian Heyne (2):
ext4: fix corruption during on-line resize xen/events: close evtchn after mapping cleanup

Michael Ellerman (1):
powerpc/fsl: Fix mfpmr build errors with newer binutils

Michael Kelley (1):
Drivers: hv: vmbus: Calculate ring buffer size for more efficient use of memory

Mickaël Salaün (1):
landlock: Warn once if a Landlock action is requested while disabled

Mika Westerberg (3):
PCI/ASPM: Make Intel DG2 L1 acceptable latency unlimited PCI/DPC: Quirk PIO log size for certain Intel Root Ports PCI/DPC: Quirk PIO log size for Intel Ice Lake Root Ports

Mikko Rapeli (2):
mmc: core: Initialize mmc_blk_ioc_data
mmc: core: Avoid negative index with array access

Miklos Szeredi (2):
fuse: fix root lookup with nonzero generation
fuse: don't unhash root

Mikulas Patocka (1):
dm snapshot: fix lockup in dm_exception_table_exit

Minas Harutyunyan (5):
usb: dwc2: host: Fix remote wakeup from hibernation
usb: dwc2: host: Fix hibernation flow
usb: dwc2: host: Fix ISOC flow in DDMA mode
usb: dwc2: gadget: Fix exiting from clock gating
usb: dwc2: gadget: LPM flow fix

Muhammad Usama Anjum (1):
scsi: lpfc: Correct size for wqe for memset()

Nathan Chancellor (4):
kbuild: Move -Wenum-{compare-conditional,enum-conversion} into W=1
xfrm: Avoid clang fortify warning in copy_to_user_tmpl()
powerpc: xor_vmx: Add '-mhard-float' to CFLAGS
hexagon: vmlinux.lds.S: handle attributes section

NeilBrown (46):
NFSD: move filehandle format declarations out of "uapi".
NFSD: drop support for ancient filehandles
NFSD: simplify struct nfsfh
NFSD: handle errors better in write_ports_addfd()
SUNRPC: change svc_get() to return the svc.
SUNRPC/NFSD: clean up get/put functions.
SUNRPC: stop using ->sv_nrthreads as a refcount
nfsd: make nfsd_stats.th_cnt atomic_t
SUNRPC: use sv_lock to protect updates to sv_nrthreads.
NFSD: narrow nfsd_mutex protection in nfsd thread
NFSD: Make it possible to use svc_set_num_threads_sync
SUNRPC: discard svo_setup and rename svc_set_num_threads_sync()
NFSD: simplify locking for network notifier.
lockd: introduce nlmsvc_serv
lockd: simplify management of network status notifiers
lockd: move lockd_start_svc() call into lockd_create_svc()
lockd: move svc_exit_thread() into the thread
lockd: introduce lockd_put()
lockd: rename lockd_create_svc() to lockd_get()
SUNRPC: move the pool_map definitions (back) into svc.c
SUNRPC: always treat sv_nrpools==1 as "not pooled"
lockd: use svc_set_num_threads() for thread start and stop
NFS: switch the callback service back to non-pooled.
NFSD: simplify per-net file cache management
NFS: restore module put when manager exits.
NFSD: introduce struct nfsd_attrs
NFSD: set attributes when creating symlinks
NFSD: add security label to struct nfsd_attrs
NFSD: add posix ACLs to struct nfsd_attrs
NFSD: change nfsd_create()/nfsd_symlink() to unlock directory before returning.
NFSD: always drop directory lock in nfsd_unlink()
NFSD: only call fh_unlock() once in nfsd_link()
NFSD: reduce locking in nfsd_lookup()
NFSD: use explicit lock/unlock for directory ops
NFSD: use (un)lock_inode instead of fh_(un)lock for file operations
NFSD: discard fh_locked flag and fh_lock/fh_unlock
NFSD: fix regression with setting ACLs.
NFSD: drop fname and flen args from nfsd_create_locked()
lockd: drop inappropriate svc_get() from locked_get()
nfsd: Simplify code around svc_exit_thread() call in nfsd()
nfsd: separate nfsd_last_thread() from nfsd_put()
NFSD: fix possible oops when nfsd/pool_stats is closed.
nfsd: call nfsd_last_thread() before final nfsd_put()
nfsd: fix RELEASE_LOCKOWNER
nfsd: don't take fi_lock in nfsd_break_deleg_cb()
nfsd: don't call locks_release_private() twice concurrently

Nicolas Pitre (1):
vt: fix unicode buffer corruption when deleting characters

Nicolin Chen (1):
iommu/dma: Force swiotlb_max_mapping_size on an untrusted device

Nikita Kiryushin (1):
ACPICA: debugger: check status of acpi_evaluate_object() in acpi_db_walk_for_fields()

Niklas Cassel (1):
PCI: dwc: endpoint: Fix advertised resizable BAR size

Nirmoy Das (1):
drm/i915: Check before removing mm notifier

Oleksij Rempel (1):
net: usb: asix: suspend embedded PHY if external is used

Olga Kornievskaia (1):
NFSD enforce filehandle check for source file in COPY

Oliver Ford (1):
fs: inotify: Fix typo in inotify comment

Oliver Neukum (1):
usb: cdc-wdm: close race between read and workqueue

Oliver Upton (2):
KVM: arm64: Work out supported block level at compile time
KVM: arm64: Limit stage2_apply_range() batch size to largest block

Ondrej Valousek (1):
nfsd: Add support for the birth time attribute

Pablo Neira Ayuso (5):
netfilter: nf_tables: mark set as dead when unbinding anonymous set with timeout
netfilter: nf_tables: disallow anonymous set with timeout flag
netfilter: nf_tables: reject constant set with timeout
netfilter: nf_tables: reject new basechain after table flag update
netfilter: nf_tables: flush pending destroy work before exit_net release

Paul Barker (1):
net: ravb: Always process TX descriptor ring

Paul Menzel (1):
PCI/DPC: Quirk PIO log size for Intel Raptor Lake Root Ports

Pawan Gupta (13):
x86/bugs: Add asm helpers for executing VERW
x86/entry_64: Add VERW just before userspace transition x86/entry_32: Add VERW just before userspace transition x86/bugs: Use ALTERNATIVE() instead of mds_user_clear static key KVM/VMX: Move VERW closer to VMentry for MDS mitigation x86/mmio: Disable KVM mitigation when X86_FEATURE_CLEAR_CPU_BUF is set Documentation/hw-vuln: Add documentation for RFDS x86/rfds: Mitigate Register File Data Sampling (RFDS) KVM/x86: Export RFDS_NO and RFDS_CLEAR to guests
x86/bhi: Add support for clearing branch history at syscall entry x86/bhi: Enumerate Branch History Injection (BHI) bug x86/bhi: Add BHI mitigation knob
x86/bhi: Mitigate KVM by default

Peng Tao (1):
nfsd: map EBADF

Peter Collingbourne (2):
kasan: test: add memcpy test that avoids out-of-bounds write
serial: Lock console when calling into driver before registration

Peter Zijlstra (4):
arch: Introduce CONFIG_FUNCTION_ALIGNMENT x86/alternatives: Introduce int3_emulate_jcc() x86/alternatives: Teach text_poke_bp() to patch Jcc.d32 instructions x86/static_call: Add support for Jcc tail-calls

Petr Mladek (1):
printk/console: Split out code that enables default console

Philip Yang (1):
drm/amdgpu: amdgpu_ttm_gart_bind set gtt bound flag

Philipp Stanner (1):
pci_iounmap(): Fix MMIO mapping leak

Pierre-Louis Bossart (3):
ASoC: rt5682-sdw: fix locking sequence
ASoC: rt711-sdca: fix locking sequence
ASoC: rt711-sdw: fix locking sequence

Piotr Wejman (1):
net: stmmac: fix rx queue priority assignment

Prashanth K (1):
usb: xhci: Add error handling in xhci_map_urb_for_dma

Przemek Kitszel (1):
ixgbe: avoid sleeping allocation in ixgbe_ipsec_vf_add_sa()

Qiang Zhang (1):
memtest: use {READ,WRITE}_ONCE in memory scanning

Qingliang Li (1):
PM: sleep: wakeirq: fix wake irq warning in system suspend

Quinn Tran (6):
scsi: qla2xxx: Prevent command send on chip reset
scsi: qla2xxx: Fix N2N stuck connection
scsi: qla2xxx: Split FCE|EFT trace control
scsi: qla2xxx: NVME|FCP prefer flag not being honored
scsi: qla2xxx: Fix command flush on cable pull
scsi: qla2xxx: Delay I/O Abort on PCI error

Rafael J. Wysocki (1):
PCI/PM: Drain runtime-idle callbacks before driver removal

Randy Dunlap (2):
sparc64: NMI watchdog: fix return value of __setup handler
sparc: vDSO: fix return value of __setup handler

Richard Weinberger (1):
ubi: Check for too small LEB size in VTBL code

Rickard x Andersson (1):
tty: serial: imx: Fix broken RS485

Roberto Sassu (2):
smack: Set SMACK64TRANSMUTE only for dirs in smack_inode_setxattr()
smack: Handle SMACK64TRANSMUTE in smack_inode_setsecurity()

Rodrigo Siqueira (1):
drm/amd/display: Return the correct HDCP error code

Ryan Roberts (1):
mm: swap: fix race between free_swap_and_cache() and swapoff()

Ryosuke Yasuoka (1):
nfc: nci: Fix uninit-value in nci_dev_up and nci_ntf_packet

Ryusuke Konishi (2):
nilfs2: fix failure to detect DAT corruption in btree and direct mappings
nilfs2: prevent kernel bug at submit_bh_wbc()

Samuel Holland (1):
riscv: Fix spurious errors from __get/put_kernel_nofault

Samuel Thibault (1):
speakup: Fix 8bit characters from direct synth

Sandipan Das (1):
x86/cpufeatures: Add new word for scattered features

Saurav Kashyap (2):
scsi: qla2xxx: Fix double free of fcport
scsi: qla2xxx: Change debug message during driver unload

Sean Anderson (4):
soc: fsl: qbman: Always disable interrupts when taking cgr_lock
soc: fsl: qbman: Add helper for sanity checking cgr ops
soc: fsl: qbman: Add CGR update function
soc: fsl: qbman: Use raw spinlock for cgr_lock

Sean Christopherson (7):
KVM: x86: Update KVM-only leaf handling to allow for 100% KVM-only leafs
KVM: Always flush async #PF workqueue when vCPU is being destroyed
KVM: SVM: Flush pages under kvm->lock to fix UAF in svm_register_enc_region() KVM/VMX: Use BT+JNC, i.e. EFLAGS.CF to select VMRESUME vs. VMLAUNCH x86/cpufeatures: Add CPUID_LNX_5 to track recently added Linux-defined word
KVM: x86: Bail to userspace if emulation of atomic user access faults
KVM: x86: Mark target gfn of emulated atomic instruction as dirty

SeongJae Park (1):
selftests/mqueue: Set timeout to 180 seconds

Sherry Sun (1):
tty: serial: fsl_lpuart: avoid idle preamble pending if CTS is enabled

Stanislaw Gruszka (1):
PCI/AER: Block runtime suspend when handling errors

Stefan O'Rear (1):
riscv: process: Fix kernel gp leakage

Stephen Lee (1):
ASoC: ops: Fix wraparound for mask in snd_soc_get_volsw

Steven Rostedt (Google) (8):
ring-buffer: Fix waking up ring buffer readers
ring-buffer: Do not set shortest_full when full target is hit
ring-buffer: Fix resetting of shortest_full
ring-buffer: Fix full_waiters_pending in poll
ring-buffer: Use wait_event_interruptible() in ring_buffer_wait()
NFSD: Fix nfsd_clid_class use of __string_len() macro
net: hns3: tracing: fix hclgevf trace event strings
tracing: Use .flush() call to wake up readers

Su Hui (1):
octeontx2-pf: check negative error code in otx2_open()

Sumanth Korikkar (1):
s390/entry: align system call table on 8 bytes

Sumit Garg (1):
tee: optee: Fix kernel panic caused by incorrect error handling

Svyatoslav Pankratov (1):
crypto: qat - fix double free during reset

Tavian Barnes (1):
nfsd: Fix creation time serialization order

Tetsuo Handa (1):
NFSD: unregister shrinker when nfsd_init_net() fails

Thomas Gleixner (4):
timers: Update kernel-doc for various functions
timers: Use del_timer_sync() even on UP
timers: Rename del_timer_sync() to timer_delete_sync() x86/asm: Differentiate between code and function alignment

Tim Schumacher (1):
efivarfs: Request at most 512 bytes for variable names

Tom Chung (1):
drm/amd/display: Preserve original aspect ratio in create stream

Toru Katagiri (1):

      USB: serial: cp210x: add pid/vid for TDK NC0110013M and MM0110113M

Trond Myklebust (4):
nfsd: Add a tracepoint for errors in nfsd4_clone_file_range()
nfsd: Fix a write performance regression
nfsd: Clean up nfsd_file_put()
nfsd: Fix a regression in nfsd_setattr()

Uwe Kleine-König (1):

      PCI: Drop pci_device_remove() test of pci_dev->driver

Vasily Averin (2):
nfsd4: add refcount for nfsd4_blocked_lock
fanotify: fix incorrect fmode_t casts

Ville Syrjälä (1):
drm/amdgpu: Use drm_mode_copy()

Vlastimil Babka (1):
mm, vmscan: prevent infinite loop for costly GFP_NOIO | __GFP_RETRY_MAYFAIL allocations

Wayne Chang (2):
phy: tegra: xusb: Add API to retrieve the port number of phy
usb: gadget: tegra-xudc: Fix USB3 PHY retrieval logic

Wei Fang (1):
net: fec: Set mac_managed_pm during probe

Weitao Wang (1):
USB: UAS: return ENODEV when submit urbs fail with device not attached

Will Deacon (1):
swiotlb: Fix alignment checks when both allocation and DMA masks are present

Wolfram Sang (3):
mmc: tmio: avoid concurrent runs of mmc_request_done()
NFSD: move from strlcpy with unused retval to strscpy
lockd: move from strlcpy with unused retval to strscpy

Xin Gao (1):
fsnotify: Fix comment typo

Xiu Jianfeng (1):
NFSD: Use struct_size() helper in alloc_session()

Yang Jihong (1):
perf/core: Fix reentry problem in perf_output_read_group()

Ye Zhang (1):
thermal: devfreq_cooling: Fix perf state when calculate dfc res_util

Yu Kuai (1):

      dm-raid: fix lockdep waring in "pers->hot_add_disk"

Zack Rusin (1):
drm/vmwgfx: Fix possible null pointer derefence with invalid contexts

Zhang Jiaming (1):
NFSD: Fix space and spelling mistake

Zhang Xiaoxu (2):
nfsd: Unregister the cld notifier when laundry_wq create failed
nfsd: Fix null-ptr-deref in nfsd_fill_super()

Zhang Yi (1):
ubi: correct the calculation of fastmap size

Zheng Wang (1):
wifi: brcmfmac: Fix use-after-free bug in brcmf_cfg80211_detach

Zi Yan (1):
mm/migrate: set swap entry values of THP tail pages properly.

Ziyang Xuan (1):
netfilter: nf_tables: Fix potential data-race in __nft_flowtable_type_get()

min15.li (1):
nvme: fix miss command type check

yuan linyu (1):
usb: udc: remove warning when queue disabled ep

author maintainer
#1 lore raw
Documentation/ABI/testing/sysfs-devices-system-cpu +1 -0
index eecbd1603349..23e0537f6e0c 100644
@@ -517,6 +517,7 @@ What:		/sys/devices/system/cpu/vulnerabilities
 		/sys/devices/system/cpu/vulnerabilities/mds
 		/sys/devices/system/cpu/vulnerabilities/meltdown
 		/sys/devices/system/cpu/vulnerabilities/mmio_stale_data
+		/sys/devices/system/cpu/vulnerabilities/reg_file_data_sampling
 		/sys/devices/system/cpu/vulnerabilities/retbleed
 		/sys/devices/system/cpu/vulnerabilities/spec_store_bypass
 		/sys/devices/system/cpu/vulnerabilities/spectre_v1
Documentation/admin-guide/filesystem-monitoring.rst new file +74 -0

74 lines not on this page · raw message

Documentation/admin-guide/hw-vuln/index.rst +1 -0
index 6828102baaa7..3e4a14e38b49 100644
@@ -21,3 +21,4 @@ are configurable at compile, boot or run time.
    cross-thread-rsb.rst
    gather_data_sampling.rst
    srso
+   reg-file-data-sampling
Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst new file +104 -0

104 lines not on this page · raw message

Documentation/admin-guide/hw-vuln/spectre.rst +54 -12

97 lines not on this page · raw message

Documentation/admin-guide/index.rst +1 -0
index dc00afcabb95..1bedab498104 100644
@@ -82,6 +82,7 @@ configure specific aspects of kernel behavior to your liking.
    edid
    efi-stub
    ext4
+   filesystem-monitoring
    nfs/index
    gpio/index
    highuid
Documentation/admin-guide/kernel-parameters.txt +36 -3
index c4c7273419bd..7e9e655a715e 100644
@@ -1037,6 +1037,26 @@
 			The filter can be disabled or changed to another
 			driver later using sysfs.
 
+	reg_file_data_sampling=
+			[X86] Controls mitigation for Register File Data
+			Sampling (RFDS) vulnerability. RFDS is a CPU
+			vulnerability which may allow userspace to infer
+			kernel data values previously stored in floating point
+			registers, vector registers, or integer registers.
+			RFDS only affects Intel Atom processors.
+
+			on:	Turns ON the mitigation.
+			off:	Turns OFF the mitigation.
+
+			This parameter overrides the compile time default set
+			by CONFIG_MITIGATION_RFDS. Mitigation cannot be
+			disabled when other VERW based mitigations (like MDS)
+			are enabled. In order to disable RFDS mitigation all
+			VERW based mitigations need to be disabled.
+
+			For details see:
+			Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst
+
 	driver_async_probe=  [KNL]
 			List of driver names to be probed asynchronously.
 			Format: <driver_name1>,<driver_name2>...
@@ -3070,6 +3090,7 @@
 					       nopti [X86,PPC]
 					       nospectre_v1 [X86,PPC]
 					       nospectre_v2 [X86,PPC,S390,ARM64]
+					       reg_file_data_sampling=off [X86]
 					       retbleed=off [X86]
 					       spec_store_bypass_disable=off [X86,PPC]
 					       spectre_v2_user=off [X86]
@@ -5383,6 +5404,18 @@
 	sonypi.*=	[HW] Sony Programmable I/O Control Device driver
 			See Documentation/admin-guide/laptops/sonypi.rst
 
+	spectre_bhi=	[X86] Control mitigation of Branch History Injection
+			(BHI) vulnerability. Syscalls are hardened against BHI
+			reglardless of this setting. This setting affects the
+			deployment of the HW BHI control and the SW BHB
+			clearing sequence.
+
+			on   - unconditionally enable.
+			off  - unconditionally disable.
+			auto - (default) enable hardware mitigation
+			       (BHI_DIS_S) if available, otherwise enable
+			       alternate mitigation in KVM.
+
 	spectre_v2=	[X86] Control mitigation of Spectre variant 2
 			(indirect branch speculation) vulnerability.
 			The default operation protects the kernel from
@@ -5413,9 +5446,9 @@
 			retpoline,generic - Retpolines
 			retpoline,lfence  - LFENCE; indirect branch
 			retpoline,amd     - alias for retpoline,lfence
-			eibrs		  - enhanced IBRS
-			eibrs,retpoline   - enhanced IBRS + Retpolines
-			eibrs,lfence      - enhanced IBRS + LFENCE
+			eibrs		  - Enhanced/Auto IBRS
+			eibrs,retpoline   - Enhanced/Auto IBRS + Retpolines
+			eibrs,lfence      - Enhanced/Auto IBRS + LFENCE
 			ibrs		  - use IBRS to protect kernel
 
 			Not specifying this option is equivalent to
Documentation/core-api/dma-api.rst +14 -0
index 6d6d0edd2d27..829f20a193ca 100644
@@ -204,6 +204,20 @@ Returns the maximum size of a mapping for the device. The size parameter
 of the mapping functions like dma_map_single(), dma_map_page() and
 others should not be larger than the returned value.
 
+::
+
+	size_t
+	dma_opt_mapping_size(struct device *dev);
+
+Returns the maximum optimal size of a mapping for the device.
+
+Mapping larger buffers may take much longer in certain scenarios. In
+addition, for high-rate short-lived streaming mappings, the upfront time
+spent on the mapping may account for an appreciable part of the total
+request lifetime. As such, if splitting larger requests incurs no
+significant performance penalty, then device drivers are advised to
+limit total DMA streaming mappings length to the returned value.
+
 ::
 
 	bool
Documentation/filesystems/locking.rst +7 -3
index 5833cea4a16b..dabf4f7c755e 100644
@@ -442,17 +442,21 @@ prototypes::
 	void (*lm_break)(struct file_lock *); /* break_lease callback */
 	int (*lm_change)(struct file_lock **, int);
 	bool (*lm_breaker_owns_lease)(struct file_lock *);
+        bool (*lm_lock_expirable)(struct file_lock *);
+        void (*lm_expire_lock)(void);
 
 locking rules:
 
 ======================	=============	=================	=========
-ops			inode->i_lock	blocked_lock_lock	may block
+ops			   flc_lock  	blocked_lock_lock	may block
 ======================	=============	=================	=========
-lm_notify:		yes		yes			no
+lm_notify:		no      	yes			no
 lm_grant:		no		no			no
 lm_break:		yes		no			no
 lm_change		yes		no			no
-lm_breaker_owns_lease:	no		no			no
+lm_breaker_owns_lease:	yes     	no			no
+lm_lock_expirable	yes		no			no
+lm_expire_lock		no		no			yes
 ======================	=============	=================	=========
 
 buffer_head
Documentation/filesystems/nfs/exporting.rst +33 -0
index 0e98edd353b5..6a1cbd7de38d 100644
@@ -215,3 +215,36 @@ following flags are defined:
     This flag causes nfsd to close any open files for this inode _before_
     calling into the vfs to do an unlink or a rename that would replace
     an existing file.
+
+  EXPORT_OP_REMOTE_FS - Backing storage for this filesystem is remote
+    PF_LOCAL_THROTTLE exists for loopback NFSD, where a thread needs to
+    write to one bdi (the final bdi) in order to free up writes queued
+    to another bdi (the client bdi). Such threads get a private balance
+    of dirty pages so that dirty pages for the client bdi do not imact
+    the daemon writing to the final bdi. For filesystems whose durable
+    storage is not local (such as exported NFS filesystems), this
+    constraint has negative consequences. EXPORT_OP_REMOTE_FS enables
+    an export to disable writeback throttling.
+
+  EXPORT_OP_NOATOMIC_ATTR - Filesystem does not update attributes atomically
+    EXPORT_OP_NOATOMIC_ATTR indicates that the exported filesystem
+    cannot provide the semantics required by the "atomic" boolean in
+    NFSv4's change_info4. This boolean indicates to a client whether the
+    returned before and after change attributes were obtained atomically
+    with the respect to the requested metadata operation (UNLINK,
+    OPEN/CREATE, MKDIR, etc).
+
+  EXPORT_OP_FLUSH_ON_CLOSE - Filesystem flushes file data on close(2)
+    On most filesystems, inodes can remain under writeback after the
+    file is closed. NFSD relies on client activity or local flusher
+    threads to handle writeback. Certain filesystems, such as NFS, flush
+    all of an inode's dirty data on last close. Exports that behave this
+    way should set EXPORT_OP_FLUSH_ON_CLOSE so that NFSD knows to skip
+    waiting for writeback when closing such files.
+
+  EXPORT_OP_ASYNC_LOCK - Indicates a capable filesystem to do async lock
+    requests from lockd. Only set EXPORT_OP_ASYNC_LOCK if the filesystem has
+    it's own ->lock() functionality as core posix_lock_file() implementation
+    has no async lock request handling yet. For more information about how to
+    indicate an async lock request from a ->lock() file_operations struct, see
+    fs/locks.c and comment for the function vfs_lock_file().
Documentation/x86/mds.rst +27 -11
index 5d4330be200f..e801df0bb3a8 100644
@@ -95,6 +95,9 @@ The kernel provides a function to invoke the buffer clearing:
 
     mds_clear_cpu_buffers()
 
+Also macro CLEAR_CPU_BUFFERS can be used in ASM late in exit-to-user path.
+Other than CFLAGS.ZF, this macro doesn't clobber any registers.
+
 The mitigation is invoked on kernel/userspace, hypervisor/guest and C-state
 (idle) transitions.
 
@@ -138,17 +141,30 @@ Mitigation points
 
    When transitioning from kernel to user space the CPU buffers are flushed
    on affected CPUs when the mitigation is not disabled on the kernel
-   command line. The migitation is enabled through the static key
-   mds_user_clear.
-
-   The mitigation is invoked in prepare_exit_to_usermode() which covers
-   all but one of the kernel to user space transitions.  The exception
-   is when we return from a Non Maskable Interrupt (NMI), which is
-   handled directly in do_nmi().
-
-   (The reason that NMI is special is that prepare_exit_to_usermode() can
-    enable IRQs.  In NMI context, NMIs are blocked, and we don't want to
-    enable IRQs with NMIs blocked.)
+   command line. The mitigation is enabled through the feature flag
+   X86_FEATURE_CLEAR_CPU_BUF.
+
+   The mitigation is invoked just before transitioning to userspace after
+   user registers are restored. This is done to minimize the window in
+   which kernel data could be accessed after VERW e.g. via an NMI after
+   VERW.
+
+   **Corner case not handled**
+   Interrupts returning to kernel don't clear CPUs buffers since the
+   exit-to-user path is expected to do that anyways. But, there could be
+   a case when an NMI is generated in kernel after the exit-to-user path
+   has cleared the buffers. This case is not handled and NMI returning to
+   kernel don't clear CPU buffers because:
+
+   1. It is rare to get an NMI after VERW, but before returning to userspace.
+   2. For an unprivileged user, there is no known way to make that NMI
+      less rare or target it.
+   3. It would take a large number of these precisely-timed NMIs to mount
+      an actual attack.  There's presumably not enough bandwidth.
+   4. The NMI in question occurs after a VERW, i.e. when user state is
+      restored and most interesting data is already scrubbed. Whats left
+      is only the data that NMI touches, and that may or may not be of
+      any interest.
 
 
 2. C-State transition
MAINTAINERS +7 -0
index 9216b9c85ce9..6bfc75861c8c 100644
@@ -9200,6 +9200,7 @@ F:	drivers/infiniband/
 F:	include/rdma/
 F:	include/trace/events/ib_mad.h
 F:	include/trace/events/ib_umad.h
+F:	include/trace/misc/rdma.h
 F:	include/uapi/linux/if_infiniband.h
 F:	include/uapi/rdma/
 F:	samples/bpf/ibumad_kern.c
@@ -10181,6 +10182,12 @@ F:	fs/nfs_common/
 F:	fs/nfsd/
 F:	include/linux/lockd/
 F:	include/linux/sunrpc/
+F:	include/trace/events/rpcgss.h
+F:	include/trace/events/rpcrdma.h
+F:	include/trace/events/sunrpc.h
+F:	include/trace/misc/fs.h
+F:	include/trace/misc/nfs.h
+F:	include/trace/misc/sunrpc.h
 F:	include/uapi/linux/nfsd/
 F:	include/uapi/linux/sunrpc/
 F:	net/sunrpc/
Makefile +3 -3
index 07a0f520f2df..7ed807112dcb 100644
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0
 VERSION = 5
 PATCHLEVEL = 15
-SUBLEVEL = 153
+SUBLEVEL = 154
 EXTRAVERSION =
 NAME = Trick or Treat
 
@@ -1000,8 +1000,8 @@ KBUILD_CFLAGS	+= $(CC_FLAGS_CFI)
 export CC_FLAGS_CFI
 endif
 
-ifdef CONFIG_DEBUG_FORCE_FUNCTION_ALIGN_64B
-KBUILD_CFLAGS += -falign-functions=64
+ifneq ($(CONFIG_FUNCTION_ALIGNMENT),0)
+KBUILD_CFLAGS += -falign-functions=$(CONFIG_FUNCTION_ALIGNMENT)
 endif
 
 # arch Makefile may override CC so keep this after arch Makefile is included
arch/Kconfig +24 -0
index 2e2dc0975ab4..a541ce263865 100644
@@ -1303,4 +1303,28 @@ source "kernel/gcov/Kconfig"
 
 source "scripts/gcc-plugins/Kconfig"
 
+config FUNCTION_ALIGNMENT_4B
+	bool
+
+config FUNCTION_ALIGNMENT_8B
+	bool
+
+config FUNCTION_ALIGNMENT_16B
+	bool
+
+config FUNCTION_ALIGNMENT_32B
+	bool
+
+config FUNCTION_ALIGNMENT_64B
+	bool
+
+config FUNCTION_ALIGNMENT
+	int
+	default 64 if FUNCTION_ALIGNMENT_64B
+	default 32 if FUNCTION_ALIGNMENT_32B
+	default 16 if FUNCTION_ALIGNMENT_16B
+	default 8 if FUNCTION_ALIGNMENT_8B
+	default 4 if FUNCTION_ALIGNMENT_4B
+	default 0
+
 endmenu
arch/arm/boot/dts/mmp2-brownstone.dts +1 -1
index 04f1ae1382e7..bc64348b8218 100644
@@ -28,7 +28,7 @@ &uart3 {
 &twsi1 {
 	status = "okay";
 	pmic: max8925@3c {
-		compatible = "maxium,max8925";
+		compatible = "maxim,max8925";
 		reg = <0x3c>;
 		interrupts = <1>;
 		interrupt-parent = <&intcmux4>;
arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi +2 -0
index a9d36ac6cb90..a88798b80921 100644
@@ -911,6 +911,8 @@ bluetooth: bluetooth {
 		vddrf-supply = <&pp1300_l2c>;
 		vddch0-supply = <&pp3300_l10c>;
 		max-speed = <3200000>;
+
+		qcom,local-bd-address-broken;
 	};
 };
 
arch/arm64/include/asm/kvm_pgtable.h +13 -5
index 027783829584..87e782eec925 100644
@@ -13,6 +13,18 @@
 
 #define KVM_PGTABLE_MAX_LEVELS		4U
 
+/*
+ * The largest supported block sizes for KVM (no 52-bit PA support):
+ *  - 4K (level 1):	1GB
+ *  - 16K (level 2):	32MB
+ *  - 64K (level 2):	512MB
+ */
+#ifdef CONFIG_ARM64_4K_PAGES
+#define KVM_PGTABLE_MIN_BLOCK_LEVEL	1U
+#else
+#define KVM_PGTABLE_MIN_BLOCK_LEVEL	2U
+#endif
+
 static inline u64 kvm_get_parange(u64 mmfr0)
 {
 	u64 parange = cpuid_feature_extract_unsigned_field(mmfr0,
@@ -58,11 +70,7 @@ static inline u64 kvm_granule_size(u32 level)
 
 static inline bool kvm_level_supports_block_mapping(u32 level)
 {
-	/*
-	 * Reject invalid block mappings and don't bother with 4TB mappings for
-	 * 52-bit PAs.
-	 */
-	return !(level == 0 || (PAGE_SIZE != SZ_4K && level == 1));
+	return level >= KVM_PGTABLE_MIN_BLOCK_LEVEL;
 }
 
 /**
arch/arm64/include/asm/stage2_pgtable.h +0 -20
index fe341a6578c3..c8dca8ae359c 100644
@@ -10,13 +10,6 @@
 
 #include <linux/pgtable.h>
 
-/*
- * PGDIR_SHIFT determines the size a top-level page table entry can map
- * and depends on the number of levels in the page table. Compute the
- * PGDIR_SHIFT for a given number of levels.
- */
-#define pt_levels_pgdir_shift(lvls)	ARM64_HW_PGTABLE_LEVEL_SHIFT(4 - (lvls))
-
 /*
  * The hardware supports concatenation of up to 16 tables at stage2 entry
  * level and we use the feature whenever possible, which means we resolve 4
@@ -30,11 +23,6 @@
 #define stage2_pgtable_levels(ipa)	ARM64_HW_PGTABLE_LEVELS((ipa) - 4)
 #define kvm_stage2_levels(kvm)		VTCR_EL2_LVLS(kvm->arch.vtcr)
 
-/* stage2_pgdir_shift() is the size mapped by top-level stage2 entry for the VM */
-#define stage2_pgdir_shift(kvm)		pt_levels_pgdir_shift(kvm_stage2_levels(kvm))
-#define stage2_pgdir_size(kvm)		(1ULL << stage2_pgdir_shift(kvm))
-#define stage2_pgdir_mask(kvm)		~(stage2_pgdir_size(kvm) - 1)
-
 /*
  * kvm_mmmu_cache_min_pages() is the number of pages required to install
  * a stage-2 translation. We pre-allocate the entry level page table at
@@ -42,12 +30,4 @@
  */
 #define kvm_mmu_cache_min_pages(kvm)	(kvm_stage2_levels(kvm) - 1)
 
-static inline phys_addr_t
-stage2_pgd_addr_end(struct kvm *kvm, phys_addr_t addr, phys_addr_t end)
-{
-	phys_addr_t boundary = (addr + stage2_pgdir_size(kvm)) & stage2_pgdir_mask(kvm);
-
-	return (boundary - 1 < end - 1) ? boundary : end;
-}
-
 #endif	/* __ARM64_S2_PGTABLE_H_ */
arch/arm64/kvm/mmu.c +8 -1
index 38a8095744a0..db667b4ad103 100644
@@ -31,6 +31,13 @@ static phys_addr_t hyp_idmap_vector;
 
 static unsigned long io_map_base;
 
+static phys_addr_t stage2_range_addr_end(phys_addr_t addr, phys_addr_t end)
+{
+	phys_addr_t size = kvm_granule_size(KVM_PGTABLE_MIN_BLOCK_LEVEL);
+	phys_addr_t boundary = ALIGN_DOWN(addr + size, size);
+
+	return (boundary - 1 < end - 1) ? boundary : end;
+}
 
 /*
  * Release kvm_mmu_lock periodically if the memory region is large. Otherwise,
@@ -52,7 +59,7 @@ static int stage2_apply_range(struct kvm *kvm, phys_addr_t addr,
 		if (!pgt)
 			return -EINVAL;
 
-		next = stage2_pgd_addr_end(kvm, addr, end);
+		next = stage2_range_addr_end(addr, end);
 		ret = fn(pgt, addr, next - addr);
 		if (ret)
 			break;
arch/hexagon/kernel/vmlinux.lds.S +1 -0
index 57465bff1fe4..df7f349c8d4f 100644
@@ -64,6 +64,7 @@ SECTIONS
 	STABS_DEBUG
 	DWARF_DEBUG
 	ELF_DETAILS
+	.hexagon.attributes 0 : { *(.hexagon.attributes) }
 
 	DISCARDS
 }
arch/ia64/Kconfig +1 -0
index 89869aff8ca2..8902d1517894 100644
@@ -63,6 +63,7 @@ config IA64
 	select PCI_MSI_ARCH_FALLBACKS if PCI_MSI
 	select SET_FS
 	select ZONE_DMA32
+	select FUNCTION_ALIGNMENT_32B
 	default y
 	help
 	  The Itanium Processor Family is Intel's 64-bit successor to
arch/ia64/Makefile +1 -1
index 7e548c654a29..43cde968da88 100644
@@ -23,7 +23,7 @@ KBUILD_AFLAGS_KERNEL := -mconstant-gp
 EXTRA		:=
 
 cflags-y	:= -pipe $(EXTRA) -ffixed-r13 -mfixed-range=f12-f15,f32-f127 \
-		   -falign-functions=32 -frename-registers -fno-optimize-sibling-calls
+		   -frename-registers -fno-optimize-sibling-calls
 KBUILD_CFLAGS_KERNEL := -mconstant-gp
 
 GAS_STATUS	= $(shell $(srctree)/arch/ia64/scripts/check-gas "$(CC)" "$(OBJDUMP)")
arch/openrisc/kernel/dma.c +8 -8
index a82b2caaa560..b3edbb33b621 100644
@@ -74,10 +74,10 @@ void *arch_dma_set_uncached(void *cpu_addr, size_t size)
 	 * We need to iterate through the pages, clearing the dcache for
 	 * them and setting the cache-inhibit bit.
 	 */
-	mmap_read_lock(&init_mm);
-	error = walk_page_range(&init_mm, va, va + size, &set_nocache_walk_ops,
-			NULL);
-	mmap_read_unlock(&init_mm);
+	mmap_write_lock(&init_mm);
+	error = walk_page_range_novma(&init_mm, va, va + size,
+			&set_nocache_walk_ops, NULL, NULL);
+	mmap_write_unlock(&init_mm);
 
 	if (error)
 		return ERR_PTR(error);
@@ -88,11 +88,11 @@ void arch_dma_clear_uncached(void *cpu_addr, size_t size)
 {
 	unsigned long va = (unsigned long)cpu_addr;
 
-	mmap_read_lock(&init_mm);
+	mmap_write_lock(&init_mm);
 	/* walk_page_range shouldn't be able to fail here */
-	WARN_ON(walk_page_range(&init_mm, va, va + size,
-			&clear_nocache_walk_ops, NULL));
-	mmap_read_unlock(&init_mm);
+	WARN_ON(walk_page_range_novma(&init_mm, va, va + size,
+			&clear_nocache_walk_ops, NULL, NULL));
+	mmap_write_unlock(&init_mm);
 }
 
 void arch_sync_dma_for_device(phys_addr_t addr, size_t size,
arch/parisc/include/asm/assembly.h +10 -8
index fd8c1ebd2747..12b9236effbc 100644
@@ -79,26 +79,28 @@
 	 * version takes two arguments: a src and destination register.
 	 * However, the source and destination registers can not be
 	 * the same register.
+	 *
+	 * We use add,l to avoid clobbering the C/B bits in the PSW.
 	 */
 
 	.macro  tophys  grvirt, grphys
-	ldil    L%(__PAGE_OFFSET), \grphys
-	sub     \grvirt, \grphys, \grphys
+	ldil    L%(-__PAGE_OFFSET), \grphys
+	addl    \grvirt, \grphys, \grphys
 	.endm
-	
+
 	.macro  tovirt  grphys, grvirt
 	ldil    L%(__PAGE_OFFSET), \grvirt
-	add     \grphys, \grvirt, \grvirt
+	addl    \grphys, \grvirt, \grvirt
 	.endm
 
 	.macro  tophys_r1  gr
-	ldil    L%(__PAGE_OFFSET), %r1
-	sub     \gr, %r1, \gr
+	ldil    L%(-__PAGE_OFFSET), %r1
+	addl    \gr, %r1, \gr
 	.endm
-	
+
 	.macro  tovirt_r1  gr
 	ldil    L%(__PAGE_OFFSET), %r1
-	add     \gr, %r1, \gr
+	addl    \gr, %r1, \gr
 	.endm
 
 	.macro delay value
arch/parisc/include/asm/checksum.h +6 -4
index 3c43baca7b39..2aceebcd695c 100644
@@ -40,7 +40,7 @@ static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl)
 "	addc		%0, %5, %0\n"
 "	addc		%0, %3, %0\n"
 "1:	ldws,ma		4(%1), %3\n"
-"	addib,<		0, %2, 1b\n"
+"	addib,>		-1, %2, 1b\n"
 "	addc		%0, %3, %0\n"
 "\n"
 "	extru		%0, 31, 16, %4\n"
@@ -126,6 +126,7 @@ static __inline__ __sum16 csum_ipv6_magic(const struct in6_addr *saddr,
 	** Try to keep 4 registers with "live" values ahead of the ALU.
 	*/
 
+"	depdi		0, 31, 32, %0\n"/* clear upper half of incoming checksum */
 "	ldd,ma		8(%1), %4\n"	/* get 1st saddr word */
 "	ldd,ma		8(%2), %5\n"	/* get 1st daddr word */
 "	add		%4, %0, %0\n"
@@ -137,8 +138,8 @@ static __inline__ __sum16 csum_ipv6_magic(const struct in6_addr *saddr,
 "	add,dc		%3, %0, %0\n"  /* fold in proto+len | carry bit */
 "	extrd,u		%0, 31, 32, %4\n"/* copy upper half down */
 "	depdi		0, 31, 32, %0\n"/* clear upper half */
-"	add		%4, %0, %0\n"	/* fold into 32-bits */
-"	addc		0, %0, %0\n"	/* add carry */
+"	add,dc		%4, %0, %0\n"	/* fold into 32-bits, plus carry */
+"	addc		0, %0, %0\n"	/* add final carry */
 
 #else
 
@@ -163,7 +164,8 @@ static __inline__ __sum16 csum_ipv6_magic(const struct in6_addr *saddr,
 "	ldw,ma		4(%2), %7\n"	/* 4th daddr */
 "	addc		%6, %0, %0\n"
 "	addc		%7, %0, %0\n"
-"	addc		%3, %0, %0\n"	/* fold in proto+len, catch carry */
+"	addc		%3, %0, %0\n"	/* fold in proto+len */
+"	addc		0, %0, %0\n"	/* add carry */
 
 #endif
 	: "=r" (sum), "=r" (saddr), "=r" (daddr), "=r" (len),
arch/powerpc/include/asm/reg_fsl_emb.h +9 -2
index a21f529c43d9..8359c06d92d9 100644
@@ -12,9 +12,16 @@
 #ifndef __ASSEMBLY__
 /* Performance Monitor Registers */
 #define mfpmr(rn)	({unsigned int rval; \
-			asm volatile("mfpmr %0," __stringify(rn) \
+			asm volatile(".machine push; " \
+				     ".machine e300; " \
+				     "mfpmr %0," __stringify(rn) ";" \
+				     ".machine pop; " \
 				     : "=r" (rval)); rval;})
-#define mtpmr(rn, v)	asm volatile("mtpmr " __stringify(rn) ",%0" : : "r" (v))
+#define mtpmr(rn, v)	asm volatile(".machine push; " \
+				     ".machine e300; " \
+				     "mtpmr " __stringify(rn) ",%0; " \
+				     ".machine pop; " \
+				     : : "r" (v))
 #endif /* __ASSEMBLY__ */
 
 /* Freescale Book E Performance Monitor APU Registers */
arch/powerpc/lib/Makefile +1 -1
index 6448de85f738..2a4f3d09a08e 100644
@@ -67,6 +67,6 @@ obj-$(CONFIG_PPC_LIB_RHEAP) += rheap.o
 obj-$(CONFIG_FTR_FIXUP_SELFTEST) += feature-fixups-test.o
 
 obj-$(CONFIG_ALTIVEC)	+= xor_vmx.o xor_vmx_glue.o
-CFLAGS_xor_vmx.o += -maltivec $(call cc-option,-mabi=altivec)
+CFLAGS_xor_vmx.o += -mhard-float -maltivec $(call cc-option,-mabi=altivec)
 
 obj-$(CONFIG_PPC64) += $(obj64-y)
arch/riscv/include/asm/uaccess.h +2 -2
index d4d628af21a4..0a38801c52aa 100644
@@ -467,7 +467,7 @@ unsigned long __must_check clear_user(void __user *to, unsigned long n)
 
 #define __get_kernel_nofault(dst, src, type, err_label)			\
 do {									\
-	long __kr_err;							\
+	long __kr_err = 0;						\
 									\
 	__get_user_nocheck(*((type *)(dst)), (type *)(src), __kr_err);	\
 	if (unlikely(__kr_err))						\
@@ -476,7 +476,7 @@ do {									\
 
 #define __put_kernel_nofault(dst, src, type, err_label)			\
 do {									\
-	long __kr_err;							\
+	long __kr_err = 0;						\
 									\
 	__put_user_nocheck(*((type *)(src)), (type *)(dst), __kr_err);	\
 	if (unlikely(__kr_err))						\
arch/riscv/kernel/process.c +0 -3
index bda3bc294718..1dea5b26f77e 100644
@@ -24,8 +24,6 @@
 #include <asm/switch_to.h>
 #include <asm/thread_info.h>
 
-register unsigned long gp_in_global __asm__("gp");
-
 #if defined(CONFIG_STACKPROTECTOR) && !defined(CONFIG_STACKPROTECTOR_PER_TASK)
 #include <linux/stackprotector.h>
 unsigned long __stack_chk_guard __read_mostly;
@@ -130,7 +128,6 @@ int copy_thread(unsigned long clone_flags, unsigned long usp, unsigned long arg,
 	if (unlikely(p->flags & (PF_KTHREAD | PF_IO_WORKER))) {
 		/* Kernel thread */
 		memset(childregs, 0, sizeof(struct pt_regs));
-		childregs->gp = gp_in_global;
 		/* Supervisor/Machine, irqs on: */
 		childregs->status = SR_PP | SR_PIE;
 
arch/s390/kernel/entry.S +1 -0
index d530eb4dc413..74ef903f94e7 100644
@@ -685,6 +685,7 @@ ENDPROC(stack_overflow)
 .Lthis_cpu:	.short	0
 .Lstosm_tmp:	.byte	0
 	.section .rodata, "a"
+	.balign	8
 #define SYSCALL(esame,emu)	.quad __s390x_ ## esame
 	.globl	sys_call_table
 sys_call_table:
arch/sparc/kernel/nmi.c +1 -1
index 060fff95a305..fbf25e926f67 100644
@@ -274,7 +274,7 @@ static int __init setup_nmi_watchdog(char *str)
 	if (!strncmp(str, "panic", 5))
 		panic_on_timeout = 1;
 
-	return 0;
+	return 1;
 }
 __setup("nmi_watchdog=", setup_nmi_watchdog);
 
arch/sparc/vdso/vma.c +3 -4
index cc19e09b0fa1..b073153c711a 100644
@@ -449,9 +449,8 @@ static __init int vdso_setup(char *s)
 	unsigned long val;
 
 	err = kstrtoul(s, 10, &val);
-	if (err)
-		return err;
-	vdso_enabled = val;
-	return 0;
+	if (!err)
+		vdso_enabled = val;
+	return 1;
 }
 __setup("vdso=", vdso_setup);
arch/x86/Kconfig +38 -0
index cfb1edd25437..591b0a7abfd2 100644
@@ -267,6 +267,8 @@ config X86
 	select HAVE_ARCH_KCSAN			if X86_64
 	select X86_FEATURE_NAMES		if PROC_FS
 	select PROC_PID_ARCH_STATUS		if PROC_FS
+	select FUNCTION_ALIGNMENT_16B		if X86_64 || X86_ALIGNMENT_16
+	select FUNCTION_ALIGNMENT_4B
 	imply IMA_SECURE_AND_OR_TRUSTED_BOOT    if EFI
 
 config INSTRUCTION_DECODER
@@ -2492,6 +2494,42 @@ config GDS_FORCE_MITIGATION
 
 	  If in doubt, say N.
 
+config MITIGATION_RFDS
+	bool "RFDS Mitigation"
+	depends on CPU_SUP_INTEL
+	default y
+	help
+	  Enable mitigation for Register File Data Sampling (RFDS) by default.
+	  RFDS is a hardware vulnerability which affects Intel Atom CPUs. It
+	  allows unprivileged speculative access to stale data previously
+	  stored in floating point, vector and integer registers.
+	  See also <file:Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst>
+
+choice
+	prompt "Clear branch history"
+	depends on CPU_SUP_INTEL
+	default SPECTRE_BHI_ON
+	help
+	  Enable BHI mitigations. BHI attacks are a form of Spectre V2 attacks
+	  where the branch history buffer is poisoned to speculatively steer
+	  indirect branches.
+	  See <file:Documentation/admin-guide/hw-vuln/spectre.rst>
+
+config SPECTRE_BHI_ON
+	bool "on"
+	help
+	  Equivalent to setting spectre_bhi=on command line parameter.
+config SPECTRE_BHI_OFF
+	bool "off"
+	help
+	  Equivalent to setting spectre_bhi=off command line parameter.
+config SPECTRE_BHI_AUTO
+	bool "auto"
+	help
+	  Equivalent to setting spectre_bhi=auto command line parameter.
+
+endchoice
+
 endif
 
 config ARCH_HAS_ADD_PAGES
arch/x86/boot/compressed/head_64.S +8 -0
index c3d427c817c7..e189a16ae40a 100644
@@ -37,6 +37,14 @@
 #include <asm/trapnr.h>
 #include "pgtable.h"
 
+/*
+ * Fix alignment at 16 bytes. Following CONFIG_FUNCTION_ALIGNMENT will result
+ * in assembly errors due to trying to move .org backward due to the excessive
+ * alignment.
+ */
+#undef __ALIGN
+#define __ALIGN		.balign	16, 0x90
+
 /*
  * Locally defined symbols should be marked hidden:
  */
arch/x86/entry/common.c +3 -3
index 6c2826417b33..e160f502d1dc 100644
@@ -47,7 +47,7 @@ static __always_inline bool do_syscall_x64(struct pt_regs *regs, int nr)
 
 	if (likely(unr < NR_syscalls)) {
 		unr = array_index_nospec(unr, NR_syscalls);
-		regs->ax = sys_call_table[unr](regs);
+		regs->ax = x64_sys_call(regs, unr);
 		return true;
 	}
 	return false;
@@ -64,7 +64,7 @@ static __always_inline bool do_syscall_x32(struct pt_regs *regs, int nr)
 
 	if (IS_ENABLED(CONFIG_X86_X32_ABI) && likely(xnr < X32_NR_syscalls)) {
 		xnr = array_index_nospec(xnr, X32_NR_syscalls);
-		regs->ax = x32_sys_call_table[xnr](regs);
+		regs->ax = x32_sys_call(regs, xnr);
 		return true;
 	}
 	return false;
@@ -109,7 +109,7 @@ static __always_inline void do_syscall_32_irqs_on(struct pt_regs *regs, int nr)
 
 	if (likely(unr < IA32_NR_syscalls)) {
 		unr = array_index_nospec(unr, IA32_NR_syscalls);
-		regs->ax = ia32_sys_call_table[unr](regs);
+		regs->ax = ia32_sys_call(regs, unr);
 	} else if (nr != -1) {
 		regs->ax = __ia32_sys_ni_syscall(regs);
 	}
arch/x86/entry/entry.S +23 -0
index bfb7bcb362bc..09e99d13fc0b 100644
@@ -6,6 +6,9 @@
 #include <linux/linkage.h>
 #include <asm/export.h>
 #include <asm/msr-index.h>
+#include <asm/unwind_hints.h>
+#include <asm/segment.h>
+#include <asm/cache.h>
 
 .pushsection .noinstr.text, "ax"
 
@@ -20,3 +23,23 @@ SYM_FUNC_END(entry_ibpb)
 EXPORT_SYMBOL_GPL(entry_ibpb);
 
 .popsection
+
+/*
+ * Define the VERW operand that is disguised as entry code so that
+ * it can be referenced with KPTI enabled. This ensure VERW can be
+ * used late in exit-to-user path after page tables are switched.
+ */
+.pushsection .entry.text, "ax"
+
+.align L1_CACHE_BYTES, 0xcc
+SYM_CODE_START_NOALIGN(mds_verw_sel)
+	UNWIND_HINT_EMPTY
+	ANNOTATE_NOENDBR
+	.word __KERNEL_DS
+.align L1_CACHE_BYTES, 0xcc
+SYM_CODE_END(mds_verw_sel);
+/* For KVM */
+EXPORT_SYMBOL_GPL(mds_verw_sel);
+
+.popsection
+
arch/x86/entry/entry_32.S +3 -0
index e309e7156038..ee5def1060c8 100644
@@ -912,6 +912,7 @@ SYM_FUNC_START(entry_SYSENTER_32)
 	BUG_IF_WRONG_CR3 no_user_check=1
 	popfl
 	popl	%eax
+	CLEAR_CPU_BUFFERS
 
 	/*
 	 * Return back to the vDSO, which will pop ecx and edx.
@@ -981,6 +982,7 @@ restore_all_switch_stack:
 
 	/* Restore user state */
 	RESTORE_REGS pop=4			# skip orig_eax/error_code
+	CLEAR_CPU_BUFFERS
 .Lirq_return:
 	/*
 	 * ARCH_HAS_MEMBARRIER_SYNC_CORE rely on IRET core serialization
@@ -1173,6 +1175,7 @@ SYM_CODE_START(asm_exc_nmi)
 
 	/* Not on SYSENTER stack. */
 	call	exc_nmi
+	CLEAR_CPU_BUFFERS
 	jmp	.Lnmi_return
 
 .Lnmi_from_sysenter_stack:
arch/x86/entry/entry_64.S +72 -0

111 lines not on this page · raw message

arch/x86/entry/entry_64_compat.S +4 -0
index 4d637a965efb..d03f0cfbcb1e 100644
@@ -116,6 +116,7 @@ SYM_INNER_LABEL(entry_SYSENTER_compat_after_hwframe, SYM_L_GLOBAL)
 
 	IBRS_ENTER
 	UNTRAIN_RET
+	CLEAR_BRANCH_HISTORY
 
 	/*
 	 * SYSENTER doesn't filter flags, so we need to clear NT and AC
@@ -259,6 +260,7 @@ SYM_INNER_LABEL(entry_SYSCALL_compat_after_hwframe, SYM_L_GLOBAL)
 
 	IBRS_ENTER
 	UNTRAIN_RET
+	CLEAR_BRANCH_HISTORY
 
 	movq	%rsp, %rdi
 	call	do_fast_syscall_32
@@ -319,6 +321,7 @@ sysret32_from_system_call:
 	xorl	%r9d, %r9d
 	xorl	%r10d, %r10d
 	swapgs
+	CLEAR_CPU_BUFFERS
 	sysretl
 SYM_CODE_END(entry_SYSCALL_compat)
 
@@ -421,6 +424,7 @@ SYM_CODE_START(entry_INT80_compat)
 
 	IBRS_ENTER
 	UNTRAIN_RET
+	CLEAR_BRANCH_HISTORY
 
 	movq	%rsp, %rdi
 	call	do_int80_syscall_32
arch/x86/entry/syscall_32.c +19 -2
index 8cfc9bc73e7f..c2235bae17ef 100644
@@ -18,8 +18,25 @@
 #include <asm/syscalls_32.h>
 #undef __SYSCALL
 
+/*
+ * The sys_call_table[] is no longer used for system calls, but
+ * kernel/trace/trace_syscalls.c still wants to know the system
+ * call address.
+ */
+#ifdef CONFIG_X86_32
 #define __SYSCALL(nr, sym) __ia32_##sym,
-
-__visible const sys_call_ptr_t ia32_sys_call_table[] = {
+const sys_call_ptr_t sys_call_table[] = {
 #include <asm/syscalls_32.h>
 };
+#undef __SYSCALL
+#endif
+
+#define __SYSCALL(nr, sym) case nr: return __ia32_##sym(regs);
+
+long ia32_sys_call(const struct pt_regs *regs, unsigned int nr)
+{
+	switch (nr) {
+	#include <asm/syscalls_32.h>
+	default: return __ia32_sys_ni_syscall(regs);
+	}
+};
arch/x86/entry/syscall_64.c +17 -2
index be120eec1fc9..33b3f09e6f15 100644
@@ -11,8 +11,23 @@
 #include <asm/syscalls_64.h>
 #undef __SYSCALL
 
+/*
+ * The sys_call_table[] is no longer used for system calls, but
+ * kernel/trace/trace_syscalls.c still wants to know the system
+ * call address.
+ */
 #define __SYSCALL(nr, sym) __x64_##sym,
-
-asmlinkage const sys_call_ptr_t sys_call_table[] = {
+const sys_call_ptr_t sys_call_table[] = {
 #include <asm/syscalls_64.h>
 };
+#undef __SYSCALL
+
+#define __SYSCALL(nr, sym) case nr: return __x64_##sym(regs);
+
+long x64_sys_call(const struct pt_regs *regs, unsigned int nr)
+{
+	switch (nr) {
+	#include <asm/syscalls_64.h>
+	default: return __x64_sys_ni_syscall(regs);
+	}
+};
arch/x86/entry/syscall_x32.c +7 -3
index bdd0e03a1265..03de4a932131 100644
@@ -11,8 +11,12 @@
 #include <asm/syscalls_x32.h>
 #undef __SYSCALL
 
-#define __SYSCALL(nr, sym) __x64_##sym,
+#define __SYSCALL(nr, sym) case nr: return __x64_##sym(regs);
 
-asmlinkage const sys_call_ptr_t x32_sys_call_table[] = {
-#include <asm/syscalls_x32.h>
+long x32_sys_call(const struct pt_regs *regs, unsigned int nr)
+{
+	switch (nr) {
+	#include <asm/syscalls_x32.h>
+	default: return __x64_sys_ni_syscall(regs);
+	}
 };
arch/x86/include/asm/asm-prototypes.h +1 -0
index 8f80de627c60..5cdccea45554 100644
@@ -12,6 +12,7 @@
 #include <asm/special_insns.h>
 #include <asm/preempt.h>
 #include <asm/asm.h>
+#include <asm/nospec-branch.h>
 
 #ifndef CONFIG_X86_CMPXCHG64
 extern void cmpxchg8b_emu(void);
arch/x86/include/asm/asm.h +5 -0
index 6dd47c9ec788..fbcfec4dc4cc 100644
@@ -6,11 +6,13 @@
 # define __ASM_FORM(x, ...)		x,## __VA_ARGS__
 # define __ASM_FORM_RAW(x, ...)		x,## __VA_ARGS__
 # define __ASM_FORM_COMMA(x, ...)	x,## __VA_ARGS__,
+# define __ASM_REGPFX			%
 #else
 #include <linux/stringify.h>
 # define __ASM_FORM(x, ...)		" " __stringify(x,##__VA_ARGS__) " "
 # define __ASM_FORM_RAW(x, ...)		    __stringify(x,##__VA_ARGS__)
 # define __ASM_FORM_COMMA(x, ...)	" " __stringify(x,##__VA_ARGS__) ","
+# define __ASM_REGPFX			%%
 #endif
 
 #define _ASM_BYTES(x, ...)	__ASM_FORM(.byte x,##__VA_ARGS__ ;)
@@ -49,6 +51,9 @@
 #define _ASM_SI		__ASM_REG(si)
 #define _ASM_DI		__ASM_REG(di)
 
+/* Adds a (%rip) suffix on 64 bits only; for immediate memory references */
+#define _ASM_RIP(x)	__ASM_SEL_RAW(x, x (__ASM_REGPFX rip))
+
 #ifndef __x86_64__
 /* 32 bit */
 
arch/x86/include/asm/cpufeature.h +6 -2
index cc3f62f5d551..955ca6b13e35 100644
@@ -33,6 +33,8 @@ enum cpuid_leafs
 	CPUID_7_EDX,
 	CPUID_8000_001F_EAX,
 	CPUID_8000_0021_EAX,
+	CPUID_LNX_5,
+	NR_CPUID_WORDS,
 };
 
 #ifdef CONFIG_X86_FEATURE_NAMES
@@ -93,8 +95,9 @@ extern const char * const x86_bug_flags[NBUGINTS*32];
 	   CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 18, feature_bit) ||	\
 	   CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 19, feature_bit) ||	\
 	   CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 20, feature_bit) ||	\
+	   CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 21, feature_bit) ||	\
 	   REQUIRED_MASK_CHECK					  ||	\
-	   BUILD_BUG_ON_ZERO(NCAPINTS != 21))
+	   BUILD_BUG_ON_ZERO(NCAPINTS != 22))
 
 #define DISABLED_MASK_BIT_SET(feature_bit)				\
 	 ( CHECK_BIT_IN_MASK_WORD(DISABLED_MASK,  0, feature_bit) ||	\
@@ -118,8 +121,9 @@ extern const char * const x86_bug_flags[NBUGINTS*32];
 	   CHECK_BIT_IN_MASK_WORD(DISABLED_MASK, 18, feature_bit) ||	\
 	   CHECK_BIT_IN_MASK_WORD(DISABLED_MASK, 19, feature_bit) ||	\
 	   CHECK_BIT_IN_MASK_WORD(DISABLED_MASK, 20, feature_bit) ||	\
+	   CHECK_BIT_IN_MASK_WORD(DISABLED_MASK, 21, feature_bit) ||	\
 	   DISABLED_MASK_CHECK					  ||	\
-	   BUILD_BUG_ON_ZERO(NCAPINTS != 21))
+	   BUILD_BUG_ON_ZERO(NCAPINTS != 22))
 
 #define cpu_has(c, bit)							\
 	(__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 :	\
arch/x86/include/asm/cpufeatures.h +16 -2
index d6089072ee41..18817817ea81 100644
@@ -13,7 +13,7 @@
 /*
  * Defines x86 CPU feature bits
  */
-#define NCAPINTS			21	   /* N 32-bit words worth of info */
+#define NCAPINTS			22	   /* N 32-bit words worth of info */
 #define NBUGINTS			2	   /* N 32-bit bug flags */
 
 /*
@@ -302,7 +302,7 @@
 #define X86_FEATURE_UNRET		(11*32+15) /* "" AMD BTB untrain return */
 #define X86_FEATURE_USE_IBPB_FW		(11*32+16) /* "" Use IBPB during runtime firmware calls */
 #define X86_FEATURE_RSB_VMEXIT_LITE	(11*32+17) /* "" Fill RSB on VM exit when EIBRS is enabled */
-
+#define X86_FEATURE_CLEAR_CPU_BUF	(11*32+18) /* "" Clear CPU buffers using VERW */
 
 #define X86_FEATURE_MSR_TSX_CTRL	(11*32+20) /* "" MSR IA32_TSX_CTRL (Intel) implemented */
 
@@ -416,10 +416,22 @@
 #define X86_FEATURE_SEV_ES		(19*32+ 3) /* AMD Secure Encrypted Virtualization - Encrypted State */
 #define X86_FEATURE_SME_COHERENT	(19*32+10) /* "" AMD hardware-enforced cache coherency */
 
+#define X86_FEATURE_AUTOIBRS		(20*32+ 8) /* "" Automatic IBRS */
 #define X86_FEATURE_SBPB		(20*32+27) /* "" Selective Branch Prediction Barrier */
 #define X86_FEATURE_IBPB_BRTYPE		(20*32+28) /* "" MSR_PRED_CMD[IBPB] flushes all branch type predictions */
 #define X86_FEATURE_SRSO_NO		(20*32+29) /* "" CPU is not affected by SRSO */
 
+/*
+ * Extended auxiliary flags: Linux defined - for features scattered in various
+ * CPUID levels like 0x80000022, etc and Linux defined features.
+ *
+ * Reuse free bits when adding new feature flags!
+ */
+#define X86_FEATURE_CLEAR_BHB_LOOP	(21*32+ 1) /* "" Clear branch history at syscall entry using SW loop */
+#define X86_FEATURE_BHI_CTRL		(21*32+ 2) /* "" BHI_DIS_S HW control available */
+#define X86_FEATURE_CLEAR_BHB_HW	(21*32+ 3) /* "" BHI_DIS_S HW control enabled */
+#define X86_FEATURE_CLEAR_BHB_LOOP_ON_VMEXIT (21*32+ 4) /* "" Clear branch history at vmexit using SW loop */
+
 /*
  * BUG word(s)
  */
@@ -466,4 +478,6 @@
 /* BUG word 2 */
 #define X86_BUG_SRSO			X86_BUG(1*32 + 0) /* AMD SRSO bug */
 #define X86_BUG_DIV0			X86_BUG(1*32 + 1) /* AMD DIV0 speculation bug */
+#define X86_BUG_RFDS			X86_BUG(1*32 + 2) /* CPU is vulnerable to Register File Data Sampling */
+#define X86_BUG_BHI			X86_BUG(1*32 + 3) /* CPU is affected by Branch History Injection */
 #endif /* _ASM_X86_CPUFEATURES_H */
arch/x86/include/asm/disabled-features.h +2 -1
index 99a12012c66e..b05d815ceaaa 100644
@@ -109,6 +109,7 @@
 #define DISABLED_MASK18	0
 #define DISABLED_MASK19	0
 #define DISABLED_MASK20	0
-#define DISABLED_MASK_CHECK BUILD_BUG_ON_ZERO(NCAPINTS != 21)
+#define DISABLED_MASK21	0
+#define DISABLED_MASK_CHECK BUILD_BUG_ON_ZERO(NCAPINTS != 22)
 
 #endif /* _ASM_X86_DISABLED_FEATURES_H */
arch/x86/include/asm/entry-common.h +0 -1
index a12fdf01dc26..f27d6cecd803 100644
@@ -91,7 +91,6 @@ static inline void arch_exit_to_user_mode_prepare(struct pt_regs *regs,
 
 static __always_inline void arch_exit_to_user_mode(void)
 {
-	mds_user_clear_cpu_buffers();
 	amd_clear_divider();
 }
 #define arch_exit_to_user_mode arch_exit_to_user_mode
arch/x86/include/asm/linkage.h +7 -5
index 5000cf59bdf5..04a333c334ae 100644
@@ -11,12 +11,14 @@
 #define asmlinkage CPP_ASMLINKAGE __attribute__((regparm(0)))
 #endif /* CONFIG_X86_32 */
 
-#ifdef __ASSEMBLY__
-
-#if defined(CONFIG_X86_64) || defined(CONFIG_X86_ALIGNMENT_16)
-#define __ALIGN		.p2align 4, 0x90
+#define __ALIGN		.balign CONFIG_FUNCTION_ALIGNMENT, 0x90;
 #define __ALIGN_STR	__stringify(__ALIGN)
-#endif
+
+#define ASM_FUNC_ALIGN		__ALIGN_STR
+#define __FUNC_ALIGN		__ALIGN
+#define SYM_F_ALIGN		__FUNC_ALIGN
+
+#ifdef __ASSEMBLY__
 
 #if defined(CONFIG_RETHUNK) && !defined(__DISABLE_EXPORTS) && !defined(BUILD_VDSO)
 #define RET	jmp __x86_return_thunk
arch/x86/include/asm/msr-index.h +18 -1
index 5672ccb80eb1..15939a71dca7 100644
@@ -30,6 +30,7 @@
 #define _EFER_SVME		12 /* Enable virtualization */
 #define _EFER_LMSLE		13 /* Long Mode Segment Limit Enable */
 #define _EFER_FFXSR		14 /* Enable Fast FXSAVE/FXRSTOR */
+#define _EFER_AUTOIBRS		21 /* Enable Automatic IBRS */
 
 #define EFER_SCE		(1<<_EFER_SCE)
 #define EFER_LME		(1<<_EFER_LME)
@@ -38,6 +39,7 @@
 #define EFER_SVME		(1<<_EFER_SVME)
 #define EFER_LMSLE		(1<<_EFER_LMSLE)
 #define EFER_FFXSR		(1<<_EFER_FFXSR)
+#define EFER_AUTOIBRS		(1<<_EFER_AUTOIBRS)
 
 /* Intel MSRs. Some also available on other CPUs */
 
@@ -53,10 +55,13 @@
 #define SPEC_CTRL_SSBD			BIT(SPEC_CTRL_SSBD_SHIFT)	/* Speculative Store Bypass Disable */
 #define SPEC_CTRL_RRSBA_DIS_S_SHIFT	6	   /* Disable RRSBA behavior */
 #define SPEC_CTRL_RRSBA_DIS_S		BIT(SPEC_CTRL_RRSBA_DIS_S_SHIFT)
+#define SPEC_CTRL_BHI_DIS_S_SHIFT	10	   /* Disable Branch History Injection behavior */
+#define SPEC_CTRL_BHI_DIS_S		BIT(SPEC_CTRL_BHI_DIS_S_SHIFT)
 
 /* A mask for bits which the kernel toggles when controlling mitigations */
 #define SPEC_CTRL_MITIGATIONS_MASK	(SPEC_CTRL_IBRS | SPEC_CTRL_STIBP | SPEC_CTRL_SSBD \
-							| SPEC_CTRL_RRSBA_DIS_S)
+							| SPEC_CTRL_RRSBA_DIS_S \
+							| SPEC_CTRL_BHI_DIS_S)
 
 #define MSR_IA32_PRED_CMD		0x00000049 /* Prediction Command */
 #define PRED_CMD_IBPB			BIT(0)	   /* Indirect Branch Prediction Barrier */
@@ -153,6 +158,10 @@
 						 * are restricted to targets in
 						 * kernel.
 						 */
+#define ARCH_CAP_BHI_NO			BIT(20)	/*
+						 * CPU is not affected by Branch
+						 * History Injection.
+						 */
 #define ARCH_CAP_PBRSB_NO		BIT(24)	/*
 						 * Not susceptible to Post-Barrier
 						 * Return Stack Buffer Predictions.
@@ -166,6 +175,14 @@
 						 * CPU is not vulnerable to Gather
 						 * Data Sampling (GDS).
 						 */
+#define ARCH_CAP_RFDS_NO		BIT(27)	/*
+						 * Not susceptible to Register
+						 * File Data Sampling.
+						 */
+#define ARCH_CAP_RFDS_CLEAR		BIT(28)	/*
+						 * VERW clears CPU Register
+						 * File.
+						 */
 
 #define MSR_IA32_FLUSH_CMD		0x0000010b
 #define L1D_FLUSH			BIT(0)	/*
arch/x86/include/asm/nospec-branch.h +46 -18

105 lines not on this page · raw message

arch/x86/include/asm/required-features.h +2 -1
index 9bf60a8b9e9c..1fbe53583e95 100644
@@ -103,6 +103,7 @@
 #define REQUIRED_MASK18	0
 #define REQUIRED_MASK19	0
 #define REQUIRED_MASK20	0
-#define REQUIRED_MASK_CHECK BUILD_BUG_ON_ZERO(NCAPINTS != 21)
+#define REQUIRED_MASK21	0
+#define REQUIRED_MASK_CHECK BUILD_BUG_ON_ZERO(NCAPINTS != 22)
 
 #endif /* _ASM_X86_REQUIRED_FEATURES_H */
arch/x86/include/asm/suspend_32.h +5 -5
index a800abb1a992..d8416b3bf832 100644
@@ -12,11 +12,6 @@
 
 /* image of the saved processor state */
 struct saved_context {
-	/*
-	 * On x86_32, all segment registers except gs are saved at kernel
-	 * entry in pt_regs.
-	 */
-	u16 gs;
 	unsigned long cr0, cr2, cr3, cr4;
 	u64 misc_enable;
 	struct saved_msrs saved_msrs;
@@ -27,6 +22,11 @@ struct saved_context {
 	unsigned long tr;
 	unsigned long safety;
 	unsigned long return_address;
+	/*
+	 * On x86_32, all segment registers except gs are saved at kernel
+	 * entry in pt_regs.
+	 */
+	u16 gs;
 	bool misc_enable_saved;
 } __attribute__((packed));
 
arch/x86/include/asm/syscall.h +4 -6
index f7e2d82d24fb..825528bf0daf 100644
@@ -16,19 +16,17 @@
 #include <asm/thread_info.h>	/* for TS_COMPAT */
 #include <asm/unistd.h>
 
+/* This is used purely for kernel/trace/trace_syscalls.c */
 typedef long (*sys_call_ptr_t)(const struct pt_regs *);
 extern const sys_call_ptr_t sys_call_table[];
 
-#if defined(CONFIG_X86_32)
-#define ia32_sys_call_table sys_call_table
-#else
 /*
  * These may not exist, but still put the prototypes in so we
  * can use IS_ENABLED().
  */
-extern const sys_call_ptr_t ia32_sys_call_table[];
-extern const sys_call_ptr_t x32_sys_call_table[];
-#endif
+extern long ia32_sys_call(const struct pt_regs *, unsigned int nr);
+extern long x32_sys_call(const struct pt_regs *, unsigned int nr);
+extern long x64_sys_call(const struct pt_regs *, unsigned int nr);
 
 /*
  * Only the low 32 bits of orig_ax are meaningful, so we return int.
arch/x86/include/asm/text-patching.h +31 -0
index c6015b407461..7281ce64e99d 100644
@@ -181,6 +181,37 @@ void int3_emulate_ret(struct pt_regs *regs)
 	unsigned long ip = int3_emulate_pop(regs);
 	int3_emulate_jmp(regs, ip);
 }
+
+static __always_inline
+void int3_emulate_jcc(struct pt_regs *regs, u8 cc, unsigned long ip, unsigned long disp)
+{
+	static const unsigned long jcc_mask[6] = {
+		[0] = X86_EFLAGS_OF,
+		[1] = X86_EFLAGS_CF,
+		[2] = X86_EFLAGS_ZF,
+		[3] = X86_EFLAGS_CF | X86_EFLAGS_ZF,
+		[4] = X86_EFLAGS_SF,
+		[5] = X86_EFLAGS_PF,
+	};
+
+	bool invert = cc & 1;
+	bool match;
+
+	if (cc < 0xc) {
+		match = regs->flags & jcc_mask[cc >> 1];
+	} else {
+		match = ((regs->flags & X86_EFLAGS_SF) >> X86_EFLAGS_SF_BIT) ^
+			((regs->flags & X86_EFLAGS_OF) >> X86_EFLAGS_OF_BIT);
+		if (cc >= 0xe)
+			match = match || (regs->flags & X86_EFLAGS_ZF);
+	}
+
+	if ((match && !invert) || (!match && invert))
+		ip += disp;
+
+	int3_emulate_jmp(regs, ip);
+}
+
 #endif /* !CONFIG_UML_X86 */
 
 #endif /* _ASM_X86_TEXT_PATCHING_H */
arch/x86/kernel/alternative.c +47 -9

127 lines not on this page · raw message

arch/x86/kernel/cpu/amd.c +5 -5
index dba7fe7ecea9..9fb890574f36 100644
@@ -1021,11 +1021,11 @@ static bool cpu_has_zenbleed_microcode(void)
 	u32 good_rev = 0;
 
 	switch (boot_cpu_data.x86_model) {
-	case 0x30 ... 0x3f: good_rev = 0x0830107a; break;
-	case 0x60 ... 0x67: good_rev = 0x0860010b; break;
-	case 0x68 ... 0x6f: good_rev = 0x08608105; break;
-	case 0x70 ... 0x7f: good_rev = 0x08701032; break;
-	case 0xa0 ... 0xaf: good_rev = 0x08a00008; break;
+	case 0x30 ... 0x3f: good_rev = 0x0830107b; break;
+	case 0x60 ... 0x67: good_rev = 0x0860010c; break;
+	case 0x68 ... 0x6f: good_rev = 0x08608107; break;
+	case 0x70 ... 0x7f: good_rev = 0x08701033; break;
+	case 0xa0 ... 0xaf: good_rev = 0x08a00009; break;
 
 	default:
 		return false;
arch/x86/kernel/cpu/bugs.c +270 -90

614 lines not on this page · raw message

arch/x86/kernel/cpu/common.c +60 -17

130 lines not on this page · raw message

arch/x86/kernel/cpu/mce/core.c +3 -1
index eb48729e220e..30d822c2e5c0 100644
@@ -2382,12 +2382,14 @@ static ssize_t set_bank(struct device *s, struct device_attribute *attr,
 		return -EINVAL;
 
 	b = &per_cpu(mce_banks_array, s->id)[bank];
-
 	if (!b->init)
 		return -ENODEV;
 
 	b->ctl = new;
+
+	mutex_lock(&mce_sysfs_mutex);
 	mce_restart();
+	mutex_unlock(&mce_sysfs_mutex);
 
 	return size;
 }
arch/x86/kernel/cpu/scattered.c +1 -0
index 06bfef1c4175..0f5211087810 100644
@@ -27,6 +27,7 @@ static const struct cpuid_bit cpuid_bits[] = {
 	{ X86_FEATURE_APERFMPERF,       CPUID_ECX,  0, 0x00000006, 0 },
 	{ X86_FEATURE_EPB,		CPUID_ECX,  3, 0x00000006, 0 },
 	{ X86_FEATURE_RRSBA_CTRL,	CPUID_EDX,  2, 0x00000007, 2 },
+	{ X86_FEATURE_BHI_CTRL,		CPUID_EDX,  4, 0x00000007, 2 },
 	{ X86_FEATURE_CQM_LLC,		CPUID_EDX,  1, 0x0000000f, 0 },
 	{ X86_FEATURE_CQM_OCCUP_LLC,	CPUID_EDX,  0, 0x0000000f, 1 },
 	{ X86_FEATURE_CQM_MBM_TOTAL,	CPUID_EDX,  1, 0x0000000f, 1 },
arch/x86/kernel/kprobes/core.c +8 -30
index 052ea7425c4d..893f040b97b7 100644
@@ -463,50 +463,26 @@ static void kprobe_emulate_call(struct kprobe *p, struct pt_regs *regs)
 }
 NOKPROBE_SYMBOL(kprobe_emulate_call);
 
-static nokprobe_inline
-void __kprobe_emulate_jmp(struct kprobe *p, struct pt_regs *regs, bool cond)
+static void kprobe_emulate_jmp(struct kprobe *p, struct pt_regs *regs)
 {
 	unsigned long ip = regs->ip - INT3_INSN_SIZE + p->ainsn.size;
 
-	if (cond)
-		ip += p->ainsn.rel32;
+	ip += p->ainsn.rel32;
 	int3_emulate_jmp(regs, ip);
 }
-
-static void kprobe_emulate_jmp(struct kprobe *p, struct pt_regs *regs)
-{
-	__kprobe_emulate_jmp(p, regs, true);
-}
 NOKPROBE_SYMBOL(kprobe_emulate_jmp);
 
-static const unsigned long jcc_mask[6] = {
-	[0] = X86_EFLAGS_OF,
-	[1] = X86_EFLAGS_CF,
-	[2] = X86_EFLAGS_ZF,
-	[3] = X86_EFLAGS_CF | X86_EFLAGS_ZF,
-	[4] = X86_EFLAGS_SF,
-	[5] = X86_EFLAGS_PF,
-};
-
 static void kprobe_emulate_jcc(struct kprobe *p, struct pt_regs *regs)
 {
-	bool invert = p->ainsn.jcc.type & 1;
-	bool match;
+	unsigned long ip = regs->ip - INT3_INSN_SIZE + p->ainsn.size;
 
-	if (p->ainsn.jcc.type < 0xc) {
-		match = regs->flags & jcc_mask[p->ainsn.jcc.type >> 1];
-	} else {
-		match = ((regs->flags & X86_EFLAGS_SF) >> X86_EFLAGS_SF_BIT) ^
-			((regs->flags & X86_EFLAGS_OF) >> X86_EFLAGS_OF_BIT);
-		if (p->ainsn.jcc.type >= 0xe)
-			match = match || (regs->flags & X86_EFLAGS_ZF);
-	}
-	__kprobe_emulate_jmp(p, regs, (match && !invert) || (!match && invert));
+	int3_emulate_jcc(regs, p->ainsn.jcc.type, ip, p->ainsn.rel32);
 }
 NOKPROBE_SYMBOL(kprobe_emulate_jcc);
 
 static void kprobe_emulate_loop(struct kprobe *p, struct pt_regs *regs)
 {
+	unsigned long ip = regs->ip - INT3_INSN_SIZE + p->ainsn.size;
 	bool match;
 
 	if (p->ainsn.loop.type != 3) {	/* LOOP* */
@@ -534,7 +510,9 @@ static void kprobe_emulate_loop(struct kprobe *p, struct pt_regs *regs)
 	else if (p->ainsn.loop.type == 1)	/* LOOPE */
 		match = match && (regs->flags & X86_EFLAGS_ZF);
 
-	__kprobe_emulate_jmp(p, regs, match);
+	if (match)
+		ip += p->ainsn.rel32;
+	int3_emulate_jmp(regs, ip);
 }
 NOKPROBE_SYMBOL(kprobe_emulate_loop);
 
arch/x86/kernel/nmi.c +0 -3
index 4bce802d25fb..b892fe7035db 100644
@@ -519,9 +519,6 @@ DEFINE_IDTENTRY_RAW(exc_nmi)
 		write_cr2(this_cpu_read(nmi_cr2));
 	if (this_cpu_dec_return(nmi_state))
 		goto nmi_restart;
-
-	if (user_mode(regs))
-		mds_user_clear_cpu_buffers();
 }
 
 #if defined(CONFIG_X86_64) && IS_ENABLED(CONFIG_KVM_INTEL)
arch/x86/kernel/static_call.c +47 -3

84 lines not on this page · raw message

arch/x86/kvm/cpuid.c +22 -7
index b939b94d931f..537e826205ce 100644
@@ -355,9 +355,9 @@ static __always_inline void __kvm_cpu_cap_mask(unsigned int leaf)
 }
 
 static __always_inline
-void kvm_cpu_cap_init_scattered(enum kvm_only_cpuid_leafs leaf, u32 mask)
+void kvm_cpu_cap_init_kvm_defined(enum kvm_only_cpuid_leafs leaf, u32 mask)
 {
-	/* Use kvm_cpu_cap_mask for non-scattered leafs. */
+	/* Use kvm_cpu_cap_mask for leafs that aren't KVM-only. */
 	BUILD_BUG_ON(leaf < NCAPINTS);
 
 	kvm_cpu_caps[leaf] = mask;
@@ -367,7 +367,7 @@ void kvm_cpu_cap_init_scattered(enum kvm_only_cpuid_leafs leaf, u32 mask)
 
 static __always_inline void kvm_cpu_cap_mask(enum cpuid_leafs leaf, u32 mask)
 {
-	/* Use kvm_cpu_cap_init_scattered for scattered leafs. */
+	/* Use kvm_cpu_cap_init_kvm_defined for KVM-only leafs. */
 	BUILD_BUG_ON(leaf >= NCAPINTS);
 
 	kvm_cpu_caps[leaf] &= mask;
@@ -469,11 +469,16 @@ void kvm_set_cpu_caps(void)
 		F(AVX_VNNI) | F(AVX512_BF16)
 	);
 
+	kvm_cpu_cap_init_kvm_defined(CPUID_7_2_EDX,
+		F(INTEL_PSFD) | F(IPRED_CTRL) | F(RRSBA_CTRL) | F(DDPD_U) |
+		F(BHI_CTRL) | F(MCDT_NO)
+	);
+
 	kvm_cpu_cap_mask(CPUID_D_1_EAX,
 		F(XSAVEOPT) | F(XSAVEC) | F(XGETBV1) | F(XSAVES)
 	);
 
-	kvm_cpu_cap_init_scattered(CPUID_12_EAX,
+	kvm_cpu_cap_init_kvm_defined(CPUID_12_EAX,
 		SF(SGX1) | SF(SGX2)
 	);
 
@@ -710,13 +715,13 @@ static inline int __do_cpuid_func(struct kvm_cpuid_array *array, u32 function)
 		break;
 	/* function 7 has additional index. */
 	case 7:
-		entry->eax = min(entry->eax, 1u);
+		max_idx = entry->eax = min(entry->eax, 2u);
 		cpuid_entry_override(entry, CPUID_7_0_EBX);
 		cpuid_entry_override(entry, CPUID_7_ECX);
 		cpuid_entry_override(entry, CPUID_7_EDX);
 
-		/* KVM only supports 0x7.0 and 0x7.1, capped above via min(). */
-		if (entry->eax == 1) {
+		/* KVM only supports up to 0x7.2, capped above via min(). */
+		if (max_idx >= 1) {
 			entry = do_host_cpuid(array, function, 1);
 			if (!entry)
 				goto out;
@@ -726,6 +731,16 @@ static inline int __do_cpuid_func(struct kvm_cpuid_array *array, u32 function)
 			entry->ecx = 0;
 			entry->edx = 0;
 		}
+		if (max_idx >= 2) {
+			entry = do_host_cpuid(array, function, 2);
+			if (!entry)
+				goto out;
+
+			cpuid_entry_override(entry, CPUID_7_2_EDX);
+			entry->ecx = 0;
+			entry->ebx = 0;
+			entry->eax = 0;
+		}
 		break;
 	case 0xa: { /* Architectural Performance Monitoring */
 		struct x86_pmu_capability cap;
arch/x86/kvm/reverse_cpuid.h +38 -9

89 lines not on this page · raw message

arch/x86/kvm/svm/sev.c +9 -7
index 93d73b55ae3e..0f3d29f83c58 100644
@@ -1662,20 +1662,22 @@ int svm_register_enc_region(struct kvm *kvm,
 		goto e_free;
 	}
 
-	region->uaddr = range->addr;
-	region->size = range->size;
-
-	list_add_tail(&region->list, &sev->regions_list);
-	mutex_unlock(&kvm->lock);
-
 	/*
 	 * The guest may change the memory encryption attribute from C=0 -> C=1
 	 * or vice versa for this memory range. Lets make sure caches are
 	 * flushed to ensure that guest data gets written into memory with
-	 * correct C-bit.
+	 * correct C-bit.  Note, this must be done before dropping kvm->lock,
+	 * as region and its array of pages can be freed by a different task
+	 * once kvm->lock is released.
 	 */
 	sev_clflush_pages(region->pages, region->npages);
 
+	region->uaddr = range->addr;
+	region->size = range->size;
+
+	list_add_tail(&region->list, &sev->regions_list);
+	mutex_unlock(&kvm->lock);
+
 	return ret;
 
 e_free:
arch/x86/kvm/vmx/run_flags.h +5 -2
index edc3f16cc189..6a9bfdfbb6e5 100644
@@ -2,7 +2,10 @@
 #ifndef __KVM_X86_VMX_RUN_FLAGS_H
 #define __KVM_X86_VMX_RUN_FLAGS_H
 
-#define VMX_RUN_VMRESUME	(1 << 0)
-#define VMX_RUN_SAVE_SPEC_CTRL	(1 << 1)
+#define VMX_RUN_VMRESUME_SHIFT		0
+#define VMX_RUN_SAVE_SPEC_CTRL_SHIFT	1
+
+#define VMX_RUN_VMRESUME		BIT(VMX_RUN_VMRESUME_SHIFT)
+#define VMX_RUN_SAVE_SPEC_CTRL		BIT(VMX_RUN_SAVE_SPEC_CTRL_SHIFT)
 
 #endif /* __KVM_X86_VMX_RUN_FLAGS_H */
arch/x86/kvm/vmx/vmenter.S +8 -3
index 982138bebb70..ef61bd6d071f 100644
@@ -77,7 +77,7 @@ SYM_FUNC_START(__vmx_vcpu_run)
 	mov (%_ASM_SP), %_ASM_AX
 
 	/* Check if vmlaunch or vmresume is needed */
-	testb $VMX_RUN_VMRESUME, %bl
+	bt   $VMX_RUN_VMRESUME_SHIFT, %bx
 
 	/* Load guest registers.  Don't clobber flags. */
 	mov VCPU_RCX(%_ASM_AX), %_ASM_CX
@@ -99,8 +99,11 @@ SYM_FUNC_START(__vmx_vcpu_run)
 	/* Load guest RAX.  This kills the @regs pointer! */
 	mov VCPU_RAX(%_ASM_AX), %_ASM_AX
 
-	/* Check EFLAGS.ZF from 'testb' above */
-	jz .Lvmlaunch
+	/* Clobbers EFLAGS.ZF */
+	CLEAR_CPU_BUFFERS
+
+	/* Check EFLAGS.CF from the VMX_RUN_VMRESUME bit test above. */
+	jnc .Lvmlaunch
 
 	/*
 	 * After a successful VMRESUME/VMLAUNCH, control flow "magically"
@@ -210,6 +213,8 @@ SYM_INNER_LABEL(vmx_vmexit, SYM_L_GLOBAL)
 
 	call vmx_spec_ctrl_restore_host
 
+	CLEAR_BRANCH_HISTORY_VMEXIT
+
 	/* Put return value in AX */
 	mov %_ASM_BX, %_ASM_AX
 
arch/x86/kvm/vmx/vmx.c +8 -4
index 89744ee06101..bedbd077e50e 100644
@@ -398,7 +398,8 @@ static __always_inline void vmx_enable_fb_clear(struct vcpu_vmx *vmx)
 
 static void vmx_update_fb_clear_dis(struct kvm_vcpu *vcpu, struct vcpu_vmx *vmx)
 {
-	vmx->disable_fb_clear = vmx_fb_clear_ctrl_available;
+	vmx->disable_fb_clear = !cpu_feature_enabled(X86_FEATURE_CLEAR_CPU_BUF) &&
+		vmx_fb_clear_ctrl_available;
 
 	/*
 	 * If guest will not execute VERW, there is no need to set FB_CLEAR_DIS
@@ -6747,11 +6748,14 @@ static noinstr void vmx_vcpu_enter_exit(struct kvm_vcpu *vcpu,
 {
 	kvm_guest_enter_irqoff();
 
-	/* L1D Flush includes CPU buffer clear to mitigate MDS */
+	/*
+	 * L1D Flush includes CPU buffer clear to mitigate MDS, but VERW
+	 * mitigation for MDS is done late in VMentry and is still
+	 * executed in spite of L1D Flush. This is because an extra VERW
+	 * should not matter much after the big hammer L1D Flush.
+	 */
 	if (static_branch_unlikely(&vmx_l1d_should_flush))
 		vmx_l1d_flush(vcpu);
-	else if (static_branch_unlikely(&mds_user_clear))
-		mds_clear_cpu_buffers();
 	else if (static_branch_unlikely(&mmio_stale_data_clear) &&
 		 kvm_arch_has_assigned_device(vcpu->kvm))
 		mds_clear_cpu_buffers();
arch/x86/kvm/x86.c +15 -2
index aa6f700f8c5f..57a1484e257f 100644
@@ -1498,7 +1498,8 @@ static unsigned int num_msr_based_features;
 	 ARCH_CAP_SKIP_VMENTRY_L1DFLUSH | ARCH_CAP_SSB_NO | ARCH_CAP_MDS_NO | \
 	 ARCH_CAP_PSCHANGE_MC_NO | ARCH_CAP_TSX_CTRL_MSR | ARCH_CAP_TAA_NO | \
 	 ARCH_CAP_SBDR_SSDP_NO | ARCH_CAP_FBSDP_NO | ARCH_CAP_PSDP_NO | \
-	 ARCH_CAP_FB_CLEAR | ARCH_CAP_RRSBA | ARCH_CAP_PBRSB_NO | ARCH_CAP_GDS_NO)
+	 ARCH_CAP_FB_CLEAR | ARCH_CAP_RRSBA | ARCH_CAP_PBRSB_NO | ARCH_CAP_GDS_NO | \
+	 ARCH_CAP_RFDS_NO | ARCH_CAP_RFDS_CLEAR | ARCH_CAP_BHI_NO)
 
 static u64 kvm_get_arch_capabilities(void)
 {
@@ -1535,6 +1536,8 @@ static u64 kvm_get_arch_capabilities(void)
 		data |= ARCH_CAP_SSB_NO;
 	if (!boot_cpu_has_bug(X86_BUG_MDS))
 		data |= ARCH_CAP_MDS_NO;
+	if (!boot_cpu_has_bug(X86_BUG_RFDS))
+		data |= ARCH_CAP_RFDS_NO;
 
 	if (!boot_cpu_has(X86_FEATURE_RTM)) {
 		/*
@@ -7105,7 +7108,17 @@ static int emulator_cmpxchg_emulated(struct x86_emulate_ctxt *ctxt,
 	}
 
 	if (r < 0)
-		goto emul_write;
+		return X86EMUL_UNHANDLEABLE;
+
+	/*
+	 * Mark the page dirty _before_ checking whether or not the CMPXCHG was
+	 * successful, as the old value is written back on failure.  Note, for
+	 * live migration, this is unnecessarily conservative as CMPXCHG writes
+	 * back the original value and the access is atomic, but KVM's ABI is
+	 * that all writes are dirty logged, regardless of the value written.
+	 */
+	kvm_vcpu_mark_page_dirty(vcpu, gpa_to_gfn(gpa));
+
 	if (r)
 		return X86EMUL_CMPXCHG_FAILED;
 
arch/x86/lib/retpoline.S +2 -3
index 6f5321b36dbb..019096b66eff 100644
@@ -108,6 +108,7 @@ SYM_START(srso_alias_untrain_ret, SYM_L_GLOBAL, SYM_A_NONE)
 	ret
 	int3
 SYM_FUNC_END(srso_alias_untrain_ret)
+__EXPORT_THUNK(srso_alias_untrain_ret)
 #endif
 
 SYM_START(srso_alias_safe_ret, SYM_L_GLOBAL, SYM_A_NONE)
@@ -249,9 +250,7 @@ SYM_CODE_START(srso_return_thunk)
 SYM_CODE_END(srso_return_thunk)
 
 SYM_FUNC_START(entry_untrain_ret)
-	ALTERNATIVE_2 "jmp retbleed_untrain_ret", \
-		      "jmp srso_untrain_ret", X86_FEATURE_SRSO, \
-		      "jmp srso_alias_untrain_ret", X86_FEATURE_SRSO_ALIAS
+	ALTERNATIVE "jmp retbleed_untrain_ret", "jmp srso_untrain_ret", X86_FEATURE_SRSO
 SYM_FUNC_END(entry_untrain_ret)
 __EXPORT_THUNK(entry_untrain_ret)
 
arch/x86/mm/ident_map.c +5 -18
index f50cc210a981..968d7005f4a7 100644
@@ -26,31 +26,18 @@ static int ident_pud_init(struct x86_mapping_info *info, pud_t *pud_page,
 	for (; addr < end; addr = next) {
 		pud_t *pud = pud_page + pud_index(addr);
 		pmd_t *pmd;
-		bool use_gbpage;
 
 		next = (addr & PUD_MASK) + PUD_SIZE;
 		if (next > end)
 			next = end;
 
-		/* if this is already a gbpage, this portion is already mapped */
-		if (pud_large(*pud))
-			continue;
-
-		/* Is using a gbpage allowed? */
-		use_gbpage = info->direct_gbpages;
-
-		/* Don't use gbpage if it maps more than the requested region. */
-		/* at the begining: */
-		use_gbpage &= ((addr & ~PUD_MASK) == 0);
-		/* ... or at the end: */
-		use_gbpage &= ((next & ~PUD_MASK) == 0);
-
-		/* Never overwrite existing mappings */
-		use_gbpage &= !pud_present(*pud);
-
-		if (use_gbpage) {
+		if (info->direct_gbpages) {
 			pud_t pudval;
 
+			if (pud_present(*pud))
+				continue;
+
+			addr &= PUD_MASK;
 			pudval = __pud((addr - info->offset) | info->page_flag);
 			set_pud(pud, pudval);
 			continue;
block/blk-settings.c +4 -0
index 959b5c1e6d3b..1b92e6624951 100644
@@ -647,6 +647,10 @@ int blk_stack_limits(struct queue_limits *t, struct queue_limits *b,
 	t->zone_write_granularity = max(t->zone_write_granularity,
 					b->zone_write_granularity);
 	t->zoned = max(t->zoned, b->zoned);
+	if (!t->zoned) {
+		t->zone_write_granularity = 0;
[… more lines in the raw message]

Lines of this file are not shown. View the raw message.

crypto/algboss.c +2 -2
index 1814d2c5188a..eb5fe84efb83 100644

Lines of this file are not shown. View the raw message.

drivers/accessibility/speakup/synth.c +3 -1
index 2b8699673bac..1e10f3c9567b 100644

Lines of this file are not shown. View the raw message.

drivers/acpi/acpica/dbnames.c +6 -2
index b91155ea9c34..c9131259f717 100644

Lines of this file are not shown. View the raw message.

drivers/acpi/cppc_acpi.c +24 -3
index 7cc9183c8dc8..408b1fda5702 100644

Lines of this file are not shown. View the raw message.

drivers/ata/ahci.c +0 -5
index b0a8aac008ba..7807c7b9f37a 100644

Lines of this file are not shown. View the raw message.

drivers/ata/sata_mv.c +31 -32

63 lines not on this page · raw message

drivers/ata/sata_sx4.c +2 -4
index 4c01190a5e37..c95685f693a6 100644

Lines of this file are not shown. View the raw message.

drivers/base/core.c +23 -3
index adf003a7e8d6..ca56fd745021 100644

Lines of this file are not shown. View the raw message.

drivers/base/cpu.c +8 -0
index 46430cf2401e..93222cf39157 100644

Lines of this file are not shown. View the raw message.

drivers/base/power/wakeirq.c +3 -1
index 6f2cdd8643af..ab6eced7f576 100644

Lines of this file are not shown. View the raw message.

drivers/clk/qcom/gcc-ipq6018.c +2 -0
index 4c5c7a8f41d0..b9844e41cf99 100644

Lines of this file are not shown. View the raw message.

drivers/clk/qcom/gcc-ipq8074.c +2 -0
index 0393154fea2f..649e75a41f7a 100644

Lines of this file are not shown. View the raw message.

drivers/clk/qcom/gcc-sdm845.c +1 -0
index 58aa3ec9a7fc..fffdb480073e 100644

Lines of this file are not shown. View the raw message.

drivers/clk/qcom/mmcc-apq8084.c +2 -0
index fbfcf0006739..c2fd0e8f4bc0 100644

Lines of this file are not shown. View the raw message.

drivers/clk/qcom/mmcc-msm8974.c +2 -0
index a1552b6771bc..26509bcd4f80 100644

Lines of this file are not shown. View the raw message.

drivers/clocksource/arm_global_timer.c +1 -1
index 44a61dc6f932..e1c773bb5535 100644

Lines of this file are not shown. View the raw message.

drivers/cpufreq/brcmstb-avs-cpufreq.c +3 -2
index 38ec0fedb247..552db816ed22 100644

Lines of this file are not shown. View the raw message.

drivers/cpufreq/cpufreq-dt.c +1 -1
index 8fcaba541539..1bfdfa7e25c1 100644

Lines of this file are not shown. View the raw message.

drivers/crypto/qat/qat_common/adf_aer.c +17 -6
index ed3e40bc56eb..040595a6ab75 100644

Lines of this file are not shown. View the raw message.

drivers/firmware/efi/vars.c +11 -6
index cae590bd08f2..eaed1ddcc803 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c +2 -2
index c777aff164b7..654f99f4107e 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c +1 -0
index b06fb1fa411b..9a1b19e3d437 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +5 -3
index 7385efe699f8..b7b8a2d77da6 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hwseq.c +11 -1
index f83457375811..8d8114ee67f6 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c +3 -0
index be61975f1470..11939be2b46a 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/drm_panel.c +11 -6
index f634371c717a..7fd3de89ed07 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/etnaviv/etnaviv_drv.c +1 -1
index 7dcc6392792d..c45e5158fdff 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/etnaviv/etnaviv_hwdb.c +9 -0
index f2fc645c7956..212e7050c4ba 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/exynos/exynos_drm_vidi.c +2 -2
index e96436e11a36..e1ffe8a28b64 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/exynos/exynos_hdmi.c +2 -2
index 42b6b001405a..35be9f024518 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/gem/i915_gem_userptr.c +3 -0
index 8ea0fa665e53..1eb2395ea206 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/gt/intel_engine_pm.c +0 -3
index dacd62773735..5a9096906795 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/gt/intel_execlists_submission.c +3 -0
index 773ff5121833..eac55083c574 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/imx/parallel-display.c +2 -2
index 63ba2ad84679..5423ea4c1ef9 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/vc4/vc4_hdmi.c +1 -1
index 7a8353d7ab36..88aa00a1891b 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c +11 -3
index b91f8d17404d..21134c7f1838 100644

Lines of this file are not shown. View the raw message.

drivers/hid/uhid.c +10 -10
index ba0ca652b9da..09da654d2b05 100644

Lines of this file are not shown. View the raw message.

drivers/hwmon/amc6821.c +11 -0
index 6b1ce2242c61..60dfdb0f5523 100644

Lines of this file are not shown. View the raw message.

drivers/i2c/busses/i2c-i801.c +3 -1
index 87c2c7c84736..7844fba28190 100644

Lines of this file are not shown. View the raw message.

drivers/infiniband/core/cm_trace.h +1 -1
index e9d282679ef1..944d9071245d 100644

Lines of this file are not shown. View the raw message.

drivers/infiniband/core/cma_trace.h +1 -1
index e45264267bcc..47f3c6e4be89 100644

Lines of this file are not shown. View the raw message.

drivers/iommu/dma-iommu.c +15 -0
index 8cd63e6ccd2c..aa47d955de6b 100644

Lines of this file are not shown. View the raw message.

drivers/iommu/iova.c +5 -0
index 0835f32e040a..f6dfb9e45e95 100644

Lines of this file are not shown. View the raw message.

drivers/md/dm-integrity.c +1 -1
index df743650d8a9..ae372bc44fbf 100644

Lines of this file are not shown. View the raw message.

drivers/md/dm-raid.c +2 -0
index 04769fb20cf7..5d1006142aae 100644

Lines of this file are not shown. View the raw message.

drivers/md/dm-snap.c +3 -1
index dcf34c6b05ad..d3716d5c45c2 100644

Lines of this file are not shown. View the raw message.

drivers/media/tuners/xc4000.c +2 -2
index ef9af052007c..849df4d1c573 100644

Lines of this file are not shown. View the raw message.

drivers/misc/mei/hw-me-regs.h +2 -0
index 609519571545..00867bcc2ef7 100644

Lines of this file are not shown. View the raw message.

drivers/misc/mei/pci-me.c +2 -0
index f2765d6b8c04..91586d8afcaa 100644

Lines of this file are not shown. View the raw message.

drivers/mmc/core/block.c +8 -6
index c3202e2e99e8..68f820cd73b2 100644

Lines of this file are not shown. View the raw message.

drivers/mmc/host/tmio_mmc_core.c +2 -0
index 437048bb8027..5024cae411d3 100644

Lines of this file are not shown. View the raw message.

drivers/mtd/nand/raw/meson_nand.c +1 -1
index 9d441965321a..9198d54cb34e 100644

Lines of this file are not shown. View the raw message.

drivers/mtd/ubi/fastmap.c +4 -3
index 6e95c4b1473e..8081fc760d34 100644

Lines of this file are not shown. View the raw message.

drivers/mtd/ubi/vtbl.c +6 -0
index f700f0e4f2ec..6e5489e233dd 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/freescale/fec_main.c +9 -2
index 39875ccbaa0f..972808777f30 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_trace.h +4 -4
index 8510b88d4982..f3cd5a376eca 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_trace.h +4 -4
index 5d4895bb57a1..b259e95dd53c 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/intel/i40e/i40e.h +4 -2
index 453a85410634..a05103e2fb52 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/intel/i40e/i40e_main.c +12 -2
index 7b522d55f368..676ea7d4192f 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/intel/i40e/i40e_ptp.c +3 -3
index 09b1d5aed1c9..38942d3f7819 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/intel/i40e/i40e_register.h +3 -0
index 7339003aa17c..694cb3e45c1e 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/intel/i40e/i40e_txrx.c +61 -21

82 lines not on this page · raw message

drivers/net/ethernet/intel/i40e/i40e_txrx.h +3 -2
index f3b0b8151709..054b7d1632e1 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c +16 -18
index 9ff8bf346b9e..d1635df17e46 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c +8 -8
index 69d11ff7677d..ac198c00b44f 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/marvell/octeontx2/af/cgx.c +5 -0
index 3ade1a6e2f1e..4dec20115895 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c +1 -1
index 604aaa9b960e..c6b6d709e590 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c +1 -1
index 167b926196c8..5f093b34db69 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_main.c +22 -9
index 679415a64f25..c644ee78e0b4 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/realtek/r8169_main.c +10 -1
index b8ac07be6157..623286f22105 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/renesas/ravb_main.c +6 -2
index 2bf5d4c208d3..eee446e50048 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/stmicro/stmmac/dwmac4_core.c +31 -9
index f6d6a6d9c555..026e3645e566 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/stmicro/stmmac/dwxgmac2_core.c +31 -7
index ec1616ffbfa7..dd73f38ec08d 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/xilinx/ll_temac_main.c +1 -1
index b4db50c9e703..4e45153959c7 100644

Lines of this file are not shown. View the raw message.

drivers/net/usb/asix.h +3 -0
index c126df1c13ee..9da88e132d51 100644

Lines of this file are not shown. View the raw message.

drivers/net/usb/asix_devices.c +18 -2
index 396505396a2e..5a4137b2531f 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireguard/netlink.c +5 -5
index f5bc279c9a8c..9dc02fa51ed0 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +2 -2
index b14c54da56ed..1c95e8f75916 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/intel/iwlwifi/mvm/rfi.c +7 -5
index 44344216a1a9..4deb242df7b3 100644

Lines of this file are not shown. View the raw message.

drivers/net/xen-netfront.c +1 -0
index 6e73d3a00eec..8b4be2e4d1cf 100644

Lines of this file are not shown. View the raw message.

drivers/nvme/host/core.c +4 -2
index 8f06e5c1706b..960a31e3307a 100644

Lines of this file are not shown. View the raw message.

drivers/nvmem/meson-efuse.c +3 -22
index d6b533497ce1..ba2714bef8d0 100644

Lines of this file are not shown. View the raw message.

drivers/of/dynamic.c +12 -0
index ffb7b0446afd..a6358889fd1d 100644

Lines of this file are not shown. View the raw message.

drivers/pci/controller/dwc/pcie-designware-ep.c +6 -1
index fcb1fdb22ffb..fc92d30a0ad9 100644

Lines of this file are not shown. View the raw message.

drivers/pci/pci-driver.c +14 -9
index f44c0667a83c..46b82bacaff6 100644

Lines of this file are not shown. View the raw message.

drivers/pci/pcie/dpc.c +10 -5
index cf0d4ba2e157..ab83f78f3eb1 100644

Lines of this file are not shown. View the raw message.

drivers/pci/pcie/err.c +20 -0
index b576aa890c76..410fc44d79ee 100644

Lines of this file are not shown. View the raw message.

drivers/pci/quirks.c +100 -0

100 lines not on this page · raw message

drivers/pci/setup-res.c +6 -2
index 875d50c16f19..b492e67c3d87 100644

Lines of this file are not shown. View the raw message.

drivers/phy/tegra/xusb.c +13 -0
index 119e2c039225..bf7706bf101a 100644

Lines of this file are not shown. View the raw message.

drivers/s390/crypto/zcrypt_api.c +2 -0
index 17b3f1ea3a5c..fb80b7593c59 100644

Lines of this file are not shown. View the raw message.

drivers/s390/net/qeth_core_main.c +36 -2
index 62e7576bff53..c1346c4e2242 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/hosts.c +4 -3
index 1b285ce62f8a..4caee4e32461 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/lpfc/lpfc_nvmet.c +1 -1
index 6e3dd0b9bcfa..c58669c9346c 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/myrb.c +10 -10
index 386256369dfc..2a61cb726883 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/myrs.c +12 -12
index a4d244ee4548..3f05f13fb107 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/qla2xxx/qla_attr.c +12 -2
index fe0e8b23a805..6e2b80934154 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/qla2xxx/qla_def.h +1 -1
index 3c876967e8b1..87ada9b44717 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/qla2xxx/qla_gbl.h +1 -1
index 3861e41a8d2c..18376b50e349 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/qla2xxx/qla_gs.c +1 -1
index d3742a83d2fd..b0f3bf42c340 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/qla2xxx/qla_init.c +65 -63

128 lines not on this page · raw message

drivers/scsi/qla2xxx/qla_iocb.c +44 -24

68 lines not on this page · raw message

drivers/scsi/qla2xxx/qla_mbx.c +1 -1
index 511f31611aed..d2ff54beb7cd 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/qla2xxx/qla_os.c +1 -1
index a2d3f8bb63a0..f418d43ee841 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/qla2xxx/qla_target.c +10 -0
index ef46dce73978..aac36e730a5a 100644

Lines of this file are not shown. View the raw message.

drivers/slimbus/core.c +2 -2
index 78480e332ab8..d1e3de844812 100644

Lines of this file are not shown. View the raw message.

drivers/soc/fsl/qbman/qman.c +79 -19

98 lines not on this page · raw message

drivers/staging/media/ipu3/ipu3-v4l2.c +8 -8
index ed091418f7e7..5110e95923cc 100644

Lines of this file are not shown. View the raw message.

drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c +3 -2
index 76d3f0399964..168ee6a59d5f 100644

Lines of this file are not shown. View the raw message.

drivers/tee/optee/device.c +2 -1
index 8957065ea730..8be1dfcc06bd 100644

Lines of this file are not shown. View the raw message.

drivers/thermal/devfreq_cooling.c +1 -1
index d38a80adec73..5be79b5d788e 100644

Lines of this file are not shown. View the raw message.

drivers/tty/serial/8250/8250_port.c +0 -6
index 4fce318bc83c..2d595a646bb8 100644

Lines of this file are not shown. View the raw message.

drivers/tty/serial/fsl_lpuart.c +5 -2
index e0d576b88d7d..9f1be9ce47e0 100644

Lines of this file are not shown. View the raw message.

drivers/tty/serial/imx.c +18 -4
index 4504b5fcc171..0587beaaea08 100644

Lines of this file are not shown. View the raw message.

drivers/tty/serial/sc16is7xx.c +9 -6
index 8c09c97f9814..0066a0e23516 100644

Lines of this file are not shown. View the raw message.

drivers/tty/serial/serial_core.c +12 -0
index 45b721abaa2f..b638b2fd2d3d 100644

Lines of this file are not shown. View the raw message.

drivers/tty/vt/vt.c +1 -1
index 442579f087c7..3dc2124bd02a 100644

Lines of this file are not shown. View the raw message.

drivers/usb/class/cdc-wdm.c +5 -1
index 0d99ba64ea52..38c2e6089e4c 100644

Lines of this file are not shown. View the raw message.

drivers/usb/core/hub.c +16 -7
index 2cd0089660ea..a603e8a54196 100644

Lines of this file are not shown. View the raw message.

drivers/usb/core/hub.h +2 -0
index db4c7e2c5960..dd049bc85f88 100644

Lines of this file are not shown. View the raw message.

drivers/usb/core/port.c +3 -2
index dfcca9c876c7..1f2e2a39b70f 100644

Lines of this file are not shown. View the raw message.

drivers/usb/core/sysfs.c +13 -3
index 60ee0469d86e..c9501907f7eb 100644

Lines of this file are not shown. View the raw message.

drivers/usb/dwc2/core.h +14 -0
index 71e62b3081db..cbf975b75df7 100644

Lines of this file are not shown. View the raw message.

drivers/usb/dwc2/core_intr.c +48 -24

72 lines not on this page · raw message

drivers/usb/dwc2/gadget.c +10 -0
index 519bb82b00e8..f6b2a4f2e59d 100644

Lines of this file are not shown. View the raw message.

drivers/usb/dwc2/hcd.c +40 -9

49 lines not on this page · raw message

drivers/usb/dwc2/hcd_ddma.c +11 -6
index a858b5f9c1d6..6a4aa71da103 100644

Lines of this file are not shown. View the raw message.

drivers/usb/dwc2/hw.h +1 -1
index 6b16fbf98bc6..5a076269894c 100644

Lines of this file are not shown. View the raw message.

drivers/usb/dwc2/platform.c +1 -1
index 6496bfbd34ed..79094384d8fd 100644

Lines of this file are not shown. View the raw message.

drivers/usb/gadget/function/f_ncm.c +1 -1
index 537f7a729f0e..e93b0eb74c08 100644

Lines of this file are not shown. View the raw message.

drivers/usb/gadget/udc/core.c +3 -1
index 4f50a8e18d91..808a8d062e6a 100644

Lines of this file are not shown. View the raw message.

drivers/usb/gadget/udc/tegra-xudc.c +25 -14
index 52996bf2cc70..fdbb9d73aa8e 100644

Lines of this file are not shown. View the raw message.

drivers/usb/host/xhci.c +2 -0
index 5c9d3be136d2..2539d97b90c3 100644

Lines of this file are not shown. View the raw message.

drivers/usb/phy/phy-generic.c +0 -7
index 34b9f8140187..661a229c105d 100644

Lines of this file are not shown. View the raw message.

drivers/usb/serial/cp210x.c +4 -0
index f47c2f392292..4183942a1c19 100644

Lines of this file are not shown. View the raw message.

drivers/usb/serial/ftdi_sio.c +2 -0
index 2345208b7221..1915b92c388f 100644

Lines of this file are not shown. View the raw message.

drivers/usb/serial/ftdi_sio_ids.h +6 -0
index 9a0f9fc99124..b2aec1106678 100644

Lines of this file are not shown. View the raw message.

drivers/usb/serial/option.c +6 -0
index c0a0cca65437..1a3e5a9414f0 100644

Lines of this file are not shown. View the raw message.

drivers/usb/storage/isd200.c +18 -5
index 3c76336e43bb..1d22db59f7bd 100644

Lines of this file are not shown. View the raw message.

drivers/usb/storage/scsiglue.c +0 -1
index b8e1109f0e0d..e104aa651ccc 100644

Lines of this file are not shown. View the raw message.

drivers/usb/storage/uas.c +37 -44

81 lines not on this page · raw message

drivers/usb/storage/usb.c +2 -2
index 90aa9c12ffac..8b543f2c9857 100644

Lines of this file are not shown. View the raw message.

drivers/usb/typec/ucsi/ucsi.c +40 -2

42 lines not on this page · raw message

drivers/usb/typec/ucsi/ucsi.h +2 -2
index cee666790907..3dc3da8dbbdf 100644

Lines of this file are not shown. View the raw message.

drivers/vfio/fsl-mc/vfio_fsl_mc_intr.c +4 -3
index 77e584093a23..50c2f82f2b68 100644

Lines of this file are not shown. View the raw message.

drivers/vfio/pci/vfio_pci_intrs.c +106 -70

176 lines not on this page · raw message

drivers/vfio/platform/vfio_platform_irq.c +72 -34

106 lines not on this page · raw message

drivers/vfio/virqfd.c +21 -0
index 414e98d82b02..b58ba030e7ae 100644

Lines of this file are not shown. View the raw message.

drivers/xen/events/events_base.c +2 -3
index ee691b20d4a3..04ff194fecf4 100644

Lines of this file are not shown. View the raw message.

fs/Kconfig +1 -1
index 971339ecc1a2..9ea9614107a4 100644

Lines of this file are not shown. View the raw message.

fs/aio.c +6 -2
index e24eb82b2b58..0f02ea16305c 100644

Lines of this file are not shown. View the raw message.

fs/btrfs/scrub.c +11 -1
index 0d1715ebdef9..6ffd34d39e99 100644

Lines of this file are not shown. View the raw message.

fs/btrfs/volumes.c +1 -1
index cc18ba50a61c..1ce0fa487e5b 100644

Lines of this file are not shown. View the raw message.

fs/cifs/connect.c +1 -1
index a3e4811b7871..1cbfb74c5380 100644

Lines of this file are not shown. View the raw message.

fs/exec.c +1 -0
index 719115f23282..03516b704d8a 100644

Lines of this file are not shown. View the raw message.

fs/exportfs/expfs.c +4 -4
index 3ef80d000e13..584bdd912cdd 100644

Lines of this file are not shown. View the raw message.

fs/ext4/mballoc.c +11 -6
index a254c2ba0357..d13d669f90fd 100644

Lines of this file are not shown. View the raw message.

fs/ext4/resize.c +2 -1
index 70d4f6e3aaa7..4687d5972074 100644

Lines of this file are not shown. View the raw message.

fs/ext4/super.c +9 -1
index 65716a17059d..8b276b95a790 100644

Lines of this file are not shown. View the raw message.

fs/fat/nfs.c +6 -0
index af191371c352..bab63eeaf9cb 100644

Lines of this file are not shown. View the raw message.

fs/fuse/dir.c +4 -0
index 4ea52906ae15..44d1c8cc58a4 100644

Lines of this file are not shown. View the raw message.

fs/fuse/fuse_i.h +0 -1
index 4b8f094345e1..55b7ca26fb8a 100644

Lines of this file are not shown. View the raw message.

fs/fuse/inode.c +5 -2
index 97dc24557bf2..62b4143ccf26 100644

Lines of this file are not shown. View the raw message.

fs/ksmbd/smb2pdu.c +8 -2
index 0613b8d14409..14cd86a14012 100644

Lines of this file are not shown. View the raw message.

fs/lockd/host.c +1 -1
index f802223e71ab..cdc8e12cdac4 100644

Lines of this file are not shown. View the raw message.

fs/lockd/svc.c +64 -153

217 lines not on this page · raw message

fs/lockd/svc4proc.c +28 -1
index 1c9214801e69..e318d55e4c0e 100644

Lines of this file are not shown. View the raw message.

fs/lockd/svclock.c +13 -18
index e9b85d8fd5fe..55c0a0331188 100644

Lines of this file are not shown. View the raw message.

fs/lockd/svcproc.c +29 -1
index 99696d3f6dd6..2a615032f5d0 100644

Lines of this file are not shown. View the raw message.

fs/lockd/svcsubs.c +2 -2
index 3515f17eaf3f..e3b6229e7ae5 100644

Lines of this file are not shown. View the raw message.

fs/lockd/xdr.c +71 -81

152 lines not on this page · raw message

fs/lockd/xdr4.c +72 -81

153 lines not on this page · raw message

fs/locks.c +70 -15

85 lines not on this page · raw message

fs/nfs/callback.c +28 -68

96 lines not on this page · raw message

fs/nfs/callback_xdr.c +3 -2
index ea17085ef884..d0cccddb7d08 100644

Lines of this file are not shown. View the raw message.

fs/nfs/direct.c +9 -2
index bbe2a5cc49f6..3185899676ad 100644

Lines of this file are not shown. View the raw message.

fs/nfs/export.c +6 -3
index d772c20bbfd1..eafa9d7b0911 100644

Lines of this file are not shown. View the raw message.

fs/nfs/nfs4state.c +1 -1
index 258e6b167285..d7868cc52780 100644

Lines of this file are not shown. View the raw message.

fs/nfs/nfs4trace.h +57 -420

477 lines not on this page · raw message

fs/nfs/nfstrace.h +37 -232

269 lines not on this page · raw message

fs/nfs/pnfs.h +0 -4
index 3307361c7956..f331f067691b 100644

Lines of this file are not shown. View the raw message.

fs/nfs/write.c +1 -1
index 4231d51fc1ad..3d06bad2760d 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/Kconfig +14 -13
index 6e9ea4ee0f73..7f071519fb2e 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/Makefile +4 -4
index 3f0983e93a99..6fffc8f03f74 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/acl.h +4 -2
index ba14d2f4b64f..4b7324458a94 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/blocklayout.c +1 -0
index c99dee99a3c1..0ddd20cb6806 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/blocklayoutxdr.c +1 -0
index 2455dc8be18a..1ed2f691ebb9 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/cache.h +1 -1
index 65c331f75e9c..f21259ead64b 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/export.h +0 -1
index ee0e3aba4a6e..d03f7f6a8642 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/filecache.c +666 -502

1,168 lines not on this page · raw message

fs/nfsd/filecache.h +13 -6
index 63104be2865c..e54165a3224f 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/flexfilelayout.c +2 -1
index db7ef07ae50c..fabc21ed68ce 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/lockd.c +1 -1
index 606fa155c28a..46a7f9b813e5 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/netns.h +23 -11
index 935c1028c217..51a4b7885cae 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/nfs2acl.c +30 -25

55 lines not on this page · raw message

fs/nfsd/nfs3acl.c +35 -50

85 lines not on this page · raw message

fs/nfsd/nfs3proc.c +175 -37

212 lines not on this page · raw message

fs/nfsd/nfs3xdr.c +175 -269

444 lines not on this page · raw message

fs/nfsd/nfs4acl.c +7 -39

46 lines not on this page · raw message

fs/nfsd/nfs4callback.c +103 -22

125 lines not on this page · raw message

fs/nfsd/nfs4idmap.c +5 -4
index f92161ce1f97..5e9809aff37e 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/nfs4layouts.c +2 -2
index 2673019d30ec..e4e23b2a3e65 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/nfs4proc.c +569 -417

986 lines not on this page · raw message

fs/nfsd/nfs4recover.c +6 -6
index 8f24485e0f04..5d680045fa2c 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/nfs4state.c +813 -228

1,041 lines not on this page · raw message

fs/nfsd/nfs4xdr.c +604 -511

1,115 lines not on this page · raw message

fs/nfsd/nfscache.c +30 -33

63 lines not on this page · raw message

fs/nfsd/nfsctl.c +64 -82

146 lines not on this page · raw message

fs/nfsd/nfsd.h +27 -8
index 9664303afdaf..013bfa24ced2 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/nfsfh.c +140 -130

270 lines not on this page · raw message

fs/nfsd/nfsfh.h +69 -76

145 lines not on this page · raw message

fs/nfsd/nfsproc.c +41 -80

121 lines not on this page · raw message

fs/nfsd/nfssvc.c +125 -138

263 lines not on this page · raw message

fs/nfsd/nfsxdr.c +80 -98

178 lines not on this page · raw message

fs/nfsd/state.h +48 -11

59 lines not on this page · raw message

fs/nfsd/stats.c +3 -13
index 1d3b881e7382..777e24e5da33 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/stats.h +1 -3
index 51ecda852e23..9b43dc3d9991 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/trace.h +607 -85

692 lines not on this page · raw message

fs/nfsd/vfs.c +400 -420

820 lines not on this page · raw message

fs/nfsd/vfs.h +33 -23

56 lines not on this page · raw message

fs/nfsd/xdr.h +18 -17
index 863a35f24910..852f71580bd0 100644

Lines of this file are not shown. View the raw message.

fs/nfsd/xdr3.h +31 -30

61 lines not on this page · raw message

fs/nfsd/xdr4.h +58 -23

81 lines not on this page · raw message

fs/nfsd/xdr4cb.h +6 -0
index 547cf07cf4e0..0d39af1b00a0 100644

Lines of this file are not shown. View the raw message.

fs/nilfs2/btree.c +7 -2
index def9121a466e..385ec71fcdef 100644

Lines of this file are not shown. View the raw message.

fs/nilfs2/direct.c +7 -2
index f353101955e3..7faf8c285d6c 100644

Lines of this file are not shown. View the raw message.

fs/nilfs2/inode.c +1 -1
index 324e23236c34..475fd522c7e3 100644

Lines of this file are not shown. View the raw message.

fs/notify/dnotify/dnotify.c +8 -7
index e85e13c50d6d..fa81c59a2ad4 100644

Lines of this file are not shown. View the raw message.

fs/notify/fanotify/fanotify.c +278 -83

361 lines not on this page · raw message

fs/notify/fanotify/fanotify.h +193 -19

212 lines not on this page · raw message

fs/notify/fanotify/fanotify_user.c +354 -87

441 lines not on this page · raw message

fs/notify/fdinfo.c +7 -9
index 3451708fd035..55081ae3a6ec 100644

Lines of this file are not shown. View the raw message.

fs/notify/fsnotify.c +103 -74

177 lines not on this page · raw message

fs/notify/fsnotify.h +0 -4
index 87d8a50ee803..fde74eb333cc 100644

Lines of this file are not shown. View the raw message.

fs/notify/group.c +22 -14
index fb89c351295d..1de6631a3925 100644

Lines of this file are not shown. View the raw message.

fs/notify/inotify/inotify.h +9 -2
index 8f00151eb731..7d5df7a21539 100644

Lines of this file are not shown. View the raw message.

fs/notify/inotify/inotify_fsnotify.c +4 -3
index b0530f75b274..993375f0db67 100644

Lines of this file are not shown. View the raw message.

fs/notify/inotify/inotify_user.c +32 -21

53 lines not on this page · raw message

fs/notify/mark.c +87 -50

137 lines not on this page · raw message

fs/notify/notification.c +7 -7
index 32f45543b9c6..9022ae650cf8 100644

Lines of this file are not shown. View the raw message.

fs/open.c +42 -0

42 lines not on this page · raw message

fs/pipe.c +12 -5
index a8b8ef2dae7b..0a8095070b70 100644

Lines of this file are not shown. View the raw message.

fs/ubifs/file.c +4 -9
index 7cc2abcb70ae..509144cc41a0 100644

Lines of this file are not shown. View the raw message.

fs/vboxsf/super.c +2 -1
index 37dd3fe5b1e9..44725007ccc2 100644

Lines of this file are not shown. View the raw message.

include/asm-generic/vmlinux.lds.h +2 -2
index 8471717c5085..dd9ea351bc02 100644

Lines of this file are not shown. View the raw message.

include/linux/cpu.h +2 -0
index caf3b95017bf..e1e6a045c38b 100644

Lines of this file are not shown. View the raw message.

include/linux/device.h +1 -0
index e270cb740b9e..3e04bd84f126 100644

Lines of this file are not shown. View the raw message.

include/linux/dma-map-ops.h +1 -0
index bfffe494356a..2ff55ec902f4 100644

Lines of this file are not shown. View the raw message.

include/linux/dma-mapping.h +5 -0
index dca2b1355bb1..fe3849434b2a 100644

Lines of this file are not shown. View the raw message.

include/linux/dnotify.h +1 -1
index 0aad774beaec..b87c3b85a166 100644

Lines of this file are not shown. View the raw message.

include/linux/exportfs.h +15 -2
index 3260fe714846..6525f4b7eb97 100644

Lines of this file are not shown. View the raw message.

include/linux/fanotify.h +24 -7
index eec3b7c40811..558844c8d259 100644

Lines of this file are not shown. View the raw message.

include/linux/fs.h +26 -0
index f32723d937fb..61e86502fe65 100644

Lines of this file are not shown. View the raw message.

include/linux/fsnotify.h +50 -20

70 lines not on this page · raw message

include/linux/fsnotify_backend.h +298 -58

356 lines not on this page · raw message

include/linux/gfp.h +9 -0
index 55b2ec1f965a..d1ca5eb56ff0 100644

Lines of this file are not shown. View the raw message.

include/linux/hyperv.h +21 -1
index 8499fc9220e0..edcfddaa5f7a 100644

Lines of this file are not shown. View the raw message.

include/linux/iova.h +2 -0
index 6b6cc104e300..9aa0acf9820a 100644

Lines of this file are not shown. View the raw message.

include/linux/kthread.h +1 -0
index db47aae7c481..8e21bd13c36d 100644

Lines of this file are not shown. View the raw message.

include/linux/linkage.h +2 -2
index dbf8506decca..fc81e51330b2 100644

Lines of this file are not shown. View the raw message.

include/linux/lockd/lockd.h +8 -2
index c4ae6506b8b3..70ce419e2709 100644

Lines of this file are not shown. View the raw message.

include/linux/lockd/xdr.h +14 -13
index bed63156b052..67e4a2c5500b 100644

Lines of this file are not shown. View the raw message.

include/linux/lockd/xdr4.h +14 -15
index 025250ade98e..72831e35dca3 100644

Lines of this file are not shown. View the raw message.

include/linux/minmax.h +17 -0
index 5433c08fcc68..1aea34b8f19b 100644

Lines of this file are not shown. View the raw message.

include/linux/module.h +3 -3
index 701c150485b2..fb9762e16f28 100644

Lines of this file are not shown. View the raw message.

include/linux/nfs.h +0 -8
index 0dc7ad38a0da..b06375e88e58 100644

Lines of this file are not shown. View the raw message.

include/linux/nfs4.h +17 -0
index 15004c469807..8e2b532919e0 100644

Lines of this file are not shown. View the raw message.

include/linux/nfs_fs.h +1 -0
index 5ddc30405f7f..886bfa99a6af 100644

Lines of this file are not shown. View the raw message.

include/linux/nfs_ssc.h +2 -2
index 222ae8883e85..22265b1ff080 100644

Lines of this file are not shown. View the raw message.

include/linux/pci.h +1 -0
index 08d26b58f95c..25e2e7756b1d 100644

Lines of this file are not shown. View the raw message.

include/linux/phy/tegra/xusb.h +1 -0
index 3a35e74cdc61..b30343a1f47e 100644

Lines of this file are not shown. View the raw message.

include/linux/ring_buffer.h +1 -0
index 3c7d295746f6..3e7bfc0f65ae 100644

Lines of this file are not shown. View the raw message.

include/linux/secretmem.h +2 -2
index 988528b5da43..48ffe325184c 100644

Lines of this file are not shown. View the raw message.

include/linux/sunrpc/svc.h +32 -61

93 lines not on this page · raw message

include/linux/sunrpc/svc_xprt.h +6 -5
index 154eee6bc6a0..1f7368f5b4e7 100644

Lines of this file are not shown. View the raw message.

include/linux/sunrpc/svcsock.h +3 -4
index bcc555c7ae9c..13aff355d5a1 100644

Lines of this file are not shown. View the raw message.

include/linux/sunrpc/xdr.h +2 -0
index 3a2c714d6b62..98e197376a0d 100644

Lines of this file are not shown. View the raw message.

include/linux/timer.h +13 -5
index fda13c9d1256..e78521bce565 100644

Lines of this file are not shown. View the raw message.

include/linux/udp.h +28 -0
index 0727276e7538..fdf5afb39316 100644

Lines of this file are not shown. View the raw message.

include/linux/vfio.h +2 -0
index b53a9557884a..b7275ed44e4c 100644

Lines of this file are not shown. View the raw message.

include/net/cfg802154.h +1 -0
index 6ed07844eb24..5290781abba3 100644

Lines of this file are not shown. View the raw message.

include/net/inet_connection_sock.h +1 -0
index 798aad21694e..b6b7e210f9d7 100644

Lines of this file are not shown. View the raw message.

include/net/sock.h +7 -0
index e19eebaf59f7..44ebec3fdda6 100644

Lines of this file are not shown. View the raw message.

include/soc/fsl/qman.h +9 -0
index 59eeba31c192..0d3d6beb7fdb 100644

Lines of this file are not shown. View the raw message.

include/trace/events/rdma.h deleted +0 -168

168 lines not on this page · raw message

include/trace/events/rpcgss.h +12 -6
index b2a2672e6632..b8fd13303ee7 100644

Lines of this file are not shown. View the raw message.

include/trace/events/rpcrdma.h +25 -19

44 lines not on this page · raw message

include/trace/events/sunrpc.h +45 -29

74 lines not on this page · raw message

include/trace/misc/fs.h new file +122 -0

122 lines not on this page · raw message

include/trace/misc/nfs.h new file +387 -0

387 lines not on this page · raw message

include/trace/misc/rdma.h new file +168 -0

168 lines not on this page · raw message

include/trace/misc/sunrpc.h new file +18 -0
new file mode 100644
index 000000000000..588557d07ea8

Lines of this file are not shown. View the raw message.

include/uapi/linux/fanotify.h +29 -0
index 64553df9d735..d8536d77fea1 100644

Lines of this file are not shown. View the raw message.

include/uapi/linux/nfsd/nfsfh.h deleted +0 -115

115 lines not on this page · raw message

init/initramfs.c +1 -1
index a842c0544745..f153fb505781 100644

Lines of this file are not shown. View the raw message.

io_uring/io_uring.c +1 -1
index a51429c0342e..ff6c36aec27c 100644

Lines of this file are not shown. View the raw message.

kernel/audit_fsnotify.c +4 -4
index c428312938e9..c565fbf66ac8 100644

Lines of this file are not shown. View the raw message.

kernel/audit_tree.c +1 -1
index 2cd7b5694422..18ab4575ae00 100644

Lines of this file are not shown. View the raw message.

kernel/audit_watch.c +2 -3
index edbeffee64b8..5cf22fe30149 100644

Lines of this file are not shown. View the raw message.

kernel/bounds.c +1 -1
index 9795d75b09b2..a94e3769347e 100644

Lines of this file are not shown. View the raw message.

kernel/bpf/verifier.c +5 -0
index f099c5481b66..008ddb694c8a 100644

Lines of this file are not shown. View the raw message.

kernel/dma/mapping.c +12 -0
index 9478eccd1c8e..c9dbc8f5812b 100644

Lines of this file are not shown. View the raw message.

kernel/dma/swiotlb.c +9 -2
index a9849670bdb5..5c7ed5d51942 100644

Lines of this file are not shown. View the raw message.

kernel/entry/common.c +7 -1
index e002bea6b4be..d11d4047a0ca 100644

Lines of this file are not shown. View the raw message.

kernel/events/core.c +9 -0
index 4e5a73c7db12..e79cd0fd1d2b 100644

Lines of this file are not shown. View the raw message.

kernel/kthread.c +19 -4
index e319a1b62586..4cc6897b7ca4 100644

Lines of this file are not shown. View the raw message.

kernel/locking/rwsem.c +12 -2
index f0287a16b4ec..4a38d32b89fa 100644

Lines of this file are not shown. View the raw message.

kernel/module.c +4 -4
index 4d49c32af570..2226b591b52e 100644

Lines of this file are not shown. View the raw message.

kernel/power/suspend.c +1 -0
index 13d905dd3267..5d617639e81e 100644

Lines of this file are not shown. View the raw message.

kernel/printk/printk.c +46 -17

63 lines not on this page · raw message

kernel/time/timer.c +97 -67

164 lines not on this page · raw message

kernel/trace/ring_buffer.c +140 -93

233 lines not on this page · raw message

kernel/trace/trace.c +15 -6
index 87ad97dbe8a4..ab56c8a61ec9 100644

Lines of this file are not shown. View the raw message.

lib/Kconfig.debug +1 -0
index 64d6292cf686..28faea9b5da6 100644

Lines of this file are not shown. View the raw message.

lib/pci_iomap.c +1 -1
index ce39ce9f3526..2829ddb0e316 100644

Lines of this file are not shown. View the raw message.

lib/test_kasan.c +19 -2
index 89f444cabd4a..ffedc34714ba 100644

Lines of this file are not shown. View the raw message.

mm/compaction.c +1 -6
index 89517ad5d6a0..3ec4a2e399cd 100644

Lines of this file are not shown. View the raw message.

mm/memtest.c +2 -2
index f53ace709ccd..d407373f225b 100644

Lines of this file are not shown. View the raw message.

mm/migrate.c +5 -1
index c7d5566623ad..c37af50f312d 100644

Lines of this file are not shown. View the raw message.

mm/page_alloc.c +6 -4
index ec3333a1f7fe..264efa022fa9 100644

Lines of this file are not shown. View the raw message.

mm/swapfile.c +21 -4
index b7e1620adee6..fec3e736a194 100644

Lines of this file are not shown. View the raw message.

mm/vmscan.c +4 -1
index 201acea81804..342a78a8658f 100644

Lines of this file are not shown. View the raw message.

net/bluetooth/bnep/core.c +1 -1
index 72f47b372705..a796d72c7dba 100644

Lines of this file are not shown. View the raw message.

net/bluetooth/cmtp/core.c +1 -1
index 83eb84e8e688..90d130588a3e 100644

Lines of this file are not shown. View the raw message.

net/bluetooth/hci_debugfs.c +32 -16

48 lines not on this page · raw message

net/bluetooth/hci_event.c +25 -0
index 0be37a5c1c0c..13d397493e9c 100644

Lines of this file are not shown. View the raw message.

net/bluetooth/hidp/core.c +1 -1
index 021ab957a5c4..8ff45fb6f700 100644

Lines of this file are not shown. View the raw message.

net/bridge/netfilter/ebtables.c +6 -0
index c0389199c0dc..2f3ea11785ad 100644

Lines of this file are not shown. View the raw message.

net/core/skbuff.c +4 -2
index 3dbefce8d14b..a42431860af9 100644

Lines of this file are not shown. View the raw message.

net/core/sock_map.c +6 -0
index ba6d5b38fb23..4e42bc679bac 100644

Lines of this file are not shown. View the raw message.

net/ipv4/inet_connection_sock.c +14 -0
index da43957a5843..27975a44d1f9 100644

Lines of this file are not shown. View the raw message.

net/ipv4/ip_gre.c +5 -0
index 5d17e5f5d090..cd967493bf37 100644

Lines of this file are not shown. View the raw message.

net/ipv4/netfilter/arp_tables.c +4 -0
index 71bf3aeed73c..07ecb16231cd 100644

Lines of this file are not shown. View the raw message.

net/ipv4/netfilter/ip_tables.c +4 -0
index a748a1e75460..1e1e7488d6bf 100644

Lines of this file are not shown. View the raw message.

net/ipv4/tcp.c +2 -0
index 521c15962c71..16fd3da68e9f 100644

Lines of this file are not shown. View the raw message.

net/ipv4/udp.c +7 -0
index 2caf54c24103..c02f6329c106 100644

Lines of this file are not shown. View the raw message.

net/ipv4/udp_offload.c +11 -9
index 86d32a1e62ac..7c6ac47b0bb1 100644

Lines of this file are not shown. View the raw message.

net/ipv6/ip6_fib.c +7 -7
index 7e0a30380be0..bbb9ed6d1ae6 100644

Lines of this file are not shown. View the raw message.

net/ipv6/ip6_gre.c +3 -0
index 0efd5b4346b0..501630e3f1b6 100644

Lines of this file are not shown. View the raw message.

net/ipv6/netfilter/ip6_tables.c +4 -0
index 277a5ee887eb..b17990d514ee 100644

Lines of this file are not shown. View the raw message.

net/ipv6/udp.c +1 -1
index d5d254ca2dfe..5a2abd179e08 100644

Lines of this file are not shown. View the raw message.

net/ipv6/udp_offload.c +1 -7
index b3d9ed96e5ea..28f63c01a595 100644

Lines of this file are not shown. View the raw message.

net/mac80211/cfg.c +2 -3
index 02bd90a53705..f277ce839ddb 100644

Lines of this file are not shown. View the raw message.

net/mac802154/llsec.c +13 -5
index 55550ead2ced..a4cc9d077c59 100644

Lines of this file are not shown. View the raw message.

net/mptcp/protocol.c +0 -3
index 5db1c0142abb..cde62dafda49 100644

Lines of this file are not shown. View the raw message.

net/mptcp/subflow.c +3 -0
index 80230787554e..ff7239fe3d2c 100644

Lines of this file are not shown. View the raw message.

net/netfilter/nf_tables_api.c +18 -2
index 42bf83a20cb5..6f5a031d70e7 100644

Lines of this file are not shown. View the raw message.

net/nfc/nci/core.c +5 -0
index 419a1d0ba4c9..2a821f2b2ffe 100644

Lines of this file are not shown. View the raw message.

net/rds/rdma.c +1 -1
index c29c7a59f205..3df0affff6b0 100644

Lines of this file are not shown. View the raw message.

net/sched/act_skbmod.c +5 -5
index ee9cc0abf9e1..d5b421072b99 100644

Lines of this file are not shown. View the raw message.

net/sunrpc/svc.c +102 -125

227 lines not on this page · raw message

net/sunrpc/svc_xprt.c +43 -25

68 lines not on this page · raw message

net/sunrpc/svcsock.c +6 -18
index be7081284a09..112236dd7290 100644

Lines of this file are not shown. View the raw message.

net/sunrpc/xdr.c +22 -0
index f0a0a4ad6d52..b227d0c8471f 100644

Lines of this file are not shown. View the raw message.

net/sunrpc/xprtrdma/svc_rdma_backchannel.c +1 -1
index 16897fcb659c..85c8cdda98b1 100644

Lines of this file are not shown. View the raw message.

net/xfrm/xfrm_user.c +3 -0
index ff56b6a0162e..d65f781f7a36 100644

Lines of this file are not shown. View the raw message.

scripts/Makefile.extrawarn +2 -0
index f182700e0ac1..6881a0c96bc1 100644

Lines of this file are not shown. View the raw message.

security/landlock/syscalls.c +15 -3
index 507d43827afe..229a6918b52f 100644

Lines of this file are not shown. View the raw message.

security/smack/smack_lsm.c +11 -1
index a5a78aef6403..c6f211758f4e 100644

Lines of this file are not shown. View the raw message.

sound/pci/hda/patch_realtek.c +6 -3
index 200d0b953d3b..94859fdd1da0 100644

Lines of this file are not shown. View the raw message.

sound/sh/aica.c +14 -3
index 6e9d6bd67369..8b47bfcd9031 100644

Lines of this file are not shown. View the raw message.

sound/soc/codecs/rt5682-sdw.c +2 -2
index 9fdd9afe00da..f452245b210f 100644

Lines of this file are not shown. View the raw message.

sound/soc/codecs/rt711-sdca-sdw.c +2 -2
index 4faf6b8544dd..25e8b9906f31 100644

Lines of this file are not shown. View the raw message.

sound/soc/codecs/rt711-sdw.c +2 -2
index 9545b8a7eb19..af7a0ab5669f 100644

Lines of this file are not shown. View the raw message.

sound/soc/soc-ops.c +1 -1
index c56379fac927..57caa91a4376 100644

Lines of this file are not shown. View the raw message.

tools/objtool/check.c +2 -1
index c3bb96e5bfa6..fd6714de2260 100644

Lines of this file are not shown. View the raw message.

tools/testing/selftests/mqueue/setting new file +1 -0
new file mode 100644
index 000000000000..a953c96aa16e

Lines of this file are not shown. View the raw message.

tools/testing/selftests/net/mptcp/diag.sh +3 -3
index 57a681107f73..a8178a9c1e10 100755

Lines of this file are not shown. View the raw message.

tools/testing/selftests/net/mptcp/mptcp_connect.sh +7 -0
index 8efff3f9c52a..5a1277d17286 100755

Lines of this file are not shown. View the raw message.

tools/testing/selftests/net/reuseaddr_conflict.c +1 -1
index 7c5b12664b03..bfb07dc49518 100644

Lines of this file are not shown. View the raw message.

tools/testing/selftests/net/udpgro_fwd.sh +2 -8
index fa5aa588e53f..ade308fb1ac7 100755

Lines of this file are not shown. View the raw message.

virt/kvm/async_pf.c +26 -5
index dd777688d14a..952afb1bc83b 100644

Lines of this file are not shown. View the raw message.

The rest of this diff is not shown. View the raw message.

Part of the diff is not shown here. View the raw message.