Skip to contentSkip to conversation

Linux 7.2.8

DISCUSSION Greg Kroah-Hartman 1 participant 2 messages Sep 25 Stable branch

lore
Share & tools
lore

Greg Kroah-Hartman

author maintainer
#0 lore raw

I'm announcing the release of the 7.2.8 kernel.

All users of the 7.2 kernel series must upgrade.

The updated 7.2.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-7.2.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-platform-trackpoint    |    2 
 Documentation/arch/arm64/memory-tagging-extension.rst          |    5 
 Documentation/hwmon/cgbc-hwmon.rst                             |   42 
 Documentation/netlink/specs/rt-neigh.yaml                      |    3 
 Documentation/networking/ip-sysctl.rst                         |    4 
 Makefile                                                       |    2 
 arch/arm/mach-socfpga/Kconfig                                  |    2 
 arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-an400.dts        |    2 
 arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-khadas-vim4.dts  |  113 +
 arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi                    |   44 
 arch/arm64/boot/dts/renesas/r8a779f0.dtsi                      |    1 
 arch/arm64/boot/dts/renesas/r9a09g047.dtsi                     |   10 
 arch/arm64/boot/dts/renesas/r9a09g056.dtsi                     |   10 
 arch/arm64/boot/dts/renesas/r9a09g057.dtsi                     |   10 
 arch/arm64/boot/dts/renesas/r9a09g077.dtsi                     |   27 
 arch/arm64/boot/dts/renesas/r9a09g087.dtsi                     |   27 
 arch/arm64/include/asm/percpu.h                                |   20 
 arch/arm64/kernel/hibernate-asm.S                              |    2 
 arch/arm64/kernel/hibernate.c                                  |    4 
 arch/arm64/kernel/mte.c                                        |    2 
 arch/mips/Kconfig                                              |    4 
 arch/mips/cavium-octeon/octeon-platform.c                      |    4 
 arch/powerpc/kernel/iommu.c                                    |    2 
 arch/powerpc/kvm/book3s_hv_nested.c                            |    2 
 arch/powerpc/kvm/book3s_hv_uvmem.c                             |    5 
 arch/x86/Kconfig.cpu                                           |   11 
 arch/x86/Makefile                                              |    5 
 arch/x86/entry/entry_fred.c                                    |   11 
 arch/x86/include/asm/div64.h                                   |    2 
 arch/x86/include/asm/text-patching.h                           |    4 
 arch/x86/kernel/alternative.c                                  |    6 
 arch/x86/kernel/cpu/microcode/intel.c                          |   26 
 arch/x86/kernel/kprobes/core.c                                 |    5 
 drivers/ata/libahci.c                                          |   15 
 drivers/ata/libahci_platform.c                                 |    2 
 drivers/block/sunvdc.c                                         |    9 
 drivers/bluetooth/btintel_pcie.c                               |    8 
 drivers/bluetooth/btmtk.c                                      |    7 
 drivers/bluetooth/btmtksdio.c                                  |   24 
 drivers/bluetooth/btmtkuart.c                                  |   20 
 drivers/bluetooth/btusb.c                                      |   17 
 drivers/bluetooth/hci_qca.c                                    |   14 
 drivers/clk/clk-scpi.c                                         |    8 
 drivers/dma-buf/dma-buf-mapping.c                              |   31 
 drivers/dma-buf/dma-fence.c                                    |   14 
 drivers/dma/dmaengine.c                                        |   10 
 drivers/dma/mmp_pdma.c                                         |    5 
 drivers/dma/pxa_dma.c                                          |    3 
 drivers/dma/sprd-dma.c                                         |    3 
 drivers/dma/sun6i-dma.c                                        |    9 
 drivers/dma/ti/k3-udma-glue.c                                  |    5 
 drivers/dma/xilinx/xilinx_dma.c                                |   26 
 drivers/firmware/arm_scpi.c                                    |    4 
 drivers/gpio/gpio-virtuser.c                                   |    3 
 drivers/gpio/gpiolib-of.c                                      |    6 
 drivers/gpio/gpiolib-shared.c                                  |    9 
 drivers/gpu/drm/amd/amdgpu/amdgpu.h                            |    3 
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c                     |    2 
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c                     |  145 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c                    |   43 
 drivers/gpu/drm/amd/amdgpu/mxgpu_ai.c                          |    7 
 drivers/gpu/drm/amd/amdgpu/nbio_v7_9.c                         |    2 
 drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c          |    7 
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v10.c               |    2 
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v11.c               |    2 
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v12.c               |   61 
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v12_1.c             |   70 
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c                |    6 
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c                |    5 
 drivers/gpu/drm/amd/display/dc/hwss/dcn30/dcn30_hwseq.c        |   13 
 drivers/gpu/drm/drm_atomic_uapi.c                              |   13 
 drivers/gpu/drm/gud/gud_pipe.c                                 |    7 
 drivers/gpu/drm/i915/display/intel_cursor.c                    |   15 
 drivers/gpu/drm/i915/display/skl_universal_plane.c             |   15 
 drivers/gpu/drm/msm/adreno/adreno_device.c                     |    2 
 drivers/gpu/drm/msm/adreno/adreno_gpu.c                        |    2 
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c                     |    1 
 drivers/gpu/drm/msm/dp/dp_display.c                            |   21 
 drivers/gpu/drm/msm/dsi/dsi_host.c                             |   36 
 drivers/gpu/drm/msm/hdmi/hdmi_phy.c                            |    8 
 drivers/gpu/drm/msm/msm_drv.c                                  |    2 
 drivers/gpu/drm/msm/msm_gem.h                                  |    3 
 drivers/gpu/drm/msm/msm_gem_vma.c                              |    2 
 drivers/gpu/drm/msm/msm_ringbuffer.c                           |    2 
 drivers/gpu/drm/msm/msm_ringbuffer.h                           |    1 
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/fbsr.c         |    2 
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/gsp.c          |    8 
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/fbsr.c         |    8 
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/gsp.c          |    3 
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/nvrm/gsp.h     |    8 
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/rm.h                |    2 
 drivers/gpu/drm/scheduler/sched_entity.c                       |    8 
 drivers/gpu/drm/scheduler/sched_rq.c                           |   20 
 drivers/gpu/drm/ttm/ttm_bo.c                                   |    2 
 drivers/gpu/drm/vc4/vc4_kms.c                                  |    2 
 drivers/gpu/drm/xe/xe_i2c.c                                    |    3 
 drivers/gpu/drm/xe/xe_mmio_gem.c                               |   33 
 drivers/gpu/drm/xe/xe_mmio_gem.h                               |    2 
 drivers/gpu/drm/xe/xe_shrinker.c                               |  124 -
 drivers/hwmon/cgbc-hwmon.c                                     |  129 +
 drivers/hwmon/gpio-fan.c                                       |    4 
 drivers/hwmon/hp-wmi-sensors.c                                 |   32 
 drivers/hwmon/pmbus/pmbus.h                                    |    3 
 drivers/hwmon/pmbus/tps53679.c                                 |   11 
 drivers/hwmon/pwm-fan.c                                        |   13 
 drivers/hwmon/w83791d.c                                        |    1 
 drivers/hwmon/w83793.c                                         |    4 
 drivers/i2c/busses/i2c-at91-core.c                             |    3 
 drivers/i2c/busses/i2c-at91-master.c                           |   12 
 drivers/i2c/busses/i2c-at91.h                                  |    1 
 drivers/i2c/busses/i2c-imx.c                                   |    3 
 drivers/i2c/busses/i2c-qcom-cci.c                              |   20 
 drivers/i2c/i2c-atr.c                                          |    1 
 drivers/infiniband/core/iwpm_util.c                            |    9 
 drivers/infiniband/core/mad.c                                  |    3 
 drivers/infiniband/core/rdma_core.c                            |    1 
 drivers/infiniband/core/ucma.c                                 |    7 
 drivers/infiniband/core/uverbs_flow.c                          |    1 
 drivers/infiniband/core/uverbs_main.c                          |   25 
 drivers/infiniband/core/verbs.c                                |   12 
 drivers/infiniband/hw/bnxt_re/main.c                           |   10 
 drivers/infiniband/hw/bnxt_re/uapi.c                           |    6 
 drivers/infiniband/hw/efa/efa_com.c                            |    7 
 drivers/infiniband/hw/efa/efa_com.h                            |    1 
 drivers/infiniband/hw/efa/efa_main.c                           |   33 
 drivers/infiniband/hw/erdma/erdma_main.c                       |    4 
 drivers/infiniband/hw/erdma/erdma_verbs.c                      |   18 
 drivers/infiniband/hw/hfi1/file_ops.c                          |   23 
 drivers/infiniband/hw/irdma/verbs.c                            |    2 
 drivers/infiniband/hw/mlx4/sysfs.c                             |    4 
 drivers/infiniband/hw/mlx5/main.c                              |    7 
 drivers/infiniband/sw/rxe/rxe_mcast.c                          |   50 
 drivers/infiniband/sw/rxe/rxe_mr.c                             |    3 
 drivers/infiniband/sw/rxe/rxe_odp.c                            |   16 
 drivers/infiniband/sw/rxe/rxe_verbs.c                          |   13 
 drivers/infiniband/sw/siw/siw_cm.c                             |    7 
 drivers/infiniband/sw/siw/siw_qp_rx.c                          |    2 
 drivers/infiniband/ulp/ipoib/ipoib.h                           |    7 
 drivers/infiniband/ulp/ipoib/ipoib_ib.c                        |   12 
 drivers/infiniband/ulp/ipoib/ipoib_multicast.c                 |   16 
 drivers/infiniband/ulp/iser/iser_initiator.c                   |   16 
 drivers/infiniband/ulp/isert/ib_isert.c                        |   22 
 drivers/infiniband/ulp/isert/ib_isert.h                        |    2 
 drivers/infiniband/ulp/rtrs/rtrs-clt-trace.h                   |    2 
 drivers/infiniband/ulp/rtrs/rtrs-clt.c                         |    8 
 drivers/infiniband/ulp/rtrs/rtrs-clt.h                         |    2 
 drivers/infiniband/ulp/rtrs/rtrs-srv-trace.h                   |    2 
 drivers/input/evdev.c                                          |    2 
 drivers/input/input-compat.c                                   |    2 
 drivers/input/joystick/xpad.c                                  |   10 
 drivers/input/keyboard/adp5588-keys.c                          |   12 
 drivers/input/keyboard/atkbd.c                                 |    8 
 drivers/input/misc/soc_button_array.c                          |   16 
 drivers/input/mouse/synaptics.c                                |    8 
 drivers/input/rmi4/rmi_driver.c                                |   13 
 drivers/input/rmi4/rmi_smbus.c                                 |   10 
 drivers/input/serio/hp_sdc.c                                   |    2 
 drivers/input/serio/i8042-acpipnpio.h                          |    7 
 drivers/input/touchscreen/cyttsp5.c                            |    1 
 drivers/input/touchscreen/eeti_ts.c                            |    1 
 drivers/memstick/core/ms_block.c                               |    2 
 drivers/misc/ntsync.c                                          |    3 
 drivers/mmc/core/bus.c                                         |    2 
 drivers/mmc/core/host.c                                        |    1 
 drivers/mmc/core/sdio_uart.c                                   |    3 
 drivers/mmc/host/mmc_hsq.c                                     |    8 
 drivers/mmc/host/mmc_spi.c                                     |    1 
 drivers/mmc/host/mmci.c                                        |    3 
 drivers/mmc/host/mxcmmc.c                                      |    4 
 drivers/mmc/host/rtsx_pci_sdmmc.c                              |    5 
 drivers/mmc/host/sdhci-of-aspeed.c                             |    5 
 drivers/mmc/host/sdhci_am654.c                                 |   43 
 drivers/mmc/host/sh_mmcif.c                                    |    3 
 drivers/net/dsa/mxl862xx/mxl862xx.c                            |   23 
 drivers/net/ethernet/airoha/airoha_ppe.c                       |   17 
 drivers/net/ethernet/broadcom/genet/bcmgenet.c                 |   19 
 drivers/net/ethernet/cadence/macb_ptp.c                        |    9 
 drivers/net/ethernet/cortina/gemini.c                          |    2 
 drivers/net/ethernet/intel/igc/igc_tsn.c                       |    6 
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c                  |    7 
 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c                |    3 
 drivers/net/ethernet/mediatek/mtk_ppe_offload.c                |   17 
 drivers/net/ethernet/mellanox/mlx5/core/en_main.c              |    2 
 drivers/net/ethernet/meta/fbnic/fbnic_txrx.c                   |   42 
 drivers/net/ethernet/meta/fbnic/fbnic_txrx.h                   |    9 
 drivers/net/ethernet/microchip/lan743x_main.c                  |    2 
 drivers/net/ethernet/sfc/falcon/tx.c                           |    8 
 drivers/net/ethernet/sfc/siena/tx.c                            |    8 
 drivers/net/ethernet/socionext/netsec.c                        |    2 
 drivers/net/ethernet/stmicro/stmmac/hwif.h                     |    2 
 drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c           |    2 
 drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c               |   14 
 drivers/net/ethernet/stmicro/stmmac/stmmac_main.c              |    6 
 drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c                |   99 -
 drivers/net/fddi/skfp/skfddi.c                                 |    3 
 drivers/net/phy/mediatek/mtk-phy-lib.c                         |   27 
 drivers/net/wireless/ath/ath11k/mac.c                          |   25 
 drivers/net/wireless/ath/wcn36xx/dxe.c                         |    2 
 drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c        |    2 
 drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw/core.c    |    5 
 drivers/net/wireless/broadcom/brcm80211/brcmsmac/mac80211_if.c |    4 
 drivers/net/wireless/intel/ipw2x00/libipw_crypto_tkip.c        |   12 
 drivers/net/wireless/intel/ipw2x00/libipw_rx.c                 |    6 
 drivers/net/wireless/intel/iwlegacy/common.c                   |    2 
 drivers/net/wireless/intersil/p54/eeprom.c                     |   22 
 drivers/net/wireless/marvell/libertas_tf/main.c                |    2 
 drivers/net/wireless/marvell/mwifiex/cfg80211.c                |   12 
 drivers/net/wireless/marvell/mwifiex/pcie.c                    |    2 
 drivers/net/wireless/marvell/mwifiex/scan.c                    |   54 
 drivers/net/wireless/marvell/mwifiex/util.c                    |   10 
 drivers/net/wireless/microchip/wilc1000/cfg80211.c             |   14 
 drivers/net/wireless/microchip/wilc1000/wlan.c                 |    9 
 drivers/net/wireless/rsi/rsi_91x_mgmt.c                        |    2 
 drivers/net/wireless/ti/wlcore/main.c                          |    4 
 drivers/net/wireless/virtual/mac80211_hwsim_main.c             |   39 
 drivers/net/wireless/virtual/virt_wifi.c                       |    4 
 drivers/net/wwan/mhi_wwan_mbim.c                               |   28 
 drivers/net/wwan/t7xx/t7xx_netdev.c                            |    4 
 drivers/pci/controller/dwc/pci-imx6.c                          |   12 
 drivers/perf/arm-cmn.c                                         |   10 
 drivers/phy/mediatek/phy-mtk-hdmi-mt8195.c                     |    4 
 drivers/phy/mediatek/phy-mtk-hdmi-mt8195.h                     |    3 
 drivers/phy/renesas/phy-rcar-gen3-usb2.c                       |  310 +++-
 drivers/power/sequencing/Kconfig                               |    3 
 drivers/power/sequencing/core.c                                |   11 
 drivers/scsi/fnic/fdls_disc.c                                  |  726 +++++-----
 drivers/scsi/fnic/fip.c                                        |  117 -
 drivers/scsi/fnic/fip.h                                        |    2 
 drivers/scsi/fnic/fnic.h                                       |   78 -
 drivers/scsi/fnic/fnic_fcs.c                                   |  126 -
 drivers/scsi/fnic/fnic_isr.c                                   |   41 
 drivers/scsi/fnic/fnic_main.c                                  |   89 -
 drivers/scsi/fnic/fnic_scsi.c                                  |  210 +-
 drivers/scsi/pm8001/pm8001_init.c                              |    6 
 drivers/scsi/qla2xxx/qla_os.c                                  |    2 
 drivers/scsi/scsi.c                                            |   24 
 drivers/soc/samsung/exynos-pmu.c                               |    7 
 drivers/soundwire/cadence_master.c                             |    7 
 drivers/soundwire/dmi-quirks.c                                 |    7 
 drivers/spi/spi-fsl-qspi.c                                     |    5 
 drivers/spi/spi-qpic-snand.c                                   |    4 
 drivers/spi/spi-virtio.c                                       |    2 
 drivers/spi/spi-zynqmp-gqspi.c                                 |   34 
 drivers/watchdog/da9062_wdt.c                                  |    4 
 drivers/watchdog/da9063_wdt.c                                  |    4 
 drivers/watchdog/digicolor_wdt.c                               |   13 
 drivers/watchdog/msc313e_wdt.c                                 |   16 
 drivers/watchdog/rtd119x_wdt.c                                 |    7 
 drivers/watchdog/rzv2h_wdt.c                                   |    7 
 drivers/watchdog/sp5100_tco.c                                  |    6 
 drivers/watchdog/starfive-wdt.c                                |    2 
 fs/9p/vfs_addr.c                                               |   28 
 fs/btrfs/dev-replace.c                                         |    1 
 fs/btrfs/disk-io.c                                             |    4 
 fs/btrfs/file.c                                                |    4 
 fs/btrfs/free-space-tree.c                                     |   14 
 fs/btrfs/inode.c                                               |   18 
 fs/btrfs/super.c                                               |    8 
 fs/btrfs/tree-checker.c                                        |    2 
 fs/btrfs/verity.c                                              |   18 
 fs/dax.c                                                       |    9 
 fs/exec.c                                                      |   29 
 fs/nfsd/export.c                                               |    3 
 fs/ntfs/attrib.c                                               |  259 ++-
 fs/ntfs/attrib.h                                               |    9 
 fs/ntfs/attrlist.c                                             |  224 ++-
 fs/ntfs/attrlist.h                                             |    2 
 fs/ntfs/compress.c                                             |    2 
 fs/ntfs/file.c                                                 |    3 
 fs/ntfs/inode.c                                                |   35 
 fs/ntfs/mft.c                                                  |  447 ++++--
 fs/ntfs/mft.h                                                  |    2 
 fs/ntfs/namei.c                                                |    2 
 fs/ntfs/super.c                                                |   12 
 fs/ntfs/volume.h                                               |   12 
 fs/smb/client/cifssmb.c                                        |    2 
 fs/smb/client/connect.c                                        |    9 
 fs/smb/client/file.c                                           |    4 
 fs/smb/client/misc.c                                           |   12 
 fs/smb/client/reparse.c                                        |   58 
 fs/smb/client/reparse.h                                        |    7 
 fs/smb/client/sess.c                                           |  106 -
 fs/smb/client/smb2inode.c                                      |   11 
 fs/smb/client/smb2ops.c                                        |   51 
 fs/smb/client/smb2pdu.c                                        |   13 
 fs/smb/client/trace.h                                          |    1 
 fs/smb/server/connection.c                                     |   84 +
 fs/smb/server/connection.h                                     |    3 
 fs/smb/server/mgmt/user_session.c                              |  199 ++
 fs/smb/server/mgmt/user_session.h                              |    8 
 fs/smb/server/misc.h                                           |    7 
 fs/smb/server/proc.c                                           |  159 ++
 fs/smb/server/server.c                                         |    9 
 fs/smb/server/smb2pdu.c                                        |  126 +
 fs/smb/server/smb2pdu.h                                        |    3 
 fs/smb/server/smb_common.h                                     |    2 
 fs/smb/server/stats.h                                          |   58 
 fs/smb/server/vfs_cache.c                                      |   26 
 fs/smb/server/vfs_cache.h                                      |    1 
 fs/super.c                                                     |    1 
 include/keys/request_key_auth-type.h                           |    2 
 include/linux/dma-fence.h                                      |    6 
 include/linux/ieee80211-mesh.h                                 |    4 
 include/linux/netdevice.h                                      |   13 
 include/net/bluetooth/coredump.h                               |    2 
 include/net/codel.h                                            |    5 
 include/net/codel_impl.h                                       |   16 
 include/net/mac80211.h                                         |    5 
 include/net/sock.h                                             |    2 
 include/rdma/uverbs_types.h                                    |    2 
 include/sound/soc.h                                            |    3 
 include/sound/soc_sdw_utils.h                                  |   31 
 include/trace/events/dma.h                                     |    2 
 include/uapi/rdma/bnxt_re-abi.h                                |    2 
 kernel/cgroup/cgroup.c                                         |    7 
 kernel/dma/coherent.c                                          |    3 
 kernel/dma/swiotlb.c                                           |    4 
 kernel/events/core.c                                           |    4 
 kernel/exit.c                                                  |   11 
 kernel/fork.c                                                  |    4 
 kernel/sched/core.c                                            |    9 
 kernel/sched/ext/ext.c                                         |   27 
 kernel/sched/ext/idle.c                                        |   11 
 kernel/signal.c                                                |  115 +
 kernel/time/jiffies.c                                          |    2 
 kernel/time/posix-cpu-timers.c                                 |   40 
 mm/filemap.c                                                   |    2 
 mm/huge_memory.c                                               |   86 -
 mm/memblock.c                                                  |   18 
 mm/memcontrol.c                                                |    2 
 mm/mlock.c                                                     |    2 
 mm/mremap.c                                                    |    9 
 mm/shrinker.c                                                  |    2 
 mm/swapfile.c                                                  |    2 
 mm/vma.c                                                       |    6 
 net/atm/pppoatm.c                                              |   42 
 net/bluetooth/coredump.c                                       |   65 
 net/bluetooth/eir.c                                            |   10 
 net/bluetooth/hci_codec.c                                      |   36 
 net/bluetooth/hci_conn.c                                       |   21 
 net/bluetooth/hci_core.c                                       |   18 
 net/bluetooth/hci_sync.c                                       |    2 
 net/bluetooth/iso.c                                            |   53 
 net/bluetooth/rfcomm/sock.c                                    |   13 
 net/bridge/br_mst.c                                            |   20 
 net/bridge/br_vlan.c                                           |   31 
 net/core/dev.c                                                 |  108 +
 net/core/drop_monitor.c                                        |   18 
 net/core/neighbour.c                                           |   35 
 net/core/skbuff.c                                              |   32 
 net/core/sock.c                                                |   16 
 net/ipv4/esp4.c                                                |    6 
 net/ipv4/icmp.c                                                |   17 
 net/ipv4/ip_tunnel_core.c                                      |   16 
 net/ipv4/sysctl_net_ipv4.c                                     |    4 
 net/ipv4/tcp_input.c                                           |    3 
 net/ipv4/tcp_ulp.c                                             |    4 
 net/ipv6/esp6.c                                                |    6 
 net/ipv6/seg6_local.c                                          |    3 
 net/ipv6/tcp_ipv6.c                                            |    3 
 net/ipv6/xfrm6_output.c                                        |   10 
 net/mac80211/cfg.c                                             |   18 
 net/mac80211/debugfs.c                                         |    2 
 net/mac80211/debugfs_netdev.c                                  |    9 
 net/mac80211/ieee80211_i.h                                     |    2 
 net/mac80211/iface.c                                           |   39 
 net/mac80211/main.c                                            |    4 
 net/mac80211/mesh.c                                            |   34 
 net/mac80211/offchannel.c                                      |    7 
 net/mac80211/pm.c                                              |    8 
 net/mac80211/scan.c                                            |    2 
 net/mac80211/tdls.c                                            |   40 
 net/mac80211/tx.c                                              |  107 -
 net/netfilter/nf_flow_table_core.c                             |   12 
 net/netfilter/nf_flow_table_path.c                             |    7 
 net/netfilter/nf_nat_core.c                                    |   46 
 net/netfilter/nf_tables_api.c                                  |   22 
 net/netfilter/nft_nat.c                                        |    2 
 net/netlink/af_netlink.c                                       |   42 
 net/netlink/diag.c                                             |   20 
 net/openvswitch/conntrack.c                                    |    2 
 net/packet/af_packet.c                                         |    4 
 net/packet/internal.h                                          |    2 
 net/psp/psp_sock.c                                             |    4 
 net/rds/ib_cm.c                                                |    2 
 net/sched/act_api.c                                            |   11 
 net/sched/sch_hhf.c                                            |    9 
 net/sched/sch_mqprio.c                                         |    4 
 net/sched/sch_mqprio_lib.c                                     |    7 
 net/sched/sch_taprio.c                                         |   26 
 net/unix/garbage.c                                             |   17 
 net/wireless/core.c                                            |  126 +
 net/wireless/core.h                                            |   16 
 net/wireless/ibss.c                                            |   36 
 net/wireless/rdev-ops.h                                        |    3 
 net/wireless/reg.c                                             |    2 
 net/wireless/scan.c                                            |   43 
 net/wireless/util.c                                            |   38 
 net/xfrm/espintcp.c                                            |    6 
 net/xfrm/xfrm_input.c                                          |   22 
 net/xfrm/xfrm_iptfs.c                                          |   12 
 net/xfrm/xfrm_policy.c                                         |   20 
 net/xfrm/xfrm_state.c                                          |    9 
 net/xfrm/xfrm_user.c                                           |   18 
 rust/kernel/net/phy.rs                                         |   38 
 scripts/generate_rust_target.rs                                |    5 
 security/keys/encrypted-keys/encrypted.c                       |   20 
 security/keys/gc.c                                             |    4 
 security/keys/request_key_auth.c                               |   12 
 security/keys/trusted-keys/trusted_tpm2.c                      |   12 
 security/selinux/avc.c                                         |    5 
 security/selinux/hooks.c                                       |  150 +-
 security/selinux/include/objsec.h                              |   10 
 sound/core/init.c                                              |    3 
 sound/core/pcm_timer.c                                         |    7 
 sound/hda/common/controller.c                                  |    2 
 sound/soc/amd/acp/acp-sdw-legacy-mach.c                        |   16 
 sound/soc/amd/acp/acp-sdw-sof-mach.c                           |   21 
 sound/soc/codecs/cs-amp-lib.c                                  |    2 
 sound/soc/codecs/hdmi-codec.c                                  |    6 
 sound/soc/codecs/rt712-sdca-dmic.c                             |   14 
 sound/soc/intel/boards/sof_sdw.c                               |    2 
 sound/soc/sdw_utils/soc_sdw_bridge_cs35l56.c                   |    4 
 sound/soc/sdw_utils/soc_sdw_utils.c                            |    9 
 sound/soc/soc-pcm.c                                            |   18 
 sound/soc/ux500/ux500_msp_i2s.h                                |    4 
 sound/usb/6fire/comm.c                                         |   42 
 sound/usb/6fire/comm.h                                         |    2 
 sound/usb/6fire/midi.c                                         |   43 
 sound/usb/6fire/midi.h                                         |    2 
 sound/usb/6fire/pcm.c                                          |  138 +
 sound/usb/6fire/pcm.h                                          |    5 
 sound/usb/bcd2000/bcd2000.c                                    |   33 
 sound/usb/card.h                                               |    1 
 sound/usb/endpoint.c                                           |   12 
 sound/virtio/virtio_card.c                                     |    4 
 tools/objtool/Makefile                                         |    8 
 tools/testing/selftests/arm64/mte/check_gcr_el1_cswitch.c      |    2 
 tools/testing/selftests/landlock/fs_test.c                     |  197 ++
 439 files changed, 6817 insertions(+), 2709 deletions(-)

Aamir Ahmed (1):
Bluetooth: eir: validate service data length before reading UUID

Abdurrahman Hussain (1):
gpiolib: of: don't mark hog nodes OF_POPULATED before a chip is found

Ahmed Naseef (1):
net: phy: mediatek: do not report link and per-speed LED rules together

Alberto Carboneri (1):
scsi: core: Validate MODE SENSE lengths in scsi_cdl_enable()

Aleksandr Nogikh (1):
xfrm: add missing RCU read lock in xfrm_send_migrate_state()

Alex Bereza (2):
dmaengine: xilinx_dma: Fix hardware buffer descriptor reuse order
dmaengine: xilinx_dma: Fix hardware buffer descriptor chain after cyclic DMA

Alexander Chesnokov (1):
dmaengine: ti: k3-udma-glue: fix NULL dereference in k3_udma_glue_release_rx_chn()

Alexei Turtanov (1):
Input: atkbd - skip deactivate for Xiaomi Redmi Book Pro 16 2026

Alexey Klimov (1):
soc: samsung: exynos-pmu: fix use-after-free of interrupt generator node

Ali Ahmet Memis (1):
wifi: wilc1000: fix out-of-bounds read in P2P public action frames

Alvin Šipraga (1):
Input: adp5588-keys - cache GPIO state before registering the gpiochip

Amit Machhiwal (2):
KVM: PPC: Book3S HV: fix use-after-free in kvmhv_emulate_tlbie_all_lpid()
KVM: PPC: Book3S HV: fix secure device page leak on uv_page_in() failure

Anand Jain (1):
btrfs: derive f_fsid with dev_t only when temp_fsid is active

Andrea Mayer (1):
seg6: set IPSKB_L3SLAVE from IP6SKB_L3SLAVE on IPIP decapsulation

Andrea Righi (1):
sched/core: Avoid false migration warning for proxy donors

AngeloGioacchino Del Regno (2):
phy: mediatek: phy-mtk-hdmi-mt8195: Fix PLL calc divisor overflow
phy: mediatek: phy-mtk-hdmi-mt8195: Fix TMDS clk bit ratio setting

Aohan Mei (1):
rds: ib: use rds_conn_drop() on protocol version mismatch

April Cardenas (1):
smb/client: send lease break ACKs thru correct session for multiuser mounts

Arun Easi (1):
scsi: fnic: Fix missed link-up when critical IRQ targets offline CPU

Baineng Shou (1):
dmaengine: mmp_pdma: fix wrong sg length in mmp_pdma_prep_slave_sg()

Bard Liao (1):

      soundwire: cadence_master: wait and cancel cdns->work before clock stop

Bartosz Golaszewski (3):
power: sequencing: don't call .post_enable() if pwrseq_unit_enable() failed
power: sequencing: fix NULL-pointer dereference in pwrseq_unit_new()
power: sequencing: fix NULL-pointer dereference in pwrseq_device_register()

Biju Das (1):
power: sequencing: Fix build issue with COMPILE_TEST

Bogdan Nicolae (1):
wifi: brcmfmac: cyw: pass PMKID to firmware if present

Bradley Morgan (1):
arm64: hibernate: pass HVC_SET_VECTORS args to the resume hvc

Breno Leitao (1):
arm64: hibernate: clone only the linear map that exists at runtime

Carolina Jubran (1):
IB/IPoIB: Avoid restoring OPER_UP after multicast flush

Catalin Marinas (1):
arm64: mte: Fix PTRACE_{PEEK,POKE}MTETAGS error documentation

Cen Zhang (1):
KEYS: encrypted: fix integer overflow of datablob_len

Cen Zhang (Microsoft Security FORGE Labs) (1):
xfrm: hold net_device reference under RCU in bundle creation

Chandrashekar Devegowda (1):
Bluetooth: btintel_pcie: validate TX skb length in send_sync

Chang S. Bae (2):
x86/build/64: Prevent native builds from generating EGPR use x86/microcode/intel: Reject problematic loading on Granite Rapids systems

Cheng Xu (1):
RDMA/erdma: Use IRQ-safe XArray helpers for QP and CQ tables

Chengfeng Ye (2):
Bluetooth: hci_sync: Serialize local codec list cleanup
xfrm: serialize state GC with device state flush

Chengjun Yao (1):
drm/amdgpu: fix rmmio iounmap skipped on device removal

Chris Lu (2):
Bluetooth: btmtk: fix wrong status for short WMT FUNC_CTRL events
Bluetooth: btmtksdio, btmtkuart: validate WMT event length before struct access

Chris Sommers (1):
Input: i8042 - add quirk for Acer Aspire Go 15 AG15-42P

Christian Göttsche (1):
selinux: always fill AVC decision in avc_has_perm_noaudit()

Christian König (1):
dma-buf/dma-fence: fix checking signaling bit for timeline and driver name v3

Christian Lugnberg (2):
dmaengine: sun6i: fix non-atomic read of DMA position registers
dmaengine: sun6i: fix undefined behaviour in sun6i_dma_tx_status

Chunfeng Song (1):
rust: net: phy: fix off-by-one bit positions in device status accessors

Claudiu Beznea (1):
phy: renesas: rcar-gen3-usb2: Avoid long delay in atomic context

Cong Nguyen (1):
hwmon: (gpio-fan) return IRQ_HANDLED from the shared alarm IRQ handler

Daehyeon Ko (1):
wifi: libipw: reject TKIP frames without a full MIC

Daniel Golle (1):
net: dsa: mxl862xx: disable the stats poll on teardown

Daniel Linjama (1):
btrfs: handle lack of space when cleaning up verity items

Daniel Zahka (1):

      net: psp: avoid conflicts with skb->decrypted and sk_validate_xmit_skb()

David Francis (2):
drm/amdkfd: Avoid integer underflow in EOP ring size calculation. drm/amdkfd: Avoid integer underflow with ffs in EOP ring size calc

David Howells (1):
9p: Fix v9fs_issue_write() to update i_size and remote_i_size

David Hu (2):
dma-buf: Fix silent overflow for phys vec to sgt
dma-buf: Split sgl by largest page-aligned chunk

David Laight (1):

      x86/div64: Fix addition of large constants in mul_u64_add_u64_div_u64()

Devin Wittmayer (1):
wifi: mac80211: refuse to make a monitor active when it has no queue

Dinh Nguyen (1):
arm64: dts: socfpga: change access permission from 755 to 644

Diogo Ivo (Schneider Electric) (4):
mmc: sdhci_am654: Move tuning_loop to local variable
mmc: sdhci_am654: Reset command and data lines on failed tuning
mmc: sdhci_am654: Clear ITAPDLY on tuning failure
mmc: sdhci_am654: Fallback to DT-provided itap delay on DDR50 tuning failure

Dmitriy Chumachenko (1):
drm/amdgpu: check ras and obj before dereference

Dmitriy Okunev (1):
net: mvpp2: prevent buffer overflow in page_pool allocation

Dmitry Baryshkov (1):
drm/msm/dsi: round the byte clock rate after reparenting to the PHY PLL

Dmitry Torokhov (2):
Input: rmi_smbus - fix out-of-bounds read in rmi_smb_write_block()
Input: synaptics-rmi4 - fix GPF in suspend and resume when unbound

Dong Chenchen (1):
ipv4: icmp: reject RTN_UNREACHABLE input routes in icmp_route_lookup

Donggeun Yoo (3):
dma-coherent: report a failed reserved memory assignment
dma-mapping: don't trace the DMA address when the allocation fails
swiotlb: use the adjusted address for the highmem page lookup

Doruk Tan Ozturk (1):
wifi: mwifiex: bound the pairwise-cipher OUI walk to the IE length

Eric Dumazet (11):
xfrm: add missing rcu_read_lock(), skb_dst_force() and dev_hold() for xfrm_trans_reinject()
tcp: do not let tcp_rmem be set below 4096
pppoatm: ensure a writable skb header and linear data
drop_monitor: synchronize tracepoint unregistration on error path
drop_monitor: use timer_shutdown_sync() to prevent timer rearming during teardown
drop_monitor: use raw_cpu_ptr() in tracepoint probes
drop_monitor: fix out-of-bounds write in reset_per_cpu_data()
netlink: do not free nlk->groups while lockless readers can use it
net: lock the socket in sock_gettstamp()
net: prevent torn reads in netdev_tc_txq
net: skbuff: do not leave stale header offsets after pskb_carve()

Erich Sartison (1):
Input: xpad - add support for Victrix Pro BFG Controller

Fan Wu (5):
mmc: core: Cancel SDIO IRQ work before freeing host
mmc: hsq: Fix use-after-free in retry work
mmc: mmci: Fix use-after-free in busy-timeout work
mmc: mxcmmc: cancel data work and watchdog on remove
wifi: wcn36xx: Fix potential use-after-free in TX ack timer teardown

Farhad Alemi (1):
net: remove WARN_ON_ONCE() from the dev_fill_forward_path() loop check

Felix Gu (1):
mmc: sdio_uart: fix xmit_fifo leak when the port table is full

Fernando Fernandez Mancera (1):
netfilter: nf_tables: fix device name and prefix match in hook lookup

Filipe Manana (4):
btrfs: tree-checker: print dev extent offset in error message
btrfs: abort transaction on failure to update inode for hole punching and reflinking
btrfs: check if there is space for chunk item when validating sys chunk array
btrfs: fix creation of compressed inline extents that don't save space

Florian Maillard (1):
mmc: rtsx_pci_sdmmc: ignore broken write-protect on ThinkPad X260

Francis Marlou Pacaro (1):
drm/amd/display: fix MALL hysteresis timer underflow at high refresh rates

Frank Sorenson (8):
smb: client: reject short Next offsets in parse_server_interfaces()
smb: client: fix next_buffer UAF and NextCommand bounds in compound PDUs
smb: client: fix OOB struct field reads in move_smb2_ea_to_cifs()
smb: client: fix potential OOB read in smb3_enum_snapshots()
smb: client: fix reparse buffer bounds in cifs_query_reparse_point()
smb: client: fix server->total_read for compound encrypted PDUs
smb: client: fix missing lower-bound check on DFS referral string offsets
smb: client: fix missing iov bounds check in parse_posix_sids()

Frieder Schrempf (1):
spi: fsl-qspi: Reprogram the clock rate when the operation frequency changes

Gabor Juhos (1):
spi: spi-qpic-snand: avoid writing QPIC_EBI2_ECC_BUF_CFG register

Gang Yan (1):
RDMA/rxe: Fix integer overflow in mr_check_range() leading to OOB access

Greg Kroah-Hartman (1):

      Linux 7.2.8

Gris Ge (1):
net: ip_tunnel: initialize options_len before referencing options

Guanghui Yang (1):
btrfs: clear free space tree creation state on rebuild failure

Guanglei Zhu (3):
net: wwan: t7xx: validate the netif index in t7xx_ccmni_recv_skb()
net: wwan: mhi_wwan_mbim: guard against a cyclic NDP chain
net: wwan: mhi_wwan_mbim: check skb_copy_bits() return value

Guangshuo Li (5):
i2c: imx: disable autosuspend on remove
hwmon: (w83791d) remove fan/pwm 4-5 sysfs group on remove
hwmon: (w83793) release probe data through kref drm/msm/adreno: fix autosuspend cleanup during teardown drm/msm/hdmi_phy: fix runtime PM cleanup on probe failure

Guoqing Jiang (1):
RDMA/siw: Clear association under lock if siw_qp_modify fails in siw_accept

Günther Noack (3):
selftests/landlock: Use an actual chardev for MAKE_CHAR audit test selftests/landlock: Add tests for whiteout object creation selftests/landlock: Add audit test for whiteout object creation

Hans de Goede (2):
Input: soc_button_array - fix MS Surface Pro 11 probe failure
Input: soc_button_array - check btns_desc->package.count

Hao-Qun Huang (1):
spi: virtio: Use the per-transfer bits per word

Henry Martin (1):
xfrm: iptfs: fix runt reassembly panic from short inner tot_len

Hohyun Sim (1):
net: fddi: skfp: fix NULL deref when setting the MAC address while down

Hongling Zeng (1):
btrfs: take commit root semaphore when iterating in mark_block_group_to_copy()

HyeongJun An (1):
ASoC: hdmi-codec: Report a change when the channel status moves

Hyunwoo Kim (1):
exec: Cleanup POSIX timers right after de_thread()

Ian Luites (1):
soundwire: dmi-quirks: Disable ghost Realtek on Asus GX651AX

Ibrahim Abdelkader (1):
Bluetooth: hci_qca: Do not write to the serial port after it is closed

Ilia Levi (2):
drm/xe/mmio_gem: forbid VMA split drm/xe/mmio_gem: use write-back mapping for dummy page

Inbal Schussheim (1):
tcp: exclude old ACKs from tcp fast path

Itai Handler (1):
spi: spi-zynqmp-gqspi: stop the controller on shutdown

Ivan Pustogarov (1):
wifi: mac80211: avoid out-of-bounds read for empty PREQ elements

Iván Ezequiel Rodriguez (3):
Input: evdev - zero absinfo before partial copy in EVIOCSABS
Input: zero ff_effect before compat copy in input_ff_effect_from_user
ntsync: reject wait ioctls with zero owner

Jacob Moroni (1):
RDMA/irdma: Enforce local fence for IB_WR_REG_MR

Jakub Kicinski (1):
eth: fbnic: ring the doorbell if a burst ends in a drop

Jamal Hadi Salim (2):
net/sched: codel: bound the dropping loop per dequeue call net/sched: hhf: cap hh_flows_limit at change time

James Clark (1):
net: macb: fix ordering around PTP timestamp read

James Seo (1):
hwmon: (hp-wmi-sensors) Improve raw WMI string handling

Jarkko Sakkinen (1):
KEYS: trusted: Fix tpm2_load_cmd() boundary check

Jeff Layton (1):
nfsd: fix handling of NFSEXP_PNFS in the netlink codepath

Jeffin Philip (1):
RDMA/core: fix refcount bug in iwpm_get_nlmsg_request()

Jens Axboe (1):
sunvdc: fix -EIO issue due to lack of retries

Jeremy Nyberg (1):
Input: xpad - fix PDP Marvel Xbox 360 controller

Jesse Casco (1):
drm/msm/dp: skip PUSH_IDLE when the link was never enabled

Jiangshan Yi (3):
ASoC: codecs: rt712-sdca-dmic: fix uninitialized stream_config->type
wifi: brcmsmac: fix UAF in brcms_free_timer()
wifi: libertas_tf: fix UAF in lbtf_free_adapter()

Jiayuan Chen (1):
mm/shrinker: fix bogus set_shrinker_bit() with cgroup.memory=nokmem

Jinke Han (1):
x86/kprobes: Fix crash when probing CS CALL instructions

Johannes Berg (30):
wifi: cfg80211: don't get the radio mask for netdev-less wdevs
wifi: cfg80211: check IP header size in cfg80211_classify8021d()
wifi: cfg80211: don't free driver-owned scan requests
wifi: cfg80211: only group hidden BSSes with beacon entries
wifi: cfg80211: don't filter by BSS type when removing stale entries
wifi: cfg80211: ibss: ref BSS entry for joined event
wifi: cfg80211: fix NAN regulatory enforcement
wifi: mac80211: don't start a ROC while scanning
wifi: mac80211: don't warn when an IBSS has no channel to scan
wifi: mac80211: don't offload TC setup on AP_VLAN interfaces
wifi: mac80211: suppress chanctx warning for debugfs reset
wifi: mac80211: abort chanswitch when leaving a mesh
wifi: mac80211: reset state when starting AP fails
wifi: mac80211: reset the LED state when ifup fails
wifi: mac80211: only operate on TDLS peers in the TDLS code
wifi: cfg80211: restore netns_immutable on failures
wifi: cfg80211: undo netns switch if renaming the wiphy fails
wifi: mac80211: unlist vifs when their netdev is unregistered
wifi: cfg80211: get the wiphy out of a dying network namespace
wifi: mac80211_hwsim: don't hand frames to mac80211 while stopping
wifi: mac80211: don't allow injecting frames wider than the chanctx
wifi: mac80211: reset the AP_VLAN tailroom counter on ifdown
wifi: mac80211: require a peer station for TDLS setup confirm
wifi: mac80211: don't allow link changes when iface is down
wifi: mac80211: don't RCU-dereference the mesh CSA settings we just set
wifi: mac80211: don't access the TSF of a down interface
wifi: mac80211: add HE 6 GHz capability in the scan elems len
wifi: mac80211: mesh: reset the CSA state when leaving
wifi: mac80211: mesh: release the channel if start fails
wifi: mac80211: set up the TX info early to fix failure paths

Jonghyuk Kim(MalHyuk) (1):
drm/msm: RCU-free the scheduler-containing ring and VM objects

Joseph Qi (1):
smb: client: fix use-after-free of iface in cifs_try_adding_channels()

Juan Perdomo (1):
Bluetooth: RFCOMM: avoid socket lock inversion in listener cleanup

Julian Braha (1):
mips: econet: fix unmet dependencies for ECONET

Jérémy Jean (2):
RDMA/siw: Bound fragmented header copies by the remaining length
smb: client: validate absolute native symlink targets before NT fixups

Karan Tilak Kumar (2):
scsi: fnic: Make debug logging protocol independent
scsi: fnic: Bump up version number

Karl Mehltretter (10):
scsi: pm80xx: Fix the use_msix, use_tasklet and read_wwn parameter descriptions
scsi: qla2xxx: Fix the ql2xfc2target parameter description drm/msm: Fix the separate_gpu_kms parameter description drm/msm/adreno: Fix the skip_gpu parameter description
keys: fix lost wakeup when reaping a dead key type
Input: trackpoint - fix the inertia attribute name in the ABI document drm/vc4: Use managed KMS polling to fix UAF on unbind
wifi: brcmfmac: fix lost 802.1x TX completion wakeup
selinux: preserve user SID across nested backing files
selinux: recheck intermediate backing files on mprotect()

Koichiro Den (1):
arm64: dts: renesas: r8a779f0: Set UFS lane count

Krystian Kaniewski (1):
RDMA/core: Reject unregistering netdevs in ib_get_eth_speed

Kuninori Morimoto (2):
ASoC: sdw_utils: tidyup .count_sidecar
ASoC: sdw_utils: tidyup asoc_sdw_parse_sdw_endpoints()

Kuniyuki Iwashima (7):
neighbour: Add missing RCU annotation for neightbl_dump_info().
neighbour: Enforce min/max to NDTPA_INTERVAL_PROBE_TIME_MS.
neighbour: Don't render blackhole_netdev via RTM_GETNEIGHTBL.
neighbour: Skip default parms when resumed in neightbl_dump_info().
sysctl: Check range in proc_dointvec_ms_jiffies_minmax
tcp: Don't call skb_clone_and_charge_r() for close()d listener in tcp_v6_do_rcv().
af_unix: Unify scc_index when finalising SCC in __unix_walk_scc().

Kyle Zeng (1):
xfrm: fix compat ALLOCSPI request use-after-free

Lachlan Hodges (1):
wifi: mac80211: include TIM bitmap control for buffered S1G mcast traffic

Laxman Acharya Padhya (1):
Bluetooth: hci_codec: validate vendor codec count length

Leon Romanovsky (2):
RDMA/efa: Keep admin queues alive while IRQ is registered RDMA/efa: Keep EQ resources alive while IRQ is registered

Li Jun (2):
watchdog: da9062: fix suspend/resume handling of HW_RUNNING watchdog
watchdog: da9063: fix suspend/resume handling of HW_RUNNING watchdog

Li RongQing (2):
RDMA/uverbs: Fix potential leak of resources->collection in flow_resources_alloc() RDMA/mad: Fix receive buffer leak when PKey enforcement fails

Linkai Gong (3):
RDMA/bnxt_re: check create_singlethread_workqueue() in DCB setup
i2c: atr: fix dangling adapter pointer on add failure
Input: cyttsp5 - clamp the HID report size before memcpy

Linmao Li (1):
wifi: mwifiex: prevent authentication frame length truncation

Linus Walleij (1):
net: ethernet: cortina: Ack RX overrun interrupt correctly

Liu Zhenlong (1):
i2c: qcom-cci: fix device_node refcount leak in cci_probe()/cci_remove()

Lorenzo Bianconi (5):
net: stmmac: fix TSO header length truncation
net: stmmac: do not overwrite phc_index when no PTP clock is registered
net: pass net_device_path_ctx to dev_fill_forward_path()
net: stmmac: propagate FPE preemption-class mapping errors
net: stmmac: preserve real_num_tx_queues on mqprio setup failure

Lorenzo Stoakes (ARM) (3):
mm/huge_memory: bypass THP tuneables for huge pfnmap mappings mm/mremap: account mm->locked_vm correctly for MREMAP_DONTUNMAP mm/vma: correctly unaccount on mmap_prepare() failure

Lucas Tanure (5):
arm64: dts: amlogic: t7: use the real UART pclk
arm64: dts: amlogic: t7: khadas-vim4: allow the SD card to be power cycled
arm64: dts: amlogic: t7: fix the pin groups of two PWM outputs
arm64: dts: amlogic: t7: khadas-vim4: add the PWM-driven supplies
arm64: dts: amlogic: t7: fix the pin groups of the vsync PWM

Luiz Augusto von Dentz (2):
Bluetooth: ISO: Fix parent socket leak in iso_conn_ready()
Bluetooth: ISO: set BT_LISTEN before requesting a BIG sync

Lyude Paul (4):
Revert "nouveau/gsp: fix suspend/resume regression on r570 firmware" drm/nouveau/gsp: Increase delay for magic sleep in r535_gsp_fini() drm/nouveau/gsp/r570: Set GcOff = 0 in fbsr drm/nouveau/gsp/r570: Enable S/R Display workaround in GSP

Maher Azzouzi (1):
esp: downgrade zerocopy managed frags before mutating skb frags

Maoyi Xie (1):
keys: translate request_key_auth pid for the reading procfs instance

Mariano Baragiola (1):
wifi: virt_wifi: free skb when disconnected

Mario Limonciello (3):
drm/amdgpu: Skip KFD mapping clear before initialization drm/amdgpu: Fix GPU PCIe link capability reporting drm/amdgpu: restrict BAR0 fallback read to SR-IOV VFs only

Mark Amirkan (3):
net: lan743x: fix RX checksum use-after-free net/packet: clear RX owner on VNET header error net/packet: avoid truncating TPACKET_V3 private size

Mark Rutland (3):
arm64: percpu: Fix this_cpu_write() casting
arm64: percpu: Fix this_cpu_and() mask generation
arm64: percpu: Fix LSE operations on {8,16}-bit types

Matthew Schwartz (1):
x86/fred: Reconstruct the #GP context for rejected INT instructions

Meijing Zhao (1):
mm: memblock: show all region flags in debugfs

Michael Bommarito (1):
RDMA/rxe: insert mcg into mcg_tree only after rxe_mcast_add() succeeds

Michail Tatas (1):
gpiolib: Put fwnode reference on failure

Michal Koutný (1):
cgroup: Avoid iteration of dying tasks with zero refcount

Mike Lothian (1):
drm/amdgpu: hold a runtime PM reference for P2P dma-buf attachments

Muhammad Bilal (1):
hwmon: (hp-wmi-sensors) Fix use-after-free in fungible_show()

Myeonghun Pak (1):
mmc: sdhci-of-aspeed: Remove children before releasing SDC resources

Namjae Jeon (13):
ntfs: use dynamic MFT tail reservation
ntfs: repack $MFT/$ATTRIBUTE LIST
ntfs: account for MFT records added during allocation
ntfs: protect runlist updates with the runlist lock
ntfs: propagate folio errors
ntfs: ignore interrupted inode reads as corruption
ksmbd: fix malformed procfs status output
ksmbd: extend procfs server statistics
ksmbd: follow SMB2 session expiration semantics
ksmbd: return buffer overflow for partial filesystem info
ksmbd: fix partial file information responses
ksmbd: keep compound responses on query info errors
ksmbd: fix partial normalized name responses

Nemesa Garg (1):
Revert "drm/i915/display: Clear SEL_FETCH_PLANE_CTL on plane disable"

Nguyen Ngoc Thang (1):

      ALSA: pcm: set timer->private_data before registering the PCM timer

Nhat Pham (1):
mm, swap: fix SWAP_USAGE_OFFLIST_BIT collision with real usage count

Nicolai Buchwitz (1):
net: bcmgenet: restore the hardware filters on open

Nicolas Escande (1):
wifi: ath11k: cleanup arsta in ath11k_mac_peer_cleanup_all()

Nicolas Thibert (1):
Bluetooth: btusb: fix NXP IW610 composite device handling

Niklas Cassel (1):
ata: libahci: clear PxCLBU and PxFBU for AHCI_HFLAG_32BIT_ONLY

Nikolay Aleksandrov (2):
net: bridge: mst: move switchdev call outside rcu
net: bridge: vlan: fix bugs caused by switchdev deletion errors

Norbert Szetei (1):
RDMA/rxe: validate access flags before swapping the MR's PD

Nuno Sá (1):
hwmon: (pmbus/core) increase number of phases and add new mask

Or Har-Toov (2):
RDMA/mlx5: Remove warn on missing representor in query_port_speed RDMA/uverbs: Fix mmap_lock/disassociation_lock circular dependency

Orgad Shaneh (1):
MIPS: Octeon: apply USB FDT fixups also when USB is modular

Ovidiu Panait (5):
arm64: dts: renesas: r9a09g057: Switch GBETH TX queue scheduling to WRR
arm64: dts: renesas: r9a09g056: Switch GBETH TX queue scheduling to WRR
arm64: dts: renesas: r9a09g047: Switch GBETH TX queue scheduling to WRR
arm64: dts: renesas: r9a09g077: Switch GBETH TX queue scheduling to WRR
arm64: dts: renesas: r9a09g087: Switch GBETH TX queue scheduling to WRR

Pablo Neira Ayuso (4):
netfilter: nf_nat: unregister and release hooks on error
netfilter: flowtable: hold reference on ct until flow is released
net: do not advance stack index from dev_fwd_path()
net: pass dst via net_device_path in dev_fill_forward_path()

Paulo Alcantara (5):
smb: client: cancel reconnect work in clean_demultiplex_info()
smb: client: fix rlist race and missing initialization
smb: client: fix smbd_connection leak on cifs_get_tcp_session() error
smb: client: fix unaligned access in WSL reparse point parser
smb: client: fix fattr leaking on wsl_to_fattr() failure

Peng Hao (1):
wifi: mwifiex: fix IRQ leak using wrong index in MSI-X error path

Pengpeng Hou (2):
ARM: socfpga: select the PL310 erratum 753970 workaround
wifi: mwifiex: validate scan response extents

Peter Zijlstra (1):
futex: Also allocate private hash on vfork()

Qi Zheng (1):
fs: fix missed removal of super_fs_objects_eligible()

Quanye Yang (2):
RDMA/rtrs-clt: Fix CQ pool leak when connect is interrupted RDMA/ucma: Serialize join and leave on copy_to_user failure

Raag Jadav (1):
drm/xe/i2c: Disable IRQ on unbind

Radek Podgorny (2):
Bluetooth: put the peer's on-air address on air when we cannot resolve
Bluetooth: keep dst_type with dst when reusing an LE connection

Raphaël Larocque (1):
Input: synaptics - disable InterTouch on ThinkPad T440p (board id 2722)

Richard Fitzgerald (4):
ASoC: Rename snd_soc_dai_link_ch_map.ch_mask to cpu_ch_mask
ASoC: Add codec_ch_mask to snd_soc_dai_link_ch_map
ASoC: soc-pcm: Apply snd_soc_dai_link_ch_map.codec_ch_mask to codec params
ASoC: cs-amp-lib: Prevent NULL pointer if efi variable is zero length

Richard Zhu (1):
PCI: imx6: Move clock enable after core reset assertion

Rik van Riel (1):
wifi: mac80211: avoid WARN in set_bitrate_mask when sdata not in driver

Roberts Kursitis (1):
Input: xpad - add support for Azeron devices

Roshan Kumar (1):
xfrm: iptfs: fix stack OOB read in iptfs_skb_reset_frag_walk()

Runyu Xiao (4):
gpio: virtuser: skip free_irq when no IRQ is installed
mmc: sh_mmcif: initialize IRQ-thread mutex before requesting interrupt
Input: hp_sdc - shut down kicker timer on module exit
wifi: wlcore: release runtime PM ref on regdomain config failure

Ruoyu Wang (1):
dmaengine: sprd: Fix runtime PM reference leak in probe

Ryan Mehri (1):
RDMA/rtrs: guard against null kobj name

Sai Teja Aluvala (1):
Bluetooth: btintel_pcie: fix off-by-one bounds check in RX submit

Saim Shujah (1):
drm/msm/dpu: clear pending peripheral flush state

Sajal Gupta (1):
drm/gud: fix out-of-bounds write in gud_plane_atomic_check()

Sanman Pradhan (2):
hwmon: (pmbus/tps53679) Fix TPS53676 phase page decoding
hwmon: (pmbus/tps53679) Select page 0 for single-page TPS53676

Sascha Hauer (1):
dmaengine: pxa: fix double counting of the hw descriptors

Sasha Levin (1):
ASoC: ux500: Parenthesize MSP_{RX,TX}_CLKPOL_BIT() arguments

Seunguk Shin (1):
fs/dax: check zero or empty entry before converting xarray entry

Shakeel Butt (2):
memcg: avoid charging the root memcg from obj_cgroup_charge_pages() mm/mlock: use the IRQ-safe accessor for NR_MLOCK in __munlock_folio()

Shengzhuo Wei (4):
i2c: at91: release DMA channels on remove and probe error
i2c: imx: release DMA channels on probe error
wifi: p54: validate curve data length in the calibration curve converters
wifi: p54: require a full exp_if record in PDR_INTERFACE_LIST

Shivank Garg (3):
dmaengine: Fix device kref underflow in dma_chan_put()
dmaengine: fix use-after-free in dma_chan_put() and dma_release_channel()
dmaengine: wait for RCU readers before releasing dma_device

Shivaprasad G Bhat (1):
powerpc/iommu: Fix the overflow validation in iommu_tce_check_ioba

Shmulik Cohen (2):
wifi: libipw: reject too-short beacon and probe responses
wifi: libipw: reject too-short association responses

Shouping Wang (1):
perf/arm-cmn: Fix wp_dev_sel2 setting for multi-DTM configurations

Shuangpeng Bai (1):
IB/mlx4: Fix use-after-free on pkey sysfs registration failure

Shuhei Takeshita (2):
IB/hfi1: Resolve the credit-return buffer through the send context's node IB/hfi1: Fix the PIO_CRED credit-return mmap

Shuicheng Lin (3):
drm/xe/mmio_gem: Revoke drm_vma_node on xe_mmio_gem destroy drm/xe/shrinker: Return the freed page count through a parameter drm/xe/shrinker: Take a runtime PM ref before shrinking non-system memory

Siwei Zhang (1):
xfrm: use hlist_del_init_rcu for state_cache and state_cache_input

Slavin Liu (1):
ALSA: hda: trace PCM open only after assigning a stream

Sophie D (1):
drm/gud: Ignore damage clips in full update mode

Sriharsha Basavapatna (1):
RDMA/bnxt_re: Avoid exposing umdbr to userspace

Stanislaw Gruszka (1):
wifi: iwlegacy: fix broadcast stations deallocation

Takashi Iwai (3):
ALSA: bcd2000: Fix race between rawmidi and disconnect
ALSA: usb: 6fire: Avoid embedded URBs
ALSA: core: Fix potential UAF after asynchronous card release

Thadeu Lima de Souza Cascardo (1):
drm: Fix drm_pending_vblank_event leak in error path for out_fence_ptr

ThangNN99 (1):
Bluetooth: hci_core: Fix queuing tx_work after workqueue is drained

Theodor Arsenij Larionov Trichkine (1):
netfilter: nft_nat: fully initialise new_addr in netmap setup

Thomas Gleixner (2):
posix-cpu-timers: Prevent freeing a timer which is queued on the expiry list
signal: Prevent exec() race

Thomas Huth (1):
kselftest/arm64: Fix size of thread_data values for pthread_join()

Thomas Richard (congatec GmbH) (2):
hwmon: (cgbc-hwmon) Fix current sensors ID lookup
hwmon: (cgbc-hwmon) Add missing sensors

Théo Lebrun (1):
mips: select CONFIG_WEAK_REORDERING_BEYOND_LLSC from CONFIG_EYEQ

Tianchu Chen (2):
wifi: rsi: fix heap OOB write on key removal
wifi: wilc1000: fix RX buffer OOB-write in wilc_wlan_handle_isr_ext()

Troy Mitchell (1):
dmaengine: mmp_pdma: fix wrong extended DRCMR base for SpacemiT K3

Tvrtko Ursulin (1):
drm/sched: Fix virtual runtime race

Tzung-Bi Shih (6):
Bluetooth: btmtksdio: Fix PM runtime reference leak in shutdown
watchdog: digicolor: Avoid division by zero
watchdog: msc313e: Fix premature reset during timeout update
watchdog: msc313e: Propagate error code in resume()
watchdog: rtd119x: Avoid division by zero
watchdog: rzv2h: Avoid division by zero

Ulises Mendez Martinez (1):
objtool: Validate disassembler headers in libopcodes probe

Usama Arif (1):
fs/super: skip non-memcg-aware nr_cached_objects in memcg slab shrink

Vadim Nikitushkin (1):
drm/ttm: fix swapped-out resources never leaving their bulk_move range

Vijendar Mukunda (3):
ASoC: amd: acp: bounds-check SoundWire link ID in machine drivers
ASoC: amd: acp: refactor codec config count in SOF SoundWire machine driver
ASoC: amd: acp: fix ffs() operator precedence for SoundWire link ID

Vinay Belgaumkar (1):
perf: Fix null pointer access in is_include_guest_event()

Vladimir Marioukhine (1):
drm/amdkfd: implement restore_mqd callbacks for GFX12/12.1

Wanwu Li (1):
sched_ext: Fix NULL sched deref in kfunc sub-sched error paths

Weiming Shi (2):
RDMA/rxe: Restore HMM_PFN_WRITE check in ODP write paths
Bluetooth: coredump: Quiesce dump work on unregister

Wenjie Qi (1):
mm: filemap: retain mapped dropbehind folios

Wentao Liang (4):
ata: libahci_platform: Fix device reference leak in ahci_platform_get_resources()
cifs: Fix server use-after-free in cifs_chan_skip_or_disable()
watchdog: sp5100_tco: Fix pci_dev reference leak in sp5100_tco_init()
watchdog: starfive-wdt: Fix runtime PM leak in starfive_wdt_pm_start()

William Bright (1):
drm/msm/dp: fix link bandwidth check when wide bus is enabled

Wyatt Feng (1):
net: xfrm: reject unrepresentable espintcp transport headers

Xiang Mei (2):
ALSA: 6fire: fix OOB write from device-reported iso length
ALSA: usb-audio: Clamp implicit feedback packet count to URB capacity

Xixin Liu (3):
firmware: arm_scpi: reject DVFS OPP count above MAX_DVFS_OPPS
clk: scpi: bound-check DVFS index in scpi_dvfs_recalc_rate
clk: scpi: register scpi-cpufreq once and clear on failure

Xu Rao (1):
mmc: spi: reset bytes_xfered before retrying CRC failures

Xuanqiang Luo (1):
net/sched: act_api: release tail references on DELACTION failure

Yehyeong Lee (2):
IB/iser: reject a remote invalidation of an unregistered direction IB/isert: wait for deferred control PDU completions before releasing the connection

Yibo Tan (1):
hwmon: (pwm-fan) Stop RPM timer before freeing tach data

Yifei Gao (1):
memstick: ms_block: destroy io_queue workqueue on removal

Yige Jiang (1):
net: netsec: fix device_node reference leak on phy_np

Yuho Choi (1):
ALSA: virtio: reset device before deleting virtqueues

Zhao Li (1):
wifi: mwifiex: validate action frame fixed fields

Zhiling Zou (3):
openvswitch: avoid reallocating confirmed conntrack labels
ipv6: xfrm: use full sockets in local error paths
xfrm: save input state data before secpath resets

Zhu Ling (1):
mmc: core: Fix OF node reference leak on card add failure

Zihan Xi (1):
wifi: virt_wifi: don't transfer operstate before register

chong li (1):
drm/amdgpu: reduce early full GPU access during SR-IOV init

fangqiurong (1):
sched_ext: Close the pre-enable ops error claim window

hpp.iscas (1):
Input: eeti_ts - publish the OF module alias

author maintainer
#1 lore raw
Documentation/ABI/testing/sysfs-devices-platform-trackpoint +1 -1
index df11901a6b3d..7954434b0434 100644
@@ -5,7 +5,7 @@ Contact:	[email protected]
 Description:
 		(RW) Trackpoint sensitivity.
 
-What:		/sys/devices/platform/i8042/.../intertia
+What:		/sys/devices/platform/i8042/.../inertia
 Date:		Aug, 2005
 KernelVersion:	2.6.14
 Contact:	[email protected]
Documentation/arch/arm64/memory-tagging-extension.rst +2 -3
index e6fe428f0e2a..1d32fc5df183 100644
@@ -208,11 +208,10 @@ will use the corresponding aligned address.
   tracer's space cannot be accessed or does not have valid tags.
 - ``-EPERM`` - the specified process cannot be traced.
 - ``-EIO`` - the tracee's address range cannot be accessed (e.g. invalid
-  address) and no tags copied. ``iov_len`` not updated.
+  address) or does not have valid tags (not mapped with the ``PROT_MTE``
+  flag) and no tags copied. ``iov_len`` not updated.
 - ``-EFAULT`` - fault on accessing the tracer's memory (``struct iovec``
   or ``iov_base`` buffer) and no tags copied. ``iov_len`` not updated.
-- ``-EOPNOTSUPP`` - the tracee's address does not have valid tags (never
-  mapped with the ``PROT_MTE`` flag). ``iov_len`` not updated.
 
 **Note**: There are no transient errors for the requests above, so user
 programs should not retry in case of a non-zero system call return.
Documentation/hwmon/cgbc-hwmon.rst +26 -16

60 lines not on this page · raw message

Documentation/netlink/specs/rt-neigh.yaml +3 -0
index 0f46ef313590..c8e55c98d564 100644
@@ -341,6 +341,9 @@ attribute-sets:
       -
         name: interval-probe-time-ms
         type: u64
+        checks:
+          min: 1
+          max: 86400000
 
 operations:
   enum-model: directional
Documentation/networking/ip-sysctl.rst +3 -1
index 208f46967ee5..f7af0286341c 100644
@@ -248,7 +248,7 @@ neigh/default/unres_qlen - INTEGER
 
 neigh/default/interval_probe_time_ms - INTEGER
 	The probe interval for neighbor entries with NTF_MANAGED flag,
-	the min value is 1.
+	the min value is 1, and the max value is 86400000 (1 day).
 
 	Default: 5000
 
@@ -874,6 +874,8 @@ tcp_rmem - vector of 3 INTEGERs: min, default, max
 	case this value is ignored.
 	Default: between 131072 and 32MB, depending on RAM size.
 
+	Each of the three values cannot be set below 4096.
+
 tcp_sack - BOOLEAN
 	Enable select acknowledgments (SACKS).
 
Makefile +1 -1
index c28f11c617a4..ad1a1ffe789e 100644
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0
 VERSION = 7
 PATCHLEVEL = 2
-SUBLEVEL = 7
+SUBLEVEL = 8
 EXTRAVERSION =
 NAME = Baby Opossum Posse
 
arch/arm/mach-socfpga/Kconfig +1 -1
index eb72c240c248..528c5c1368c3 100644
@@ -16,7 +16,7 @@ menuconfig ARCH_INTEL_SOCFPGA
 	select ARM_ERRATA_775420
 	select PL310_ERRATA_588369
 	select PL310_ERRATA_727915
-	select PL310_ERRATA_753970 if PL310
+	select PL310_ERRATA_753970
 	select PL310_ERRATA_769419
 	select RESET_CONTROLLER
 
arch/arm64/boot/dts/altera/socfpga_stratix10_socdk.dtsi +0 -0
old mode 100755
new mode 100644
arch/arm64/boot/dts/altera/socfpga_stratix10_socdk_emmc.dts +0 -0
old mode 100755
new mode 100644
arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-an400.dts +1 -1
index cab2ee9ea0d3..ca7536f772ff 100644
@@ -33,7 +33,7 @@ xtal: xtal-clk {
 };
 
 &uart_a {
-	clocks = <&xtal>, <&xtal>, <&xtal>;
+	clocks = <&xtal>, <&clkc_periphs CLKID_SYS_UART_A>, <&xtal>;
 	clock-names = "xtal", "pclk", "baud";
 	status = "okay";
 };
arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-khadas-vim4.dts +110 -3

144 lines not on this page · raw message

arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi +38 -6

65 lines not on this page · raw message

arch/arm64/boot/dts/renesas/r8a779f0.dtsi +1 -0
index cbb161c863ac..a5118c2f2742 100644
@@ -901,6 +901,7 @@ ufs: ufs@e6860000 {
 			clocks = <&cpg CPG_MOD 1514>, <&ufs30_clk>;
 			clock-names = "fck", "ref_clk";
 			freq-table-hz = <200000000 200000000>, <38400000 38400000>;
+			lanes-per-direction = <1>;
 			power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
 			resets = <&cpg 1514>;
 			status = "disabled";
arch/arm64/boot/dts/renesas/r9a09g047.dtsi +10 -0
index b6193c158370..4de93fceb605 100644
@@ -1394,23 +1394,28 @@ queue3 {
 
 			mtl_tx_setup0: tx-queues-config {
 				snps,tx-queues-to-use = <4>;
+				snps,tx-sched-wrr;
 
 				queue0 {
+					snps,weight = <0x10>;
 					snps,dcb-algorithm;
 					snps,priority = <0x1>;
 				};
 
 				queue1 {
+					snps,weight = <0x12>;
 					snps,dcb-algorithm;
 					snps,priority = <0x2>;
 				};
 
 				queue2 {
+					snps,weight = <0x14>;
 					snps,dcb-algorithm;
 					snps,priority = <0x4>;
 				};
 
 				queue3 {
+					snps,weight = <0x18>;
 					snps,dcb-algorithm;
 					snps,priority = <0x8>;
 				};
@@ -1494,23 +1499,28 @@ queue3 {
 
 			mtl_tx_setup1: tx-queues-config {
 				snps,tx-queues-to-use = <4>;
+				snps,tx-sched-wrr;
 
 				queue0 {
+					snps,weight = <0x10>;
 					snps,dcb-algorithm;
 					snps,priority = <0x1>;
 				};
 
 				queue1 {
+					snps,weight = <0x12>;
 					snps,dcb-algorithm;
 					snps,priority = <0x2>;
 				};
 
 				queue2 {
+					snps,weight = <0x14>;
 					snps,dcb-algorithm;
 					snps,priority = <0x4>;
 				};
 
 				queue3 {
+					snps,weight = <0x18>;
 					snps,dcb-algorithm;
 					snps,priority = <0x8>;
 				};
arch/arm64/boot/dts/renesas/r9a09g056.dtsi +10 -0
index 5a3a6f72029a..6e1444b80a28 100644
@@ -1569,23 +1569,28 @@ queue3 {
 
 			mtl_tx_setup0: tx-queues-config {
 				snps,tx-queues-to-use = <4>;
+				snps,tx-sched-wrr;
 
 				queue0 {
+					snps,weight = <0x10>;
 					snps,dcb-algorithm;
 					snps,priority = <0x1>;
 				};
 
 				queue1 {
+					snps,weight = <0x12>;
 					snps,dcb-algorithm;
 					snps,priority = <0x2>;
 				};
 
 				queue2 {
+					snps,weight = <0x14>;
 					snps,dcb-algorithm;
 					snps,priority = <0x4>;
 				};
 
 				queue3 {
+					snps,weight = <0x18>;
 					snps,dcb-algorithm;
 					snps,priority = <0x8>;
 				};
@@ -1670,23 +1675,28 @@ queue3 {
 
 			mtl_tx_setup1: tx-queues-config {
 				snps,tx-queues-to-use = <4>;
+				snps,tx-sched-wrr;
 
 				queue0 {
+					snps,weight = <0x10>;
 					snps,dcb-algorithm;
 					snps,priority = <0x1>;
 				};
 
 				queue1 {
+					snps,weight = <0x12>;
 					snps,dcb-algorithm;
 					snps,priority = <0x2>;
 				};
 
 				queue2 {
+					snps,weight = <0x14>;
 					snps,dcb-algorithm;
 					snps,priority = <0x4>;
 				};
 
 				queue3 {
+					snps,weight = <0x18>;
 					snps,dcb-algorithm;
 					snps,priority = <0x8>;
 				};
arch/arm64/boot/dts/renesas/r9a09g057.dtsi +10 -0
index 1e94366bb7ee..99d197f309d0 100644
@@ -1559,23 +1559,28 @@ queue3 {
 
 			mtl_tx_setup0: tx-queues-config {
 				snps,tx-queues-to-use = <4>;
+				snps,tx-sched-wrr;
 
 				queue0 {
+					snps,weight = <0x10>;
 					snps,dcb-algorithm;
 					snps,priority = <0x1>;
 				};
 
 				queue1 {
+					snps,weight = <0x12>;
 					snps,dcb-algorithm;
 					snps,priority = <0x2>;
 				};
 
 				queue2 {
+					snps,weight = <0x14>;
 					snps,dcb-algorithm;
 					snps,priority = <0x4>;
 				};
 
 				queue3 {
+					snps,weight = <0x18>;
 					snps,dcb-algorithm;
 					snps,priority = <0x8>;
 				};
@@ -1660,23 +1665,28 @@ queue3 {
 
 			mtl_tx_setup1: tx-queues-config {
 				snps,tx-queues-to-use = <4>;
+				snps,tx-sched-wrr;
 
 				queue0 {
+					snps,weight = <0x10>;
 					snps,dcb-algorithm;
 					snps,priority = <0x1>;
 				};
 
 				queue1 {
+					snps,weight = <0x12>;
 					snps,dcb-algorithm;
 					snps,priority = <0x2>;
 				};
 
 				queue2 {
+					snps,weight = <0x14>;
 					snps,dcb-algorithm;
 					snps,priority = <0x4>;
 				};
 
 				queue3 {
+					snps,weight = <0x18>;
 					snps,dcb-algorithm;
 					snps,priority = <0x8>;
 				};
arch/arm64/boot/dts/renesas/r9a09g077.dtsi +27 -0
index 40494159831d..bac39390ead7 100644
@@ -642,36 +642,45 @@ queue7 {
 
 			mtl_tx_setup0: tx-queues-config {
 				snps,tx-queues-to-use = <8>;
+				snps,tx-sched-wrr;
 
 				queue0 {
+					snps,weight = <0x10>;
 					snps,dcb-algorithm;
 				};
 
 				queue1 {
+					snps,weight = <0x11>;
 					snps,dcb-algorithm;
 				};
 
 				queue2 {
+					snps,weight = <0x12>;
 					snps,dcb-algorithm;
 				};
 
 				queue3 {
+					snps,weight = <0x13>;
 					snps,dcb-algorithm;
 				};
 
 				queue4 {
+					snps,weight = <0x14>;
 					snps,dcb-algorithm;
 				};
 
 				queue5 {
+					snps,weight = <0x15>;
 					snps,dcb-algorithm;
 				};
 
 				queue6 {
+					snps,weight = <0x16>;
 					snps,dcb-algorithm;
 				};
 
 				queue7 {
+					snps,weight = <0x17>;
 					snps,dcb-algorithm;
 				};
 			};
@@ -788,36 +797,45 @@ queue7 {
 
 			mtl_tx_setup1: tx-queues-config {
 				snps,tx-queues-to-use = <8>;
+				snps,tx-sched-wrr;
 
 				queue0 {
+					snps,weight = <0x10>;
 					snps,dcb-algorithm;
 				};
 
 				queue1 {
+					snps,weight = <0x11>;
 					snps,dcb-algorithm;
 				};
 
 				queue2 {
+					snps,weight = <0x12>;
 					snps,dcb-algorithm;
 				};
 
 				queue3 {
+					snps,weight = <0x13>;
 					snps,dcb-algorithm;
 				};
 
 				queue4 {
+					snps,weight = <0x14>;
 					snps,dcb-algorithm;
 				};
 
 				queue5 {
+					snps,weight = <0x15>;
 					snps,dcb-algorithm;
 				};
 
 				queue6 {
+					snps,weight = <0x16>;
 					snps,dcb-algorithm;
 				};
 
 				queue7 {
+					snps,weight = <0x17>;
 					snps,dcb-algorithm;
 				};
 			};
@@ -934,36 +952,45 @@ queue7 {
 
 			mtl_tx_setup2: tx-queues-config {
 				snps,tx-queues-to-use = <8>;
+				snps,tx-sched-wrr;
 
 				queue0 {
+					snps,weight = <0x10>;
 					snps,dcb-algorithm;
 				};
 
 				queue1 {
+					snps,weight = <0x11>;
 					snps,dcb-algorithm;
 				};
 
 				queue2 {
+					snps,weight = <0x12>;
 					snps,dcb-algorithm;
 				};
 
 				queue3 {
+					snps,weight = <0x13>;
 					snps,dcb-algorithm;
 				};
 
 				queue4 {
+					snps,weight = <0x14>;
 					snps,dcb-algorithm;
 				};
 
 				queue5 {
+					snps,weight = <0x15>;
 					snps,dcb-algorithm;
 				};
 
 				queue6 {
+					snps,weight = <0x16>;
 					snps,dcb-algorithm;
 				};
 
 				queue7 {
+					snps,weight = <0x17>;
 					snps,dcb-algorithm;
 				};
 			};
arch/arm64/boot/dts/renesas/r9a09g087.dtsi +27 -0
index e8d4f76949cc..03b976d93e10 100644
@@ -643,36 +643,45 @@ queue7 {
 
 			mtl_tx_setup0: tx-queues-config {
 				snps,tx-queues-to-use = <8>;
+				snps,tx-sched-wrr;
 
 				queue0 {
+					snps,weight = <0x10>;
 					snps,dcb-algorithm;
 				};
 
 				queue1 {
+					snps,weight = <0x11>;
 					snps,dcb-algorithm;
 				};
 
 				queue2 {
+					snps,weight = <0x12>;
 					snps,dcb-algorithm;
 				};
 
 				queue3 {
+					snps,weight = <0x13>;
 					snps,dcb-algorithm;
 				};
 
 				queue4 {
+					snps,weight = <0x14>;
 					snps,dcb-algorithm;
 				};
 
 				queue5 {
+					snps,weight = <0x15>;
 					snps,dcb-algorithm;
 				};
 
 				queue6 {
+					snps,weight = <0x16>;
 					snps,dcb-algorithm;
 				};
 
 				queue7 {
+					snps,weight = <0x17>;
 					snps,dcb-algorithm;
 				};
 			};
@@ -790,36 +799,45 @@ queue7 {
 
 			mtl_tx_setup1: tx-queues-config {
 				snps,tx-queues-to-use = <8>;
+				snps,tx-sched-wrr;
 
 				queue0 {
+					snps,weight = <0x10>;
 					snps,dcb-algorithm;
 				};
 
 				queue1 {
+					snps,weight = <0x11>;
 					snps,dcb-algorithm;
 				};
 
 				queue2 {
+					snps,weight = <0x12>;
 					snps,dcb-algorithm;
 				};
 
 				queue3 {
+					snps,weight = <0x13>;
 					snps,dcb-algorithm;
 				};
 
 				queue4 {
+					snps,weight = <0x14>;
 					snps,dcb-algorithm;
 				};
 
 				queue5 {
+					snps,weight = <0x15>;
 					snps,dcb-algorithm;
 				};
 
 				queue6 {
+					snps,weight = <0x16>;
 					snps,dcb-algorithm;
 				};
 
 				queue7 {
+					snps,weight = <0x17>;
 					snps,dcb-algorithm;
 				};
 			};
@@ -937,36 +955,45 @@ queue7 {
 
 			mtl_tx_setup2: tx-queues-config {
 				snps,tx-queues-to-use = <8>;
+				snps,tx-sched-wrr;
 
 				queue0 {
+					snps,weight = <0x10>;
 					snps,dcb-algorithm;
 				};
 
 				queue1 {
+					snps,weight = <0x11>;
 					snps,dcb-algorithm;
 				};
 
 				queue2 {
+					snps,weight = <0x12>;
 					snps,dcb-algorithm;
 				};
 
 				queue3 {
+					snps,weight = <0x13>;
 					snps,dcb-algorithm;
 				};
 
 				queue4 {
+					snps,weight = <0x14>;
 					snps,dcb-algorithm;
 				};
 
 				queue5 {
+					snps,weight = <0x15>;
 					snps,dcb-algorithm;
 				};
 
 				queue6 {
+					snps,weight = <0x16>;
 					snps,dcb-algorithm;
 				};
 
 				queue7 {
+					snps,weight = <0x17>;
 					snps,dcb-algorithm;
 				};
 			};
arch/arm64/include/asm/percpu.h +10 -10
index b57b2bb00967..8cf4068ce1b5 100644
@@ -77,7 +77,7 @@ __percpu_##name##_case_##sz(void *ptr, unsigned long val)		\
 	"	stxr" #sfx "\t%w[loop], %" #w "[tmp], %[ptr]\n"		\
 	"	cbnz	%w[loop], 1b",					\
 	/* LSE atomics */						\
-		#op_lse "\t%" #w "[val], %" #w "[tmp], %[ptr]\n"	\
+		#op_lse #sfx "\t%" #w "[val], %" #w "[tmp], %[ptr]\n"	\
 		__nops(3))						\
 	: [loop] "=&r" (loop), [tmp] "=&r" (tmp),			\
 	  [ptr] "+Q"(*(u##sz *)ptr)					\
@@ -98,7 +98,7 @@ __percpu_##name##_return_case_##sz(void *ptr, unsigned long val)	\
 	"	stxr" #sfx "\t%w[loop], %" #w "[ret], %[ptr]\n"		\
 	"	cbnz	%w[loop], 1b",					\
 	/* LSE atomics */						\
-		#op_lse "\t%" #w "[val], %" #w "[ret], %[ptr]\n"	\
+		#op_lse #sfx "\t%" #w "[val], %" #w "[ret], %[ptr]\n"	\
 		#op_llsc "\t%" #w "[ret], %" #w "[ret], %" #w "[val]\n"	\
 		__nops(2))						\
 	: [loop] "=&r" (loop), [ret] "=&r" (ret),			\
@@ -179,13 +179,13 @@ PERCPU_RET_OP(add, add, ldadd)
 	_pcp_protect_return(__percpu_read_64, pcp)
 
 #define this_cpu_write_1(pcp, val)	\
-	_pcp_protect(__percpu_write_8, pcp, (unsigned long)val)
+	_pcp_protect(__percpu_write_8, pcp, (unsigned long)(val))
 #define this_cpu_write_2(pcp, val)	\
-	_pcp_protect(__percpu_write_16, pcp, (unsigned long)val)
+	_pcp_protect(__percpu_write_16, pcp, (unsigned long)(val))
 #define this_cpu_write_4(pcp, val)	\
-	_pcp_protect(__percpu_write_32, pcp, (unsigned long)val)
+	_pcp_protect(__percpu_write_32, pcp, (unsigned long)(val))
 #define this_cpu_write_8(pcp, val)	\
-	_pcp_protect(__percpu_write_64, pcp, (unsigned long)val)
+	_pcp_protect(__percpu_write_64, pcp, (unsigned long)(val))
 
 #define this_cpu_add_1(pcp, val)	\
 	_pcp_protect(__percpu_add_case_8, pcp, val)
@@ -206,13 +206,13 @@ PERCPU_RET_OP(add, add, ldadd)
 	_pcp_protect_return(__percpu_add_return_case_64, pcp, val)
 
 #define this_cpu_and_1(pcp, val)	\
-	_pcp_protect(__percpu_andnot_case_8, pcp, ~val)
+	_pcp_protect(__percpu_andnot_case_8, pcp, ~(u8)(val))
 #define this_cpu_and_2(pcp, val)	\
-	_pcp_protect(__percpu_andnot_case_16, pcp, ~val)
+	_pcp_protect(__percpu_andnot_case_16, pcp, ~(u16)(val))
 #define this_cpu_and_4(pcp, val)	\
-	_pcp_protect(__percpu_andnot_case_32, pcp, ~val)
+	_pcp_protect(__percpu_andnot_case_32, pcp, ~(u32)(val))
 #define this_cpu_and_8(pcp, val)	\
-	_pcp_protect(__percpu_andnot_case_64, pcp, ~val)
+	_pcp_protect(__percpu_andnot_case_64, pcp, ~(u64)(val))
 
 #define this_cpu_or_1(pcp, val)		\
 	_pcp_protect(__percpu_or_case_8, pcp, val)
arch/arm64/kernel/hibernate-asm.S +2 -0
index 0e1d9c3c6a93..2baefe7a82d3 100644
@@ -89,6 +89,8 @@ alternative_insn "dc cvau, x4",  "dc civac, x4",  ARM64_WORKAROUND_CLEAN_CACHE
 	isb
 
 	cbz	x24, 3f		/* Do we need to re-initialise EL2? */
+	mov	x1, x24
+	mov	x0, #HVC_SET_VECTORS
 	hvc	#0
 3:	ret
 SYM_CODE_END(swsusp_arch_suspend_exit)
arch/arm64/kernel/hibernate.c +2 -2
index 7bf117427777..424291c547f0 100644
@@ -423,8 +423,8 @@ int __nocfi swsusp_arch_resume(void)
 	 * Create a second copy of just the linear map, and use this when
 	 * restoring.
 	 */
-	rc = trans_pgd_create_copy(&trans_info, &tmp_pg_dir, PAGE_OFFSET,
-				   PAGE_END);
+	rc = trans_pgd_create_copy(&trans_info, &tmp_pg_dir,
+				   _PAGE_OFFSET(vabits_actual), PAGE_END);
 	if (rc)
 		return rc;
 
arch/arm64/kernel/mte.c +1 -1
index 1a9aad6ef22a..31f5c6b0510e 100644
@@ -476,7 +476,7 @@ static int __access_remote_tags(struct mm_struct *mm, unsigned long addr,
 		 * was never mapped with PROT_MTE.
 		 */
 		if (!(vma->vm_flags & VM_MTE)) {
-			err = -EOPNOTSUPP;
+			err = -EIO;
 			put_page(page);
 			break;
 		}
arch/mips/Kconfig +1 -3
index 8555bbf47c63..1f8bdfd7e9a6 100644
@@ -397,10 +397,7 @@ config ECONET
 	select BOOT_RAW
 	select CPU_BIG_ENDIAN
 	select DEBUG_ZBOOT if DEBUG_KERNEL
-	select EARLY_PRINTK_8250
 	select ECONET_EN751221_TIMER
-	select SERIAL_8250
-	select SERIAL_OF_PLATFORM
 	select SYS_SUPPORTS_BIG_ENDIAN
 	select SYS_HAS_CPU_MIPS32_R1
 	select SYS_HAS_CPU_MIPS32_R2
@@ -662,6 +659,7 @@ config EYEQ
 	select USB_UHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
 	select USE_OF
 	select HOTPLUG_PARALLEL if HOTPLUG_CPU
+	select WEAK_REORDERING_BEYOND_LLSC
 	help
 	  Select this to build a kernel supporting EyeQ SoC from Mobileye.
 
arch/mips/cavium-octeon/octeon-platform.c +2 -2
index 47677b5d7ed0..f53c98372e0b 100644
@@ -18,7 +18,7 @@
 #include <asm/octeon/octeon.h>
 #include <asm/octeon/cvmx-helper-board.h>
 
-#ifdef CONFIG_USB
+#if IS_ENABLED(CONFIG_USB)
 #include <linux/usb/ehci_def.h>
 #include <linux/usb/ehci_pdriver.h>
 #include <linux/usb/ohci_pdriver.h>
@@ -1080,7 +1080,7 @@ int __init octeon_prune_device_tree(void)
 		;
 	}
 
-#ifdef CONFIG_USB
+#if IS_ENABLED(CONFIG_USB)
 	/* OHCI/UHCI USB */
 	alias_prop = fdt_getprop(initial_boot_params, aliases,
 				 "uctl", NULL);
arch/powerpc/kernel/iommu.c +1 -1
index ee1b5cb557c9..1ae8384637b5 100644
@@ -1076,7 +1076,7 @@ int iommu_tce_check_ioba(unsigned long page_shift,
 	if (ioba < offset)
 		return -EINVAL;
 
-	if ((ioba + 1) > (offset + size))
+	if ((ioba + npages < ioba) || (ioba - offset + npages > size))
 		return -EINVAL;
 
 	return 0;
arch/powerpc/kvm/book3s_hv_nested.c +2 -0
index 22e616662255..a6ff42d7666c 100644
@@ -1204,8 +1204,10 @@ static void kvmhv_emulate_tlbie_all_lpid(struct kvm_vcpu *vcpu, int ric)
 
 	spin_lock(&kvm->mmu_lock);
 	idr_for_each_entry(&kvm->arch.kvm_nested_guest_idr, gp, lpid) {
+		++gp->refcnt;
 		spin_unlock(&kvm->mmu_lock);
 		kvmhv_emulate_tlbie_lpid(vcpu, gp, ric);
+		kvmhv_put_nested(gp);
 		spin_lock(&kvm->mmu_lock);
 	}
 	spin_unlock(&kvm->mmu_lock);
arch/powerpc/kvm/book3s_hv_uvmem.c +4 -1
index 5fbb95d90e99..463aef870c4e 100644
@@ -779,8 +779,11 @@ static int kvmppc_svm_page_in(struct vm_area_struct *vma,
 		if (spage) {
 			ret = uv_page_in(kvm->arch.lpid, pfn << page_shift,
 					gpa, 0, page_shift);
-			if (ret)
+			if (ret) {
+				unlock_page(dpage);
+				put_page(dpage);
 				goto out_finalize;
+			}
 		}
 	}
 
arch/x86/Kconfig.cpu +11 -0
index e4654388d794..6e7a366f0798 100644
@@ -204,10 +204,21 @@ config CC_HAS_MARCH_NATIVE
 	# usage warnings that only appear wth '-march=native'.
 	depends on CC_IS_GCC || CLANG_VERSION >= 190100
 
+config RUSTC_HAS_APXF
+	# The kernel isn't ready for in-kernel APX instructions. Without
+	# explicit frontend gating of APX, the backend may emit those
+	# instructions in native builds.
+	#
+	# Rust 1.88 added the `apxf` feature option, but versions before 1.93
+	# emit an `apxf` target attribute that only LLVM 23+ can interpret.
+	def_bool (RUSTC_VERSION >= 108800 && RUSTC_LLVM_MAJOR_VERSION >= 23) || \
+		 RUSTC_VERSION >= 109300
+
 config X86_NATIVE_CPU
 	bool "Build and optimize for local/native CPU"
 	depends on X86_64
 	depends on CC_HAS_MARCH_NATIVE
+	depends on !RUST || RUSTC_HAS_APXF
 	help
 	  Optimize for the current CPU used to compile the kernel.
 	  Use this option if you intend to build the kernel for your
arch/x86/Makefile +5 -0
index 598f178102ee..8af6b80cffdd 100644
@@ -161,6 +161,11 @@ else
 
 ifdef CONFIG_X86_NATIVE_CPU
         KBUILD_CFLAGS += -march=native
+        # Prevent the compiler from generating EGPR use. The kernel is
+        # not yet prepared for general in-kernel use.
+        KBUILD_CFLAGS += $(call cc-option,-mno-apx-features=egpr)
+
+        # generate_rust_target.rs handles Rust APX gating.
         KBUILD_RUSTFLAGS += -Ctarget-cpu=native
 else
         KBUILD_CFLAGS += -march=x86-64 -mtune=generic
arch/x86/entry/entry_fred.c +10 -1
index fb3594ddf731..854899bfec5d 100644
@@ -10,6 +10,7 @@
 #include <asm/desc.h>
 #include <asm/fred.h>
 #include <asm/idtentry.h>
+#include <asm/processor-flags.h>
 #include <asm/syscall.h>
 #include <asm/trapnr.h>
 #include <asm/traps.h>
@@ -71,7 +72,15 @@ static noinstr void fred_intx(struct pt_regs *regs)
 #endif
 
 	default:
-		return exc_general_protection(regs, 0);
+		/*
+		 * Reconstruct the #GP fault state that IDT delivery would produce.
+		 * Clear the software event flag so ERETU with TF set does not trap
+		 * before the resumed instruction. See prevent_single_step_upon_eretu().
+		 */
+		regs->ip -= regs->fred_ss.insnlen;
+		regs->flags |= X86_EFLAGS_RF;
+		regs->fred_ss.swevent = 0;
+		return exc_general_protection(regs, (regs->fred_ss.vector << 3) | 2);
 	}
 }
 
arch/x86/include/asm/div64.h +1 -1
index 30fd06ede751..8a2d343f977e 100644
@@ -111,7 +111,7 @@ static inline u64 mul_u64_add_u64_div_u64(u64 rax, u64 mul, u64 add, u64 div)
 
 	if (!statically_true(!add))
 		asm ("addq %[add], %[lo]; adcq $0, %[hi]" :
-			[lo] "+r" (rax), [hi] "+r" (rdx) : [add] "irm" (add));
+			[lo] "+r" (rax), [hi] "+r" (rdx) : [add] "erm" (add));
 
 	asm ("divq %[div]" : "+a" (rax), "+d" (rdx) : [div] "rm" (div));
 
arch/x86/include/asm/text-patching.h +2 -2
index f2d142a0a862..ea09381070e8 100644
@@ -164,9 +164,9 @@ unsigned long int3_emulate_pop(struct pt_regs *regs)
 }
 
 static __always_inline
-void int3_emulate_call(struct pt_regs *regs, unsigned long func)
+void int3_emulate_call(struct pt_regs *regs, unsigned long ip, unsigned long func)
 {
-	int3_emulate_push(regs, regs->ip - INT3_INSN_SIZE + CALL_INSN_SIZE);
+	int3_emulate_push(regs, ip);
 	int3_emulate_jmp(regs, func);
 }
 
arch/x86/kernel/alternative.c +4 -2
index b0b576ab2fa6..f24d7e911d3e 100644
@@ -2319,6 +2319,7 @@ int3_exception_notify(struct notifier_block *self, unsigned long val, void *data
 	unsigned long selftest = (unsigned long)&int3_selftest_asm;
 	struct die_args *args = data;
 	struct pt_regs *regs = args->regs;
+	unsigned long ip;
 
 	OPTIMIZER_HIDE_VAR(selftest);
 
@@ -2331,7 +2332,8 @@ int3_exception_notify(struct notifier_block *self, unsigned long val, void *data
 	if (regs->ip - INT3_INSN_SIZE != selftest)
 		return NOTIFY_DONE;
 
-	int3_emulate_call(regs, (unsigned long)&int3_selftest_callee);
+	ip = regs->ip - INT3_INSN_SIZE + CALL_INSN_SIZE;
+	int3_emulate_call(regs, ip, (unsigned long)&int3_selftest_callee);
 	return NOTIFY_STOP;
 }
 
@@ -2929,7 +2931,7 @@ noinstr int smp_text_poke_int3_handler(struct pt_regs *regs)
 		break;
 
 	case CALL_INSN_OPCODE:
-		int3_emulate_call(regs, (long)ip + tpl->disp);
+		int3_emulate_call(regs, (long)ip, (long)ip + tpl->disp);
 		break;
 
 	case JMP32_INSN_OPCODE:
arch/x86/kernel/cpu/microcode/intel.c +26 -0
index f4a444e6114d..ab87e56788df 100644
@@ -345,6 +345,26 @@ static void save_microcode_patch(struct microcode_intel *patch)
 		pr_err("Unable to allocate microcode memory size: %u\n", size);
 }
 
+static bool revision_is_safe(struct cpu_signature *sig, u32 rev)
+{
+	u32 vfm = IFM(x86_family(sig->sig), x86_model(sig->sig));
+
+	/*
+	 * Erratum GNR98 can cause #MCs if "jumping over" revision 0x1000405.
+	 * Avoid the jumps.
+	 */
+	if (vfm == INTEL_GRANITERAPIDS_X &&
+	    x86_stepping(sig->sig) == 1 &&
+	    sig->pf & 0x95 &&
+	    sig->rev < 0x1000405 &&
+	    rev > 0x1000405) {
+		pr_err_once("Erratum GNR98: skipping revision 0x%x.\n", rev);
+		return false;
+	}
+
+	return true;
+}
+
 /* Scan blob for microcode matching the boot CPUs family, model, stepping */
 static __init struct microcode_intel *scan_microcode(void *data, size_t size,
 						     struct ucode_cpu_info *uci,
@@ -366,6 +386,9 @@ static __init struct microcode_intel *scan_microcode(void *data, size_t size,
 		if (!intel_find_matching_signature(data, &uci->cpu_sig))
 			continue;
 
+		if (!revision_is_safe(&uci->cpu_sig, mc_header->rev))
+			continue;
+
 		/*
 		 * For saving the early microcode, find the matching revision which
 		 * was loaded on the BSP.
@@ -914,6 +937,9 @@ static enum ucode_state parse_microcode_blobs(int cpu, struct iov_iter *iter)
 		if (!intel_find_matching_signature(mc, &uci->cpu_sig))
 			continue;
 
+		if (!revision_is_safe(&uci->cpu_sig, mc_header.rev))
+			continue;
+
 		is_safe = ucode_validate_minrev(&mc_header);
 		if (force_minrev && !is_safe)
 			continue;
arch/x86/kernel/kprobes/core.c +2 -3
index c1fac3a9fecc..03d2710ec302 100644
@@ -510,10 +510,9 @@ NOKPROBE_SYMBOL(kprobe_emulate_ret);
 
 static void kprobe_emulate_call(struct kprobe *p, struct pt_regs *regs)
 {
-	unsigned long func = regs->ip - INT3_INSN_SIZE + p->ainsn.size;
+	unsigned long ip = regs->ip - INT3_INSN_SIZE + p->ainsn.size;
 
-	func += p->ainsn.rel32;
-	int3_emulate_call(regs, func);
+	int3_emulate_call(regs, ip, ip + p->ainsn.rel32);
 }
 NOKPROBE_SYMBOL(kprobe_emulate_call);
 
drivers/ata/libahci.c +14 -1
index 6d72eb017b49..08ab56e95566 100644
@@ -744,15 +744,28 @@ void ahci_start_fis_rx(struct ata_port *ap)
 	struct ahci_port_priv *pp = ap->private_data;
 	u32 tmp;
 
-	/* set FIS registers */
+	/*
+	 * On HBAs that only support 32-bit addressing PxCLBU is read only '0'.
+	 * When applying the AHCI_HFLAG_32BIT_ONLY quirk, PxCLBU is RW, and the
+	 * reset value is Implementation Specific, so we need to clear it to 0.
+	 */
 	if (hpriv->cap & HOST_CAP_64)
 		writel((pp->cmd_slot_dma >> 16) >> 16,
 		       port_mmio + PORT_LST_ADDR_HI);
+	else if (hpriv->flags & AHCI_HFLAG_32BIT_ONLY)
+		writel(0, port_mmio + PORT_LST_ADDR_HI);
 	writel(pp->cmd_slot_dma & 0xffffffff, port_mmio + PORT_LST_ADDR);
 
+	/*
+	 * On HBAs that only support 32-bit addressing PxFBU is read only '0'.
+	 * When applying the AHCI_HFLAG_32BIT_ONLY quirk, PxFBU is RW, and the
+	 * reset value is Implementation Specific, so we need to clear it to 0.
+	 */
 	if (hpriv->cap & HOST_CAP_64)
 		writel((pp->rx_fis_dma >> 16) >> 16,
 		       port_mmio + PORT_FIS_ADDR_HI);
+	else if (hpriv->flags & AHCI_HFLAG_32BIT_ONLY)
+		writel(0, port_mmio + PORT_FIS_ADDR_HI);
 	writel(pp->rx_fis_dma & 0xffffffff, port_mmio + PORT_FIS_ADDR);
 
 	/* enable FIS reception */
drivers/ata/libahci_platform.c +1 -1
index 6e072d681341..f6524135ea11 100644
@@ -620,10 +620,10 @@ struct ahci_host_priv *ahci_platform_get_resources(struct platform_device *pdev,
 			of_platform_device_create(child, NULL, NULL);
 
 			port_dev = of_find_device_by_node(child);
-
 			if (port_dev) {
 				rc = ahci_platform_get_regulator(hpriv, port,
 								&port_dev->dev);
+				put_device(&port_dev->dev);
 				if (rc == -EPROBE_DEFER)
 					goto err_out;
 			}
drivers/block/sunvdc.c +8 -1
index 24ad56536ed6..2be8231dcd5b 100644
@@ -556,6 +556,7 @@ static blk_status_t vdc_queue_rq(struct blk_mq_hw_ctx *hctx,
 	struct vdc_port *port = hctx->queue->queuedata;
 	struct vio_dring_state *dr;
 	unsigned long flags;
+	int ret;
 
 	dr = &port->vio.drings[VIO_DRIVER_TX_RING];
 
@@ -577,7 +578,13 @@ static blk_status_t vdc_queue_rq(struct blk_mq_hw_ctx *hctx,
 		return BLK_STS_DEV_RESOURCE;
 	}
 
-	if (__send_request(bd->rq) < 0) {
+	ret = __send_request(bd->rq);
+	if (ret == -EAGAIN) {
+		spin_unlock_irqrestore(&port->vio.lock, flags);
+		/* already spun for 10msec, defer 10msec and retry */
+		blk_mq_delay_kick_requeue_list(hctx->queue, 10);
+		return BLK_STS_DEV_RESOURCE;
+	} else if (ret < 0) {
 		spin_unlock_irqrestore(&port->vio.lock, flags);
 		return BLK_STS_IOERR;
 	}
drivers/bluetooth/btintel_pcie.c +7 -1
index c64e96fe8897..3262e950a6bd 100644
@@ -404,6 +404,12 @@ static int btintel_pcie_send_sync(struct btintel_pcie_data *data,
 	if (tfd_index > txq->count)
 		return -ERANGE;
 
+	if (skb->len > BTINTEL_PCIE_BUFFER_SIZE - BTINTEL_PCIE_HCI_TYPE_LEN) {
+		bt_dev_err(hdev, "TX skb too large (%u > %u)", skb->len,
+			   BTINTEL_PCIE_BUFFER_SIZE - BTINTEL_PCIE_HCI_TYPE_LEN);
+		return -EMSGSIZE;
+	}
+
 	/* Firmware raises alive interrupt on HCI_OP_RESET or
 	 * BTINTEL_HCI_OP_RESET
 	 */
@@ -502,7 +508,7 @@ static int btintel_pcie_submit_rx(struct btintel_pcie_data *data)
 
 	frbd_index = data->ia.tr_hia[BTINTEL_PCIE_RXQ_NUM];
 
-	if (frbd_index > rxq->count)
+	if (frbd_index >= rxq->count)
 		return -ERANGE;
 
 	/* Prepare for RX submit. It updates the FRBD with the address of DMA
drivers/bluetooth/btmtk.c +6 -1
index 26d525acd659..7ea8bcd8a7ec 100644
@@ -721,7 +721,12 @@ static int btmtk_usb_hci_wmt_sync(struct hci_dev *hdev,
 	case BTMTK_WMT_FUNC_CTRL:
 		if (!skb_pull_data(data->evt_skb,
 				   sizeof(wmt_evt_funcc->status))) {
-			status = BTMTK_WMT_ON_UNDONE;
+			/* A plain enable/disable request is acked with just
+			 * the WMT header and no trailing status word; the
+			 * result is carried in the header's own flag byte.
+			 */
+			status = wmt_evt->whdr.flag ? BTMTK_WMT_ON_UNDONE :
+						       BTMTK_WMT_ON_DONE;
 			break;
 		}
 
drivers/bluetooth/btmtksdio.c +20 -4
index 94aa60d9cc20..a15ae6598c66 100644
@@ -217,7 +217,14 @@ static int mtk_hci_wmt_sync(struct hci_dev *hdev,
 	}
 
 	/* Parse and handle the return WMT event */
-	wmt_evt = (struct btmtk_hci_wmt_evt *)bdev->evt_skb->data;
+	wmt_evt = skb_pull_data(bdev->evt_skb, sizeof(*wmt_evt));
+	if (!wmt_evt) {
+		bt_dev_err(hdev, "WMT event too short (%u bytes)",
+			   bdev->evt_skb->len);
+		err = -EINVAL;
+		goto err_free_skb;
+	}
+
 	if (wmt_evt->whdr.op != hdr->op) {
 		bt_dev_err(hdev, "Wrong op received %d expected %d",
 			   wmt_evt->whdr.op, hdr->op);
@@ -233,6 +240,17 @@ static int mtk_hci_wmt_sync(struct hci_dev *hdev,
 			status = BTMTK_WMT_PATCH_DONE;
 		break;
 	case BTMTK_WMT_FUNC_CTRL:
+		if (!skb_pull_data(bdev->evt_skb,
+				   sizeof(wmt_evt_funcc->status))) {
+			/* A plain enable/disable request is acked with just
+			 * the WMT header and no trailing status word; the
+			 * result is carried in the header's own flag byte.
+			 */
+			status = wmt_evt->whdr.flag ? BTMTK_WMT_ON_UNDONE :
+						       BTMTK_WMT_ON_DONE;
+			break;
+		}
+
 		wmt_evt_funcc = (struct btmtk_hci_wmt_evt_funcc *)wmt_evt;
 		if (be16_to_cpu(wmt_evt_funcc->status) == 0x404)
 			status = BTMTK_WMT_ON_DONE;
@@ -1244,10 +1262,8 @@ static int btmtksdio_shutdown(struct hci_dev *hdev)
 	wmt_params.status = NULL;
 
 	err = mtk_hci_wmt_sync(hdev, &wmt_params);
-	if (err < 0) {
+	if (err < 0)
 		bt_dev_err(hdev, "Failed to send wmt func ctrl (%d)", err);
-		return err;
-	}
 
 ignore_wmt_cmd:
 	pm_runtime_put_noidle(bdev->dev);
drivers/bluetooth/btmtkuart.c +19 -1
index 27aa48ff3ac2..4af6fbbbd302 100644
@@ -151,7 +151,14 @@ static int mtk_hci_wmt_sync(struct hci_dev *hdev,
 	}
 
 	/* Parse and handle the return WMT event */
-	wmt_evt = (struct btmtk_hci_wmt_evt *)bdev->evt_skb->data;
+	wmt_evt = skb_pull_data(bdev->evt_skb, sizeof(*wmt_evt));
+	if (!wmt_evt) {
+		bt_dev_err(hdev, "WMT event too short (%u bytes)",
+			   bdev->evt_skb->len);
+		err = -EINVAL;
+		goto err_free_wc;
+	}
+
 	if (wmt_evt->whdr.op != hdr->op) {
 		bt_dev_err(hdev, "Wrong op received %d expected %d",
 			   wmt_evt->whdr.op, hdr->op);
@@ -167,6 +174,17 @@ static int mtk_hci_wmt_sync(struct hci_dev *hdev,
 			status = BTMTK_WMT_PATCH_DONE;
 		break;
 	case BTMTK_WMT_FUNC_CTRL:
+		if (!skb_pull_data(bdev->evt_skb,
+				   sizeof(wmt_evt_funcc->status))) {
+			/* A plain enable/disable request is acked with just
+			 * the WMT header and no trailing status word; the
+			 * result is carried in the header's own flag byte.
+			 */
+			status = wmt_evt->whdr.flag ? BTMTK_WMT_ON_UNDONE :
+						       BTMTK_WMT_ON_DONE;
+			break;
+		}
+
 		wmt_evt_funcc = (struct btmtk_hci_wmt_evt_funcc *)wmt_evt;
 		if (be16_to_cpu(wmt_evt_funcc->status) == 0x404)
 			status = BTMTK_WMT_ON_DONE;
drivers/bluetooth/btusb.c +17 -0
index 84f55f67523e..87d50efcd271 100644
@@ -71,6 +71,15 @@ static struct usb_driver btusb_driver;
 #define BTUSB_BROKEN_EXT_SCAN		BIT(29)
 
 static const struct usb_device_id btusb_table[] = {
+	/*
+	 * NXP IW610 (0471:0215): the composite device reports Bluetooth
+	 * class at the whole-device level, so the generic entry below
+	 * would also match this WiFi vendor interface. Ignore it here
+	 * first so mwifiex-nxp can bind it instead.
+	 */
+	{ USB_DEVICE_AND_INTERFACE_INFO(0x0471, 0x0215, 0xff, 0xff, 0xff),
+	  .driver_info = BTUSB_IGNORE },
+
 	/* Generic Bluetooth USB device */
 	{ USB_DEVICE_INFO(0xe0, 0x01, 0x01) },
 
@@ -475,6 +484,14 @@ static const struct usb_device_id quirks_table[] = {
 	{ USB_DEVICE(0x1286, 0x2046), .driver_info = BTUSB_MARVELL },
 	{ USB_DEVICE(0x1286, 0x204e), .driver_info = BTUSB_MARVELL },
 
+	/*
+	 * NXP IW610 BT interfaces (Marvell-lineage silicon, same quirk as
+	 * the 0x1286 entries above). Scoped to the BT interface class,
+	 * not just VID/PID -- see the btusb_table entry above.
+	 */
+	{ USB_DEVICE_AND_INTERFACE_INFO(0x0471, 0x0215, 0xe0, 0x01, 0x01),
+	  .driver_info = BTUSB_MARVELL },
+
 	/* Intel Bluetooth devices */
 	{ USB_DEVICE(0x8087, 0x0025), .driver_info = BTUSB_INTEL_COMBINED },
 	{ USB_DEVICE(0x8087, 0x0026), .driver_info = BTUSB_INTEL_COMBINED },
drivers/bluetooth/hci_qca.c +10 -4
index 1222f97800f4..875093e61c68 100644
@@ -2228,8 +2228,8 @@ static void qca_power_off(struct hci_uart *hu)
 	bool sw_ctrl_state;
 	struct qca_power *power;
 
-	/* From this point we go into power off state. But serial port is
-	 * still open, stop queueing the IBS data and flush all the buffered
+	/* From this point we go into power off state. But serial port may
+	 * still be open, stop queueing the IBS data and flush all the buffered
 	 * data in skb's.
 	 */
 	spin_lock_irqsave(&qca->hci_ibs_lock, flags);
@@ -2251,8 +2251,14 @@ static void qca_power_off(struct hci_uart *hu)
 	case QCA_WCN3990:
 	case QCA_WCN3991:
 	case QCA_WCN3998:
-		host_set_baudrate(hu, 2400);
-		qca_send_power_pulse(hu, false);
+		/* Both of these write to the serial port which may have
+		 * already been closed by hci_uart_close(), which closes
+		 * the port if HCI_QUIRK_NON_PERSISTENT_SETUP is set.
+		 */
+		if (test_bit(HCI_UART_PROTO_READY, &hu->flags)) {
+			host_set_baudrate(hu, 2400);
+			qca_send_power_pulse(hu, false);
+		}
 		break;
 	default:
 		break;
drivers/clk/clk-scpi.c +6 -2
index 24cee7c9fda6..e1891351c221 100644
@@ -85,7 +85,7 @@ static unsigned long scpi_dvfs_recalc_rate(struct clk_hw *hw,
 	int idx = clk->scpi_ops->dvfs_get_idx(clk->id);
 	const struct scpi_opp *opp;
 
-	if (idx < 0)
+	if (idx < 0 || idx >= clk->info->count)
 		return 0;
 
 	opp = clk->info->opps + idx;
@@ -284,10 +284,14 @@ static int scpi_clocks_probe(struct platform_device *pdev)
 		if (match->data != &scpi_dvfs_ops)
 			continue;
 		/* Add the virtual cpufreq device if it's DVFS clock provider */
+		if (cpufreq_dev)
+			continue;
 		cpufreq_dev = platform_device_register_simple("scpi-cpufreq",
 							      -1, NULL, 0);
-		if (IS_ERR(cpufreq_dev))
+		if (IS_ERR(cpufreq_dev)) {
 			pr_warn("unable to register cpufreq device");
+			cpufreq_dev = NULL;
+		}
 	}
 	return 0;
 }
drivers/dma-buf/dma-buf-mapping.c +21 -10
index 794acff2546a..833be519e1e6 100644
@@ -5,16 +5,18 @@
  */
 #include <linux/dma-buf-mapping.h>
 #include <linux/dma-resv.h>
+#include <linux/overflow.h>
+#include <linux/align.h>
+
+#define MAX_SG_ENT_SZ ALIGN_DOWN(UINT_MAX, PAGE_SIZE)
 
 static struct scatterlist *fill_sg_entry(struct scatterlist *sgl, size_t length,
 					 dma_addr_t addr)
 {
-	unsigned int len, nents;
-	int i;
+	size_t len;
 
-	nents = DIV_ROUND_UP(length, UINT_MAX);
-	for (i = 0; i < nents; i++) {
-		len = min_t(size_t, length, UINT_MAX);
+	while (length) {
+		len = min(length, MAX_SG_ENT_SZ);
 		length -= len;
 		/*
 		 * DMABUF abuses scatterlist to create a scatterlist
@@ -24,8 +26,10 @@ static struct scatterlist *fill_sg_entry(struct scatterlist *sgl, size_t length,
 		 * does not require the CPU list for mapping or unmapping.
 		 */
 		sg_set_page(sgl, NULL, 0, 0);
-		sg_dma_address(sgl) = addr + (dma_addr_t)i * UINT_MAX;
+		sg_dma_address(sgl) = addr;
 		sg_dma_len(sgl) = len;
+		addr += len;
+		/* Unconditionally advance. On last segment, this becomes NULL */
 		sgl = sg_next(sgl);
 	}
 
@@ -40,15 +44,19 @@ static unsigned int calc_sg_nents(struct dma_iova_state *state,
 	size_t i;
 
 	if (!state || !dma_use_iova(state)) {
-		for (i = 0; i < nr_ranges; i++)
-			nents += DIV_ROUND_UP(phys_vec[i].len, UINT_MAX);
+		for (i = 0; i < nr_ranges; i++) {
+			unsigned int added = DIV_ROUND_UP(phys_vec[i].len, MAX_SG_ENT_SZ);
+
+			if (check_add_overflow(nents, added, &nents))
+				return 0;
+		}
 	} else {
 		/*
 		 * In IOVA case, there is only one SG entry which spans
 		 * for whole IOVA address space, but we need to make sure
 		 * that it fits sg->length, maybe we need more.
 		 */
-		nents = DIV_ROUND_UP(size, UINT_MAX);
+		nents = DIV_ROUND_UP(size, MAX_SG_ENT_SZ);
 	}
 
 	return nents;
@@ -95,9 +103,10 @@ struct sg_table *dma_buf_phys_vec_to_sgt(struct dma_buf_attachment *attach,
 					 size_t nr_ranges, size_t size,
 					 enum dma_data_direction dir)
 {
-	unsigned int nents, mapped_len = 0;
 	struct dma_buf_dma *dma;
 	struct scatterlist *sgl;
+	size_t mapped_len = 0;
+	unsigned int nents;
 	dma_addr_t addr;
 	size_t i;
 	int ret;
@@ -133,6 +142,8 @@ struct sg_table *dma_buf_phys_vec_to_sgt(struct dma_buf_attachment *attach,
 	}
 
 	nents = calc_sg_nents(dma->state, phys_vec, nr_ranges, size);
+
+	/* sg_alloc_table will cleanly fail and return -EINVAL if nents == 0 */
 	ret = sg_alloc_table(&dma->sgt, nents, GFP_KERNEL | __GFP_ZERO);
 	if (ret)
 		goto err_free_state;
drivers/dma-buf/dma-fence.c +12 -2
index 87797bea91cb..1037a815aa0e 100644
@@ -1168,7 +1168,12 @@ const char __rcu *dma_fence_driver_name(struct dma_fence *fence)
 
 	/* RCU protection is required for safe access to returned string */
 	ops = rcu_dereference(fence->ops);
-	if (ops)
+
+	/*
+	 * Make load ordering irrelevant by checking both signaled state and ops
+	 * pointer and ops pointer is only set to NULL on newer implementations.
+	 */
+	if (!dma_fence_test_signaled_flag(fence) && ops)
 		return (const char __rcu *)ops->get_driver_name(fence);
 	else
 		return (const char __rcu *)"detached-driver";
@@ -1201,7 +1206,12 @@ const char __rcu *dma_fence_timeline_name(struct dma_fence *fence)
 
 	/* RCU protection is required for safe access to returned string */
 	ops = rcu_dereference(fence->ops);
-	if (ops)
+
+	/*
+	 * Make load ordering irrelevant by checking both signaled state and ops
+	 * pointer and ops pointer is only set to NULL on newer implementations.
+	 */
+	if (!dma_fence_test_signaled_flag(fence) && ops)
 		return (const char __rcu *)ops->get_timeline_name(fence);
 	else
 		return (const char __rcu *)"signaled-timeline";
drivers/dma/dmaengine.c +8 -2
index 9049171df857..5b5673fc7344 100644
@@ -428,6 +428,7 @@ static void dma_device_release(struct kref *ref)
 
 	list_del_rcu(&device->global_node);
 	dma_channel_rebalance();
+	synchronize_rcu();
 
 	if (device->device_release)
 		device->device_release(device);
@@ -495,10 +496,13 @@ static int dma_chan_get(struct dma_chan *chan)
  */
 static void dma_chan_put(struct dma_chan *chan)
 {
+	struct module *owner;
+
 	/* This channel is not in use, bail out */
 	if (!chan->client_count)
 		return;
 
+	owner = dma_chan_to_owner(chan);
 	chan->client_count--;
 
 	/* This channel is not in use anymore, free it */
@@ -515,8 +519,10 @@ static void dma_chan_put(struct dma_chan *chan)
 		chan->route_data = NULL;
 	}
 
-	dma_device_put(chan->device);
-	module_put(dma_chan_to_owner(chan));
+	/* This channel is not in use anymore, drop the device ref */
+	if (!chan->client_count)
+		dma_device_put(chan->device);
+	module_put(owner);
 }
 
 enum dma_status dma_sync_wait(struct dma_chan *chan, dma_cookie_t cookie)
drivers/dma/mmp_pdma.c +2 -3
index 386e85cd4882..ed520737882b 100644
@@ -52,7 +52,6 @@
 #define DCSR_EORINTR	BIT(9)	/* The end of Receive */
 
 #define DRCMR_BASE		0x0100
-#define DRCMR_EXT_BASE_K3	0x1000
 #define DRCMR_EXT_BASE_DEFAULT	0x1100
 #define DRCMR_REQ_LIMIT		64
 #define DRCMR_MAPVLD	BIT(7)	/* Map Valid (read / write) */
@@ -713,7 +712,7 @@ mmp_pdma_prep_slave_sg(struct dma_chan *dchan, struct scatterlist *sgl,
 
 	for_each_sg(sgl, sg, sg_len, i) {
 		addr = sg_dma_address(sg);
-		avail = sg_dma_len(sgl);
+		avail = sg_dma_len(sg);
 
 		do {
 			len = min_t(size_t, avail, PDMA_MAX_DESC_BYTES);
@@ -1219,7 +1218,7 @@ static const struct mmp_pdma_ops spacemit_k3_pdma_ops = {
 	.get_desc_dst_addr = get_desc_dst_addr_64,
 	.run_bits = (DCSR_RUN | DCSR_LPAEEN | DCSR_EORIRQEN | DCSR_EORSTOPEN),
 	.dma_width = 64,
-	.drcmr_ext_base = DRCMR_EXT_BASE_K3,
+	.drcmr_ext_base = DRCMR_EXT_BASE_DEFAULT,
 };
 
 static const struct of_device_id mmp_pdma_dt_ids[] = {
drivers/dma/pxa_dma.c +2 -1
index fa2ee0b3e09f..fc43124fefa8 100644
@@ -744,6 +744,7 @@ pxad_alloc_desc(struct pxad_chan *chan, unsigned int nb_hw_desc)
 	sw_desc = kzalloc_flex(*sw_desc, hw_desc, nb_hw_desc, GFP_NOWAIT);
 	if (!sw_desc)
 		return NULL;
+	sw_desc->nb_desc = nb_hw_desc;
 	sw_desc->desc_pool = chan->desc_pool;
 
 	for (i = 0; i < nb_hw_desc; i++) {
@@ -752,10 +753,10 @@ pxad_alloc_desc(struct pxad_chan *chan, unsigned int nb_hw_desc)
 			dev_err(&chan->vc.chan.dev->device,
 				"%s(): Couldn't allocate the %dth hw_desc from dma_pool %p\n",
 				__func__, i, sw_desc->desc_pool);
+			sw_desc->nb_desc = i;
 			goto err;
 		}
 
-		sw_desc->nb_desc++;
 		sw_desc->hw_desc[i] = desc;
 
 		if (i == 0)
drivers/dma/sprd-dma.c +1 -2
index 087fea3af2e4..19b32a23c882 100644
@@ -1212,7 +1212,7 @@ static int sprd_dma_probe(struct platform_device *pdev)
 
 	ret = pm_runtime_get_sync(&pdev->dev);
 	if (ret < 0)
-		goto err_rpm;
+		goto err_register;
 
 	ret = dma_async_device_register(&sdev->dma_dev);
 	if (ret < 0) {
@@ -1234,7 +1234,6 @@ static int sprd_dma_probe(struct platform_device *pdev)
 err_register:
 	pm_runtime_put_noidle(&pdev->dev);
 	pm_runtime_disable(&pdev->dev);
-err_rpm:
 	sprd_dma_disable(sdev);
 	return ret;
 }
drivers/dma/sun6i-dma.c +5 -4
index f47a326dd7ff..7704b016aed8 100644
@@ -354,8 +354,10 @@ static size_t sun6i_get_chan_size(struct sun6i_pchan *pchan)
 	size_t bytes;
 	dma_addr_t pos;
 
-	pos = readl(pchan->base + DMA_CHAN_LLI_ADDR);
-	bytes = readl(pchan->base + DMA_CHAN_CUR_CNT);
+	do {
+		pos = readl(pchan->base + DMA_CHAN_LLI_ADDR);
+		bytes = readl(pchan->base + DMA_CHAN_CUR_CNT);
+	} while (pos != readl(pchan->base + DMA_CHAN_LLI_ADDR));
 
 	if (pos == LLI_LAST_ITEM)
 		return bytes;
@@ -979,7 +981,6 @@ static enum dma_status sun6i_dma_tx_status(struct dma_chan *chan,
 	struct sun6i_pchan *pchan = vchan->phy;
 	struct sun6i_dma_lli *lli;
 	struct virt_dma_desc *vd;
-	struct sun6i_desc *txd;
 	enum dma_status ret;
 	unsigned long flags;
 	size_t bytes = 0;
@@ -991,9 +992,9 @@ static enum dma_status sun6i_dma_tx_status(struct dma_chan *chan,
 	spin_lock_irqsave(&vchan->vc.lock, flags);
 
 	vd = vchan_find_desc(&vchan->vc, cookie);
-	txd = to_sun6i_desc(&vd->tx);
 
 	if (vd) {
+		struct sun6i_desc *txd = to_sun6i_desc(&vd->tx);
 		for (lli = txd->v_lli; lli != NULL; lli = lli->v_lli_next)
 			bytes += lli->len;
 	} else if (!pchan || !pchan->desc) {
drivers/dma/ti/k3-udma-glue.c +3 -2
index 686dc140293e..70eaf7ee57e6 100644
@@ -1243,8 +1243,9 @@ void k3_udma_glue_release_rx_chn(struct k3_udma_glue_rx_channel *rx_chn)
 		rx_chn->psil_paired = false;
 	}
 
-	for (i = 0; i < rx_chn->flow_num; i++)
-		k3_udma_glue_release_rx_flow(rx_chn, i);
+	if (rx_chn->flows)
+		for (i = 0; i < rx_chn->flow_num; i++)
+			k3_udma_glue_release_rx_flow(rx_chn, i);
 
 	if (xudma_rflow_is_gp(rx_chn->common.udmax, rx_chn->flow_id_base))
 		xudma_free_gp_rflow_range(rx_chn->common.udmax,
drivers/dma/xilinx/xilinx_dma.c +18 -8
index 74ad80d6c5a5..12cf1ca3a98a 100644
@@ -756,15 +756,25 @@ xilinx_aximcdma_alloc_tx_segment(struct xilinx_dma_chan *chan)
 	return segment;
 }
 
-static void xilinx_dma_clean_hw_desc(struct xilinx_axidma_desc_hw *hw)
+static void xilinx_dma_clean_hw_desc(struct xilinx_dma_chan *chan,
+				     struct xilinx_axidma_tx_segment *segment)
 {
-	u32 next_desc = hw->next_desc;
-	u32 next_desc_msb = hw->next_desc_msb;
+	dma_addr_t next;
+	u32 i;
 
-	memset(hw, 0, sizeof(struct xilinx_axidma_desc_hw));
+	/*
+	 * Restore the buffer descriptor's next descriptor pointer to the value
+	 * set up in xilinx_dma_alloc_chan_resources(). Otherwise using the DMA
+	 * in cyclic mode leaves the next descriptor pointer altered and
+	 * prevents subsequent non-cyclic transfers.
+	 */
+	i = segment - chan->seg_v;
+	next = chan->seg_p +
+	       sizeof(*chan->seg_v) * ((i + 1) % XILINX_DMA_NUM_DESCS);
 
-	hw->next_desc = next_desc;
-	hw->next_desc_msb = next_desc_msb;
+	memset(&segment->hw, 0, sizeof(segment->hw));
+	segment->hw.next_desc = lower_32_bits(next);
+	segment->hw.next_desc_msb = upper_32_bits(next);
 }
 
 static void xilinx_mcdma_clean_hw_desc(struct xilinx_aximcdma_desc_hw *hw)
@@ -786,7 +796,7 @@ static void xilinx_mcdma_clean_hw_desc(struct xilinx_aximcdma_desc_hw *hw)
 static void xilinx_dma_free_tx_segment(struct xilinx_dma_chan *chan,
 				struct xilinx_axidma_tx_segment *segment)
 {
-	xilinx_dma_clean_hw_desc(&segment->hw);
+	xilinx_dma_clean_hw_desc(chan, segment);
 
 	list_add_tail(&segment->node, &chan->free_seg_list);
 }
@@ -920,9 +930,9 @@ static void xilinx_dma_free_descriptors(struct xilinx_dma_chan *chan)
 
 	spin_lock_irqsave(&chan->lock, flags);
 
-	xilinx_dma_free_desc_list(chan, &chan->pending_list);
 	xilinx_dma_free_desc_list(chan, &chan->done_list);
 	xilinx_dma_free_desc_list(chan, &chan->active_list);
+	xilinx_dma_free_desc_list(chan, &chan->pending_list);
 
 	spin_unlock_irqrestore(&chan->lock, flags);
 }
drivers/firmware/arm_scpi.c +2 -2
index 2acad5fa5a28..6eeb0ad9b008 100644
@@ -631,8 +631,8 @@ static struct scpi_dvfs_info *scpi_dvfs_get_info(u8 domain)
 	if (ret)
 		return ERR_PTR(ret);
 
-	if (!buf.opp_count)
-		return ERR_PTR(-ENOENT);
+	if (!buf.opp_count || buf.opp_count > MAX_DVFS_OPPS)
+		return ERR_PTR(-EINVAL);
 
 	info = kmalloc_obj(*info);
 	if (!info)
drivers/gpio/gpio-virtuser.c +2 -1
index 7d0d366be37a..d5876c19cfef 100644
@@ -692,7 +692,8 @@ static int gpio_virtuser_interrupts_set(void *data, u64 val)
 		atomic_set(&ld->irq, irq);
 	} else {
 		irq = atomic_xchg(&ld->irq, 0);
-		free_irq(irq, ld);
+		if (irq)
+			free_irq(irq, ld);
 	}
 
 	return 0;
drivers/gpio/gpiolib-of.c +3 -3
index 940b566946ce..f36e4b171fa7 100644
@@ -788,13 +788,13 @@ static int of_gpio_notify(struct notifier_block *nb, unsigned long action,
 		if (!of_property_read_bool(rd->dn, "gpio-hog"))
 			return NOTIFY_DONE;	/* not for us */
 
-		if (of_node_test_and_set_flag(rd->dn, OF_POPULATED))
-			return NOTIFY_DONE;
-
 		gdev = of_find_gpio_device_by_node(rd->dn->parent);
 		if (!gdev)
 			return NOTIFY_DONE;	/* not for us */
 
+		if (of_node_test_and_set_flag(rd->dn, OF_POPULATED))
+			return NOTIFY_DONE;
+
 		ret = gpiochip_add_hog(gpio_device_get_chip(gdev), of_fwnode_handle(rd->dn));
 		if (ret < 0) {
 			pr_err("%s: failed to add hogs for %pOF\n", __func__,
drivers/gpio/gpiolib-shared.c +6 -3
index 495bd3d0ddf0..5f9623e40b0f 100644
@@ -261,10 +261,13 @@ static int gpio_shared_of_traverse(struct device_node *curr)
 				con_id[con_id_len - suffix_len] = '\0';
 			}
 
-			ref = gpio_shared_make_ref(fwnode_handle_get(of_fwnode_handle(curr)),
-						   con_id, args.args[1]);
-			if (!ref)
+			struct fwnode_handle *curr_fwnode =
+				fwnode_handle_get(of_fwnode_handle(curr));
+			ref = gpio_shared_make_ref(curr_fwnode, con_id, args.args[1]);
+			if (!ref) {
+				fwnode_handle_put(curr_fwnode);
 				return -ENOMEM;
+			}
 
 			if (!list_empty(&entry->refs))
 				pr_debug("GPIO %u at %s is shared by multiple firmware nodes\n",
drivers/gpu/drm/amd/amdgpu/amdgpu.h +3 -0
index 7b09410d6d8f..6b0c1ad5a053 100644
@@ -822,6 +822,9 @@ enum amdgpu_enforce_isolation_mode {
 struct amdgpu_device {
 	struct device			*dev;
 	struct pci_dev			*pdev;
+	/* The two ends of the physical PCIe link outside the device. */
+	struct pci_dev			*link_dev;
+	struct pci_dev			*link_partner;
 	struct drm_device		ddev;
 
 #ifdef CONFIG_DRM_AMD_ACP
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c +1 -1
index da325863ad76..4b29e7eee610 100644
@@ -329,7 +329,7 @@ void amdgpu_amdkfd_clear_kfd_mapping(struct amdgpu_device *adev)
 	struct kfd_dev *kfd = adev->kfd.dev;
 	unsigned int i;
 
-	if (!kfd)
+	if (!kfd || !kfd->init_complete)
 		return;
 
 	for (i = 0; i < kfd->num_nodes; i++) {
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +105 -40

226 lines not on this page · raw message

drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c +42 -1

69 lines not on this page · raw message

drivers/gpu/drm/amd/amdgpu/mxgpu_ai.c +5 -2
index 9a40107a0869..fec08f235b92 100644
@@ -185,8 +185,11 @@ static int xgpu_ai_send_access_requests(struct amdgpu_device *adev,
 	} else if (req == IDH_REQ_GPU_INIT_DATA){
 		/* Dummy REQ_GPU_INIT_DATA handling */
 		r = xgpu_ai_poll_msg(adev, IDH_REQ_GPU_INIT_DATA_READY);
-		/* version set to 0 since dummy */
-		adev->virt.req_init_data_ver = 0;	
+		/*
+		 * AI uses the GPU_CRIT_REGION_V1 layout in practice, so fix the
+		 * dummy version value to match the actual init-data format.
+		 */
+		adev->virt.req_init_data_ver = GPU_CRIT_REGION_V1;
 	}
 
 	return 0;
drivers/gpu/drm/amd/amdgpu/nbio_v7_9.c +1 -1
index bdfd2917e3ca..def02993b7cf 100644
@@ -535,7 +535,7 @@ static void nbio_v7_9_handle_ras_controller_intr_no_bifring(struct amdgpu_device
 						RAS_CNTLR_INTERRUPT_CLEAR, 1);
 		WREG32_SOC15(NBIO, 0, regBIF_BX0_BIF_DOORBELL_INT_CNTL, bif_doorbell_intr_cntl);
 
-		if (!ras->disable_ras_err_cnt_harvest) {
+		if (ras && !ras->disable_ras_err_cnt_harvest && obj) {
 			/*
 			 * clear error status after ras_controller_intr
 			 * according to hw team and count ue number
drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c +5 -2
index 8b522fede60a..487cf746c450 100644
@@ -797,10 +797,12 @@ static int create_queue_nocpsch(struct device_queue_manager *dqm,
 	mqd_mgr = dqm->mqd_mgrs[get_mqd_type_from_queue_type(
 			q->properties.type)];
 	if (qd && !mqd_mgr->restore_mqd) {
-		pr_debug("restore_mqd not implemented for this GPU\n");
+		pr_debug("restore_mqd not implemented for queue type %d\n",
+			 q->properties.type);
 		retval = -EOPNOTSUPP;
 		goto deallocate_vmid;
 	}
+
 	if (q->properties.type == KFD_QUEUE_TYPE_COMPUTE) {
 		retval = allocate_hqd(dqm, q);
 		if (retval)
@@ -2168,7 +2170,8 @@ static int create_queue_cpsch(struct device_queue_manager *dqm, struct queue *q,
 	mqd_mgr = dqm->mqd_mgrs[get_mqd_type_from_queue_type(
 			q->properties.type)];
 	if (qd && !mqd_mgr->restore_mqd) {
-		pr_debug("restore_mqd not implemented for this GPU\n");
+		pr_debug("restore_mqd not implemented for queue type %d\n",
+			 q->properties.type);
 		retval = -EOPNOTSUPP;
 		goto out_deallocate_doorbell;
 	}
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v10.c +1 -1
index e034da638c07..4f8a8a1a6186 100644
@@ -204,7 +204,7 @@ static void update_mqd(struct mqd_manager *mm, void *mqd,
 	 * is safe, giving a maximum field value of 0xA.
 	 */
 	m->cp_hqd_eop_control = q->eop_ring_buffer_size ? min(0xA,
-		ffs(q->eop_ring_buffer_size / sizeof(unsigned int)) - 1 - 1) : 0;
+		ffs(q->eop_ring_buffer_size / sizeof(unsigned int) / 4)) : 0;
 	m->cp_hqd_eop_base_addr_lo =
 			lower_32_bits(q->eop_ring_buffer_address >> 8);
 	m->cp_hqd_eop_base_addr_hi =
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v11.c +1 -1
index 350fcbbba4b2..bf015dc5b868 100644
@@ -242,7 +242,7 @@ static void update_mqd(struct mqd_manager *mm, void *mqd,
 	 * is safe, giving a maximum field value of 0xA.
 	 */
 	m->cp_hqd_eop_control = q->eop_ring_buffer_size ? min(0xA,
-		ffs(q->eop_ring_buffer_size / sizeof(unsigned int)) - 1 - 1) : 0;
+		ffs(q->eop_ring_buffer_size / sizeof(unsigned int) / 4)) : 0;
 	m->cp_hqd_eop_base_addr_lo =
 			lower_32_bits(q->eop_ring_buffer_address >> 8);
 	m->cp_hqd_eop_base_addr_hi =
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v12.c +60 -1

85 lines not on this page · raw message

drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v12_1.c +69 -1

94 lines not on this page · raw message

drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c +5 -1
index be99f0d53b18..1f7224a9c5cb 100644
@@ -299,6 +299,10 @@ static void update_mqd(struct mqd_manager *mm, void *mqd,
 		1 << CP_HQD_IB_CONTROL__IB_EXE_DISABLE__SHIFT;
 
 	/*
+	 * The lowest 6 bits of eop_control store the EOP ring size. If
+	 * their value is X, the ring size is 2^(X + 1) dwords, or
+	 * 2^(X + 3) bytes.
+	 *
 	 * HW does not clamp this field correctly. Maximum EOP queue size
 	 * is constrained by per-SE EOP done signal count, which is 8-bit.
 	 * Limit is 0xFF EOP entries (= 0x7F8 dwords). CP will not submit
@@ -310,7 +314,7 @@ static void update_mqd(struct mqd_manager *mm, void *mqd,
 	 *
 	 */
 	m->cp_hqd_eop_control = q->eop_ring_buffer_size ?
-		min(0xA, order_base_2(q->eop_ring_buffer_size / 4) - 1) : 0;
+		min(0xA, order_base_2(q->eop_ring_buffer_size / 8)) : 0;
 
 	m->cp_hqd_eop_base_addr_lo =
 			lower_32_bits(q->eop_ring_buffer_address >> 8);
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c +4 -1
index 60b87a500698..029572548c14 100644
@@ -208,6 +208,9 @@ static void __update_mqd(struct mqd_manager *mm, void *mqd,
 			mtype << CP_HQD_IB_CONTROL__MTYPE__SHIFT;
 
 	/*
+	 * The lowest 6 bits of eop_control store the EOP ring size. If
+	 * their value is X, the ring size is 2^(X + 1) dwords, or
+	 * 2^(X + 3) bytes.
 	 * HW does not clamp this field correctly. Maximum EOP queue size
 	 * is constrained by per-SE EOP done signal count, which is 8-bit.
 	 * Limit is 0xFF EOP entries (= 0x7F8 dwords). CP will not submit
@@ -215,7 +218,7 @@ static void __update_mqd(struct mqd_manager *mm, void *mqd,
 	 * is safe, giving a maximum field value of 0xA.
 	 */
 	m->cp_hqd_eop_control |= q->eop_ring_buffer_size ? min(0xA,
-		order_base_2(q->eop_ring_buffer_size / 4) - 1) : 0;
+		order_base_2(q->eop_ring_buffer_size / 8)) : 0;
 	m->cp_hqd_eop_base_addr_lo =
 			lower_32_bits(q->eop_ring_buffer_address >> 8);
 	m->cp_hqd_eop_base_addr_hi =
drivers/gpu/drm/amd/display/dc/hwss/dcn30/dcn30_hwseq.c +7 -6
index 2d3587a31bc8..2ecd3a4068c0 100644
@@ -1058,10 +1058,12 @@ bool dcn30_apply_idle_power_optimizations(struct dc *dc, bool enable)
 				 */
 				unsigned int denom = refresh_hz * 6528;
 				unsigned int stutter_period = dc->current_state->perf_params.stutter_period_us;
+				uint64_t num = (1000000LL + 2 * stutter_period * refresh_hz) *
+					(100LL + dc->debug.mall_additional_timer_percent);
+				uint64_t tmr_ticks;
 
-				tmr_delay = (uint32_t)(div_u64(((1000000LL + 2 * stutter_period * refresh_hz) *
-						(100LL + dc->debug.mall_additional_timer_percent) + denom - 1),
-						denom) - 64LL);
+				tmr_ticks = div_u64(num + denom - 1, denom);
+				tmr_delay = tmr_ticks > 64 ? (uint32_t)(tmr_ticks - 64) : 0;
 
 				/* In some cases the stutter period is really big (tiny modes) in these
 				 * cases MALL cant be enabled, So skip these cases to avoid a ASSERT()
@@ -1083,9 +1085,8 @@ bool dcn30_apply_idle_power_optimizations(struct dc *dc, bool enable)
 					}
 
 					denom *= 2;
-					tmr_delay = (uint32_t)(div_u64(((1000000LL + 2 * stutter_period * refresh_hz) *
-							(100LL + dc->debug.mall_additional_timer_percent) + denom - 1),
-							denom) - 64LL);
+					tmr_ticks = div_u64(num + denom - 1, denom);
+					tmr_delay = tmr_ticks > 64 ? (uint32_t)(tmr_ticks - 64) : 0;
 				}
 
 				/* Copy HW cursor */
drivers/gpu/drm/drm_atomic_uapi.c +10 -3
index 7b951af5ab32..66b591b39a51 100644
@@ -1461,10 +1461,12 @@ static int prepare_signaling(struct drm_device *dev,
 			struct dma_fence *fence;
 			struct drm_out_fence_state *f;
 
+			ret = -ENOMEM;
+
 			f = krealloc(*fence_state, sizeof(**fence_state) *
 				     (*num_fences + 1), GFP_KERNEL);
 			if (!f)
-				return -ENOMEM;
+				goto err_free_event;
 
 			memset(&f[*num_fences], 0, sizeof(*f));
 
@@ -1473,12 +1475,12 @@ static int prepare_signaling(struct drm_device *dev,
 
 			fence = drm_crtc_create_fence(crtc);
 			if (!fence)
-				return -ENOMEM;
+				goto err_free_event;
 
 			ret = setup_out_fence(&f[(*num_fences)++], fence);
 			if (ret) {
 				dma_fence_put(fence);
-				return ret;
+				goto err_free_event;
 			}
 
 			crtc_state->event->base.fence = fence;
@@ -1534,6 +1536,11 @@ static int prepare_signaling(struct drm_device *dev,
 	}
 
 	return 0;
+
+err_free_event:
+	drm_event_cancel_free(dev, &crtc_state->event->base);
+	crtc_state->event = NULL;
+	return ret;
 }
 
 static void complete_signaling(struct drm_device *dev,
drivers/gpu/drm/gud/gud_pipe.c +5 -2
index 5ef887d8485a..aa7792966287 100644
@@ -482,6 +482,9 @@ int gud_plane_atomic_check(struct drm_plane *plane,
 	if (!new_plane_state->visible)
 		return 0;
 
+	if (gdrm->flags & GUD_DISPLAY_FLAG_FULL_UPDATE)
+		new_plane_state->ignore_damage_clips = true;
+
 	if (old_plane_state->rotation != new_plane_state->rotation)
 		crtc_state->mode_changed = true;
 
@@ -562,8 +565,8 @@ int gud_plane_atomic_check(struct drm_plane *plane,
 			goto out;
 		}
 
-		req->properties[num_properties + i].prop = cpu_to_le16(prop);
-		req->properties[num_properties + i].val = cpu_to_le64(val);
+		req->properties[num_properties].prop = cpu_to_le16(prop);
+		req->properties[num_properties].val = cpu_to_le64(val);
 		num_properties++;
 	}
 
drivers/gpu/drm/i915/display/intel_cursor.c +5 -10
index 18ef7e64821b..52347668f27d 100644
@@ -530,18 +530,13 @@ static int i9xx_check_cursor(struct intel_crtc_state *crtc_state,
 }
 
 static void i9xx_cursor_disable_sel_fetch_arm(struct intel_dsb *dsb,
-					      struct intel_plane *plane)
+					      struct intel_plane *plane,
+					      const struct intel_crtc_state *crtc_state)
 {
 	struct intel_display *display = to_intel_display(plane);
 	enum pipe pipe = plane->pipe;
 
-	/*
-	 * Clear this whenever the hardware has selective fetch, not just when
-	 * the current state uses it. The cursor may have been enabled with
-	 * selective fetch earlier and had its enable bit orphaned when the
-	 * feature was switched off.
-	 */
-	if (!HAS_PSR2_SEL_FETCH(display))
+	if (!crtc_state->enable_psr2_sel_fetch)
 		return;
 
 	intel_de_write_dsb(display, dsb, SEL_FETCH_CUR_CTL(pipe), 0);
@@ -591,7 +586,7 @@ static void i9xx_cursor_update_sel_fetch_arm(struct intel_dsb *dsb,
 		if (crtc_state->enable_psr2_su_region_et)
 			wa_16021440873(dsb, plane, crtc_state, plane_state);
 		else
-			i9xx_cursor_disable_sel_fetch_arm(dsb, plane);
+			i9xx_cursor_disable_sel_fetch_arm(dsb, plane, crtc_state);
 	}
 }
 
@@ -700,7 +695,7 @@ static void i9xx_cursor_update_arm(struct intel_dsb *dsb,
 	if (plane_state)
 		i9xx_cursor_update_sel_fetch_arm(dsb, plane, crtc_state, plane_state);
 	else
-		i9xx_cursor_disable_sel_fetch_arm(dsb, plane);
+		i9xx_cursor_disable_sel_fetch_arm(dsb, plane, crtc_state);
 
 	if (plane->cursor.base != base ||
 	    plane->cursor.size != fbc_ctl ||
drivers/gpu/drm/i915/display/skl_universal_plane.c +5 -10
index 4369c8eeaac2..164b7d61c9a3 100644
@@ -879,18 +879,13 @@ skl_plane_disable_arm(struct intel_dsb *dsb,
 }
 
 static void icl_plane_disable_sel_fetch_arm(struct intel_dsb *dsb,
-					    struct intel_plane *plane)
+					    struct intel_plane *plane,
+					    const struct intel_crtc_state *crtc_state)
 {
 	struct intel_display *display = to_intel_display(plane);
 	enum pipe pipe = plane->pipe;
 
-	/*
-	 * Clear this whenever the hardware has selective fetch, not just when
-	 * the current state uses it. The plane may have been enabled with
-	 * selective fetch earlier and had its enable bit orphaned when the
-	 * feature was switched off.
-	 */
-	if (!HAS_PSR2_SEL_FETCH(display))
+	if (!crtc_state->enable_psr2_sel_fetch)
 		return;
 
 	intel_de_write_dsb(display, dsb, SEL_FETCH_PLANE_CTL(pipe, plane->id), 0);
@@ -926,7 +921,7 @@ icl_plane_disable_arm(struct intel_dsb *dsb,
 
 	skl_write_plane_wm(dsb, plane, crtc_state);
 
-	icl_plane_disable_sel_fetch_arm(dsb, plane);
+	icl_plane_disable_sel_fetch_arm(dsb, plane, crtc_state);
 
 	if (plane_has_normalizer(plane))
 		intel_de_write_dsb(display, dsb,
@@ -1646,7 +1641,7 @@ static void icl_plane_update_sel_fetch_arm(struct intel_dsb *dsb,
 		intel_de_write_dsb(display, dsb, SEL_FETCH_PLANE_CTL(pipe, plane->id),
 				   SEL_FETCH_PLANE_CTL_ENABLE);
 	else
-		icl_plane_disable_sel_fetch_arm(dsb, plane);
+		icl_plane_disable_sel_fetch_arm(dsb, plane, crtc_state);
 }
 
 static void
drivers/gpu/drm/msm/adreno/adreno_device.c +1 -1
index 7f20320ef66a..05c77fe27e62 100644
@@ -25,7 +25,7 @@ MODULE_PARM_DESC(disable_acd, "Forcefully disable GPU ACD");
 module_param_unsafe(disable_acd, bool, 0400);
 
 static bool skip_gpu;
-MODULE_PARM_DESC(no_gpu, "Disable GPU driver register (0=enable GPU driver register (default), 1=skip GPU driver register");
+MODULE_PARM_DESC(skip_gpu, "Disable GPU driver register (0=enable GPU driver register (default), 1=skip GPU driver register");
 module_param(skip_gpu, bool, 0400);
 
 extern const struct adreno_gpulist a2xx_gpulist;
drivers/gpu/drm/msm/adreno/adreno_gpu.c +2 -0
index c62c45bb0ddb..29c59899fdef 100644
@@ -1252,6 +1252,8 @@ void adreno_gpu_cleanup(struct adreno_gpu *adreno_gpu)
 	for (i = 0; i < ARRAY_SIZE(adreno_gpu->info->fw); i++)
 		release_firmware(adreno_gpu->fw[i]);
 
+	pm_runtime_dont_use_autosuspend(&gpu->pdev->dev);
+
 	if (priv && pm_runtime_enabled(&priv->gpu_pdev->dev))
 		pm_runtime_disable(&priv->gpu_pdev->dev);
 
drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c +1 -0
index 36a497f1d6c1..e8729fe1cfef 100644
@@ -118,6 +118,7 @@ static inline void dpu_hw_ctl_clear_pending_flush(struct dpu_hw_ctl *ctx)
 	ctx->pending_intf_flush_mask = 0;
 	ctx->pending_wb_flush_mask = 0;
 	ctx->pending_cwb_flush_mask = 0;
+	ctx->pending_periph_flush_mask = 0;
 	ctx->pending_merge_3d_flush_mask = 0;
 	ctx->pending_dsc_flush_mask = 0;
 	ctx->pending_cdm_flush_mask = 0;
drivers/gpu/drm/msm/dp/dp_display.c +19 -2
index 79e2b171e269..22eade11c615 100644
@@ -698,6 +698,7 @@ enum drm_mode_status msm_dp_bridge_mode_valid(struct drm_bridge *bridge,
 	u32 mode_rate_khz = 0, supported_rate_khz = 0, mode_bpp = 0;
 	struct msm_dp *dp;
 	int mode_pclk_khz = mode->clock;
+	int link_pclk_khz;
 	bool is_yuv_420;
 
 	dp = to_dp_bridge(bridge)->msm_dp_display;
@@ -719,6 +720,8 @@ enum drm_mode_status msm_dp_bridge_mode_valid(struct drm_bridge *bridge,
 	if (is_yuv_420 && !msm_dp_display->panel->vsc_sdp_supported)
 		return MODE_NO_420;
 
+	link_pclk_khz = is_yuv_420 ? mode_pclk_khz / 2 : mode_pclk_khz;
+
 	if (is_yuv_420 || msm_dp_display->wide_bus_supported)
 		mode_pclk_khz /= 2;
 
@@ -730,9 +733,9 @@ enum drm_mode_status msm_dp_bridge_mode_valid(struct drm_bridge *bridge,
 		mode_bpp = default_bpp;
 
 	mode_bpp = msm_dp_panel_get_mode_bpp(msm_dp_display->panel,
-			mode_bpp, mode_pclk_khz);
+			mode_bpp, link_pclk_khz);
 
-	mode_rate_khz = mode_pclk_khz * mode_bpp;
+	mode_rate_khz = link_pclk_khz * mode_bpp;
 	supported_rate_khz = link_info->num_lanes * link_info->rate * 8;
 
 	if (mode_rate_khz > supported_rate_khz)
@@ -1412,6 +1415,20 @@ void msm_dp_bridge_atomic_disable(struct drm_bridge *drm_bridge,
 
 	msm_dp_display = container_of(dp, struct msm_dp_display_private, msm_dp_display);
 
+	/*
+	 * If .atomic_enable() bailed out - link training failure is the common
+	 * case - the mainlink was never brought up and ->power_on stayed false.
+	 * Driving the PUSH_IDLE pattern into a controller that was never
+	 * enabled times out, and .atomic_post_disable() then drops the
+	 * controller's runtime-PM reference without tearing the PHY back down,
+	 * because msm_dp_display_disable() returns early on !power_on.  On
+	 * glymur (Snapdragon X2 Elite) that combination is answered by a
+	 * TrustZone-level SOCCP/ADSP force-stop and a silent SoC reset.
+	 * There is nothing to push idle, so leave it alone.
+	 */
+	if (!dp->power_on)
+		return;
+
 	msm_dp_ctrl_push_idle(msm_dp_display->ctrl);
 }
 
drivers/gpu/drm/msm/dsi/dsi_host.c +19 -17
index 2685cc3d0359..89face267018 100644
@@ -129,7 +129,7 @@ struct msm_dsi_host {
 	struct clk *dsi_pll_pixel_clk;
 
 	unsigned long byte_clk_rate;
-	unsigned long byte_intf_clk_rate;
+	bool byte_intf_clk_div_2;
 	unsigned long pixel_clk_rate;
 	unsigned long esc_clk_rate;
 
@@ -381,8 +381,20 @@ int msm_dsi_runtime_resume(struct device *dev)
 
 int dsi_link_clk_set_rate_6g(struct msm_dsi_host *msm_host)
 {
+	unsigned long byte_intf_clk_rate;
+	long rounded_byte_clk_rate;
 	int ret;
 
+	rounded_byte_clk_rate = clk_round_rate(msm_host->byte_clk,
+					       msm_host->byte_clk_rate);
+	if (rounded_byte_clk_rate < 0) {
+		pr_err("%s: failed to round byte clock rate, %ld\n",
+		       __func__, rounded_byte_clk_rate);
+		return rounded_byte_clk_rate;
+	}
+
+	msm_host->byte_clk_rate = rounded_byte_clk_rate;
+
 	DBG("Set clk rates: pclk=%lu, byteclk=%lu",
 	    msm_host->pixel_clk_rate, msm_host->byte_clk_rate);
 
@@ -400,7 +412,11 @@ int dsi_link_clk_set_rate_6g(struct msm_dsi_host *msm_host)
 	}
 
 	if (msm_host->byte_intf_clk) {
-		ret = clk_set_rate(msm_host->byte_intf_clk, msm_host->byte_intf_clk_rate);
+		byte_intf_clk_rate = msm_host->byte_clk_rate;
+		if (msm_host->byte_intf_clk_div_2)
+			byte_intf_clk_rate /= 2;
+
+		ret = clk_set_rate(msm_host->byte_intf_clk, byte_intf_clk_rate);
 		if (ret) {
 			pr_err("%s: Failed to set rate byte intf clk, %d\n",
 			       __func__, ret);
@@ -668,24 +684,12 @@ static void dsi_calc_pclk(struct msm_dsi_host *msm_host, bool is_bonded_dsi)
 
 int dsi_calc_clk_rate_6g(struct msm_dsi_host *msm_host, bool is_bonded_dsi)
 {
-	long rounded_byte_clk_rate;
-
 	if (!msm_host->mode) {
 		pr_err("%s: mode not set\n", __func__);
 		return -EINVAL;
 	}
 
 	dsi_calc_pclk(msm_host, is_bonded_dsi);
-
-	rounded_byte_clk_rate = clk_round_rate(msm_host->byte_clk,
-					       msm_host->byte_clk_rate);
-	if (rounded_byte_clk_rate < 0) {
-		pr_err("%s: failed to round byte clock rate, %ld\n",
-		       __func__, rounded_byte_clk_rate);
-		return rounded_byte_clk_rate;
-	}
-
-	msm_host->byte_clk_rate = rounded_byte_clk_rate;
 	msm_host->esc_clk_rate = clk_get_rate(msm_host->esc_clk);
 	return 0;
 }
@@ -2500,9 +2504,7 @@ int msm_dsi_host_power_on(struct mipi_dsi_host *host,
 		goto unlock_ret;
 	}
 
-	msm_host->byte_intf_clk_rate = msm_host->byte_clk_rate;
-	if (phy_shared_timings->byte_intf_clk_div_2)
-		msm_host->byte_intf_clk_rate /= 2;
+	msm_host->byte_intf_clk_div_2 = phy_shared_timings->byte_intf_clk_div_2;
 
 	msm_dsi_sfpb_config(msm_host, true);
 
drivers/gpu/drm/msm/hdmi/hdmi_phy.c +6 -2
index eb1088755cb3..77dce35cd45e 100644
@@ -168,13 +168,13 @@ static int msm_hdmi_phy_probe(struct platform_device *pdev)
 
 	ret = msm_hdmi_phy_resource_enable(phy);
 	if (ret)
-		return ret;
+		goto err_pm_disable;
 
 	ret = msm_hdmi_phy_pll_init(pdev, phy->cfg->type);
 	if (ret) {
 		DRM_DEV_ERROR(dev, "couldn't init PLL\n");
 		msm_hdmi_phy_resource_disable(phy);
-		return ret;
+		goto err_pm_disable;
 	}
 
 	msm_hdmi_phy_resource_disable(phy);
@@ -182,6 +182,10 @@ static int msm_hdmi_phy_probe(struct platform_device *pdev)
 	platform_set_drvdata(pdev, phy);
 
 	return 0;
+
+err_pm_disable:
+	pm_runtime_disable(dev);
+	return ret;
 }
 
 static void msm_hdmi_phy_remove(struct platform_device *pdev)
drivers/gpu/drm/msm/msm_drv.c +1 -1
index 32d5ebea2596..fa46ab3063e6 100644
@@ -55,7 +55,7 @@ MODULE_PARM_DESC(modeset, "Use kernel modesetting [KMS] (1=on (default), 0=disab
 module_param(modeset, bool, 0600);
 
 static bool separate_gpu_kms;
-MODULE_PARM_DESC(separate_gpu_drm, "Use separate DRM device for the GPU (0=single DRM device for both GPU and display (default), 1=two DRM devices)");
+MODULE_PARM_DESC(separate_gpu_kms, "Use separate DRM device for the GPU (0=single DRM device for both GPU and display (default), 1=two DRM devices)");
 module_param(separate_gpu_kms, bool, 0400);
 
 DECLARE_FAULT_ATTR(fail_gem_alloc);
drivers/gpu/drm/msm/msm_gem.h +3 -0
index 762e546d25ef..43a938e8f288 100644
@@ -68,6 +68,9 @@ struct msm_gem_vm {
 	/** @base: Inherit from drm_gpuvm. */
 	struct drm_gpuvm base;
 
+	/** @rcu: RCU-delayed free so an exported sched fence->sched stays valid. */
+	struct rcu_head rcu;
+
 	/**
 	 * @sched: Scheduler used for asynchronous VM_BIND request.
 	 *
drivers/gpu/drm/msm/msm_gem_vma.c +1 -1
index 7441d4a01d31..2e16f3ebcf3f 100644
@@ -166,7 +166,7 @@ msm_gem_vm_free(struct drm_gpuvm *gpuvm)
 	dma_fence_put(vm->last_fence);
 	put_pid(vm->pid);
 	kfree(vm->log);
-	kfree(vm);
+	kfree_rcu(vm, rcu);
 }
 
 /**
drivers/gpu/drm/msm/msm_ringbuffer.c +1 -1
index 59c69aa75649..38e1e6866301 100644
@@ -140,5 +140,5 @@ void msm_ringbuffer_destroy(struct msm_ringbuffer *ring)
 
 	msm_gem_kernel_put(ring->bo, ring->gpu->vm);
 
-	kfree(ring);
+	kfree_rcu(ring, rcu);
 }
drivers/gpu/drm/msm/msm_ringbuffer.h +1 -0
index 3631ec283c6e..0bfb6b0f42fa 100644
@@ -55,6 +55,7 @@ struct msm_ringbuffer {
 	/*
 	 * The job scheduler for this ring.
 	 */
+	struct rcu_head rcu;
 	struct drm_gpu_scheduler sched;
 	bool sched_initialized;
 
drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/fbsr.c +1 -1
index 700cea5def35..035b575722db 100644
@@ -208,7 +208,7 @@ r535_fbsr_resume(struct nvkm_gsp *gsp)
 }
 
 static int
-r535_fbsr_suspend(struct nvkm_gsp *gsp, bool runtime)
+r535_fbsr_suspend(struct nvkm_gsp *gsp)
 {
 	struct nvkm_subdev *subdev = &gsp->subdev;
 	struct nvkm_device *device = subdev->device;
drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/gsp.c +6 -2
index f544afa12b6b..94925f1590ea 100644
@@ -1749,7 +1749,7 @@ r535_gsp_fini(struct nvkm_gsp *gsp, enum nvkm_suspend_state suspend)
 		sr->sysmemAddrOfSuspendResumeData = gsp->sr.radix3.lvl0.addr;
 		sr->sizeOfSuspendResumeData = len;
 
-		ret = rm->api->fbsr->suspend(gsp, suspend == NVKM_RUNTIME_SUSPEND);
+		ret = rm->api->fbsr->suspend(gsp);
 		if (ret) {
 			nvkm_gsp_mem_dtor(&gsp->sr.meta);
 			nvkm_gsp_radix3_dtor(gsp, &gsp->sr.radix3);
@@ -1761,8 +1761,12 @@ r535_gsp_fini(struct nvkm_gsp *gsp, enum nvkm_suspend_state suspend)
 		 * TODO: Debug the GSP firmware / RPC handling to find out why
 		 * without this Turing (but none of the other architectures)
 		 * ends up resetting all channels after resume.
+		 * Additionally, runtime suspend on other architectures quickly
+		 * becomes unreliable without this sleep. If you're experiencing
+		 * issues with runtime suspend, try bumping this delay up and
+		 * sending a patch if it fixes your GPU.
 		 */
-		msleep(50);
+		msleep(200);
 	}
 
 	ret = r535_gsp_rpc_unloading_guest_driver(gsp, suspend);
drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/fbsr.c +4 -4
index 8ef8b4f65588..af5aa5065c3d 100644
@@ -62,7 +62,7 @@ r570_fbsr_resume(struct nvkm_gsp *gsp)
 }
 
 static int
-r570_fbsr_init(struct nvkm_gsp *gsp, struct sg_table *sgt, u64 size, bool runtime)
+r570_fbsr_init(struct nvkm_gsp *gsp, struct sg_table *sgt, u64 size)
 {
 	NV2080_CTRL_INTERNAL_FBSR_INIT_PARAMS *ctrl;
 	struct nvkm_gsp_object memlist;
@@ -81,7 +81,7 @@ r570_fbsr_init(struct nvkm_gsp *gsp, struct sg_table *sgt, u64 size, bool runtim
 	ctrl->hClient = gsp->internal.client.object.handle;
 	ctrl->hSysMem = memlist.handle;
 	ctrl->sysmemAddrOfSuspendResumeData = gsp->sr.meta.addr;
-	ctrl->bEnteringGcoffState = runtime ? 1 : 0;
+	ctrl->bEnteringGcoffState = 0;
 
 	ret = nvkm_gsp_rm_ctrl_wr(&gsp->internal.device.subdevice, ctrl);
 	if (ret)
@@ -92,7 +92,7 @@ r570_fbsr_init(struct nvkm_gsp *gsp, struct sg_table *sgt, u64 size, bool runtim
 }
 
 static int
-r570_fbsr_suspend(struct nvkm_gsp *gsp, bool runtime)
+r570_fbsr_suspend(struct nvkm_gsp *gsp)
 {
 	struct nvkm_subdev *subdev = &gsp->subdev;
 	struct nvkm_device *device = subdev->device;
@@ -133,7 +133,7 @@ r570_fbsr_suspend(struct nvkm_gsp *gsp, bool runtime)
 		return ret;
 
 	/* Initialise FBSR on RM. */
-	ret = r570_fbsr_init(gsp, &gsp->sr.fbsr, size, runtime);
+	ret = r570_fbsr_init(gsp, &gsp->sr.fbsr, size);
 	if (ret) {
 		nvkm_gsp_sg_free(device, &gsp->sr.fbsr);
 		return ret;
drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/gsp.c +2 -1
index 1488771c63fc..b45781cd0dfd 100644
@@ -207,7 +207,8 @@ r570_gsp_set_rmargs(struct nvkm_gsp *gsp, bool resume)
 		args->srInitArguments.bInPMTransition = 0;
 	} else {
 		args->srInitArguments.oldLevel = NV2080_CTRL_GPU_SET_POWER_STATE_GPU_LEVEL_3;
-		args->srInitArguments.flags = 0;
+		args->srInitArguments.flags =
+			GPU_STATE_FLAGS_PRESERVING | GPU_STATE_FLAGS_PM_TRANSITION;
 		args->srInitArguments.bInPMTransition = 1;
 	}
 
drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/nvrm/gsp.h +8 -0
index b6075021e74f..c458569af9d7 100644
@@ -523,6 +523,14 @@ typedef struct
 
 #define NV2080_CTRL_GPU_SET_POWER_STATE_GPU_LEVEL_3            (0x00000003U)
 
+#define GPU_STATE_FLAGS_PRESERVING         BIT(0)  // GPU state is preserved
+#define GPU_STATE_FLAGS_VGA_TRANSITION     BIT(1)   // To be used with GPU_STATE_FLAGS_PRESERVING.
+#define GPU_STATE_FLAGS_PM_TRANSITION      BIT(2)   // To be used with GPU_STATE_FLAGS_PRESERVING.
+#define GPU_STATE_FLAGS_PM_SUSPEND         BIT(3)
+#define GPU_STATE_FLAGS_PM_HIBERNATE       BIT(4)
+#define GPU_STATE_FLAGS_GC6_TRANSITION     BIT(5)  // To be used with GPU_STATE_FLAGS_PRESERVING.
+#define GPU_STATE_FLAGS_FAST_UNLOAD        BIT(6)  // Used during windows restart, skips stateDestroy steps
+
 typedef struct
 {
     // Magic for verification by secure ucode
drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/rm.h +1 -1
index fcd0221dcea1..e9ac47d86b69 100644
@@ -79,7 +79,7 @@ struct nvkm_rm_api {
 	} *device;
 
 	const struct nvkm_rm_api_fbsr {
-		int (*suspend)(struct nvkm_gsp *, bool runtime);
+		int (*suspend)(struct nvkm_gsp *);
 		void (*resume)(struct nvkm_gsp *);
 	} *fbsr;
 
drivers/gpu/drm/scheduler/sched_entity.c +7 -1
index 672b5c57ed8e..fd1824d79706 100644
@@ -566,9 +566,10 @@ struct drm_sched_job *drm_sched_entity_pop_job(struct drm_sched_entity *entity)
 	 */
 	smp_wmb();
 
+	spin_lock(&entity->lock);
 	spsc_queue_pop(&entity->job_queue);
-
 	drm_sched_rq_pop_entity(entity);
+	spin_unlock(&entity->lock);
 
 	/* Jobs and entities might have different lifecycles. Since we're
 	 * removing the job from the entities queue, set the jobs entity pointer
@@ -654,6 +655,9 @@ void drm_sched_entity_push_job(struct drm_sched_job *sched_job)
 	 * Make sure to set the submit_ts first, to avoid a race.
 	 */
 	sched_job->submit_ts = submit_ts = ktime_get();
+
+	spin_lock(&entity->lock);
+
 	first = spsc_queue_push(&entity->job_queue, &sched_job->queue_node);
 
 	/* first job wakes up scheduler */
@@ -664,5 +668,7 @@ void drm_sched_entity_push_job(struct drm_sched_job *sched_job)
 		if (sched)
 			drm_sched_wakeup(sched);
 	}
+
+	spin_unlock(&entity->lock);
 }
 EXPORT_SYMBOL(drm_sched_entity_push_job);
drivers/gpu/drm/scheduler/sched_rq.c +9 -11
index 0464d324d98d..23f46ec610e7 100644
@@ -257,19 +257,17 @@ static ktime_t drm_sched_entity_get_job_ts(struct drm_sched_entity *entity)
 struct drm_gpu_scheduler *
 drm_sched_rq_add_entity(struct drm_sched_entity *entity, ktime_t ts)
 {
+	struct drm_sched_rq *rq = entity->rq;
 	struct drm_gpu_scheduler *sched;
-	struct drm_sched_rq *rq;
 
 	/* Add the entity to the run queue */
-	spin_lock(&entity->lock);
-	if (entity->stopped) {
-		spin_unlock(&entity->lock);
+	lockdep_assert_held(&entity->lock);
 
+	if (entity->stopped) {
 		DRM_ERROR("Trying to push to a killed entity\n");
 		return NULL;
 	}
 
-	rq = entity->rq;
 	spin_lock(&rq->lock);
 	sched = rq->sched;
 
@@ -289,7 +287,6 @@ drm_sched_rq_add_entity(struct drm_sched_entity *entity, ktime_t ts)
 	drm_sched_rq_update_fifo_locked(entity, rq, ts);
 
 	spin_unlock(&rq->lock);
-	spin_unlock(&entity->lock);
 
 	return sched;
 }
@@ -343,16 +340,17 @@ drm_sched_rq_next_rr_ts(struct drm_sched_rq *rq,
  */
 void drm_sched_rq_pop_entity(struct drm_sched_entity *entity)
 {
+	struct drm_sched_rq *rq = entity->rq;
 	struct drm_sched_job *next_job;
-	struct drm_sched_rq *rq;
+
+	lockdep_assert_held(&entity->lock);
+
+	spin_lock(&rq->lock);
 
 	/*
 	 * Update the entity's location in the min heap according to
 	 * the timestamp of the next job, if any.
 	 */
-	spin_lock(&entity->lock);
-	rq = entity->rq;
-	spin_lock(&rq->lock);
 	next_job = drm_sched_entity_queue_peek(entity);
 	if (next_job) {
 		ktime_t ts;
@@ -375,8 +373,8 @@ void drm_sched_rq_pop_entity(struct drm_sched_entity *entity)
 			drm_sched_entity_save_vruntime(entity, min_vruntime);
 		}
 	}
+
 	spin_unlock(&rq->lock);
-	spin_unlock(&entity->lock);
 }
 
 /**
drivers/gpu/drm/ttm/ttm_bo.c +1 -1
index bcd76f6bb7f0..ca6fc5cddacb 100644
@@ -1178,7 +1178,7 @@ ttm_bo_swapout_cb(struct ttm_lru_walk *walk, struct ttm_buffer_object *bo)
 
 	if (ttm_tt_is_populated(tt)) {
 		ret = ttm_tt_swapout(bdev, tt, swapout_walk->gfp_flags);
-		if (!ret) {
+		if (ret > 0) {
 			spin_lock(&bdev->lru_lock);
 			ttm_resource_del_bulk_move_unevictable(bo->resource, bo);
 			ttm_resource_move_to_lru_tail(bo->resource);
drivers/gpu/drm/vc4/vc4_kms.c +1 -1
index b17e73bce384..82a7f2ac4c7e 100644
@@ -1188,7 +1188,7 @@ int vc4_kms_load(struct drm_device *dev)
 
 	drm_mode_config_reset(dev);
 
-	drm_kms_helper_poll_init(dev);
+	drmm_kms_helper_poll_init(dev);
 
 	return 0;
 }
drivers/gpu/drm/xe/xe_i2c.c +3 -0
index 5504cd9dd359..6fce3de27296 100644
@@ -277,8 +277,10 @@ void xe_i2c_pm_resume(struct xe_device *xe, bool d3cold)
 static void xe_i2c_remove(void *data)
 {
 	struct xe_i2c *i2c = data;
+	struct xe_device *xe = tile_to_xe(i2c->mmio->tile);
 	unsigned int i;
 
+	xe_i2c_irq_reset(xe);
 	xe_amc_exit(i2c);
 
 	for (i = 0; i < XE_I2C_MAX_CLIENTS; i++) {
@@ -288,6 +290,7 @@ static void xe_i2c_remove(void *data)
 
 	bus_unregister_notifier(&i2c_bus_type, &i2c->bus_notifier);
 	xe_i2c_unregister_adapter(i2c);
+	xe->i2c = NULL;
 }
 
 /**
drivers/gpu/drm/xe/xe_mmio_gem.c +18 -15
index 8c803ef233cc..ad3c9fa05223 100644
@@ -39,10 +39,20 @@ struct xe_mmio_gem {
 	phys_addr_t phys_addr;
 };
 
+static int xe_mmio_gem_vm_may_split(struct vm_area_struct *area, unsigned long addr)
+{
+	/*
+	 * Forbid splitting. Together with VM_DONTEXPAND, this keeps the VMA
+	 * matching the GEM object exactly.
+	 */
+	return -EINVAL;
+}
+
 static const struct vm_operations_struct vm_ops = {
 	.open = drm_gem_vm_open,
 	.close = drm_gem_vm_close,
 	.fault = xe_mmio_gem_vm_fault,
+	.may_split = xe_mmio_gem_vm_may_split,
 };
 
 static const struct drm_gem_object_funcs xe_mmio_gem_funcs = {
@@ -128,14 +138,16 @@ static void xe_mmio_gem_free(struct drm_gem_object *base)
 /**
  * xe_mmio_gem_destroy - Destroy the GEM object that exposes an MMIO region
  * @gem: the GEM object to destroy
+ * @file: DRM file descriptor previously passed to xe_mmio_gem_create()
  *
  * This function releases resources associated with the GEM object created by
  * xe_mmio_gem_create().
  *
  * See: "Exposing MMIO regions to userspace"
  */
-void xe_mmio_gem_destroy(struct xe_mmio_gem *gem)
+void xe_mmio_gem_destroy(struct xe_mmio_gem *gem, struct drm_file *file)
 {
+	drm_vma_node_revoke(&gem->base.vma_node, file);
 	xe_mmio_gem_free(&gem->base);
 }
 
@@ -162,14 +174,13 @@ static void xe_mmio_gem_release_dummy_page(struct drm_device *dev, void *res)
 	__free_page((struct page *)res);
 }
 
-static vm_fault_t xe_mmio_gem_vm_fault_dummy_page(struct vm_area_struct *vma)
+static vm_fault_t xe_mmio_gem_vm_fault_dummy_page(struct vm_fault *vmf)
 {
+	struct vm_area_struct *vma = vmf->vma;
 	struct drm_gem_object *base = vma->vm_private_data;
 	struct drm_device *dev = base->dev;
-	vm_fault_t ret = VM_FAULT_NOPAGE;
 	struct page *page;
 	unsigned long pfn;
-	unsigned long i;
 
 	page = alloc_page(GFP_KERNEL | __GFP_ZERO);
 	if (!page)
@@ -180,16 +191,8 @@ static vm_fault_t xe_mmio_gem_vm_fault_dummy_page(struct vm_area_struct *vma)
 
 	pfn = page_to_pfn(page);
 
-	/* Map the entire VMA to the same dummy page */
-	for (i = 0; i < base->size; i += PAGE_SIZE) {
-		unsigned long addr = vma->vm_start + i;
-
-		ret = vmf_insert_pfn(vma, addr, pfn);
-		if (ret & VM_FAULT_ERROR)
-			break;
-	}
-
-	return ret;
+	return vmf_insert_pfn_prot(vma, vmf->address, pfn,
+				   vm_get_page_prot(vma->vm_flags));
 }
 
 static vm_fault_t xe_mmio_gem_vm_fault(struct vm_fault *vmf)
@@ -209,7 +212,7 @@ static vm_fault_t xe_mmio_gem_vm_fault(struct vm_fault *vmf)
 		 * It is assumed the userspace will receive the notification via some
 		 * other channel (e.g. drm uevent).
 		 */
-		return xe_mmio_gem_vm_fault_dummy_page(vma);
+		return xe_mmio_gem_vm_fault_dummy_page(vmf);
 	}
 
 	for (i = 0; i < base->size; i += PAGE_SIZE) {
drivers/gpu/drm/xe/xe_mmio_gem.h +1 -1
index 4b76d5586ebb..80d7795f07c8 100644
@@ -15,6 +15,6 @@ struct xe_mmio_gem;
 struct xe_mmio_gem *xe_mmio_gem_create(struct xe_device *xe, struct drm_file *file,
 				       phys_addr_t phys_addr, size_t size);
 u64 xe_mmio_gem_mmap_offset(struct xe_mmio_gem *gem);
-void xe_mmio_gem_destroy(struct xe_mmio_gem *gem);
+void xe_mmio_gem_destroy(struct xe_mmio_gem *gem, struct drm_file *file);
 
 #endif /* _XE_MMIO_GEM_H_ */
drivers/gpu/drm/xe/xe_shrinker.c +69 -55

102 lines not on this page · raw message

drivers/hwmon/cgbc-hwmon.c +80 -49

129 lines not on this page · raw message

drivers/hwmon/gpio-fan.c +2 -2
index df8bd9707605..3f78375eeb44 100644

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

drivers/hwmon/hp-wmi-sensors.c +24 -8
index 03c684ba83bd..cfa0d6ad0fb3 100644

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

drivers/hwmon/pmbus/pmbus.h +2 -1
index 23e3eda58870..3d5586c67f84 100644

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

drivers/hwmon/pmbus/tps53679.c +10 -1
index 31e54608b3c9..6c25701b36fc 100644

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

drivers/hwmon/pwm-fan.c +12 -1
index 37f37813ea51..2983f9fad8d2 100644

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

drivers/hwmon/w83791d.c +1 -0
index 4a777430af5c..4b07a25ae59e 100644

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

drivers/hwmon/w83793.c +3 -1
index a548586369e1..c6ef04c69856 100644

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

drivers/i2c/busses/i2c-at91-core.c +3 -0
index b64adef778d4..8ca4556d9664 100644

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

drivers/i2c/busses/i2c-at91-master.c +11 -1
index 894cedbca99f..68238cc8aee0 100644

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

drivers/i2c/busses/i2c-at91.h +1 -0
index 942e9c3973bb..d68fcbbc3e0f 100644

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

drivers/i2c/busses/i2c-imx.c +3 -0
index 9477d814fde9..cccff6e63db2 100644

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

drivers/i2c/busses/i2c-qcom-cci.c +11 -9
index 25b6e4e9e3fa..873e901a23d7 100644

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

drivers/i2c/i2c-atr.c +1 -0
index e6d2af659d81..ca29633dcd62 100644

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

drivers/infiniband/core/iwpm_util.c +5 -4
index 990cf928b32a..51af8c1c49f9 100644

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

drivers/infiniband/core/mad.c +2 -1
index e0b3b36b8b14..3c91f00d09c6 100644

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

drivers/infiniband/core/rdma_core.c +0 -1
index fd5651c003ae..a7cbe643e33c 100644

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

drivers/infiniband/core/ucma.c +4 -3
index 4929636f7c53..a15182f7a7c5 100644

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

drivers/infiniband/core/uverbs_flow.c +1 -0
index 1528a294f7f8..de5a2769f084 100644

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

drivers/infiniband/core/uverbs_main.c +11 -14
index 0d88b2ee68ff..2a046c888dfa 100644

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

drivers/infiniband/core/verbs.c +8 -4
index f8b219bd308b..5447d39fa89d 100644

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

drivers/infiniband/hw/bnxt_re/main.c +8 -2
index d25fdc458120..c2fa83eb0da5 100644

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

drivers/infiniband/hw/bnxt_re/uapi.c +2 -4
index 263238a6e4cd..f278c4f70ff7 100644

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

drivers/infiniband/hw/efa/efa_com.c +2 -5
index 7cc3f4af0bb9..eed6000fc62d 100644

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

drivers/infiniband/hw/efa/efa_com.h +1 -0
index f8c692b0e092..d9b3eb0cdf37 100644

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

drivers/infiniband/hw/efa/efa_main.c +19 -14
index 97da8e828e34..c2ecd44476d4 100644

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

drivers/infiniband/hw/erdma/erdma_main.c +2 -2
index 7e87a815e853..445182c6bc5d 100644

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

drivers/infiniband/hw/erdma/erdma_verbs.c +9 -9
index 20944d506da7..5efd3bfb59d6 100644

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

drivers/infiniband/hw/hfi1/file_ops.c +17 -6
index 56031becb273..ad2044d1f12c 100644

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

drivers/infiniband/hw/irdma/verbs.c +1 -1
index 04d5af78686b..e926eb37982c 100644

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

drivers/infiniband/hw/mlx4/sysfs.c +4 -0
index e688ad66a895..5438224bf325 100644

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

drivers/infiniband/hw/mlx5/main.c +2 -5
index c283a902ea7e..05985395fca0 100644

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

drivers/infiniband/sw/rxe/rxe_mcast.c +36 -14

50 lines not on this page · raw message

drivers/infiniband/sw/rxe/rxe_mr.c +2 -1
index 875eceb55fdf..71d9ea477289 100644

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

drivers/infiniband/sw/rxe/rxe_odp.c +11 -5
index 1b1c4a0c7110..0f24a55c0637 100644

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

drivers/infiniband/sw/rxe/rxe_verbs.c +7 -6
index 1ec130fee8ea..f8c29fc5961d 100644

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

drivers/infiniband/sw/siw/siw_cm.c +5 -2
index 0245b25e7271..ed49818793dd 100644

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

drivers/infiniband/sw/siw/siw_qp_rx.c +1 -1
index b566d163c5aa..e5b641c8d694 100644

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

drivers/infiniband/ulp/ipoib/ipoib.h +7 -0
index 91f866e3fb8b..143e03b64902 100644

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

drivers/infiniband/ulp/ipoib/ipoib_ib.c +7 -5
index 5061d52a7b12..81bbb3f7c113 100644

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

drivers/infiniband/ulp/ipoib/ipoib_multicast.c +8 -8
index 6401af2fd548..379b78374e21 100644

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

drivers/infiniband/ulp/iser/iser_initiator.c +11 -5
index 12a2d12fef07..7ea6888b479c 100644

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

drivers/infiniband/ulp/isert/ib_isert.c +22 -0
index df5d8295a7fc..6a9e76d60f81 100644

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

drivers/infiniband/ulp/isert/ib_isert.h +2 -0
index 0bac5aa66c80..519b17e54bd3 100644

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

drivers/infiniband/ulp/rtrs/rtrs-clt-trace.h +1 -1
index 7738e2676855..29e23404bb7b 100644

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

drivers/infiniband/ulp/rtrs/rtrs-clt.c +8 -0
index d34d7e5f34d6..62cc93be7b87 100644

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

drivers/infiniband/ulp/rtrs/rtrs-clt.h +2 -0
index 1305601a6251..ad64f4517c4b 100644

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

drivers/infiniband/ulp/rtrs/rtrs-srv-trace.h +1 -1
index 587d3e033081..a7d7b971e6c8 100644

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

drivers/input/evdev.c +2 -0
index 3a718d600006..8bfaaa45e0b9 100644

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

drivers/input/input-compat.c +2 -0
index a5043193ead8..8860a0730294 100644

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

drivers/input/joystick/xpad.c +9 -1
index 2da0b7f1722a..6406ceab988a 100644

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

drivers/input/keyboard/adp5588-keys.c +6 -6
index 40371f5bd9ba..4f0ddff5baba 100644

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

drivers/input/keyboard/atkbd.c +8 -0
index 4c82e988260e..5041443e0efe 100644

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

drivers/input/misc/soc_button_array.c +12 -4
index b8cad415c62c..f08e29af531f 100644

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

drivers/input/mouse/synaptics.c +8 -0
index c70502e24031..007f90759d06 100644

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

drivers/input/rmi4/rmi_driver.c +13 -0
index 5d49a9021c7d..a349dfd17519 100644

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

drivers/input/rmi4/rmi_smbus.c +5 -5
index 6de68c602558..d799405fbd33 100644

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

drivers/input/serio/hp_sdc.c +1 -1
index 1461ef319f92..ecf5347b63ab 100644

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

drivers/input/serio/i8042-acpipnpio.h +7 -0
index 412f82d7a303..67da08af75cb 100644

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

drivers/input/touchscreen/cyttsp5.c +1 -0
index 9266c07314be..e878a02dc9b7 100644

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

drivers/input/touchscreen/eeti_ts.c +1 -0
index b12602bc368e..b870a939508b 100644

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

drivers/memstick/core/ms_block.c +2 -0
index ce33907bfc24..65154e569a9e 100644

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

drivers/misc/ntsync.c +3 -0
index 02c9d1192812..4a805919bb0c 100644

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

drivers/mmc/core/bus.c +1 -1
index be5cf338bdeb..92ad39c0cabc 100644

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

drivers/mmc/core/host.c +1 -0
index b7ce3137d452..828078b3f962 100644

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

drivers/mmc/core/sdio_uart.c +3 -0
index 7fd5dedf3ac0..705163c42972 100644

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

drivers/mmc/host/mmc_hsq.c +7 -1
index 79836705c176..57e172bd3487 100644

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

drivers/mmc/host/mmc_spi.c +1 -0
index b471a7795b4d..5217d713c826 100644

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

drivers/mmc/host/mmci.c +3 -0
index e500051bd572..416bdb184ed4 100644

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

drivers/mmc/host/mxcmmc.c +4 -0
index c405cfb8b269..097498a3f8ff 100644

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

drivers/mmc/host/rtsx_pci_sdmmc.c +5 -0
index 8dfbc62f165b..d25d4cb59bc9 100644

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

drivers/mmc/host/sdhci-of-aspeed.c +4 -1
index f5d973783cbe..d317626feb4a 100644

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

drivers/mmc/host/sdhci_am654.c +28 -15

43 lines not on this page · raw message

drivers/mmc/host/sh_mmcif.c +1 -2
index 9831956de1c8..3e1d46cfbf70 100644

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

drivers/net/dsa/mxl862xx/mxl862xx.c +16 -7
index cfa7e3e269a2..e05ad52cd297 100644

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

drivers/net/ethernet/airoha/airoha_ppe.c +13 -4
index f6396925722d..bc2b4deafd83 100644

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

drivers/net/ethernet/broadcom/genet/bcmgenet.c +13 -6
index a2305e6428d1..b916080f4ff1 100644

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

drivers/net/ethernet/cadence/macb_ptp.c +9 -0
index 6d9166389988..14ae57fa00cb 100644

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

drivers/net/ethernet/cortina/gemini.c +1 -1
index f08de623e6f7..2dd2fa801829 100644

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

drivers/net/ethernet/intel/igc/igc_tsn.c +4 -2
index 52de2bcbadbe..0c08650d3bb2 100644

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

drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +4 -3
index 8873a8cc4a18..f91856498eb2 100644

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

drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c +2 -1
index ccc24a1301f2..848ee655c6ea 100644

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

drivers/net/ethernet/mediatek/mtk_ppe_offload.c +13 -4
index cc8c4ef8038f..99b28aaa7cc4 100644

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

drivers/net/ethernet/mellanox/mlx5/core/en_main.c +1 -1
index f0407a850ea8..8634c970cd00 100644

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

drivers/net/ethernet/meta/fbnic/fbnic_txrx.c +33 -9

42 lines not on this page · raw message

drivers/net/ethernet/meta/fbnic/fbnic_txrx.h +7 -2
index e03c9d2c38dc..f5899446dcc5 100644

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

drivers/net/ethernet/microchip/lan743x_main.c +1 -1
index e759171bfd76..2d6e6e8e16f2 100644

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

drivers/net/ethernet/sfc/falcon/tx.c +6 -2
index 9e18aaf44bad..e4d47d26a87a 100644

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

drivers/net/ethernet/sfc/siena/tx.c +6 -2
index 91e87594ed1e..1ce98f8fdaf8 100644

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

drivers/net/ethernet/socionext/netsec.c +2 -0
index d14a6584473c..79a0a324c921 100644

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

drivers/net/ethernet/stmicro/stmmac/hwif.h +1 -1
index 04dafec021b4..9314bcb85c22 100644

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

drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c +0 -2
index 92585d27ab88..2a4882f2a498 100644

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

drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c +10 -4
index c54c70224351..c889204a7aa5 100644

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

drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +3 -3
index f801caf65fff..5f717f02c3c0 100644

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

drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c +70 -29

99 lines not on this page · raw message

drivers/net/fddi/skfp/skfddi.c +2 -1
index a273362c9e70..feea7baa4816 100644

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

drivers/net/phy/mediatek/mtk-phy-lib.c +17 -10
index dfd0f4e439a2..608072fbfde9 100644

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

drivers/net/wireless/ath/ath11k/mac.c +18 -7
index 2d55cdc4d165..ae91b57c8422 100644

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

drivers/net/wireless/ath/wcn36xx/dxe.c +1 -1
index 44020ec265fb..801f1218ef89 100644

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

drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c +2 -0
index dad6f4563d14..d2ae67985606 100644

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

drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw/core.c +4 -1
index 873754be5174..c86d0bdde832 100644

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

drivers/net/wireless/broadcom/brcm80211/brcmsmac/mac80211_if.c +4 -0
index 6255d673d2d3..c1a2318d7ea6 100644

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

drivers/net/wireless/intel/ipw2x00/libipw_crypto_tkip.c +7 -5
index 24bb28ab7a49..2b0cf0ec496a 100644

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

drivers/net/wireless/intel/ipw2x00/libipw_rx.c +6 -0
index c8841f9b9ad9..424349a6935e 100644

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

drivers/net/wireless/intel/iwlegacy/common.c +1 -1
index 0bb807ff8edf..e5113c6b2d5c 100644

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

drivers/net/wireless/intersil/p54/eeprom.c +17 -5
index 95580921d933..0475222d54fc 100644

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

drivers/net/wireless/marvell/libertas_tf/main.c +1 -1
index 42be6fa22f9c..411f075b6186 100644

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

drivers/net/wireless/marvell/mwifiex/cfg80211.c +10 -2
index abc703441c5d..e4ad2e29f10e 100644

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

drivers/net/wireless/marvell/mwifiex/pcie.c +1 -1
index a760de191fce..a9425e9a94f4 100644

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

drivers/net/wireless/marvell/mwifiex/scan.c +41 -13

54 lines not on this page · raw message

drivers/net/wireless/marvell/mwifiex/util.c +8 -2
index 7d3631d21223..71305efb77ac 100644

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

drivers/net/wireless/microchip/wilc1000/cfg80211.c +14 -0
index 6654fce4ded8..2737f3b72684 100644

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

drivers/net/wireless/microchip/wilc1000/wlan.c +9 -0
index 4b116fe6f9ea..55a77a2e3288 100644

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

drivers/net/wireless/rsi/rsi_91x_mgmt.c +0 -2
index bb167f03367b..d9dcbb255317 100644

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

drivers/net/wireless/ti/wlcore/main.c +1 -3
index be583ae331c0..ecf55e34caae 100644

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

drivers/net/wireless/virtual/mac80211_hwsim_main.c +24 -15
index b4cabbfa9cdb..8c634cada5dd 100644

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

drivers/net/wireless/virtual/virt_wifi.c +3 -1
index 2335e45db8b8..48afc2432f93 100644

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

drivers/net/wwan/mhi_wwan_mbim.c +20 -8
index a94998712597..336f89756f10 100644

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

drivers/net/wwan/t7xx/t7xx_netdev.c +4 -0
index fc0a7cb181df..8f32c2d26931 100644

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

drivers/pci/controller/dwc/pci-imx6.c +6 -6
index f7389b5437df..f799e4b62815 100644

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

drivers/perf/arm-cmn.c +7 -3
index 6e5cc4086a9e..7e7590381171 100644

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

drivers/phy/mediatek/phy-mtk-hdmi-mt8195.c +2 -2
index 1426a2db984d..a4bc1268946d 100644

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

drivers/phy/mediatek/phy-mtk-hdmi-mt8195.h +3 -0
index e26caaf4d104..58800d7659ca 100644

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

drivers/phy/renesas/phy-rcar-gen3-usb2.c +265 -45

310 lines not on this page · raw message

drivers/power/sequencing/Kconfig +2 -1
index 1c5f5820f5b7..226c62704d9b 100644

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

drivers/power/sequencing/core.c +7 -4
index 02f42da91598..112f05625aa6 100644

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

drivers/scsi/fnic/fdls_disc.c +369 -357

726 lines not on this page · raw message

drivers/scsi/fnic/fip.c +54 -63

117 lines not on this page · raw message

drivers/scsi/fnic/fip.h +1 -1
index 79fee7628870..4866152a32df 100644

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

drivers/scsi/fnic/fnic.h +43 -35

78 lines not on this page · raw message

drivers/scsi/fnic/fnic_fcs.c +63 -63

126 lines not on this page · raw message

drivers/scsi/fnic/fnic_isr.c +24 -17

41 lines not on this page · raw message

drivers/scsi/fnic/fnic_main.c +61 -28

89 lines not on this page · raw message

drivers/scsi/fnic/fnic_scsi.c +104 -106

210 lines not on this page · raw message

drivers/scsi/pm8001/pm8001_init.c +3 -3
index 54b35893261a..5af81c73a8f8 100644

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

drivers/scsi/qla2xxx/qla_os.c +1 -1
index e0c5732037ad..f2114b386fa0 100644

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

drivers/scsi/scsi.c +19 -5
index 76cdad063f7b..f285521d9de6 100644

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

drivers/soc/samsung/exynos-pmu.c +2 -5
index f5fcdde9750e..efccdd63e40e 100644

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

drivers/soundwire/cadence_master.c +7 -0
index 98ed337fb9b0..cf456d7cf0a8 100644

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

drivers/soundwire/dmi-quirks.c +7 -0
index 32a46a2d90f7..ff00c4b2578e 100644

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

drivers/spi/spi-fsl-qspi.c +4 -1
index 57358851029b..d2c2090442f8 100644

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

drivers/spi/spi-qpic-snand.c +0 -4
index b6c58d9cfe14..8388c637eee0 100644

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

drivers/spi/spi-virtio.c +1 -1
index 2256dfec5407..3e181bd8bc94 100644

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

drivers/spi/spi-zynqmp-gqspi.c +34 -0
index f9a1427dabad..5e23b10d82a7 100644

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

drivers/watchdog/da9062_wdt.c +2 -2
index 426962547df1..4d558652e9e7 100644

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

drivers/watchdog/da9063_wdt.c +2 -2
index 92e1b78ff481..3703110e82fc 100644

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

drivers/watchdog/digicolor_wdt.c +9 -4
index 073d37867f47..de1a3267a972 100644

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

drivers/watchdog/msc313e_wdt.c +13 -3
index 4a5cce2a16b1..d62586f6e09d 100644

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

drivers/watchdog/rtd119x_wdt.c +6 -1
index 984905695dde..0bfadb58917b 100644

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

drivers/watchdog/rzv2h_wdt.c +6 -1
index 3b6abb66a1da..83540dd9a37b 100644

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

drivers/watchdog/sp5100_tco.c +5 -1
index 7e99c3b1f367..72ad59649ccc 100644

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

drivers/watchdog/starfive-wdt.c +1 -1
index af55adc4a3c6..5a3254c83d3b 100644

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

fs/9p/vfs_addr.c +27 -1
index 1ac0b3dcc077..13cf87a5f90c 100644

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

fs/btrfs/dev-replace.c +1 -0
index 318ddb790429..7e78215b2049 100644

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

fs/btrfs/disk-io.c +4 -0
index de6e23b88b40..12b771bda43a 100644

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

fs/btrfs/file.c +3 -1
index f949805f2c3e..d89268392714 100644

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

fs/btrfs/free-space-tree.c +10 -4
index 1b3d82ae3de8..b7a4a6ade30f 100644

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

fs/btrfs/inode.c +17 -1
index 188b4ac9889f..7fe0a63d690a 100644

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

fs/btrfs/super.c +6 -2
index f4e34898d581..2608d03076e0 100644

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

fs/btrfs/tree-checker.c +1 -1
index 0ce91396b517..1326bbc1322d 100644

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

fs/btrfs/verity.c +16 -2
index 1133a56c0568..1f05525386c9 100644

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

fs/dax.c +6 -3
index df19c9317d10..cadbf76da227 100644

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

fs/exec.c +21 -8
index 7ae972f3c886..834d622777d6 100644

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

fs/nfsd/export.c +2 -1
index a47c90f40422..1f678583f612 100644

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

fs/ntfs/attrib.c +203 -56

259 lines not on this page · raw message

fs/ntfs/attrib.h +9 -0
index e2224fbfaabe..6b4fa9f57640 100644

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

fs/ntfs/attrlist.c +210 -14

224 lines not on this page · raw message

fs/ntfs/attrlist.h +2 -0
index 1892a3934d3a..10cc2cc8e208 100644

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

fs/ntfs/compress.c +1 -1
index 4ea1a6bfb3eb..89a151901b9d 100644

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

fs/ntfs/file.c +2 -1
index 7c1cf27bcaad..8f682dbe51ea 100644

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

fs/ntfs/inode.c +24 -11
index f40f35afcda9..cfb753be4f6b 100644

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

fs/ntfs/mft.c +352 -95

447 lines not on this page · raw message

fs/ntfs/mft.h +1 -1
index 75a51a98d0f6..ed5c1d595c0d 100644

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

fs/ntfs/namei.c +1 -1
index 96045face63f..dfd05e604f9c 100644

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

fs/ntfs/super.c +9 -3
index 63aa83ff77f5..b5371d269f74 100644

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

fs/ntfs/volume.h +6 -6
index 65fd3908af26..bc85a9592245 100644

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

fs/smb/client/cifssmb.c +1 -1
index a1da1ade8c10..6e3b6fbd9c55 100644

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

fs/smb/client/connect.c +9 -0
index ba749ec25a59..b7ad267ac28b 100644

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

fs/smb/client/file.c +2 -2
index 8886e9483c91..7294ccd4782f 100644

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

fs/smb/client/misc.c +10 -2
index 945194fe7a97..05168284f205 100644

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

fs/smb/client/reparse.c +36 -22

58 lines not on this page · raw message

fs/smb/client/reparse.h +4 -3
index 0164dc47bdfd..0506d25eea5c 100644

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

fs/smb/client/sess.c +64 -42

106 lines not on this page · raw message

fs/smb/client/smb2inode.c +11 -0
index 457442af1222..441f107ed202 100644

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

fs/smb/client/smb2ops.c +38 -13

51 lines not on this page · raw message

fs/smb/client/smb2pdu.c +7 -6
index dea05aeb53a1..880ce12f50c4 100644

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

fs/smb/client/trace.h +1 -0
index b442cccd1530..bb8d0197cb54 100644

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

fs/smb/server/connection.c +78 -6

84 lines not on this page · raw message

fs/smb/server/connection.h +3 -0
index 242a9757eb0d..909f73c6e3c1 100644

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

fs/smb/server/mgmt/user_session.c +146 -53

199 lines not on this page · raw message

fs/smb/server/mgmt/user_session.h +7 -1
index 3e52d4cc1324..217258551d6d 100644

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

fs/smb/server/misc.h +2 -5
index c7b063f571a7..1faaddd0f5f7 100644

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

fs/smb/server/proc.c +147 -12

159 lines not on this page · raw message

fs/smb/server/server.c +6 -3
index 0b080972e908..e113b23d96f9 100644

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

fs/smb/server/smb2pdu.c +84 -42

126 lines not on this page · raw message

fs/smb/server/smb2pdu.h +1 -2
index 1836259be897..bf30fa8544b7 100644

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

fs/smb/server/smb_common.h +1 -1
index b090b56743c4..7b9c5cfcb63b 100644

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

fs/smb/server/stats.h +55 -3

58 lines not on this page · raw message

fs/smb/server/vfs_cache.c +20 -6
index a23bd9b1a68b..5eae49ed1c79 100644

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

fs/smb/server/vfs_cache.h +1 -0
index d6a9cd4b6d56..1c6fc4349b88 100644

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

fs/super.c +1 -0
index 1159a73856db..a257b154f7f7 100644

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

include/keys/request_key_auth-type.h +1 -1
index 01e42ee5f409..464636278c4f 100644

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

include/linux/dma-fence.h +6 -0
index b52ab692b22e..c4a76bc4006b 100644

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

include/linux/ieee80211-mesh.h +2 -2
index 7eb15834531c..9e548b9173df 100644

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

include/linux/netdevice.h +10 -3
index 8840b126979f..14bcdcd44d1d 100644

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

include/net/bluetooth/coredump.h +2 -0
index 72f51b587a04..00c12c7ac042 100644

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

include/net/codel.h +5 -0
index aa80f744826c..183d43c2bd43 100644

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

include/net/codel_impl.h +15 -1
index 2c1f0ec309e9..8f26132d45b7 100644

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

include/net/mac80211.h +4 -1
index 4f95da023746..36055d40172a 100644

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

include/net/sock.h +2 -0
index 51185222aac2..60ea55dc1885 100644

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

include/rdma/uverbs_types.h +0 -2
index 5a07f9a6dcd1..6f3622892c0c 100644

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

include/sound/soc.h +2 -1
index 10ad80f930c2..1d2772758fb6 100644

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

include/sound/soc_sdw_utils.h +16 -15
index 79c21966220b..9b28e9aef4f1 100644

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

include/trace/events/dma.h +1 -1
index 31c9ddf72c9d..daef2c176ecd 100644

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

include/uapi/rdma/bnxt_re-abi.h +1 -1
index a4599d7b736a..0a125c2a8cc4 100644

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

kernel/cgroup/cgroup.c +5 -2
index b5b461d4418b..1f0393ad0b18 100644

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

kernel/dma/coherent.c +1 -2
index bcdc0f76d2e8..b6fe902c6a6d 100644

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

kernel/dma/swiotlb.c +2 -2
index 6e8db52866bf..bd5393133753 100644

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

kernel/events/core.c +4 -0
index bd8c1acf59e2..60e60809bedc 100644

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

kernel/exit.c +6 -5
index e4cd7232015d..0abce8edb28b 100644

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

kernel/fork.c +2 -2
index 3340dbaf2bb4..2c88568b0463 100644

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

kernel/sched/core.c +8 -1
index 35d647c8c368..3d6c55598726 100644

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

kernel/sched/ext/ext.c +18 -9
index 548f46a42788..906e4f08967f 100644

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

kernel/sched/ext/idle.c +9 -2
index 6f93cc32b650..fff48c164b10 100644

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

kernel/signal.c +85 -30

115 lines not on this page · raw message

kernel/time/jiffies.c +1 -1
index d51428867a33..f4c43b9716f8 100644

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

kernel/time/posix-cpu-timers.c +22 -18
index a7d3e8229c4b..8e3e3917a2f7 100644

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

mm/filemap.c +1 -1
index d721986d5f46..ebc51fabfcd8 100644

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

mm/huge_memory.c +64 -22

86 lines not on this page · raw message

mm/memblock.c +11 -7
index 6349c48154f4..a8d1992ba7a1 100644

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

mm/memcontrol.c +1 -1
index 405faa4b8472..7138ebc6efc3 100644

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

mm/mlock.c +1 -1
index 8c227fefa2df..2d8f26a1cf26 100644

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

mm/mremap.c +4 -5
index a7bd785e603f..ecd926209560 100644

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

mm/shrinker.c +2 -0
index a70aab124a0e..7ec2a9704f6f 100644

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

mm/swapfile.c +1 -1
index 5bb24031e913..623b30e9c2df 100644

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

mm/vma.c +4 -2
index 9eea2850818a..98c163431e40 100644

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

net/atm/pppoatm.c +17 -25

42 lines not on this page · raw message

net/bluetooth/coredump.c +44 -21

65 lines not on this page · raw message

net/bluetooth/eir.c +9 -1
index a55696820b22..ee0136bfae40 100644

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

net/bluetooth/hci_codec.c +18 -18
index 5bc5003c387c..7a7e813dcdda 100644

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

net/bluetooth/hci_conn.c +21 -0
index 8de98af2fb58..fa72cf8aaa7a 100644

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

net/bluetooth/hci_core.c +15 -3
index f747492da5f6..3ea5ea7267d9 100644

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

net/bluetooth/hci_sync.c +2 -0
index a8d2a3f076e9..9d9e270492f9 100644

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

net/bluetooth/iso.c +42 -11

53 lines not on this page · raw message

net/bluetooth/rfcomm/sock.c +10 -3
index feb302a491fa..24b42483b3c0 100644

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

net/bridge/br_mst.c +12 -8
index 43a300ae6bfa..1654efd3045b 100644

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

net/bridge/br_vlan.c +14 -17
index 1e0e436629ec..92b3cb621a26 100644

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

net/core/dev.c +75 -33

108 lines not on this page · raw message

net/core/drop_monitor.c +9 -9
index abaf108ac4db..edc660778408 100644

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

net/core/neighbour.c +26 -9
index 1349c0eedb64..7448320f7ad5 100644

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

net/core/skbuff.c +30 -2
index 0e964c67a721..c485be081aea 100644

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

net/core/sock.c +15 -1
index 1ad41904db25..4395509ab9dc 100644

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

net/ipv4/esp4.c +6 -0
index dfc81ee969ae..faa48f5b9739 100644

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

net/ipv4/icmp.c +10 -7
index 0caedfc7ca92..90c0e22c29be 100644

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

net/ipv4/ip_tunnel_core.c +11 -5
index 5168d546ea2f..bab42b9e277f 100644

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

net/ipv4/sysctl_net_ipv4.c +3 -1
index ca1180dba1de..e921cb381b53 100644

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

net/ipv4/tcp_input.c +2 -1
index 0f60a1dbf927..92bc60716f33 100644

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

net/ipv4/tcp_ulp.c +4 -0
index 2aa442128630..b58045df101e 100644

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

net/ipv6/esp6.c +6 -0
index 296b57926abb..a3a3857eed98 100644

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

net/ipv6/seg6_local.c +3 -0
index 7b5212220185..d1070aec7b72 100644

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

net/ipv6/tcp_ipv6.c +2 -1
index df9c29eb5c1f..7fa4ed2fd4f1 100644

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

net/ipv6/xfrm6_output.c +8 -2
index 512bdaf13699..44b221a09a0c 100644

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

net/mac80211/cfg.c +16 -2
index 43f142624d33..33334b978462 100644

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

net/mac80211/debugfs.c +1 -1
index a4d5461f6480..f36cc2590305 100644

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

net/mac80211/debugfs_netdev.c +9 -0
index f3c6a41e4911..6aba22493670 100644

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

net/mac80211/ieee80211_i.h +1 -1
index 34a9ea8b6f85..0564370419fb 100644

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

net/mac80211/iface.c +36 -3
index 43460a705a6b..889c32fd8de1 100644

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

net/mac80211/main.c +4 -0
index eb1eaaf34612..8edfef2b57f8 100644

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

net/mac80211/mesh.c +22 -12
index d4507e4e6ec1..8f8814125375 100644

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

net/mac80211/offchannel.c +7 -0
index 2bceb73717c6..6f8de5d4a20d 100644

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

net/mac80211/pm.c +5 -3
index 5a508d99e84f..f63676c44853 100644

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

net/mac80211/scan.c +1 -1
index eeff230bd909..8e950ef6d1ea 100644

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

net/mac80211/tdls.c +27 -13
index ffd575a8d188..9e721d3735e7 100644

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

net/mac80211/tx.c +68 -39

107 lines not on this page · raw message

net/netfilter/nf_flow_table_core.c +10 -2
index 8b1165f2b5a4..254063fca078 100644

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

net/netfilter/nf_flow_table_path.c +6 -1
index 98c03b487f52..b9df7453f762 100644

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

net/netfilter/nf_nat_core.c +30 -16

46 lines not on this page · raw message

net/netfilter/nf_tables_api.c +13 -9
index 63003a3b8bab..245fe7b2f673 100644

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

net/netfilter/nft_nat.c +1 -1
index e32cd9fbc7c2..cdbd800cac96 100644

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

net/netlink/af_netlink.c +34 -8

42 lines not on this page · raw message

net/netlink/diag.c +16 -4
index 0b3e021bd0ed..7979bd9b2606 100644

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

net/openvswitch/conntrack.c +1 -1
index 37c90580ecb8..757cce7a658e 100644

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

net/packet/af_packet.c +3 -1
index 76bde7906d49..50cae32ae269 100644

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

net/packet/internal.h +1 -1
index b76e645cd78d..f5c8cd0eed2c 100644

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

net/psp/psp_sock.c +4 -0
index 07dc4cf741f3..ce423d14ad26 100644

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

net/rds/ib_cm.c +1 -1
index d46146887ba4..2909da8363f3 100644

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

net/sched/act_api.c +8 -3
index 19501dc99464..3f653721c45f 100644

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

net/sched/sch_hhf.c +5 -4
index fc72f825fbd9..5dec1ed969ad 100644

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

net/sched/sch_mqprio.c +3 -1
index ae991fc25b43..6ced7008ef5c 100644

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

net/sched/sch_mqprio_lib.c +5 -2
index b3a5572c167b..b60e130c7078 100644

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

net/sched/sch_taprio.c +15 -11
index 299234a5f0fe..7d5fe93a4c12 100644

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

net/unix/garbage.c +10 -7
index 9fcaaf55cba5..da774f56ca64 100644

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

net/wireless/core.c +75 -51

126 lines not on this page · raw message

net/wireless/core.h +12 -4
index ac6ce9f967ec..81e595247b93 100644

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

net/wireless/ibss.c +20 -16
index b1d748bdb504..7f6779d326b8 100644

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

net/wireless/rdev-ops.h +3 -0
index 63c26e8b1139..8f466e1ab1d7 100644

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

net/wireless/reg.c +1 -1
index 1e8214d6b6d8..3454afa038bf 100644

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

net/wireless/scan.c +36 -7

43 lines not on this page · raw message

net/wireless/util.c +27 -11
index 24527bf321b2..12285bbd2973 100644

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

net/xfrm/espintcp.c +5 -1
index 674aedc5af5a..3e72b9f067b9 100644

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

net/xfrm/xfrm_input.c +19 -3
index eecab337bd0a..5ed87d51392a 100644

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

net/xfrm/xfrm_iptfs.c +10 -2
index 597aedeac26e..6920940a35b4 100644

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

net/xfrm/xfrm_policy.c +15 -5
index 932a313b9460..513c9f228334 100644

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

net/xfrm/xfrm_state.c +7 -2
index 36a4f6793ede..e45aa1ed5b96 100644

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

net/xfrm/xfrm_user.c +5 -13
index 6266a92cf302..a2587c7e796b 100644

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

rust/kernel/net/phy.rs +18 -20
index 3ca99db5cccf..b5f1ada8e02e 100644

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

scripts/generate_rust_target.rs +5 -0
index 3bf296581a88..7687b0dd5474 100644

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

security/keys/encrypted-keys/encrypted.c +14 -6
index 59cb77b237b3..e07092ea301a 100644

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

security/keys/gc.c +1 -3
index 748e83818a76..eda445f815d4 100644

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

security/keys/request_key_auth.c +9 -3
index 282e09d8fa46..ed6f55b9cdd9 100644

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

security/keys/trusted-keys/trusted_tpm2.c +7 -5
index 6340823f8b53..e8c129396b8b 100644

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

security/selinux/avc.c +4 -1
index 813e82bcfc27..221c41978dc5 100644

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

security/selinux/hooks.c +133 -17

150 lines not on this page · raw message

security/selinux/include/objsec.h +9 -1
index 3c0a16ec978b..2f21568251ff 100644

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

sound/core/init.c +2 -1
index 57733852624a..cd21c6f520e9 100644

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

sound/core/pcm_timer.c +5 -2
index ab0e5bd70f8f..18bedd66435d 100644

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

sound/hda/common/controller.c +1 -1
index afec5c5546ec..18dae022b324 100644

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

sound/soc/amd/acp/acp-sdw-legacy-mach.c +13 -3
index e8b6819cc4b4..9e3d5d3ed1d7 100644

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

sound/soc/amd/acp/acp-sdw-sof-mach.c +16 -5
index a423853f3a97..13885ca20168 100644

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

sound/soc/codecs/cs-amp-lib.c +2 -0
index 371e99205b58..58b06e6878b9 100644

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

sound/soc/codecs/hdmi-codec.c +5 -1
index 13ae9e83bc21..2db9cf8ec6e9 100644

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

sound/soc/codecs/rt712-sdca-dmic.c +5 -9
index 85779547653e..ccc5e54f5fd7 100644

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

sound/soc/intel/boards/sof_sdw.c +1 -1
index c527d575d1ed..1013e07052a3 100644

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

sound/soc/sdw_utils/soc_sdw_bridge_cs35l56.c +1 -3
index e0e32a279787..129a437ae397 100644

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

sound/soc/sdw_utils/soc_sdw_utils.c +4 -5
index d8db8fc5313e..befcad08135e 100644

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

sound/soc/soc-pcm.c +13 -5
index 0e49290a8c90..3137c091bdb8 100644

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

sound/soc/ux500/ux500_msp_i2s.h +2 -2
index 2bf2699bdc49..c66ef455e138 100644

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

sound/usb/6fire/comm.c +28 -14

42 lines not on this page · raw message

sound/usb/6fire/comm.h +1 -1
index 2447d7ecf179..89976f510f6c 100644

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

sound/usb/6fire/midi.c +30 -13

43 lines not on this page · raw message

sound/usb/6fire/midi.h +1 -1
index 47640c845903..8716ab8a863a 100644

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

sound/usb/6fire/pcm.c +84 -54

138 lines not on this page · raw message

sound/usb/6fire/pcm.h +1 -4
index 5a092dfd69f5..b586fe220fd1 100644

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

sound/usb/bcd2000/bcd2000.c +26 -7
index c5c542d17ccc..2bd49bf82748 100644

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

sound/usb/card.h +1 -0
index e34d92d576a2..8299ac241c60 100644

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

sound/usb/endpoint.c +7 -5
index a1d449f2a342..a0ec51cc56ac 100644

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

sound/virtio/virtio_card.c +2 -2
index 647190f4d5af..6f35276416fe 100644

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

tools/objtool/Makefile +5 -3
index a4484fd22a96..4cc2e756af84 100644

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

tools/testing/selftests/arm64/mte/check_gcr_el1_cswitch.c +1 -1
index d23f154d3288..5d9dc8bcfbf5 100644

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

tools/testing/selftests/landlock/fs_test.c +196 -1

197 lines not on this page · 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.