Skip to contentSkip to conversation

Linux 6.18.34

DISCUSSION Greg Kroah-Hartman 1 participant 2 messages Jun 1 Stable branch

lore
Share & tools
lore

Greg Kroah-Hartman

author maintainer
#0 lore raw

I'm announcing the release of the 6.18.34 kernel.

All users of the 6.18 kernel series must upgrade.

The updated 6.18.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-6.18.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/admin-guide/pm/intel_pstate.rst                  |   11 
 Documentation/crypto/krb5.rst                                  |   17 
 Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.yaml |   38 +
 Documentation/gpu/drm-kms-helpers.rst                          |   12 
 Makefile                                                       |    2 
 arch/alpha/include/asm/Kbuild                                  |    1 
 arch/arc/include/asm/Kbuild                                    |    1 
 arch/arm/boot/dts/renesas/r7s72100-genmai.dts                  |    3 
 arch/arm/boot/dts/renesas/r7s72100-rskrza1.dts                 |    2 
 arch/arm/include/asm/Kbuild                                    |    1 
 arch/arm/mach-versatile/integrator_cp.c                        |   13 
 arch/arm64/boot/dts/broadcom/bcm2712.dtsi                      |    9 
 arch/arm64/include/asm/insn.h                                  |    2 
 arch/arm64/include/asm/page.h                                  |    2 
 arch/arm64/include/asm/ring_buffer.h                           |   10 
 arch/arm64/kvm/arm.c                                           |    4 
 arch/arm64/kvm/vgic/vgic-its.c                                 |    4 
 arch/arm64/mm/fault.c                                          |   11 
 arch/csky/include/asm/Kbuild                                   |    1 
 arch/hexagon/include/asm/Kbuild                                |    1 
 arch/loongarch/include/asm/Kbuild                              |    1 
 arch/loongarch/kernel/kprobes.c                                |   14 
 arch/loongarch/mm/init.c                                       |    4 
 arch/m68k/include/asm/Kbuild                                   |    1 
 arch/microblaze/include/asm/Kbuild                             |    1 
 arch/mips/include/asm/Kbuild                                   |    1 
 arch/nios2/include/asm/Kbuild                                  |    1 
 arch/openrisc/include/asm/Kbuild                               |    1 
 arch/parisc/include/asm/Kbuild                                 |    1 
 arch/powerpc/Kconfig.debug                                     |    3 
 arch/powerpc/include/asm/Kbuild                                |    1 
 arch/powerpc/kernel/time.c                                     |    6 
 arch/powerpc/platforms/82xx/km82xx.c                           |    4 
 arch/riscv/errata/mips/errata.c                                |    2 
 arch/riscv/include/asm/Kbuild                                  |    1 
 arch/riscv/kvm/vcpu_pmu.c                                      |   12 
 arch/riscv/mm/init.c                                           |   25 
 arch/s390/include/asm/Kbuild                                   |    1 
 arch/sh/include/asm/Kbuild                                     |    1 
 arch/sparc/include/asm/Kbuild                                  |    1 
 arch/um/include/asm/Kbuild                                     |    1 
 arch/x86/include/asm/Kbuild                                    |    1 
 arch/x86/kernel/cpu/mce/core.c                                 |   33 -
 arch/x86/kvm/svm/avic.c                                        |   12 
 arch/x86/xen/setup.c                                           |    2 
 arch/xtensa/include/asm/Kbuild                                 |    1 
 block/bio-integrity.c                                          |   19 
 block/blk-cgroup.c                                             |    2 
 block/blk-mq.c                                                 |   19 
 crypto/krb5/krb5_api.c                                         |   54 +-
 drivers/accel/qaic/qaic_data.c                                 |   23 
 drivers/ata/libata-core.c                                      |    9 
 drivers/ata/libata-eh.c                                        |    8 
 drivers/ata/libata-pmp.c                                       |   18 
 drivers/ata/libata-scsi.c                                      |  100 ++-
 drivers/ata/sata_sil24.c                                       |    6 
 drivers/base/memory.c                                          |    8 
 drivers/block/rbd.c                                            |   20 
 drivers/block/ublk_drv.c                                       |    3 
 drivers/bluetooth/btintel_pcie.c                               |   20 
 drivers/bluetooth/btintel_pcie.h                               |    3 
 drivers/bluetooth/btmtk.c                                      |    2 
 drivers/bluetooth/hci_ldisc.c                                  |   48 +
 drivers/cxl/core/mbox.c                                        |   11 
 drivers/firmware/arm_ffa/bus.c                                 |    4 
 drivers/firmware/arm_ffa/driver.c                              |  131 +++-
 drivers/firmware/efi/efi.c                                     |   28 -
 drivers/fwctl/pds/main.c                                       |    3 
 drivers/gpio/Kconfig                                           |    1 
 drivers/gpio/gpio-aggregator.c                                 |   47 +
 drivers/gpio/gpiolib-cdev.c                                    |   13 
 drivers/gpu/drm/Makefile                                       |    3 
 drivers/gpu/drm/amd/amdgpu/amdgpu_vpe.c                        |    7 
 drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c             |    9 
 drivers/gpu/drm/amd/display/dc/bios/bios_parser_helper.c       |    9 
 drivers/gpu/drm/amd/display/dc/core/dc.c                       |    6 
 drivers/gpu/drm/bridge/chipone-icn6211.c                       |    4 
 drivers/gpu/drm/bridge/ite-it66121.c                           |    5 
 drivers/gpu/drm/bridge/megachips-stdpxxxx-ge-b850v3-fw.c       |   16 
 drivers/gpu/drm/drm_atomic_helper.c                            |    2 
 drivers/gpu/drm/drm_vblank.c                                   |  172 ++++++
 drivers/gpu/drm/drm_vblank_helper.c                            |  176 ++++++
 drivers/gpu/drm/i915/display/intel_dp.c                        |    2 
 drivers/gpu/drm/mediatek/mtk_cec.c                             |    2 
 drivers/gpu/drm/mediatek/mtk_hdmi_ddc.c                        |    2 
 drivers/gpu/drm/msm/adreno/adreno_gpu.c                        |    6 
 drivers/gpu/drm/msm/disp/dpu1/dpu_writeback.c                  |    3 
 drivers/gpu/drm/msm/disp/msm_disp_snapshot_util.c              |   24 
 drivers/gpu/drm/msm/dsi/dsi_host.c                             |    1 
 drivers/gpu/drm/msm/msm_gem_shrinker.c                         |   40 -
 drivers/gpu/drm/msm/msm_iommu.c                                |    5 
 drivers/gpu/drm/v3d/v3d_sched.c                                |   16 
 drivers/gpu/drm/v3d/v3d_submit.c                               |   22 
 drivers/gpu/drm/virtio/virtgpu_drv.h                           |    1 
 drivers/gpu/drm/virtio/virtgpu_gem.c                           |   17 
 drivers/gpu/drm/virtio/virtgpu_plane.c                         |   10 
 drivers/gpu/drm/vkms/vkms_crtc.c                               |   83 ---
 drivers/gpu/drm/vkms/vkms_drv.h                                |    2 
 drivers/gpu/drm/xe/display/xe_hdcp_gsc.c                       |   12 
 drivers/gpu/drm/xe/xe_gsc.c                                    |    5 
 drivers/gpu/drm/xe/xe_gt_sriov_pf_monitor.c                    |    6 
 drivers/gpu/drm/xe/xe_gt_sriov_pf_monitor.h                    |    2 
 drivers/gpu/drm/xe/xe_gt_sriov_vf.c                            |   24 
 drivers/gpu/drm/xe/xe_gt_sriov_vf.h                            |    6 
 drivers/gpu/drm/xe/xe_oa.c                                     |    6 
 drivers/hid/hid-quirks.c                                       |    2 
 drivers/hid/hid-uclogic-core.c                                 |    4 
 drivers/hid/intel-thc-hid/intel-quickspi/quickspi-protocol.c   |    4 
 drivers/hwmon/lm90.c                                           |   26 
 drivers/hwmon/pmbus/adm1266.c                                  |   32 -
 drivers/infiniband/hw/mana/main.c                              |    1 
 drivers/infiniband/sw/siw/siw_qp_rx.c                          |   15 
 drivers/infiniband/ulp/rtrs/rtrs-srv-sysfs.c                   |    2 
 drivers/iommu/amd/debugfs.c                                    |   43 -
 drivers/irqchip/irq-ath79-cpu.c                                |    7 
 drivers/mfd/bcm2835-pm.c                                       |    1 
 drivers/net/dsa/mt7530.c                                       |   47 +
 drivers/net/ethernet/airoha/airoha_eth.c                       |   10 
 drivers/net/ethernet/amd/pds_core/debugfs.c                    |    7 
 drivers/net/ethernet/amd/pds_core/dev.c                        |   11 
 drivers/net/ethernet/amd/pds_core/devlink.c                    |    6 
 drivers/net/ethernet/atheros/ag71xx.c                          |    3 
 drivers/net/ethernet/broadcom/genet/bcmgenet.c                 |    9 
 drivers/net/ethernet/cirrus/cs89x0.c                           |    2 
 drivers/net/ethernet/cortina/gemini.c                          |   21 
 drivers/net/ethernet/intel/ice/ice_dcb_lib.c                   |    4 
 drivers/net/ethernet/intel/ice/ice_main.c                      |   10 
 drivers/net/ethernet/intel/ice/ice_ptp_hw.c                    |   33 -
 drivers/net/ethernet/intel/ice/ice_txrx.c                      |    7 
 drivers/net/ethernet/intel/ice/virt/queues.c                   |    2 
 drivers/net/ethernet/intel/idpf/idpf_ptp.c                     |    4 
 drivers/net/ethernet/intel/igc/igc_tsn.c                       |    9 
 drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c              |    1 
 drivers/net/ethernet/marvell/octeontx2/af/cgx.c                |    7 
 drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c            |    2 
 drivers/net/ethernet/marvell/octeontx2/nic/rep.c               |    3 
 drivers/net/ethernet/mellanox/mlx5/core/en/reporter_tx.c       |    6 
 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c       |    7 
 drivers/net/ethernet/mellanox/mlx5/core/esw/ipsec_fs.c         |    3 
 drivers/net/ethernet/microchip/lan966x/lan966x_main.c          |    8 
 drivers/net/ethernet/microsoft/mana/hw_channel.c               |   29 -
 drivers/net/ethernet/qlogic/qed/qed_cxt.c                      |    2 
 drivers/net/ethernet/ti/icssm/icssm_prueth.c                   |    1 
 drivers/net/ifb.c                                              |   11 
 drivers/net/ovpn/io.c                                          |   12 
 drivers/net/ovpn/main.c                                        |   12 
 drivers/net/ovpn/netlink.c                                     |    8 
 drivers/net/ovpn/peer.c                                        |   23 
 drivers/net/ovpn/peer.h                                        |    1 
 drivers/net/ovpn/stats.h                                       |   16 
 drivers/net/ovpn/tcp.c                                         |   19 
 drivers/net/ovpn/udp.c                                         |    2 
 drivers/net/phy/dp83tc811.c                                    |    1 
 drivers/net/phy/phy-c45.c                                      |    8 
 drivers/net/phy/phy_device.c                                   |    6 
 drivers/net/pse-pd/pse_core.c                                  |    2 
 drivers/net/tap.c                                              |    2 
 drivers/net/wireless/ath/ath10k/wmi.c                          |   15 
 drivers/net/wireless/ath/ath11k/dp_rx.c                        |    3 
 drivers/net/wireless/ath/ath11k/hal.c                          |   14 
 drivers/net/wireless/ath/ath11k/hal_rx.c                       |    5 
 drivers/net/wireless/ath/ath11k/testmode.c                     |    1 
 drivers/net/wireless/ath/ath11k/wmi.c                          |   19 
 drivers/net/wireless/intel/iwlwifi/mld/link.c                  |   13 
 drivers/net/wireless/intel/iwlwifi/mld/tx.c                    |   15 
 drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c              |   27 -
 drivers/net/wireless/intel/iwlwifi/mvm/utils.c                 |   14 
 drivers/net/wireless/microchip/wilc1000/wlan.c                 |    2 
 drivers/net/wwan/iosm/iosm_ipc_imem.c                          |    2 
 drivers/nvme/host/ioctl.c                                      |    5 
 drivers/nvme/host/pci.c                                        |    6 
 drivers/phy/marvell/phy-mvebu-a3700-utmi.c                     |    5 
 drivers/phy/qualcomm/phy-qcom-qmp-ufs.c                        |    1 
 drivers/phy/samsung/phy-exynos5-usbdrd.c                       |    7 
 drivers/phy/tegra/xusb-tegra186.c                              |   33 -
 drivers/phy/tegra/xusb.h                                       |    1 
 drivers/pinctrl/meson/pinctrl-amlogic-a4.c                     |    6 
 drivers/pinctrl/qcom/pinctrl-ipq4019.c                         |    2 
 drivers/pinctrl/qcom/pinctrl-msm.h                             |    5 
 drivers/pinctrl/qcom/pinctrl-qcs615.c                          |    6 
 drivers/pinctrl/qcom/pinctrl-sm8150.c                          |    8 
 drivers/pinctrl/renesas/pinctrl-rzg2l.c                        |   23 
 drivers/platform/surface/surface_aggregator_registry.c         |    2 
 drivers/platform/x86/adv_swbutton.c                            |    6 
 drivers/platform/x86/hp/hp_accel.c                             |    3 
 drivers/platform/x86/intel/hid.c                               |    6 
 drivers/platform/x86/intel/vbtn.c                              |    6 
 drivers/regulator/tps65219-regulator.c                         |  135 +++--
 drivers/scsi/isci/host.c                                       |    3 
 drivers/scsi/sd.c                                              |    3 
 drivers/spi/spi-amd.c                                          |    2 
 drivers/spi/spi-dw-dma.c                                       |    2 
 drivers/spi/spi-ep93xx.c                                       |    2 
 drivers/spi/spi-mtk-snfi.c                                     |    2 
 drivers/spi/spi-qup.c                                          |    3 
 drivers/spi/spi-sprd.c                                         |    3 
 drivers/spi/spi-ti-qspi.c                                      |    1 
 drivers/virt/coco/sev-guest/sev-guest.c                        |   10 
 fs/afs/dir.c                                                   |   11 
 fs/btrfs/backref.c                                             |   11 
 fs/btrfs/block-group.c                                         |    3 
 fs/btrfs/ctree.c                                               |   17 
 fs/btrfs/dir-item.c                                            |    3 
 fs/btrfs/extent-tree.c                                         |   55 --
 fs/btrfs/free-space-tree.c                                     |   29 -
 fs/btrfs/fs.h                                                  |    4 
 fs/btrfs/inode-item.c                                          |    3 
 fs/btrfs/inode.c                                               |    7 
 fs/btrfs/ioctl.c                                               |   60 --
 fs/btrfs/print-tree.c                                          |   14 
 fs/btrfs/qgroup.c                                              |  270 +++++-----
 fs/btrfs/relocation.c                                          |    4 
 fs/btrfs/root-tree.c                                           |    4 
 fs/btrfs/send.c                                                |   10 
 fs/btrfs/super.c                                               |   10 
 fs/btrfs/tree-checker.c                                        |   21 
 fs/btrfs/tree-log.c                                            |   42 -
 fs/btrfs/volumes.c                                             |    3 
 fs/btrfs/xattr.c                                               |    3 
 fs/erofs/zdata.c                                               |   15 
 fs/fuse/dir.c                                                  |   20 
 fs/jfs/namei.c                                                 |    2 
 fs/mnt_idmapping.c                                             |    2 
 fs/netfs/buffered_read.c                                       |   64 +-
 fs/netfs/buffered_write.c                                      |  172 ++++--
 fs/netfs/direct_read.c                                         |   42 -
 fs/netfs/internal.h                                            |    3 
 fs/netfs/iterator.c                                            |   26 
 fs/netfs/misc.c                                                |    8 
 fs/netfs/read_collect.c                                        |   13 
 fs/netfs/read_retry.c                                          |   11 
 fs/netfs/read_single.c                                         |   23 
 fs/netfs/write_issue.c                                         |   46 +
 fs/nfsd/nfs4state.c                                            |    7 
 fs/nsfs.c                                                      |    2 
 fs/ntfs3/file.c                                                |   12 
 fs/orangefs/namei.c                                            |    2 
 fs/smb/client/cifs_spnego.c                                    |   16 
 fs/smb/client/cifsfs.c                                         |    2 
 fs/smb/client/netlink.c                                        |    6 
 fs/smb/client/smb2ops.c                                        |    4 
 fs/smb/client/smb2transport.c                                  |    2 
 fs/smb/server/oplock.c                                         |    6 
 fs/smb/server/smb2pdu.c                                        |   15 
 fs/smb/server/smbacl.c                                         |   78 ++
 fs/smb/server/vfs_cache.c                                      |  120 +++-
 fs/sysfs/group.c                                               |    2 
 fs/zonefs/super.c                                              |    6 
 include/asm-generic/kprobes.h                                  |    2 
 include/asm-generic/ring_buffer.h                              |   13 
 include/crypto/krb5.h                                          |    9 
 include/drm/drm_modeset_helper_vtables.h                       |   12 
 include/drm/drm_vblank.h                                       |   32 +
 include/drm/drm_vblank_helper.h                                |   56 ++
 include/linux/cgroup.h                                         |    1 
 include/linux/cleanup.h                                        |    5 
 include/linux/fprobe.h                                         |    5 
 include/linux/fwnode.h                                         |    1 
 include/linux/gfp_types.h                                      |   10 
 include/linux/highmem.h                                        |    7 
 include/linux/libata.h                                         |    7 
 include/linux/netfilter/x_tables.h                             |    3 
 include/linux/netfilter_arp/arp_tables.h                       |    1 
 include/linux/netfilter_ipv4/ip_tables.h                       |    1 
 include/linux/netfilter_ipv6/ip6_tables.h                      |    1 
 include/linux/netfs.h                                          |    2 
 include/linux/soc/airoha/airoha_offload.h                      |    6 
 include/net/bluetooth/bluetooth.h                              |    1 
 include/net/net_shaper.h                                       |    1 
 include/net/netfilter/nf_queue.h                               |    1 
 include/net/tcp.h                                              |    7 
 include/trace/events/btrfs.h                                   |    4 
 include/trace/events/netfs.h                                   |    8 
 include/trace/events/rxrpc.h                                   |    1 
 io_uring/net.c                                                 |   26 
 io_uring/nop.c                                                 |    4 
 io_uring/waitid.c                                              |    1 
 kernel/cgroup/cpuset.c                                         |    8 
 kernel/cgroup/rstat.c                                          |   37 -
 kernel/dma/debug.c                                             |    9 
 kernel/dma/mapping.c                                           |    4 
 kernel/irq_work.c                                              |    7 
 kernel/sched/core.c                                            |  159 ++---
 kernel/sched/ext.c                                             |   44 -
 kernel/sched/sched.h                                           |   33 -
 kernel/sched/syscalls.c                                        |   95 +--
 kernel/trace/bpf_trace.c                                       |    3 
 kernel/trace/fprobe.c                                          |  200 +++++--
 kernel/trace/ring_buffer.c                                     |   30 -
 kernel/trace/trace_events_hist.c                               |    6 
 kernel/trace/tracing_map.c                                     |   17 
 lib/kunit/Kconfig                                              |    5 
 lib/tests/test_kprobes.c                                       |   29 -
 mm/damon/sysfs-schemes.c                                       |    1 
 mm/memcontrol.c                                                |    6 
 mm/memory.c                                                    |   24 
 mm/memory_hotplug.c                                            |    2 
 mm/page_alloc.c                                                |    8 
 net/batman-adv/bat_iv_ogm.c                                    |   82 ++-
 net/batman-adv/bat_v_ogm.c                                     |   59 +-
 net/batman-adv/bridge_loop_avoidance.c                         |  109 ++--
 net/batman-adv/distributed-arp-table.c                         |    3 
 net/batman-adv/fragmentation.c                                 |   58 +-
 net/batman-adv/gateway_client.c                                |    4 
 net/batman-adv/mesh-interface.c                                |    1 
 net/batman-adv/originator.c                                    |    4 
 net/batman-adv/tp_meter.c                                      |  117 ++--
 net/batman-adv/translation-table.c                             |   55 +-
 net/batman-adv/tvlv.c                                          |   28 -
 net/batman-adv/tvlv.h                                          |    2 
 net/batman-adv/types.h                                         |   59 +-
 net/bluetooth/af_bluetooth.c                                   |   97 ++-
 net/bluetooth/bnep/core.c                                      |    2 
 net/bluetooth/iso.c                                            |   14 
 net/bluetooth/l2cap_core.c                                     |    2 
 net/bluetooth/l2cap_sock.c                                     |   51 +
 net/bluetooth/mgmt.c                                           |    6 
 net/bluetooth/rfcomm/sock.c                                    |    9 
 net/bluetooth/sco.c                                            |    9 
 net/bridge/br_mrp_netlink.c                                    |    4 
 net/bridge/br_multicast.c                                      |   27 -
 net/bridge/netfilter/ebtable_broute.c                          |   14 
 net/bridge/netfilter/ebtable_filter.c                          |   14 
 net/bridge/netfilter/ebtable_nat.c                             |   12 
 net/bridge/netfilter/ebtables.c                                |   71 +-
 net/core/dev.c                                                 |   21 
 net/core/gro.c                                                 |    3 
 net/core/skmsg.c                                               |    9 
 net/ethtool/bitset.c                                           |    8 
 net/ethtool/phy.c                                              |   36 +
 net/ipv4/inet_connection_sock.c                                |    2 
 net/ipv4/netfilter/arp_tables.c                                |   18 
 net/ipv4/netfilter/arptable_filter.c                           |   27 -
 net/ipv4/netfilter/ip_tables.c                                 |   18 
 net/ipv4/netfilter/iptable_filter.c                            |   27 -
 net/ipv4/netfilter/iptable_mangle.c                            |   29 -
 net/ipv4/netfilter/iptable_nat.c                               |    6 
 net/ipv4/netfilter/iptable_raw.c                               |   26 
 net/ipv4/netfilter/iptable_security.c                          |   27 -
 net/ipv4/raw.c                                                 |    2 
 net/ipv4/tcp.c                                                 |    3 
 net/ipv4/tcp_ao.c                                              |    3 
 net/ipv4/tcp_input.c                                           |   15 
 net/ipv4/tcp_ipv4.c                                            |    3 
 net/ipv6/exthdrs.c                                             |   21 
 net/ipv6/netfilter/ip6_tables.c                                |   18 
 net/ipv6/netfilter/ip6t_hbh.c                                  |    4 
 net/ipv6/netfilter/ip6table_filter.c                           |   26 
 net/ipv6/netfilter/ip6table_mangle.c                           |   27 -
 net/ipv6/netfilter/ip6table_nat.c                              |    6 
 net/ipv6/netfilter/ip6table_raw.c                              |   24 
 net/ipv6/netfilter/ip6table_security.c                         |   27 -
 net/ipv6/tcp_ipv6.c                                            |    3 
 net/l2tp/l2tp_core.c                                           |    2 
 net/mac80211/mlme.c                                            |    5 
 net/mac80211/parse.c                                           |   71 +-
 net/mptcp/pm.c                                                 |   56 +-
 net/netfilter/ipset/ip_set_hash_ipmark.c                       |    6 
 net/netfilter/ipset/ip_set_hash_ipport.c                       |    5 
 net/netfilter/ipset/ip_set_hash_ipportip.c                     |    5 
 net/netfilter/ipset/ip_set_hash_ipportnet.c                    |    5 
 net/netfilter/nf_queue.c                                       |    4 
 net/netfilter/nfnetlink_queue.c                                |    2 
 net/netfilter/nft_inner.c                                      |    3 
 net/netfilter/x_tables.c                                       |  100 +++
 net/phonet/pep.c                                               |   19 
 net/rxrpc/rxgk.c                                               |   15 
 net/shaper/shaper.c                                            |  220 +++++---
 net/smc/af_smc.c                                               |    3 
 net/smc/smc_tracepoint.h                                       |    2 
 net/tls/tls_sw.c                                               |   46 +
 net/unix/af_unix.c                                             |   11 
 net/vmw_vsock/virtio_transport_common.c                        |  103 +--
 net/vmw_vsock/vmci_transport.c                                 |    2 
 net/wireless/scan.c                                            |    3 
 scripts/gcc-plugins/gcc-common.h                               |    4 
 scripts/package/PKGBUILD                                       |    2 
 security/keys/keyring.c                                        |    1 
 security/lsm_syscalls.c                                        |    9 
 sound/core/pcm_lib.c                                           |    3 
 sound/core/seq/seq_ump_client.c                                |   22 
 sound/hda/codecs/realtek/alc269.c                              |   12 
 sound/hda/codecs/side-codecs/cs35l41_hda.c                     |    4 
 sound/hda/codecs/side-codecs/cs35l56_hda.c                     |    1 
 sound/pci/asihpi/hpicmn.c                                      |    6 
 sound/soc/amd/acp/acp-sdw-legacy-mach.c                        |    2 
 sound/soc/codecs/cs35l56-sdw.c                                 |    3 
 sound/soc/codecs/fs210x.c                                      |    2 
 sound/soc/sdw_utils/soc_sdw_utils.c                            |    4 
 sound/soc/soc-utils.c                                          |    1 
 sound/soc/sof/amd/acp.c                                        |    2 
 sound/usb/misc/ua101.c                                         |    5 
 sound/usb/mixer_scarlett2.c                                    |    9 
 tools/testing/selftests/mm/hmm-tests.c                         |   50 +
 tools/testing/selftests/mm/run_vmtests.sh                      |    2 
 tools/testing/selftests/net/lib/xdp_native.bpf.c               |   55 +-
 tools/testing/selftests/ublk/kublk.c                           |   11 
 397 files changed, 4706 insertions(+), 2334 deletions(-)

Abdun Nihaal (1):
net: wwan: iosm: fix potential memory leaks in ipc_imem_init()

Abdurrahman Hussain (10):
hwmon: (pmbus/adm1266) widen blackbox-info buffer to I2C_SMBUS_BLOCK_MAX
hwmon: (pmbus/adm1266) seed timestamp from the real-time clock
hwmon: (pmbus/adm1266) reject implausible blackbox record_count
hwmon: (pmbus/adm1266) include PEC byte in pmbus_block_xfer read buffer
hwmon: (pmbus/adm1266) bounce blackbox records through a protocol-sized buffer
hwmon: (pmbus/adm1266) cap PDIO scan in get_multiple at ADM1266_PDIO_NR
hwmon: (pmbus/adm1266) don't clobber GPIO bits before PDIO read in get_multiple
hwmon: (pmbus/adm1266) register the gpio_chip after pmbus_do_probe()
hwmon: (pmbus/adm1266) register the nvmem device after pmbus_do_probe()
hwmon: (pmbus/adm1266) reject short block-read responses in the GPIO accessors

Aditya Garg (1):
net: mana: validate rx_req_idx to prevent out-of-bounds array access

Alan Liu (1):
drm/amdgpu/vpe: Force collaborate sync after TRAP

Alexander A. Klimov (2):
ASoC: codecs: fs210x: fix possible buffer overflow io_uring/nop: pass all errors to userspace

Alexander Sverdlin (1):
regulator: tps65219: fix irq_data.rdev not being assigned

Alexandru Hossu (1):

      wifi: mac80211: bounds-check link_id in ieee80211_ml_epcs

Alistair Popple (1):
mm/memory: fix spurious warning when unmapping device-private/exclusive pages

Ally Heev (1):
powerpc: 82xx: fix uninitialized pointers with free attribute

Andreas Haarmann-Thiemann (1):
net: ethernet: cortina: Drop half-assembled SKB

Ankit Nautiyal (1):
drm/i915/dp: Fix readback for target_rr in Adaptive Sync SDP

Antonio Quartulli (1):
ovpn: fix race between deleting interface and adding new peer

Ard Biesheuvel (1):
efi: Allocate runtime workqueue before ACPI init

Asim Viladi Oglu Manizada (1):
smb: client: reject userspace cifs.spnego descriptions

Bart Van Assche (1):
ice: fix locking in ice_dcb_rebuild()

Bartosz Golaszewski (6):
device property: set fwnode->secondary to NULL in fwnode_init()
gpio: cdev: check if uAPI v2 config attributes are correctly zeroed
gpio: aggregator: fix a potential use-after-free
gpio: aggregator: stop using dev-sync-probe
gpio: aggregator: remove the software node when deactivating the aggregator
gpio: aggregator: lock device when calling device_is_bound()

Biju Das (1):
pinctrl: renesas: rzg2l: Fix incorrect PUPD register offset for high pins during suspend/resume

Boris Burkov (4):
btrfs: check squota parent usage on membership change
btrfs: relax squota parent qgroup deletion rule
btrfs: check for subvolume before deleting squota qgroup
btrfs: fix squota accounting during enable generation

Borislav Petkov (AMD) (1):
x86/mce: Restore MCA polling interval halving

Carlos López (1):
virt: sev-guest: Explicitly leak pages in unknown state

Casey Chen (1):
block: recompute nr_integrity_segments in blk_insert_cloned_request

ChenXiaoSong (1):
smb/server: promote S_DEL_ON_CLS to S_DEL_PENDING when close

Chenguang Zhao (1):
ethtool: fix ethnl_bitmap32_not_zero() bit interval semantics

Chia-Lin Kao (AceLan) (1):
nvme-pci: fix use-after-free in nvme_free_host_mem()

Christian Marangi (1):
net: airoha: Fix NPU RX DMA descriptor bits

Chuck Lever (2):
NFSD: Fix infinite loop in layout state revocation
tls: Preserve sk_err across recvmsg() when data has been copied

Cole Leavitt (1):
wifi: iwlwifi: mld: fix TSO segmentation explosion when AMSDU is disabled

Cunlong Li (1):
cgroup: rstat: relax NMI guard after switch to try_cmpxchg

Cássio Gabriel (3):
ALSA: ua101: Reject too-short USB descriptors
ALSA: scarlett2: Allow flash writes ending at segment boundary
ASoC: amd: acp-sdw-legacy: check CPU DAI name before logging

DaeMyung Kang (1):
ksmbd: close durable scavenger races against m_fp_list lookups

Dan Carpenter (1):
HID: intel-thc-hid: Intel-quickspi: Fix some error codes

Daniel Golle (2):
net: dsa: mt7530: fix FDB entries not aging out with short timeout
net: dsa: mt7530: preserve VLAN tags on trapped link-local frames

Daniel J Blueman (1):
drm/msm: Fix shrinker deadlock

David Carlier (6):
Bluetooth: ISO: drop ISO_END frames received without prior ISO_START
net: ethtool: phy: avoid NULL deref when PHY driver is unbound
block: don't overwrite bip_vcnt in bio_integrity_copy_user()
ovpn: tcp - use cached peer pointer in ovpn_tcp_close()
ovpn: respect peer refcount in CMD_NEW_PEER error path
tracing: Avoid NULL return from hist_field_name() on truncation

David Gow (2):
kunit: config: Enable KUNIT_DEBUGFS by default
kunit: config: KUNIT_DEBUGFS should depend on DEBUG_FS

David Hildenbrand (Arm) (2):
mm: fix __vm_normal_page() to handle missing support for pmd_special()/pud_special() mm/page_alloc: fix initialization of tags of the huge zero folio with init_on_free

David Howells (17):
netfs: Fix cancellation of a DIO and single read subrequests
netfs: Fix netfs_read_to_pagecache() to pause on subreq failure
netfs: Fix overrun check in netfs_extract_user_iter()
netfs: Fix netfs_invalidate_folio() to clear dirty bit if all changes gone
netfs: Defer the emission of trace_netfs_folio()
netfs: Fix streaming write being overwritten
netfs: Fix potential deadlock in write-through mode
netfs: Fix read-gaps to remove netfs_folio from filled folio
netfs: Fix write streaming disablement if fd open O_RDWR
netfs: Fix early put of sink folio in netfs_read_gaps()
netfs: Fix leak of request in netfs_write_begin() error handling
netfs: Fix potential UAF in netfs_unlock_abandoned_read_pages()
netfs: Fix partial invalidation of streaming-write folio
netfs: Fix folio->private handling in netfs_perform_write()
netfs: Fix netfs_read_folio() to wait on writeback
netfs, afs: Fix write skipping in dir/link writepages crypto/krb5, rxrpc: Fix lack of pre-decrypt/pre-verify length checks

David Sterba (1):
btrfs: remaining BTRFS_PATH_AUTO_FREE conversions

Davidlohr Bueso (1):
cxl/mbox: validate payload size before accessing contents in cxl_payload_from_user_allowed()

Dawei Feng (2):
qed: fix double free in qed_cxt_tables_alloc()
octeontx2-pf: fix double free in rvu_rep_rsrc_init()

Deepanshu Kartikey (1):
drm/virtio: use uninterruptible resv lock for plane updates

Dmitry Baryshkov (4):
drm/msm/dsi: don't dump registers past the mapped region drm/msm/dpu: don't mix devm and drmm functions drm/msm/adreno: fix userspace-triggered crash on a2xx-a4xx drm/msm/snapshot: fix dumping of the unaligned regions

Dragos Tatulea (1):
net: napi: Avoid gro timer misfiring at end of busypoll

Eder Zulian (1):
iommu/amd: Remove latent out-of-bounds access in IOMMU debugfs

Emil Tantilov (1):
idpf: fix read_dev_clk_lock spinlock init in idpf_ptp_init()

Eric Dumazet (1):
tcp: fix stale per-CPU tcp_tw_isn leak enabling ISN prediction

Eric Naim (1):
ALSA: hda/realtek: Use ALC287_FIXUP_TXNW2781_I2C for ASUS Strix Gxx5

Erni Sri Satya Vennela (1):
net: mana: Fix TOCTOU double-fetch of hwc_msg_id from DMA buffer

Ethan Nelson-Moore (1):
net: ethernet: cs89x0: remove stale CONFIG_MACH_MX31ADS reference

Felix Gu (1):
spi: mtk-snfi: Fix resource leak in mtk_snand_read_page_cache()

Ferry Meng (1):
ksmbd: fix SID memory leak in set_posix_acl_entries_dacl() on overflow

Filipe Manana (3):
btrfs: tracepoints: fix sleep while in atomic context in btrfs_sync_file()
btrfs: add macros to facilitate printing of keys
btrfs: use the key format macros when printing keys

Florian Westphal (8):
netfilter: x_tables: unregister the templates first
netfilter: x_tables: add and use xt_unregister_table_pre_exit
netfilter: x_tables: add and use xtables_unregister_table_exit
netfilter: ebtables: move to two-stage removal scheme
netfilter: ebtables: close dangling table module init race
netfilter: x_tables: close dangling table module init race
netfilter: bridge: eb_tables: close module init race
netfilter: nft_inner: release local_lock before re-enabling softirqs

Gabor Juhos (1):
phy: marvell: mvebu-a3700-utmi: fix incorrect USB2_PHY_CTRL register access

Gao Xiang (1):
erofs: fix managed cache race for unaligned extents

Greg Kroah-Hartman (2):
sysfs: don't remove existing directory on update failure Linux 6.18.34

Grzegorz Nitka (3):
ice: restore PTP Rx timestamp config after ethtool set-channels
ice: ptp: serialize E825 PHY timer start with PTP lock
ice: ptp: use primary NAC semaphore on E825

Guanghui Feng (1):
iommu/amd: Fix illegal cap/mmio access in IOMMU debugfs

Guangshuo Li (1):
RDMA/rtrs: Fix use-after-free in path file creation cleanup

Guenter Roeck (3):
ARM: integrator: Fix early initialization
hwmon: (lm90) Stop work before releasing hwmon device
hwmon: (lm90) Add lock protection to lm90_alert

Guo Ren (Alibaba DAMO Academy) (1):
riscv: mm: Fixup no5lvl failure when vaddr is invalid

Guopeng Zhang (1):
cgroup/cpuset: Reset DL migration state on can_attach() failure

Gustavo Sousa (1):
drm/xe/hdcp: Add NULL check for media_gt in intel_hdcp_gsc_check_status()

Haoze Xie (1):

      netfilter: nf_queue: hold bridge skb->dev while queued

Harry Wentland (3):
drm/amd/display: Fix integer overflow in bios_get_image()
drm/amd/display: Validate GPIO pin LUT table size before iterating drm/amd/display: Validate payload length and link_index in dc_process_dmub_aux_transfer_async

Heechan Kang (2):
io_uring/waitid: clear waitid info before copying it to userspace
fwctl: pds: Validate RPC input size before parsing

Henrique Carvalho (1):
smb: client: protect tc_count increment in smb2_find_smb_sess_tcon_unlocked()

Hongling Zeng (1):
fs: Fix return in jfs_mkdir and orangefs_mkdir

Huacai Chen (1):
LoongArch: Remove unused code to avoid build warning

Ido Schimmel (1):
bridge: mcast: Fix a possible use-after-free when removing a bridge port

Ilya Dryomov (1):
rbd: eliminate a race in lock_dwork draining on unmap

Jacob Keller (1):
ice: fix locking around wait_event_interruptible_locked_irq

Jakub Kicinski (11):
net: shaper: flip the polarity of the valid flag
net: shaper: fix trivial ordering issue in net_shaper_commit()
net: shaper: reject duplicate leaves in GROUP request
net: shaper: set ret to -ENOMEM when genlmsg_new() fails in group_doit
net: shaper: fix undersized reply skb allocation in GROUP command
net: shaper: enforce singleton NETDEV scope with id 0
net: shaper: reject QUEUE scope handle with missing id
net: tls: fix off-by-one in sg_chain entry count for wrapped sk_msg ring
net: tls: prevent chain-after-chain in plain text SG
net: shaper: annotate the data races
net: shaper: rework the VALID marking (again)

Jann Horn (2):

      Bluetooth: bnep: Fix UAF read of dev->name
      af_unix: Fix UAF read of tail->len in unix_stream_data_wait()

Jens Axboe (1):
io_uring/net: punt IORING_OP_BIND async if it needs file create

Jeremy Erazo (1):
smb: client: use data_len for SMB2 READ encrypted folioq copy

Jeremy Laratro (1):
ksmbd: fix null pointer dereference in compare_guid_key()

Jeroen Massar (1):
net/mlx5: Do not restore destination-less TC rules

Jiajia Liu (1):

      Bluetooth: btmtk: fix urb->setup_packet leak in error paths

Jianpeng Chang (2):
kprobes: skip non-symbol addresses in kprobe_add_ksym_blacklist()
dma-mapping: move dma_map_resource() sanity check into debug code

Jiayuan Chen (1):
irq_work: Fix use-after-free in irq_work_single() on PREEMPT_RT

Jiexun Wang (1):
Bluetooth: serialize accept_q access

Johan Hovold (4):
spi: qup: fix error pointer deref after DMA setup failure
spi: ep93xx: fix error pointer deref after DMA setup failure
spi: sprd: fix error pointer deref after DMA setup failure
spi: ti-qspi: fix use-after-free after DMA setup failure

Johannes Berg (2):
wifi: iwlwifi: mvm: fix driver-set TX rates on old devices
wifi: mac80211: fix MLE defragmentation

Johannes Thumshirn (1):
zonefs: handle integer overflow in zonefs_fname_to_fno

John Walker (1):

      wifi: cfg80211: advance loop vars in cfg80211_merge_profile()

Jonas Jelonek (1):
net: pse-pd: fix sign on -ENOENT check in of_load_pse_pis()

Jose Ignacio Tornos Martinez (1):
ice: fix VF queue configuration with low MTU values

Josef Bacik (1):
btrfs: don't search back for dir inode item in INO_LOOKUP_USER

Juergen Gross (1):

      x86/xen: Fix xen_e820_swap_entry_with_ram()

Julian Braha (1):
powerpc: fix dead default for GUEST_STATE_BUFFER_TEST

Julien Chauveau (1):
drm/bridge: it66121: acquire reset GPIO in probe

Junyi Liu (2):
ksmbd: validate SID in parent security descriptor during ACL inheritance
ksmbd: fix durable reconnect error path file lifetime

Junyoung Jang (1):
fs/statmount: fix slab out-of-bounds write in statmount_mnt_idmap

Juri Lelli (1):
sched/deadline: Fix missing ENQUEUE_REPLENISH during PI de-boosting

Justin Iurman (2):
ipv6: ioam: refresh hdr pointer before ioam6_event()
ipv6: ioam: add NULL check for idev in ipv6_hop_ioam()

Kang Yang (1):
wifi: ath10k: skip WMI and beacon transmission when device is wedged

Kees Cook (1):
gcc-plugins: Always define CONST_CAST_GIMPLE and CONST_CAST_TREE

Keith Busch (1):
nvme: fix bio leak on mapping failure

Kiran K (1):
Bluetooth: btintel_pcie: Fix incorrect MAC access programming

Kohei Enju (2):
igc: fix potential skb leak in igc_fpe_xmit_smd_frame()
igc: set tx buffer type for SMD frames

Konstantin Komarov (1):
fs/ntfs3: handle attr_set_size() errors when truncating files

Krishnamoorthi M (1):
spi: amd: Set correct bus number in ACPI probe path

Kuniyuki Iwashima (2):
tcp: Fix imbalanced icsk_accept_queue count.
tcp: Fix out-of-bounds access for twsk in tcp_ao_established_key().

Kyle Farnung (1):
wifi: ath11k: clear shared SRNG pointer state on restart

Lad Prabhakar (1):
pinctrl: renesas: rzg2l: Fix SMT register cache handling

Li Xiasong (1):
mptcp: pm: fix ADD_ADDR timer infinite retry on option space insufficient

Linus Torvalds (1):
security/keys: fix missed RCU read section on lookup

Linus Walleij (2):
net: ethernet: cortina: Make RX SKB per-port
net: ethernet: cortina: Carry over frag counter

Lorenzo Bianconi (1):
net: airoha: Disable GDM2 forwarding before configuring GDM2 loopback

Louis-Alexis Eyraud (2):
drm/mediatek: mtk_cec: Fix non-static global variable drm/mediatek: mtk_hdmi_ddc: Fix non-static global variable

Luis Henriques (1):
fuse: fix uninit-value in fuse_dentry_revalidate()

Luiz Capitulino (1):
selftests/mm: run_vmtests.sh: fix destructive tests invocation

Lukas Bulwahn (1):
HID: quirks: really enable the intended work around for appledisplay

Luxiao Xu (1):
batman-adv: fix tp_meter counter underflow during shutdown

Mac Chiang (2):
ASoC: sdw_utils: Add quirk to ignore RT712 CODEC_MIC
ASoC: sdw_utils: Add quirk to ignore RT721 CODEC_MIC

Marcin Szycik (2):
ice: fix setting promisc mode while adding VID filter
ice: fix setting RSS VSI hash for E830

Marek Vasut (2):
ARM: dts: renesas: genmai: Drop superfluous cells
ARM: dts: renesas: rskrza1: Drop superfluous cells

Mario Limonciello (1):
ASoC: SOF: amd: Fix error code handling in psp_send_cmd()

Martin Kaiser (1):
test_kprobes: clear kprobes between test runs

Masami Hiramatsu (Google) (6):
tracing: fprobe: Remove unused local variable
tracing/fprobe: Avoid kcalloc() in rcu_read_lock section tracing/fprobe: Check the same type fprobe on table as the unregistered one
ring-buffer: Flush and stop persistent ring buffer on panic
tracing: Do not call map->ops->elt_free() if elt_alloc() fails
fprobe: Fix unregister_fprobe() to wait for RCU grace period

Matt Fleming (1):
net/mlx5e: Fix use-after-free in mlx5e_tx_reporter_timeout_recover

Matthew Leach (1):
wifi: ath11k: fix peer resolution on rx path when peer_id=0

Maulik Shah (2):
pinctrl: qcom: Fix GPIO to PDC wake irq map for qcs615
pinctrl: qcom: Fix wakeirq map by removing disconnected irqs for sm8150

Maíra Canal (2):
drm/v3d: Fix use-after-free of CPU job query arrays on error path drm/v3d: Release indirect CSD GEM reference on CPU job free

Menglong Dong (1):
tracing: fprobe: use ftrace if CONFIG_DYNAMIC_FTRACE_WITH_ARGS

Michael Bommarito (12):
smb: client: require net admin for CIFS SWN netlink
Bluetooth: L2CAP: ecred_reconfigure: send packed pdu, not stack pointer
Bluetooth: MGMT: validate Add Extended Advertising Data length
net: ifb: report ethtool stats over num_tx_queues
l2tp: use list_del_rcu in l2tp_session_unhash
ipv4: raw: reject IP_HDRINCL packets with ihl < 5
ixgbevf: fix use-after-free in VEPA multicast source pruning
wifi: mac80211: consume only present negotiated TTLM maps
KVM: arm64: vgic-its: Reject restored DTE with out-of-range num_eventid_bits
KVM: arm64: vgic: Free private_irqs when init fails after allocation
scsi: isci: Fix use-after-free in device removal path
RDMA/siw: Reject MPA FPDU length underflow before signed receive math

Michael Neuling (1):
riscv: errata: Fix bitwise vs logical AND in MIPS errata patching

Michal Wajdeczko (1):
drm/xe/vf: Fix signature of print functions

Mike Christie (1):
scsi: sd: Fix return code handling in sd_spinup_disk()

Mikko Perttunen (1):
drm/msm: Fix iommu_map_sgtable() return value check and avoid WARN

Ming Lei (2):
ublk: reject max_sectors smaller than PAGE_SECTORS in parameter validation
selftests: ublk: cap nthreads to kernel's actual nr_hw_queues

Mingyu Wang (1):
Bluetooth: hci_uart: fix UAFs and race conditions in close and init paths

Minh Nguyen (1):
vsock/vmci: fix UAF when peer resets connection during handshake

Miri Korenblit (1):
wifi: iwlwifi: mld: don't dereference a pointer before NULL checking it

Mohanram Meenakshisundaram (1):
drm/xe/pf: Fix CFI failure in debugfs access

Mohsin Bashir (1):
net: shaper: Reject reparenting of existing nodes

Muchun Song (2):
drivers/base/memory: fix memory block reference leak in poison accounting mm/memory_hotplug: fix memory block reference leak on remove

Myeonghun Pak (1):
net: lan966x: avoid unregistering netdev on register failure

Nan Li (1):
netfilter: ipset: stop hash:* range iteration at end

Nathan Chancellor (1):
drm/msm: Restore second parameter name in purge() and evict()

Nerijus Bendžiūnas (1):
net: phy: skip EEE advertisement write when autoneg is disabled

Nicolai Buchwitz (3):
net: bcmgenet: keep RBUF EEE/PM disabled
net: phy: honor eee_disabled_modes in phy_support_eee()
net: phy: honor eee_disabled_modes in phy_advertise_eee_all()

Nicolas Escande (2):
wifi: ath11k: fix error path leaks in some WMI WOW calls
wifi: ath11k: fix error path leak in ath11k_tm_cmd_wmi_ftm()

Nikhil P. Rao (3):
pds_core: fix error handling in pdsc_devcmd_wait
pds_core: fix debugfs_lookup dentry leak and error handling
pds_core: ensure null-termination for firmware version strings

Niklas Cassel (4):
ata: libata-scsi: improve readability of ata_scsi_qc_issue()
ata: libata-scsi: do not use the deferred QC feature for ATA_DEFER_PORT
ata: libata-scsi: do not use the deferred QC feature on PMPs with CBS
ata: libata-scsi: do not needlessly defer commands when using PMP with FBS

Nimrod Oren (1):
selftests: net: Fix checksums in xdp_native

Nitin Rawat (1):
phy: qcom-qmp-ufs: Fix kaanapali PHY PLL lock failure after SM8650 G4 fix

Oliver White (1):
platform/surface: aggregator_registry: omit battery & AC nodes on Surface Laptop 7

Osama Abdelkader (4):
riscv: kvm: return SBI_ERR_FAILURE for pmu_snapshot_set_shmem() when OOM
riscv: kvm: return SBI_ERR_FAILURE for pmu_event_info() when OOM drm/bridge: chipone-icn6211: use devm_drm_bridge_add in i2c probe drm/bridge: megachips: remove bridge when irq request fails

Peter Zijlstra (1):
sched: Employ sched_change guards

Petr Machata (1):
net: bridge: Flush multicast groups when snooping is disabled

Prathamesh Deshpande (1):
net/mlx5e: Fix eswitch mode block underflow on IPsec acquire SA

Qing Ming (1):
cgroup/rstat: validate cpu before css_rstat_cpu() access

Quan Sun (1):
net: ethtool: fix NULL pointer dereference in phy_reply_size

Rafael J. Wysocki (4):
platform/x86: adv_swbutton: Check ACPI_HANDLE() against NULL platform/x86: hp_accel: Check ACPI_COMPANION() against NULL platform/x86: intel-hid: Check ACPI_HANDLE() against NULL platform/x86: intel-vbtn: Check ACPI_HANDLE() against NULL

Ralf Lici (1):
ovpn: disable BHs when updating device stats

Ratheesh Kannoth (1):
octeontx2-af: npc: Fix allmulticast skip logic for LBK and SDP VFs

Ricardo Neri (1):
Documentation: intel_pstate: Fix description of asymmetric packing with SMT

Richard Fitzgerald (1):
ASoC: cs35l56: Fix flushing of IRQ work in cs35l56_sdw_remove()

Robertus Diawan Chris (2):
ALSA: scarlett2: Add missing error check when initialise Autogain Status
ASoC: soc-utils: Add missing va_end in snd_soc_ret()

Rosen Penev (2):
irqchip/ath79-cpu: Remove unused function
net: ag71xx: check error for platform_get_irq

Ruide Cao (1):
batman-adv: fix fragment reassembly length accounting

Ruijie Li (1):
batman-adv: clear current gateway during teardown

Sabrina Dubroca (1):
net: gro: don't merge zcopy skbs

Safa Karakuş (1):
Bluetooth: fix UAF in l2cap_sock_cleanup_listen() vs l2cap_conn_del()

Sam Daly (1):
octeontx2-af: CGX: add bounds check to cgx_speed_mbps index

Samuele Mariotti (1):
sched_ext: Fix missing warning in scx_set_task_state() default case

Sasha Levin (2):
Revert "ice: fix double-free of tx_buf skb" Revert "ice: Remove jumbo_remove step from TX path"

Sayali Patil (1):
powerpc/time: Remove redundant preempt_disable|enable() calls from arch_irq_work_raise()

SeongJae Park (1):
mm/damon/sysfs-schemes: call missing mem_cgroup_iter_break()

Sheroz Juraev (1):
wifi: iwlwifi: mld: stop TX during firmware restart

Shiraz Saleem (1):
RDMA/mana_ib: Report max_msg_sz in mana_ib_query_port

Shitalkumar Gandhi (2):
net: ti: icssm-prueth: fix eth_ports_node leak in probe
wifi: wilc1000: fix dma_buffer leak on bus acquire failure

Shuhao Fu (2):
ALSA: hda: cs35l56: Put ACPI device after setting companion
ALSA: hda: cs35l41: Put ACPI device on missing physical node

Shuicheng Lin (2):
drm/xe/gsc: Fix double-free of managed BO in error path drm/xe/oa: Fix exec_queue leak on width check in stream open

Stanimir Varbanov (3):
dt-bindings: soc: bcm: Add bcm2712 compatible
arm64: dts: broadcom: bcm2712: Add watchdog DT node
mfd: bcm2835-pm: Add support for BCM2712

Stefano Garzarella (2):
vsock/virtio: reset connection on receiving queue overflow vsock/virtio: fix zerocopy completion for multi-skb sends

Stephen Smalley (1):
lsm: hold cred_guard_mutex for lsm_set_self_attr()

Steven Rostedt (1):
ring-buffer: Fix reporting of missed events in iterator

Sudeep Holla (10):
firmware: arm_ffa: Check for NULL FF-A ID table while driver registration
firmware: arm_ffa: Skip free_pages on RX buffer alloc failure
firmware: arm_ffa: Fix per-vcpu self notifications handling in workqueue
firmware: arm_ffa: Unregister bus notifier on teardown for FF-A v1.0
firmware: arm_ffa: Bound PARTITION_INFO_GET_REGS copies
firmware: arm_ffa: Keep framework RX release under lock
firmware: arm_ffa: Validate framework notification message layout
firmware: arm_ffa: Align RxTx buffer size before mapping
firmware: arm_ffa: Snapshot notifier callbacks under lock
firmware: arm_ffa: Fix sched-recv callback partition lookup

Sungwoo Kim (1):
block: bio-integrity: Fix null-ptr-deref in bio_integrity_map_user()

Sven Eckelmann (21):
batman-adv: v: stop OGMv2 on disabled interface
batman-adv: tvlv: abort OGM send on tvlv append failure
batman-adv: tvlv: reject oversized TVLV packets
batman-adv: iv: recover OGM scheduling after forward packet error
batman-adv: mcast: fix use-after-free in orig_node RCU release
batman-adv: dat: handle forward allocation error
batman-adv: frag: disallow unicast fragment in fragment
batman-adv: bla: fix report_work leak on backbone_gw purge
batman-adv: bla: avoid double decrement of bla.num_requests
batman-adv: bla: avoid NULL-ptr deref for claim via dropped interface
batman-adv: tp_meter: avoid use of uninit sender vars
batman-adv: tp_meter: directly shut down timer on cleanup
batman-adv: tp_meter: fix tp_vars reference leak in receiver shutdown
batman-adv: tp_meter: fix race condition in send error reporting
batman-adv: tp_meter: avoid role confusion in tp_list
batman-adv: tt: fix TOCTOU race for reported vlans
batman-adv: tt: reject oversized local TVLV buffers
batman-adv: tt: avoid empty VLAN responses
batman-adv: tt: fix negative last_changeset_len
batman-adv: tt: fix negative tt_buff_len
batman-adv: tt: prevent TVLV entry number overflow

Sven Schuchmann (1):
net: phy: DP83TC811: add reading of abilities

Takashi Iwai (3):
ALSA: pcm: Don't setup bogus iov_iter for silencing
ALSA: asihpi: Fix potential OOB array access at reading cache
HID: uclogic: Fix regression of input name assignment

Tejun Heo (1):
sched_ext: Avoid UAF in scx_root_enable_workfn() init failure path

Thomas Zimmermann (5):
drm/vblank: Add vblank timer
drm/vblank: Add CRTC helpers for simple use cases drm/vkms: Convert to DRM's vblank timer
drm/atomic: Increase timeout in drm_atomic_helper_wait_for_vblanks() drm/vblank: Fix kernel docs for vblank timer

Tiezhu Yang (2):
LoongArch: kprobes: Use larch_insn_text_copy() to patch instructions
LoongArch: kprobes: Fix handling of fatal unrecoverable recursions

Til Kaiser (1):
pinctrl: qcom: ipq4019: mark gpio as a GPIO pin function

Tina Zhang (1):
KVM: SVM: Disable AVIC IPI virtualization on Hygon Family 18h (erratum #1235)

Viacheslav Dubeyko (1):
netfs: fix VM_BUG_ON_FOLIO() issue in netfs_write_begin() call

Viktor Jägersküpper (1):
kbuild: pacman-pkg: make "rc" releases adhere to pacman versioning scheme

Vladimir Murzin (1):
arm64: probes: Handle probes on hinted conditional branch instructions

Vladimir Yakovlev (1):
spi: spi-dw-dma: fix print error log when wait finish transaction

Wayne Chang (1):
phy: tegra: xusb: Fix per-pad high-speed termination calibration

Weiming Shi (1):
tap: fix stack info leak in tap_ioctl() SIOCGIFHWADDR

Xiang Mei (3):
bridge: mrp: reject zero test interval to avoid OOM panic net/smc: avoid NULL deref of conn->lnk in smc_msg_event tracepoint net/smc: reject CHID-0 ACCEPT that matches an empty ism_dev slot

Xianwei Zhao (1):
pinctrl: meson: amlogic-a4: fix deadlock issue

Xingwang Xiang (1):
bpf, skmsg: fix verdict sk_data_ready racing with ktls rx

Yizhou Zhao (1):
netfilter: nft_inner: Fix IPv6 inner_thoff desync

Zack McKevitt (1):
accel/qaic: Add overflow check to remap_pfn_range during mmap

Zhang Cen (1):
ALSA: seq: Serialize UMP output teardown with event_input

Zhengchuan Liang (1):
netfilter: ip6t_hbh: reject oversized option lists

Zhihao Cheng (2):
cifs: Fix busy dentry used after unmounting
nsfs: fix wrong error code returned for pidns ioctls

Zijing Yin (1):
phonet/pep: disable BH around forwarded sk_receive_skb()

Łukasz Lebiedziński (1):
phy: exynos5-usbdrd: fix USB 2.0 HS PHY tuning values for Exynos7870

author maintainer
#1 lore raw
Documentation/admin-guide/pm/intel_pstate.rst +6 -5
index 26e702c7016e..66287f8d645f 100644
@@ -348,11 +348,12 @@ HyperThreading (HT) in the context of Intel processors, is enabled on at least
 one core, ``intel_pstate`` assigns performance-based priorities to CPUs.  Namely,
 the priority of a given CPU reflects its highest HWP performance level which
 causes the CPU scheduler to generally prefer more performant CPUs, so the less
-performant CPUs are used when the other ones are fully loaded.  However, SMT
-siblings (that is, logical CPUs sharing one physical core) are treated in a
-special way such that if one of them is in use, the effective priority of the
-other ones is lowered below the priorities of the CPUs located in the other
-physical cores.
+performant CPUs are used when the other ones are fully loaded.  SMT siblings
+(that is, logical CPUs sharing one physical core) are given the same priority.
+The scheduler can pull tasks from lower-priority cores and place them on any
+sibling.  Since the scheduler spreads tasks among physical cores, tasks will be
+placed on the SMT siblings of physical cores only after all physical cores are
+busy.
 
 This approach maximizes performance in the majority of cases, but unfortunately
 it also leads to excessive energy usage in some important scenarios, like video
Documentation/crypto/krb5.rst +13 -4
index beffa0133446..f62e07ac6811 100644
@@ -158,13 +158,22 @@ returned.
 When a message has been received, the location and size of the data with the
 message can be determined by calling::
 
-	void crypto_krb5_where_is_the_data(const struct krb5_enctype *krb5,
-					   enum krb5_crypto_mode mode,
-					   size_t *_offset, size_t *_len);
+	int crypto_krb5_where_is_the_data(const struct krb5_enctype *krb5,
+					  enum krb5_crypto_mode mode,
+					  size_t *_offset, size_t *_len);
 
 The caller provides the offset and length of the message to the function, which
 then alters those values to indicate the region containing the data (plus any
-padding).  It is up to the caller to determine how much padding there is.
+padding).  It is up to the caller to determine how much padding there is.  The
+function returns an error if the length is too small or if the mode is
+unsupported.  An additional function::
+
+	int crypto_krb5_check_data_len(const struct krb5_enctype *krb5,
+				       enum krb5_crypto_mode mode,
+				       size_t len, size_t min_content);
+
+is provided to just do a basic check that the decrypted/verified message would
+have a sufficient minimum payload.
 
 Preparation Functions
 ---------------------
Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.yaml +32 -6
index e28ef198a801..039c8e4a4c51 100644
@@ -13,23 +13,21 @@ description: |
 maintainers:
   - Nicolas Saenz Julienne <[email protected]>
 
-allOf:
-  - $ref: /schemas/watchdog/watchdog.yaml#
-
 properties:
   compatible:
     items:
       - enum:
           - brcm,bcm2835-pm
           - brcm,bcm2711-pm
+          - brcm,bcm2712-pm
       - const: brcm,bcm2835-pm-wdt
 
   reg:
-    minItems: 2
+    minItems: 1
     maxItems: 3
 
   reg-names:
-    minItems: 2
+    minItems: 1
     items:
       - const: pm
       - const: asb
@@ -62,7 +60,35 @@ required:
   - reg
   - "#power-domain-cells"
   - "#reset-cells"
-  - clocks
+
+allOf:
+  - $ref: /schemas/watchdog/watchdog.yaml#
+
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - brcm,bcm2835-pm
+              - brcm,bcm2711-pm
+    then:
+      required:
+        - clocks
+
+      properties:
+        reg:
+          minItems: 2
+
+        reg-names:
+          minItems: 2
+
+    else:
+      properties:
+        reg:
+          maxItems: 1
+
+        reg-names:
+          maxItems: 1
 
 additionalProperties: false
 
Documentation/gpu/drm-kms-helpers.rst +12 -0
index 5139705089f2..781129f78b06 100644
@@ -92,6 +92,18 @@ GEM Atomic Helper Reference
 .. kernel-doc:: drivers/gpu/drm/drm_gem_atomic_helper.c
    :export:
 
+VBLANK Helper Reference
+-----------------------
+
+.. kernel-doc:: drivers/gpu/drm/drm_vblank_helper.c
+   :doc: overview
+
+.. kernel-doc:: include/drm/drm_vblank_helper.h
+   :internal:
+
+.. kernel-doc:: drivers/gpu/drm/drm_vblank_helper.c
+   :export:
+
 Simple KMS Helper Reference
 ===========================
 
Makefile +1 -1
index dc63a98489a5..5087bd6183dd 100644
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0
 VERSION = 6
 PATCHLEVEL = 18
-SUBLEVEL = 33
+SUBLEVEL = 34
 EXTRAVERSION =
 NAME = Baby Opossum Posse
 
arch/alpha/include/asm/Kbuild +1 -0
index 483965c5a4de..b154b4e3dfa8 100644
@@ -5,4 +5,5 @@ generic-y += agp.h
 generic-y += asm-offsets.h
 generic-y += kvm_para.h
 generic-y += mcs_spinlock.h
+generic-y += ring_buffer.h
 generic-y += text-patching.h
arch/arc/include/asm/Kbuild +1 -0
index 4c69522e0328..483caacc6988 100644
@@ -5,5 +5,6 @@ generic-y += extable.h
 generic-y += kvm_para.h
 generic-y += mcs_spinlock.h
 generic-y += parport.h
+generic-y += ring_buffer.h
 generic-y += user.h
 generic-y += text-patching.h
arch/arm/boot/dts/renesas/r7s72100-genmai.dts +0 -3
index 3c3756509714..da552a66615e 100644
@@ -34,9 +34,6 @@ flash@18000000 {
 		clocks = <&mstp9_clks R7S72100_CLK_SPIBSC0>;
 		power-domains = <&cpg_clocks>;
 
-		#address-cells = <1>;
-		#size-cells = <1>;
-
 		partitions {
 			compatible = "fixed-partitions";
 			#address-cells = <1>;
arch/arm/boot/dts/renesas/r7s72100-rskrza1.dts +0 -2
index 91178fb9e721..3306bc9b7bc3 100644
@@ -36,8 +36,6 @@ flash@18000000 {
 		power-domains = <&cpg_clocks>;
 		bank-width = <4>;
 		device-width = <1>;
-		#address-cells = <1>;
-		#size-cells = <1>;
 
 		partitions {
 			compatible = "fixed-partitions";
arch/arm/include/asm/Kbuild +1 -0
index 03657ff8fbe3..decad5f2c826 100644
@@ -3,6 +3,7 @@ generic-y += early_ioremap.h
 generic-y += extable.h
 generic-y += flat.h
 generic-y += parport.h
+generic-y += ring_buffer.h
 
 generated-y += mach-types.h
 generated-y += unistd-nr.h
arch/arm/mach-versatile/integrator_cp.c +4 -9
index 2ed4ded56b3f..03dfb5f720b7 100644
@@ -86,14 +86,6 @@ static u64 notrace intcp_read_sched_clock(void)
 	return val;
 }
 
-static void __init intcp_init_early(void)
-{
-	cm_map = syscon_regmap_lookup_by_compatible("arm,core-module-integrator");
-	if (IS_ERR(cm_map))
-		return;
-	sched_clock_register(intcp_read_sched_clock, 32, 24000000);
-}
-
 static void __init intcp_init_irq_of(void)
 {
 	cm_init();
@@ -119,6 +111,10 @@ static void __init intcp_init_of(void)
 {
 	struct device_node *cpcon;
 
+	cm_map = syscon_regmap_lookup_by_compatible("arm,core-module-integrator");
+	if (!IS_ERR(cm_map))
+		sched_clock_register(intcp_read_sched_clock, 32, 24000000);
+
 	cpcon = of_find_matching_node(NULL, intcp_syscon_match);
 	if (!cpcon)
 		return;
@@ -138,7 +134,6 @@ static const char * intcp_dt_board_compat[] = {
 DT_MACHINE_START(INTEGRATOR_CP_DT, "ARM Integrator/CP (Device Tree)")
 	.reserve	= integrator_reserve,
 	.map_io		= intcp_map_io,
-	.init_early	= intcp_init_early,
 	.init_irq	= intcp_init_irq_of,
 	.init_machine	= intcp_init_of,
 	.dt_compat      = intcp_dt_board_compat,
arch/arm64/boot/dts/broadcom/bcm2712.dtsi +9 -0
index 205b87f557d6..d771694787b2 100644
@@ -250,6 +250,15 @@ uart10: serial@7d001000 {
 			status = "disabled";
 		};
 
+		pm: watchdog@7d200000 {
+			compatible = "brcm,bcm2712-pm", "brcm,bcm2835-pm-wdt";
+			reg = <0x7d200000 0x604>;
+			reg-names = "pm";
+			#power-domain-cells = <1>;
+			#reset-cells = <1>;
+			system-power-controller;
+		};
+
 		pinctrl: pinctrl@7d504100 {
 			compatible = "brcm,bcm2712c0-pinctrl";
 			reg = <0x7d504100 0x30>;
arch/arm64/include/asm/insn.h +1 -1
index 18c7811774d3..032cd7b76b48 100644
@@ -409,7 +409,7 @@ __AARCH64_INSN_FUNCS(cbz,	0x7F000000, 0x34000000)
 __AARCH64_INSN_FUNCS(cbnz,	0x7F000000, 0x35000000)
 __AARCH64_INSN_FUNCS(tbz,	0x7F000000, 0x36000000)
 __AARCH64_INSN_FUNCS(tbnz,	0x7F000000, 0x37000000)
-__AARCH64_INSN_FUNCS(bcond,	0xFF000010, 0x54000000)
+__AARCH64_INSN_FUNCS(bcond,	0xFF000000, 0x54000000)
 __AARCH64_INSN_FUNCS(svc,	0xFFE0001F, 0xD4000001)
 __AARCH64_INSN_FUNCS(hvc,	0xFFE0001F, 0xD4000002)
 __AARCH64_INSN_FUNCS(smc,	0xFFE0001F, 0xD4000003)
arch/arm64/include/asm/page.h +1 -1
index 258cca4b4873..5062d8725fda 100644
@@ -33,7 +33,7 @@ struct folio *vma_alloc_zeroed_movable_folio(struct vm_area_struct *vma,
 						unsigned long vaddr);
 #define vma_alloc_zeroed_movable_folio vma_alloc_zeroed_movable_folio
 
-bool tag_clear_highpages(struct page *to, int numpages);
+bool tag_clear_highpages(struct page *to, int numpages, bool clear_pages);
 #define __HAVE_ARCH_TAG_CLEAR_HIGHPAGES
 
 #define clear_user_page(page, vaddr, pg)	clear_page(page)
arch/arm64/include/asm/ring_buffer.h new file +10 -0
new file mode 100644
index 000000000000..62316c406888
@@ -0,0 +1,10 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef _ASM_ARM64_RING_BUFFER_H
+#define _ASM_ARM64_RING_BUFFER_H
+
+#include <asm/cacheflush.h>
+
+/* Flush D-cache on persistent ring buffer */
+#define arch_ring_buffer_flush_range(start, end)	dcache_clean_pop(start, end)
+
+#endif /* _ASM_ARM64_RING_BUFFER_H */
arch/arm64/kvm/arm.c +3 -1
index afc77977d4b9..e59cb36b5f36 100644
@@ -490,8 +490,10 @@ int kvm_arch_vcpu_create(struct kvm_vcpu *vcpu)
 	kvm_destroy_mpidr_data(vcpu->kvm);
 
 	err = kvm_vgic_vcpu_init(vcpu);
-	if (err)
+	if (err) {
+		kvm_vgic_vcpu_destroy(vcpu);
 		return err;
+	}
 
 	err = kvm_share_hyp(vcpu, vcpu + 1);
 	if (err)
arch/arm64/kvm/vgic/vgic-its.c +4 -0
index 3f1c4b10fed9..a4c0fb7f02ea 100644
@@ -2307,6 +2307,10 @@ static int vgic_its_restore_dte(struct vgic_its *its, u32 id,
 	/* dte entry is valid */
 	offset = (entry & KVM_ITS_DTE_NEXT_MASK) >> KVM_ITS_DTE_NEXT_SHIFT;
 
+	/* Mimic the MAPD behaviour and reject invalid EID bits. */
+	if (num_eventid_bits > VITS_TYPER_IDBITS)
+		return -EINVAL;
+
 	if (!vgic_its_check_id(its, baser, id, NULL))
 		return -EINVAL;
 
arch/arm64/mm/fault.c +7 -4
index a193b6a5d1e6..4c62082b9a3b 100644
@@ -967,7 +967,7 @@ struct folio *vma_alloc_zeroed_movable_folio(struct vm_area_struct *vma,
 	return vma_alloc_folio(flags, 0, vma, vaddr);
 }
 
-bool tag_clear_highpages(struct page *page, int numpages)
+bool tag_clear_highpages(struct page *page, int numpages, bool clear_pages)
 {
 	/*
 	 * Check if MTE is supported and fall back to clear_highpage().
@@ -975,13 +975,16 @@ bool tag_clear_highpages(struct page *page, int numpages)
 	 * post_alloc_hook() will invoke tag_clear_highpages().
 	 */
 	if (!system_supports_mte())
-		return false;
+		return clear_pages;
 
 	/* Newly allocated pages, shouldn't have been tagged yet */
 	for (int i = 0; i < numpages; i++, page++) {
 		WARN_ON_ONCE(!try_page_mte_tagging(page));
-		mte_zero_clear_page_tags(page_address(page));
+		if (clear_pages)
+			mte_zero_clear_page_tags(page_address(page));
+		else
+			mte_clear_page_tags(page_address(page));
 		set_page_mte_tagged(page);
 	}
-	return true;
+	return false;
 }
arch/csky/include/asm/Kbuild +1 -0
index 3a5c7f6e5aac..7dca0c6cdc84 100644
@@ -9,6 +9,7 @@ generic-y += qrwlock.h
 generic-y += qrwlock_types.h
 generic-y += qspinlock.h
 generic-y += parport.h
+generic-y += ring_buffer.h
 generic-y += user.h
 generic-y += vmlinux.lds.h
 generic-y += text-patching.h
arch/hexagon/include/asm/Kbuild +1 -0
index 1efa1e993d4b..0f887d4238ed 100644
@@ -5,4 +5,5 @@ generic-y += extable.h
 generic-y += iomap.h
 generic-y += kvm_para.h
 generic-y += mcs_spinlock.h
+generic-y += ring_buffer.h
 generic-y += text-patching.h
arch/loongarch/include/asm/Kbuild +1 -0
index b04d2cef935f..bdd9f0aa8f71 100644
@@ -9,5 +9,6 @@ generic-y += qrwlock.h
 generic-y += user.h
 generic-y += ioctl.h
 generic-y += mmzone.h
+generic-y += ring_buffer.h
 generic-y += statfs.h
 generic-y += text-patching.h
arch/loongarch/kernel/kprobes.c +8 -6
index 8ba391cfabb0..1985ed30dd16 100644
@@ -60,16 +60,18 @@ NOKPROBE_SYMBOL(arch_prepare_kprobe);
 /* Install breakpoint in text */
 void arch_arm_kprobe(struct kprobe *p)
 {
-	*p->addr = KPROBE_BP_INSN;
-	flush_insn_slot(p);
+	u32 insn = KPROBE_BP_INSN;
+
+	larch_insn_text_copy(p->addr, &insn, LOONGARCH_INSN_SIZE);
 }
 NOKPROBE_SYMBOL(arch_arm_kprobe);
 
 /* Remove breakpoint from text */
 void arch_disarm_kprobe(struct kprobe *p)
 {
-	*p->addr = p->opcode;
-	flush_insn_slot(p);
+	u32 insn = p->opcode;
+
+	larch_insn_text_copy(p->addr, &insn, LOONGARCH_INSN_SIZE);
 }
 NOKPROBE_SYMBOL(arch_disarm_kprobe);
 
@@ -184,16 +186,16 @@ static bool reenter_kprobe(struct kprobe *p, struct pt_regs *regs,
 			   struct kprobe_ctlblk *kcb)
 {
 	switch (kcb->kprobe_status) {
-	case KPROBE_HIT_SS:
 	case KPROBE_HIT_SSDONE:
 	case KPROBE_HIT_ACTIVE:
 		kprobes_inc_nmissed_count(p);
 		setup_singlestep(p, regs, kcb, 1);
 		break;
+	case KPROBE_HIT_SS:
 	case KPROBE_REENTER:
 		pr_warn("Failed to recover from reentered kprobes.\n");
 		dump_kprobe(p);
-		WARN_ON_ONCE(1);
+		BUG();
 		break;
 	default:
 		WARN_ON(1);
arch/loongarch/mm/init.c +0 -4
index 6bfd4b8dad1b..900ce1da75a4 100644
@@ -97,11 +97,7 @@ void arch_remove_memory(u64 start, u64 size, struct vmem_altmap *altmap)
 {
 	unsigned long start_pfn = start >> PAGE_SHIFT;
 	unsigned long nr_pages = size >> PAGE_SHIFT;
-	struct page *page = pfn_to_page(start_pfn);
 
-	/* With altmap the first mapped page is offset from @start */
-	if (altmap)
-		page += vmem_altmap_offset(altmap);
 	__remove_pages(start_pfn, nr_pages, altmap);
 }
 #endif
arch/m68k/include/asm/Kbuild +1 -0
index b282e0dd8dc1..62543bf305ff 100644
@@ -3,5 +3,6 @@ generated-y += syscall_table.h
 generic-y += extable.h
 generic-y += kvm_para.h
 generic-y += mcs_spinlock.h
+generic-y += ring_buffer.h
 generic-y += spinlock.h
 generic-y += text-patching.h
arch/microblaze/include/asm/Kbuild +1 -0
index 7178f990e8b3..0030309b47ad 100644
@@ -5,6 +5,7 @@ generic-y += extable.h
 generic-y += kvm_para.h
 generic-y += mcs_spinlock.h
 generic-y += parport.h
+generic-y += ring_buffer.h
 generic-y += syscalls.h
 generic-y += tlb.h
 generic-y += user.h
arch/mips/include/asm/Kbuild +1 -0
index 684569b2ecd6..9771c3d85074 100644
@@ -12,5 +12,6 @@ generic-y += mcs_spinlock.h
 generic-y += parport.h
 generic-y += qrwlock.h
 generic-y += qspinlock.h
+generic-y += ring_buffer.h
 generic-y += user.h
 generic-y += text-patching.h
arch/nios2/include/asm/Kbuild +1 -0
index 28004301c236..0a2530964413 100644
@@ -5,6 +5,7 @@ generic-y += cmpxchg.h
 generic-y += extable.h
 generic-y += kvm_para.h
 generic-y += mcs_spinlock.h
+generic-y += ring_buffer.h
 generic-y += spinlock.h
 generic-y += user.h
 generic-y += text-patching.h
arch/openrisc/include/asm/Kbuild +1 -0
index cef49d60d74c..8aa34621702d 100644
@@ -8,4 +8,5 @@ generic-y += spinlock_types.h
 generic-y += spinlock.h
 generic-y += qrwlock_types.h
 generic-y += qrwlock.h
+generic-y += ring_buffer.h
 generic-y += user.h
arch/parisc/include/asm/Kbuild +1 -0
index 4fb596d94c89..d48d158f7241 100644
@@ -4,4 +4,5 @@ generated-y += syscall_table_64.h
 generic-y += agp.h
 generic-y += kvm_para.h
 generic-y += mcs_spinlock.h
+generic-y += ring_buffer.h
 generic-y += user.h
arch/powerpc/Kconfig.debug +1 -2
index f15e5920080b..e8718bc13eeb 100644
@@ -83,11 +83,10 @@ config MSI_BITMAP_SELFTEST
 	depends on DEBUG_KERNEL
 
 config GUEST_STATE_BUFFER_TEST
-	def_tristate n
+	def_tristate KUNIT_ALL_TESTS
 	prompt "Enable Guest State Buffer unit tests"
 	depends on KUNIT
 	depends on KVM_BOOK3S_HV_POSSIBLE
-	default KUNIT_ALL_TESTS
 	help
 	  The Guest State Buffer is a data format specified in the PAPR.
 	  It is by hcalls to communicate the state of L2 guests between
arch/powerpc/include/asm/Kbuild +1 -0
index 2e23533b67e3..805b5aeebb6f 100644
@@ -5,4 +5,5 @@ generated-y += syscall_table_spu.h
 generic-y += agp.h
 generic-y += mcs_spinlock.h
 generic-y += qrwlock.h
+generic-y += ring_buffer.h
 generic-y += early_ioremap.h
arch/powerpc/kernel/time.c +4 -2
index 4bbeb8644d3d..b4472288e0d4 100644
@@ -458,6 +458,10 @@ DEFINE_PER_CPU(u8, irq_work_pending);
 
 #endif /* 32 vs 64 bit */
 
+/*
+ * Must be called with preemption disabled since it updates
+ * per-CPU irq_work state and programs the local CPU decrementer.
+ */
 void arch_irq_work_raise(void)
 {
 	/*
@@ -471,10 +475,8 @@ void arch_irq_work_raise(void)
 	 * which could get tangled up if we're messing with the same state
 	 * here.
 	 */
-	preempt_disable();
 	set_irq_work_pending_flag();
 	set_dec(1);
-	preempt_enable();
 }
 
 static void set_dec_or_work(u64 val)
arch/powerpc/platforms/82xx/km82xx.c +2 -2
index 99f0f0f41876..4ad223525e89 100644
@@ -27,8 +27,8 @@
 
 static void __init km82xx_pic_init(void)
 {
-	struct device_node *np __free(device_node);
-	np = of_find_compatible_node(NULL, NULL, "fsl,pq2-pic");
+	struct device_node *np __free(device_node) = of_find_compatible_node(NULL,
+		NULL, "fsl,pq2-pic");
 
 	if (!np) {
 		pr_err("PIC init: can not find cpm-pic node\n");
arch/riscv/errata/mips/errata.c +1 -1
index e984a8152208..2c3dc2259e93 100644
@@ -57,7 +57,7 @@ void mips_errata_patch_func(struct alt_entry *begin, struct alt_entry *end,
 		}
 
 		tmp = (1U << alt->patch_id);
-		if (cpu_req_errata && tmp) {
+		if (cpu_req_errata & tmp) {
 			mutex_lock(&text_mutex);
 			patch_text_nosync(ALT_OLD_PTR(alt), ALT_ALT_PTR(alt),
 					  alt->alt_len);
arch/riscv/include/asm/Kbuild +1 -0
index bd5fc9403295..7721b63642f4 100644
@@ -14,5 +14,6 @@ generic-y += ticket_spinlock.h
 generic-y += qrwlock.h
 generic-y += qrwlock_types.h
 generic-y += qspinlock.h
+generic-y += ring_buffer.h
 generic-y += user.h
 generic-y += vmlinux.lds.h
arch/riscv/kvm/vcpu_pmu.c +8 -4
index a2fae70ee174..ef55089c0c1a 100644
@@ -431,8 +431,10 @@ int kvm_riscv_vcpu_pmu_snapshot_set_shmem(struct kvm_vcpu *vcpu, unsigned long s
 	}
 
 	kvpmu->sdata = kzalloc(snapshot_area_size, GFP_ATOMIC);
-	if (!kvpmu->sdata)
-		return -ENOMEM;
+	if (!kvpmu->sdata) {
+		sbiret = SBI_ERR_FAILURE;
+		goto out;
+	}
 
 	/* No need to check writable slot explicitly as kvm_vcpu_write_guest does it internally */
 	if (kvm_vcpu_write_guest(vcpu, saddr, kvpmu->sdata, snapshot_area_size)) {
@@ -476,8 +478,10 @@ int kvm_riscv_vcpu_pmu_event_info(struct kvm_vcpu *vcpu, unsigned long saddr_low
 	}
 
 	einfo = kzalloc(shmem_size, GFP_KERNEL);
-	if (!einfo)
-		return -ENOMEM;
+	if (!einfo) {
+		ret = SBI_ERR_FAILURE;
+		goto out;
+	}
 
 	ret = kvm_vcpu_read_guest(vcpu, shmem, einfo, shmem_size);
 	if (ret) {
arch/riscv/mm/init.c +25 -0
index d85efe74a4b6..ee40ca01ac66 100644
@@ -852,6 +852,27 @@ static void __init set_mmap_rnd_bits_max(void)
 	mmap_rnd_bits_max = MMAP_VA_BITS - PAGE_SHIFT - 3;
 }
 
+static bool __init is_vaddr_valid(unsigned long va)
+{
+	unsigned long up = 0;
+
+	switch (satp_mode) {
+	case SATP_MODE_39:
+		up = 1UL << 38;
+		break;
+	case SATP_MODE_48:
+		up = 1UL << 47;
+		break;
+	case SATP_MODE_57:
+		up = 1UL << 56;
+		break;
+	default:
+		return false;
+	}
+
+	return (va < up) || (va >= (ULONG_MAX - up + 1));
+}
+
 /*
  * There is a simple way to determine if 4-level is supported by the
  * underlying hardware: establish 1:1 mapping in 4-level page table mode
@@ -893,6 +914,9 @@ static __init void set_satp_mode(uintptr_t dtb_pa)
 			   set_satp_mode_pmd + PMD_SIZE,
 			   PMD_SIZE, PAGE_KERNEL_EXEC);
 retry:
+	if (!is_vaddr_valid(set_satp_mode_pmd))
+		goto out;
+
 	create_pgd_mapping(early_pg_dir,
 			   set_satp_mode_pmd,
 			   pgtable_l5_enabled ?
@@ -915,6 +939,7 @@ static __init void set_satp_mode(uintptr_t dtb_pa)
 		disable_pgtable_l4();
 	}
 
+out:
 	memset(early_pg_dir, 0, PAGE_SIZE);
 	memset(early_p4d, 0, PAGE_SIZE);
 	memset(early_pud, 0, PAGE_SIZE);
arch/s390/include/asm/Kbuild +1 -0
index 297bf7157968..2b367fa4de8e 100644
@@ -8,3 +8,4 @@ generic-y += asm-offsets.h
 generic-y += kvm_types.h
 generic-y += mcs_spinlock.h
 generic-y += mmzone.h
+generic-y += ring_buffer.h
arch/sh/include/asm/Kbuild +1 -0
index 4d3f10ed8275..f0403d3ee8ab 100644
@@ -3,4 +3,5 @@ generated-y += syscall_table.h
 generic-y += kvm_para.h
 generic-y += mcs_spinlock.h
 generic-y += parport.h
+generic-y += ring_buffer.h
 generic-y += text-patching.h
arch/sparc/include/asm/Kbuild +1 -0
index 17ee8a273aa6..49c6bb326b75 100644
@@ -4,4 +4,5 @@ generated-y += syscall_table_64.h
 generic-y += agp.h
 generic-y += kvm_para.h
 generic-y += mcs_spinlock.h
+generic-y += ring_buffer.h
 generic-y += text-patching.h
arch/um/include/asm/Kbuild +1 -0
index b6810db24ca4..9be3ee2e3701 100644
@@ -18,6 +18,7 @@ generic-y += module.lds.h
 generic-y += parport.h
 generic-y += percpu.h
 generic-y += preempt.h
+generic-y += ring_buffer.h
 generic-y += runtime-const.h
 generic-y += softirq_stack.h
 generic-y += switch_to.h
arch/x86/include/asm/Kbuild +1 -0
index 4566000e15c4..078fd2c0d69d 100644
@@ -14,3 +14,4 @@ generic-y += early_ioremap.h
 generic-y += fprobe.h
 generic-y += mcs_spinlock.h
 generic-y += mmzone.h
+generic-y += ring_buffer.h
arch/x86/kernel/cpu/mce/core.c +5 -28
index 460e90a1a0b1..c8b112c6c549 100644
@@ -89,7 +89,6 @@ struct mca_config mca_cfg __read_mostly = {
 };
 
 static DEFINE_PER_CPU(struct mce_hw_err, hw_errs_seen);
-static unsigned long mce_need_notify;
 
 /*
  * MCA banks polled by the period polling timer for corrected events.
@@ -151,8 +150,10 @@ EXPORT_PER_CPU_SYMBOL_GPL(injectm);
 
 void mce_log(struct mce_hw_err *err)
 {
-	if (mce_gen_pool_add(err))
+	if (mce_gen_pool_add(err)) {
+		pr_info(HW_ERR "Machine check events logged\n");
 		irq_work_queue(&mce_irq_work);
+	}
 }
 EXPORT_SYMBOL_GPL(mce_log);
 
@@ -584,28 +585,6 @@ bool mce_is_correctable(struct mce *m)
 }
 EXPORT_SYMBOL_GPL(mce_is_correctable);
 
-/*
- * Notify the user(s) about new machine check events.
- * Can be called from interrupt context, but not from machine check/NMI
- * context.
- */
-static bool mce_notify_irq(void)
-{
-	/* Not more than two messages every minute */
-	static DEFINE_RATELIMIT_STATE(ratelimit, 60*HZ, 2);
-
-	if (test_and_clear_bit(0, &mce_need_notify)) {
-		mce_work_trigger();
-
-		if (__ratelimit(&ratelimit))
-			pr_info(HW_ERR "Machine check events logged\n");
-
-		return true;
-	}
-
-	return false;
-}
-
 static int mce_early_notifier(struct notifier_block *nb, unsigned long val,
 			      void *data)
 {
@@ -617,9 +596,7 @@ static int mce_early_notifier(struct notifier_block *nb, unsigned long val,
 	/* Emit the trace record: */
 	trace_mce_record(err);
 
-	set_bit(0, &mce_need_notify);
-
-	mce_notify_irq();
+	mce_work_trigger();
 
 	return NOTIFY_DONE;
 }
@@ -1771,7 +1748,7 @@ static void mce_timer_fn(struct timer_list *t)
 	 * Alert userspace if needed. If we logged an MCE, reduce the polling
 	 * interval, otherwise increase the polling interval.
 	 */
-	if (mce_notify_irq())
+	if (!mce_gen_pool_empty())
 		iv = max(iv / 2, (unsigned long) HZ/100);
 	else
 		iv = min(iv * 2, round_jiffies_relative(check_interval * HZ));
arch/x86/kvm/svm/avic.c +7 -5
index ba6e9485e824..ba844088581f 100644
@@ -1252,12 +1252,14 @@ bool __init avic_hardware_setup(void)
 		svm_x86_ops.allow_apicv_in_x2apic_without_x2apic_virtualization = true;
 
 	/*
-	 * Disable IPI virtualization for AMD Family 17h CPUs (Zen1 and Zen2)
-	 * due to erratum 1235, which results in missed VM-Exits on the sender
-	 * and thus missed wake events for blocking vCPUs due to the CPU
-	 * failing to see a software update to clear IsRunning.
+	 * Disable IPI virtualization for AMD Family 17h (Zen1 and Zen2) and
+	 * Hygon Family 18h (derived from AMD Zen1) CPUs due to erratum 1235,
+	 * which results in missed VM-Exits on the sender and thus missed wake
+	 * events for blocking vCPUs due to the CPU failing to see a software
+	 * update to clear IsRunning.
 	 */
-	enable_ipiv = enable_ipiv && boot_cpu_data.x86 != 0x17;
+	if (boot_cpu_data.x86 == 0x17 || boot_cpu_data.x86 == 0x18)
+		enable_ipiv = false;
 
 	amd_iommu_register_ga_log_notifier(&avic_ga_log_notifier);
 
arch/x86/xen/setup.c +1 -1
index 3823e52aef52..6260f65a78c5 100644
@@ -655,7 +655,7 @@ static void __init xen_e820_swap_entry_with_ram(struct e820_entry *swap_entry)
 			/* Fill new entry (keep size and page offset). */
 			entry->type = swap_entry->type;
 			entry->addr = entry_end - swap_size +
-				      swap_addr - swap_entry->addr;
+				      swap_entry->addr - swap_addr;
 			entry->size = swap_entry->size;
 
 			/* Convert old entry to RAM, align to pages. */
arch/xtensa/include/asm/Kbuild +1 -0
index 13fe45dea296..e57af619263a 100644
@@ -6,5 +6,6 @@ generic-y += mcs_spinlock.h
 generic-y += parport.h
 generic-y += qrwlock.h
 generic-y += qspinlock.h
+generic-y += ring_buffer.h
 generic-y += user.h
 generic-y += text-patching.h
block/bio-integrity.c +18 -1
index 12d887349c26..46c59ed92bd1 100644
@@ -205,7 +205,6 @@ static int bio_integrity_copy_user(struct bio *bio, struct bio_vec *bvec,
 	}
 
 	bip->bip_flags |= BIP_COPY_USER;
-	bip->bip_vcnt = nr_vecs;
 	return 0;
 free_bip:
 	bio_integrity_free(bio);
@@ -300,6 +299,24 @@ int bio_integrity_map_user(struct bio *bio, struct iov_iter *iter)
 	if (unlikely(ret < 0))
 		goto free_bvec;
 
+	/*
+	 * Handle partial pinning. This can happen when pin_user_pages_fast()
+	 * returns fewer pages than requested.
+	 */
+	if (user_backed_iter(iter) && unlikely(ret != bytes)) {
+		if (ret > 0) {
+			int npinned = DIV_ROUND_UP(offset + ret, PAGE_SIZE);
+			int i;
+
+			for (i = 0; i < npinned; i++)
+				unpin_user_page(pages[i]);
+		}
+		if (pages != stack_pages)
+			kvfree(pages);
+		ret = -EFAULT;
+		goto free_bvec;
+	}
+
 	nr_bvecs = bvec_from_pages(bvec, pages, nr_vecs, bytes, offset,
 				   &is_p2p);
 	if (pages != stack_pages)
block/blk-cgroup.c +1 -1
index 9a8d047be580..f1ea69743c54 100644
@@ -2241,7 +2241,7 @@ void blk_cgroup_bio_start(struct bio *bio)
 	}
 
 	u64_stats_update_end_irqrestore(&bis->sync, flags);
-	css_rstat_updated(&blkcg->css, cpu);
+	__css_rstat_updated(&blkcg->css, cpu);
 	put_cpu();
 }
 
block/blk-mq.c +19 -0
index 4ebb92014eae..ab05c5c9e6ae 100644
@@ -3285,6 +3285,25 @@ blk_status_t blk_insert_cloned_request(struct request *rq)
 		return BLK_STS_IOERR;
 	}
 
+	/*
+	 * Integrity segment counting depends on the same queue limits
+	 * (virt_boundary_mask, seg_boundary_mask, max_segment_size) that
+	 * vary across stacked queues, so recompute against the bottom
+	 * queue just like nr_phys_segments above.
+	 */
+	if (blk_integrity_rq(rq) && rq->bio) {
+		unsigned short max_int_segs = queue_max_integrity_segments(q);
+
+		rq->nr_integrity_segments =
+			blk_rq_count_integrity_sg(rq->q, rq->bio);
+		if (rq->nr_integrity_segments > max_int_segs) {
+			printk(KERN_ERR "%s: over max integrity segments limit. (%u > %u)\n",
+				__func__, rq->nr_integrity_segments,
+				max_int_segs);
+			return BLK_STS_IOERR;
+		}
+	}
+
 	if (q->disk && should_fail_request(q->disk->part0, blk_rq_bytes(rq)))
 		return BLK_STS_IOERR;
 
crypto/krb5/krb5_api.c +48 -6

75 lines not on this page · raw message

drivers/accel/qaic/qaic_data.c +21 -2
index c4f117edb266..3335c92b0d7d 100644
@@ -605,8 +605,11 @@ static const struct vm_operations_struct drm_vm_ops = {
 static int qaic_gem_object_mmap(struct drm_gem_object *obj, struct vm_area_struct *vma)
 {
 	struct qaic_bo *bo = to_qaic_bo(obj);
+	unsigned long remap_start;
 	unsigned long offset = 0;
+	unsigned long remap_end;
 	struct scatterlist *sg;
+	unsigned long length;
 	int ret = 0;
 
 	if (drm_gem_is_imported(obj))
@@ -614,11 +617,27 @@ static int qaic_gem_object_mmap(struct drm_gem_object *obj, struct vm_area_struc
 
 	for (sg = bo->sgt->sgl; sg; sg = sg_next(sg)) {
 		if (sg_page(sg)) {
+			/* if sg is too large for the VMA, so truncate it to fit */
+			if (check_add_overflow(vma->vm_start, offset, &remap_start))
+				return -EINVAL;
+			if (check_add_overflow(remap_start, sg->length, &remap_end))
+				return -EINVAL;
+
+			if (remap_end > vma->vm_end) {
+				if (check_sub_overflow(vma->vm_end, remap_start, &length))
+					return -EINVAL;
+			} else {
+				length = sg->length;
+			}
+
+			if (length == 0)
+				goto out;
+
 			ret = remap_pfn_range(vma, vma->vm_start + offset, page_to_pfn(sg_page(sg)),
-					      sg->length, vma->vm_page_prot);
+					      length, vma->vm_page_prot);
 			if (ret)
 				goto out;
-			offset += sg->length;
+			offset += length;
 		}
 	}
 
drivers/ata/libata-core.c +6 -3
index 4fb8990d22d5..5ee4adc62342 100644
@@ -5499,6 +5499,7 @@ void ata_link_init(struct ata_port *ap, struct ata_link *link, int pmp)
 	link->pmp = pmp;
 	link->active_tag = ATA_TAG_POISON;
 	link->hw_sata_spd_limit = UINT_MAX;
+	INIT_WORK(&link->deferred_qc_work, ata_scsi_deferred_qc_work);
 
 	/* can't use iterator, ap isn't initialized yet */
 	for (i = 0; i < ATA_MAX_DEVICES; i++) {
@@ -5581,7 +5582,6 @@ struct ata_port *ata_port_alloc(struct ata_host *host)
 	mutex_init(&ap->scsi_scan_mutex);
 	INIT_DELAYED_WORK(&ap->hotplug_task, ata_scsi_hotplug);
 	INIT_DELAYED_WORK(&ap->scsi_rescan_task, ata_scsi_dev_rescan);
-	INIT_WORK(&ap->deferred_qc_work, ata_scsi_deferred_qc_work);
 	INIT_LIST_HEAD(&ap->eh_done_q);
 	init_waitqueue_head(&ap->eh_wait_q);
 	init_completion(&ap->park_req_pending);
@@ -6204,12 +6204,15 @@ static void ata_port_detach(struct ata_port *ap)
 
 	/* It better be dead now and not have any remaining deferred qc. */
 	WARN_ON(!(ap->pflags & ATA_PFLAG_UNLOADED));
-	WARN_ON(ap->deferred_qc);
 
-	cancel_work_sync(&ap->deferred_qc_work);
 	cancel_delayed_work_sync(&ap->hotplug_task);
 	cancel_delayed_work_sync(&ap->scsi_rescan_task);
 
+	ata_for_each_link(link, ap, PMP_FIRST) {
+		WARN_ON(link->deferred_qc);
+		cancel_work_sync(&link->deferred_qc_work);
+	}
+
 	/* Delete port multiplier link transport devices */
 	if (ap->pmp_link) {
 		int i;
drivers/ata/libata-eh.c +4 -4
index 23be85418b3b..5e8a63206108 100644
@@ -643,11 +643,11 @@ void ata_scsi_cmd_error_handler(struct Scsi_Host *host, struct ata_port *ap,
 			if (qc->scsicmd != scmd)
 				continue;
 			if ((qc->flags & ATA_QCFLAG_ACTIVE) ||
-			    qc == ap->deferred_qc)
+			    qc == qc->dev->link->deferred_qc)
 				break;
 		}
 
-		if (i < ATA_MAX_QUEUE && qc == ap->deferred_qc) {
+		if (i < ATA_MAX_QUEUE && qc == qc->dev->link->deferred_qc) {
 			/*
 			 * This is a deferred command that timed out while
 			 * waiting for the command queue to drain. Since the qc
@@ -658,8 +658,8 @@ void ata_scsi_cmd_error_handler(struct Scsi_Host *host, struct ata_port *ap,
 			 * deferred qc work from issuing this qc.
 			 */
 			WARN_ON_ONCE(qc->flags & ATA_QCFLAG_ACTIVE);
-			ap->deferred_qc = NULL;
-			cancel_work(&ap->deferred_qc_work);
+			qc->dev->link->deferred_qc = NULL;
+			cancel_work(&qc->dev->link->deferred_qc_work);
 			set_host_byte(scmd, DID_TIME_OUT);
 			scsi_eh_finish_cmd(scmd, &ap->eh_done_q);
 		} else if (i < ATA_MAX_QUEUE) {
drivers/ata/libata-pmp.c +16 -2
index 57023324a56f..48ac09d9031e 100644
@@ -110,13 +110,24 @@ int sata_pmp_qc_defer_cmd_switch(struct ata_queued_cmd *qc)
 {
 	struct ata_link *link = qc->dev->link;
 	struct ata_port *ap = link->ap;
+	int ret;
 
 	if (ap->excl_link == NULL || ap->excl_link == link) {
 		if (ap->nr_active_links == 0 || ata_link_active(link)) {
 			qc->flags |= ATA_QCFLAG_CLEAR_EXCL;
-			return ata_std_qc_defer(qc);
+			ret = ata_std_qc_defer(qc);
+			if (ret == ATA_DEFER_LINK)
+				return ATA_DEFER_LINK_EXCL;
+			return ret;
 		}
 
+		/*
+		 * Note: ap->excl_link contains the link that is next in line,
+		 * i.e. implicit round robin. If there is only one link
+		 * dispatching, ap->excl_link will be left unclaimed, allowing
+		 * other links to set ap->excl_link, ensuring that the currently
+		 * active link cannot queue any more.
+		 */
 		ap->excl_link = link;
 	}
 
@@ -571,8 +582,11 @@ static void sata_pmp_detach(struct ata_device *dev)
 	if (ap->ops->pmp_detach)
 		ap->ops->pmp_detach(ap);
 
-	ata_for_each_link(tlink, ap, EDGE)
+	ata_for_each_link(tlink, ap, EDGE) {
+		WARN_ON(tlink->deferred_qc);
+		cancel_work_sync(&tlink->deferred_qc_work);
 		ata_eh_detach_dev(tlink->device);
+	}
 
 	spin_lock_irqsave(ap->lock, flags);
 	ap->nr_pmp_links = 0;
drivers/ata/libata-scsi.c +57 -43

175 lines not on this page · raw message

drivers/ata/sata_sil24.c +5 -1
index d642ece9f07a..57f1081b86db 100644
@@ -789,6 +789,7 @@ static int sil24_qc_defer(struct ata_queued_cmd *qc)
 	struct ata_link *link = qc->dev->link;
 	struct ata_port *ap = link->ap;
 	u8 prot = qc->tf.protocol;
+	int ret;
 
 	/*
 	 * There is a bug in the chip:
@@ -826,7 +827,10 @@ static int sil24_qc_defer(struct ata_queued_cmd *qc)
 		qc->flags |= ATA_QCFLAG_CLEAR_EXCL;
 	}
 
-	return ata_std_qc_defer(qc);
+	ret = ata_std_qc_defer(qc);
+	if (ret == ATA_DEFER_LINK)
+		return ATA_DEFER_LINK_EXCL;
+	return ret;
 }
 
 static enum ata_completion_errors sil24_qc_prep(struct ata_queued_cmd *qc)
drivers/base/memory.c +6 -2
index 6d84a02cfa5d..0ecb43556736 100644
@@ -1251,8 +1251,10 @@ void memblk_nr_poison_inc(unsigned long pfn)
 	const unsigned long block_id = pfn_to_block_id(pfn);
 	struct memory_block *mem = find_memory_block_by_id(block_id);
 
-	if (mem)
+	if (mem) {
 		atomic_long_inc(&mem->nr_hwpoison);
+		put_device(&mem->dev);
+	}
 }
 
 void memblk_nr_poison_sub(unsigned long pfn, long i)
@@ -1260,8 +1262,10 @@ void memblk_nr_poison_sub(unsigned long pfn, long i)
 	const unsigned long block_id = pfn_to_block_id(pfn);
 	struct memory_block *mem = find_memory_block_by_id(block_id);
 
-	if (mem)
+	if (mem) {
 		atomic_long_sub(i, &mem->nr_hwpoison);
+		put_device(&mem->dev);
+	}
 }
 
 static unsigned long memblk_nr_poison(struct memory_block *mem)
drivers/block/rbd.c +8 -12
index 9236b5184bce..97cd8cf7bad3 100644
@@ -4565,24 +4565,12 @@ static int rbd_register_watch(struct rbd_device *rbd_dev)
 	return ret;
 }
 
-static void cancel_tasks_sync(struct rbd_device *rbd_dev)
-{
-	dout("%s rbd_dev %p\n", __func__, rbd_dev);
-
-	cancel_work_sync(&rbd_dev->acquired_lock_work);
-	cancel_work_sync(&rbd_dev->released_lock_work);
-	cancel_delayed_work_sync(&rbd_dev->lock_dwork);
-	cancel_work_sync(&rbd_dev->unlock_work);
-}
-
 /*
  * header_rwsem must not be held to avoid a deadlock with
  * rbd_dev_refresh() when flushing notifies.
  */
 static void rbd_unregister_watch(struct rbd_device *rbd_dev)
 {
-	cancel_tasks_sync(rbd_dev);
-
 	mutex_lock(&rbd_dev->watch_mutex);
 	if (rbd_dev->watch_state == RBD_WATCH_STATE_REGISTERED)
 		__rbd_unregister_watch(rbd_dev);
@@ -6548,10 +6536,18 @@ static int rbd_add_parse_args(const char *buf,
 
 static void rbd_dev_image_unlock(struct rbd_device *rbd_dev)
 {
+	dout("%s rbd_dev %p\n", __func__, rbd_dev);
+
+	disable_delayed_work_sync(&rbd_dev->lock_dwork);
+	disable_work_sync(&rbd_dev->unlock_work);
+
 	down_write(&rbd_dev->lock_rwsem);
 	if (__rbd_is_lock_owner(rbd_dev))
 		__rbd_release_lock(rbd_dev);
 	up_write(&rbd_dev->lock_rwsem);
+
+	flush_work(&rbd_dev->acquired_lock_work);
+	flush_work(&rbd_dev->released_lock_work);
 }
 
 /*
drivers/block/ublk_drv.c +3 -0
index 2729b1556e81..c339222513b0 100644
@@ -601,6 +601,9 @@ static int ublk_validate_params(const struct ublk_device *ub)
 		if (p->max_sectors > (ub->dev_info.max_io_buf_bytes >> 9))
 			return -EINVAL;
 
+		if (p->max_sectors < PAGE_SECTORS)
+			return -EINVAL;
+
 		if (ublk_dev_is_zoned(ub) && !p->chunk_sectors)
 			return -EINVAL;
 	} else
drivers/bluetooth/btintel_pcie.c +6 -14
index c68a8de3025b..d0aa1666d6ac 100644
@@ -567,12 +567,10 @@ static int btintel_pcie_get_mac_access(struct btintel_pcie_data *data)
 
 	reg = btintel_pcie_rd_reg32(data, BTINTEL_PCIE_CSR_FUNC_CTRL_REG);
 
-	reg |= BTINTEL_PCIE_CSR_FUNC_CTRL_STOP_MAC_ACCESS_DIS;
-	reg |= BTINTEL_PCIE_CSR_FUNC_CTRL_XTAL_CLK_REQ;
-	if ((reg & BTINTEL_PCIE_CSR_FUNC_CTRL_MAC_ACCESS_STS) == 0)
+	if (!(reg & BTINTEL_PCIE_CSR_FUNC_CTRL_MAC_ACCESS_REQ)) {
 		reg |= BTINTEL_PCIE_CSR_FUNC_CTRL_MAC_ACCESS_REQ;
-
-	btintel_pcie_wr_reg32(data, BTINTEL_PCIE_CSR_FUNC_CTRL_REG, reg);
+		btintel_pcie_wr_reg32(data, BTINTEL_PCIE_CSR_FUNC_CTRL_REG, reg);
+	}
 
 	do {
 		reg = btintel_pcie_rd_reg32(data, BTINTEL_PCIE_CSR_FUNC_CTRL_REG);
@@ -592,16 +590,10 @@ static void btintel_pcie_release_mac_access(struct btintel_pcie_data *data)
 
 	reg = btintel_pcie_rd_reg32(data, BTINTEL_PCIE_CSR_FUNC_CTRL_REG);
 
-	if (reg & BTINTEL_PCIE_CSR_FUNC_CTRL_MAC_ACCESS_REQ)
+	if (reg & BTINTEL_PCIE_CSR_FUNC_CTRL_MAC_ACCESS_REQ) {
 		reg &= ~BTINTEL_PCIE_CSR_FUNC_CTRL_MAC_ACCESS_REQ;
-
-	if (reg & BTINTEL_PCIE_CSR_FUNC_CTRL_STOP_MAC_ACCESS_DIS)
-		reg &= ~BTINTEL_PCIE_CSR_FUNC_CTRL_STOP_MAC_ACCESS_DIS;
-
-	if (reg & BTINTEL_PCIE_CSR_FUNC_CTRL_XTAL_CLK_REQ)
-		reg &= ~BTINTEL_PCIE_CSR_FUNC_CTRL_XTAL_CLK_REQ;
-
-	btintel_pcie_wr_reg32(data, BTINTEL_PCIE_CSR_FUNC_CTRL_REG, reg);
+		btintel_pcie_wr_reg32(data, BTINTEL_PCIE_CSR_FUNC_CTRL_REG, reg);
+	}
 }
 
 static void *btintel_pcie_copy_tlv(void *dest, enum btintel_pcie_tlv_type type,
drivers/bluetooth/btintel_pcie.h +0 -3
index 48e1ae1793e5..481de85456e2 100644
@@ -34,9 +34,6 @@
 #define BTINTEL_PCIE_CSR_FUNC_CTRL_MAC_ACCESS_STS	(BIT(20))
 
 #define BTINTEL_PCIE_CSR_FUNC_CTRL_MAC_ACCESS_REQ	(BIT(21))
-/* Stop MAC Access disconnection request */
-#define BTINTEL_PCIE_CSR_FUNC_CTRL_STOP_MAC_ACCESS_DIS	(BIT(22))
-#define BTINTEL_PCIE_CSR_FUNC_CTRL_XTAL_CLK_REQ		(BIT(23))
 
 #define BTINTEL_PCIE_CSR_FUNC_CTRL_BUS_MASTER_STS	(BIT(28))
 #define BTINTEL_PCIE_CSR_FUNC_CTRL_BUS_MASTER_DISCON	(BIT(29))
drivers/bluetooth/btmtk.c +2 -0
index cf05746e9db5..38ba8f2bd2f9 100644
@@ -496,6 +496,7 @@ static void btmtk_usb_wmt_recv(struct urb *urb)
 		return;
 	} else if (urb->status == -ENOENT) {
 		/* Avoid suspend failed when usb_kill_urb */
+		kfree(urb->setup_packet);
 		return;
 	}
 
@@ -569,6 +570,7 @@ static int btmtk_usb_submit_wmt_recv_urb(struct hci_dev *hdev)
 		if (err != -EPERM && err != -ENODEV)
 			bt_dev_err(hdev, "urb %p submission failed (%d)",
 				   urb, -err);
+		kfree(dr);
 		usb_unanchor_urb(urb);
 	}
 
drivers/bluetooth/hci_ldisc.c +40 -8

102 lines not on this page · raw message

drivers/cxl/core/mbox.c +9 -2
index fa6dd0c94656..e7a6452bf544 100644
@@ -311,6 +311,7 @@ static bool cxl_mem_raw_command_allowed(u16 opcode)
  * cxl_payload_from_user_allowed() - Check contents of in_payload.
  * @opcode: The mailbox command opcode.
  * @payload_in: Pointer to the input payload passed in from user space.
+ * @in_size: Size of @payload_in in bytes.
  *
  * Return:
  *  * true	- payload_in passes check for @opcode.
@@ -325,12 +326,15 @@ static bool cxl_mem_raw_command_allowed(u16 opcode)
  *
  * The specific checks are determined by the opcode.
  */
-static bool cxl_payload_from_user_allowed(u16 opcode, void *payload_in)
+static bool cxl_payload_from_user_allowed(u16 opcode, void *payload_in,
+					  size_t in_size)
 {
 	switch (opcode) {
 	case CXL_MBOX_OP_SET_PARTITION_INFO: {
 		struct cxl_mbox_set_partition_info *pi = payload_in;
 
+		if (in_size < sizeof(*pi))
+			return false;
 		if (pi->flags & CXL_SET_PARTITION_IMMEDIATE_FLAG)
 			return false;
 		break;
@@ -338,6 +342,8 @@ static bool cxl_payload_from_user_allowed(u16 opcode, void *payload_in)
 	case CXL_MBOX_OP_CLEAR_LOG: {
 		const uuid_t *uuid = (uuid_t *)payload_in;
 
+		if (in_size < sizeof(uuid_t))
+			return false;
 		/*
 		 * Restrict the ‘Clear log’ action to only apply to
 		 * Vendor debug logs.
@@ -365,7 +371,8 @@ static int cxl_mbox_cmd_ctor(struct cxl_mbox_cmd *mbox_cmd,
 		if (IS_ERR(mbox_cmd->payload_in))
 			return PTR_ERR(mbox_cmd->payload_in);
 
-		if (!cxl_payload_from_user_allowed(opcode, mbox_cmd->payload_in)) {
+		if (!cxl_payload_from_user_allowed(opcode, mbox_cmd->payload_in,
+						  in_size)) {
 			dev_dbg(cxl_mbox->host, "%s: input payload not allowed\n",
 				cxl_mem_opcode_to_name(opcode));
 			kvfree(mbox_cmd->payload_in);
drivers/firmware/arm_ffa/bus.c +3 -1
index 50bfe56c755e..6779923e35c5 100644
@@ -26,6 +26,8 @@ static int ffa_device_match(struct device *dev, const struct device_driver *drv)
 
 	id_table = to_ffa_driver(drv)->id_table;
 	ffa_dev = to_ffa_dev(dev);
+	if (!id_table)
+		return 0;
 
 	while (!uuid_is_null(&id_table->uuid)) {
 		/*
@@ -123,7 +125,7 @@ int ffa_driver_register(struct ffa_driver *driver, struct module *owner,
 {
 	int ret;
 
-	if (!driver->probe)
+	if (!driver->probe || !driver->id_table)
 		return -EINVAL;
 
 	driver->driver.bus = &ffa_bus_type;
drivers/firmware/arm_ffa/driver.c +93 -38

267 lines not on this page · raw message

drivers/firmware/efi/efi.c +16 -12
index c3cf5541ed68..c27fe836c8ae 100644
@@ -401,21 +401,11 @@ static void __init efi_debugfs_init(void)
 static inline void efi_debugfs_init(void) {}
 #endif
 
-/*
- * We register the efi subsystem with the firmware subsystem and the
- * efivars subsystem with the efi subsystem, if the system was booted with
- * EFI.
- */
-static int __init efisubsys_init(void)
+static int __init efipostcore_init(void)
 {
-	int error;
-
 	if (!efi_enabled(EFI_RUNTIME_SERVICES))
 		efi.runtime_supported_mask = 0;
 
-	if (!efi_enabled(EFI_BOOT))
-		return 0;
-
 	if (efi.runtime_supported_mask) {
 		/*
 		 * Since we process only one efi_runtime_service() at a time, an
@@ -427,9 +417,23 @@ static int __init efisubsys_init(void)
 			pr_err("Creating efi_rts_wq failed, EFI runtime services disabled.\n");
 			clear_bit(EFI_RUNTIME_SERVICES, &efi.flags);
 			efi.runtime_supported_mask = 0;
-			return 0;
 		}
 	}
+	return 0;
+}
+postcore_initcall(efipostcore_init);
+
+/*
+ * We register the efi subsystem with the firmware subsystem and the
+ * efivars subsystem with the efi subsystem, if the system was booted with
+ * EFI.
+ */
+static int __init efisubsys_init(void)
+{
+	int error;
+
+	if (!efi_enabled(EFI_BOOT))
+		return 0;
 
 	if (efi_rt_services_supported(EFI_RT_SUPPORTED_TIME_SERVICES))
 		platform_device_register_simple("rtc-efi", 0, NULL, 0);
drivers/fwctl/pds/main.c +3 -0
index 1809853f6353..ccc5654d3ae7 100644
@@ -362,6 +362,9 @@ static void *pdsfc_fw_rpc(struct fwctl_uctx *uctx, enum fwctl_rpc_scope scope,
 	void *out = NULL;
 	int err;
 
+	if (in_len < sizeof(*rpc))
+		return ERR_PTR(-EINVAL);
+
 	err = pdsfc_validate_rpc(pdsfc, rpc, scope);
 	if (err)
 		return ERR_PTR(err);
drivers/gpio/Kconfig +0 -1
index 4d644dcecad9..3b7284938bab 100644
@@ -1968,7 +1968,6 @@ menu "Virtual GPIO drivers"
 config GPIO_AGGREGATOR
 	tristate "GPIO Aggregator"
 	select CONFIGFS_FS
-	select DEV_SYNC_PROBE
 	help
 	  Say yes here to enable the GPIO Aggregator, which provides a way to
 	  aggregate existing GPIO lines into a new virtual GPIO chip.
drivers/gpio/gpio-aggregator.c +29 -18

122 lines not on this page · raw message

drivers/gpio/gpiolib-cdev.c +13 -0
index 986312c71678..89abf7a238d8 100644
@@ -1208,6 +1208,7 @@ static int gpio_v2_line_flags_validate(u64 flags)
 static int gpio_v2_line_config_validate(struct gpio_v2_line_config *lc,
 					unsigned int num_lines)
 {
+	size_t unused_attrs;
 	unsigned int i;
 	u64 flags;
 	int ret;
@@ -1215,9 +1216,21 @@ static int gpio_v2_line_config_validate(struct gpio_v2_line_config *lc,
 	if (lc->num_attrs > GPIO_V2_LINE_NUM_ATTRS_MAX)
 		return -EINVAL;
 
+	unused_attrs = GPIO_V2_LINE_NUM_ATTRS_MAX - lc->num_attrs;
+
 	if (!mem_is_zero(lc->padding, sizeof(lc->padding)))
 		return -EINVAL;
 
+	for (i = 0; i < lc->num_attrs; i++) {
+		if (lc->attrs[i].attr.padding != 0)
+			return -EINVAL;
+	}
+
+	if (unused_attrs) {
+		if (!mem_is_zero(&lc->attrs[lc->num_attrs], unused_attrs * sizeof(*lc->attrs)))
+			return -EINVAL;
+	}
+
 	for (i = 0; i < num_lines; i++) {
 		flags = gpio_v2_line_config_flags(lc, i);
 		ret = gpio_v2_line_flags_validate(flags);
drivers/gpu/drm/Makefile +2 -1
index 742f0d590c5a..b248e64587ed 100644
@@ -152,7 +152,8 @@ drm_kms_helper-y := \
 	drm_plane_helper.o \
 	drm_probe_helper.o \
 	drm_self_refresh_helper.o \
-	drm_simple_kms_helper.o
+	drm_simple_kms_helper.o \
+	drm_vblank_helper.o
 drm_kms_helper-$(CONFIG_DRM_PANEL_BRIDGE) += bridge/panel.o
 drm_kms_helper-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fb_helper.o
 obj-$(CONFIG_DRM_KMS_HELPER) += drm_kms_helper.o
drivers/gpu/drm/amd/amdgpu/amdgpu_vpe.c +6 -1
index aa78c2ee9e21..bd5eff4bafe7 100644
@@ -562,6 +562,11 @@ static void vpe_ring_emit_fence(struct amdgpu_ring *ring, uint64_t addr,
 		amdgpu_ring_write(ring, 0);
 	}
 
+	/* WA: Force sync after TRAP to avoid VPE1 fail to power off */
+	if (ring->adev->vpe.collaborate_mode) {
+		amdgpu_ring_write(ring, VPE_CMD_HEADER(VPE_CMD_OPCODE_COLLAB_SYNC, 0));
+		amdgpu_ring_write(ring, 0xabcd);
+	}
 }
 
 static void vpe_ring_emit_pipeline_sync(struct amdgpu_ring *ring)
@@ -968,7 +973,7 @@ static const struct amdgpu_ring_funcs vpe_ring_funcs = {
 	.emit_frame_size =
 		5 + /* vpe_ring_init_cond_exec */
 		6 + /* vpe_ring_emit_pipeline_sync */
-		10 + 10 + 10 + /* vpe_ring_emit_fence */
+		12 + 12 + 12 + /* vpe_ring_emit_fence */
 		/* vpe_ring_emit_vm_flush */
 		SOC15_FLUSH_GPU_TLB_NUM_WREG * 3 +
 		SOC15_FLUSH_GPU_TLB_NUM_REG_WAIT * 6,
drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c +9 -0
index 550a9f1d03f8..e004458f0e43 100644
@@ -492,6 +492,10 @@ static enum bp_result get_gpio_i2c_info(
 			- sizeof(struct atom_common_table_header))
 				/ sizeof(struct atom_gpio_pin_assignment);
 
+	if (!bios_get_image(&bp->base, DATA_TABLES(gpio_pin_lut),
+			    le16_to_cpu(header->table_header.structuresize)))
+		return BP_RESULT_BADBIOSTABLE;
+
 	pin = (struct atom_gpio_pin_assignment *) header->gpio_pin;
 
 	for (table_index = 0; table_index < count; table_index++) {
@@ -680,6 +684,11 @@ static enum bp_result bios_parser_get_gpio_pin_info(
 	count = (le16_to_cpu(header->table_header.structuresize)
 			- sizeof(struct atom_common_table_header))
 				/ sizeof(struct atom_gpio_pin_assignment);
+
+	if (!bios_get_image(&bp->base, DATA_TABLES(gpio_pin_lut),
+			    le16_to_cpu(header->table_header.structuresize)))
+		return BP_RESULT_BADBIOSTABLE;
+
 	for (i = 0; i < count; ++i) {
 		if (header->gpio_pin[i].gpio_id != gpio_id)
 			continue;
drivers/gpu/drm/amd/display/dc/bios/bios_parser_helper.c +6 -3
index 8d2cf95ae739..e00dc05c2d9d 100644
@@ -37,10 +37,13 @@ uint8_t *bios_get_image(struct dc_bios *bp,
 	uint32_t offset,
 	uint32_t size)
 {
-	if (bp->bios && offset + size < bp->bios_size)
-		return bp->bios + offset;
-	else
+	if (!bp->bios)
 		return NULL;
+
+	if (offset > bp->bios_size || size > bp->bios_size - offset)
+		return NULL;
+
+	return bp->bios + offset;
 }
 
 #include "reg_helper.h"
drivers/gpu/drm/amd/display/dc/core/dc.c +5 -1
index 5f2d5638c819..0347174173f3 100644
@@ -5884,7 +5884,11 @@ bool dc_process_dmub_aux_transfer_async(struct dc *dc,
 	uint8_t action;
 	union dmub_rb_cmd cmd = {0};
 
-	ASSERT(payload->length <= 16);
+	if (link_index >= dc->link_count || !dc->links[link_index])
+		return false;
+
+	if (payload->length > sizeof(cmd.dp_aux_access.aux_control.dpaux.data))
+		return false;
 
 	cmd.dp_aux_access.header.type = DMUB_CMD__DP_AUX_ACCESS;
 	cmd.dp_aux_access.header.payload_bytes = 0;
drivers/gpu/drm/bridge/chipone-icn6211.c +3 -1
index 814713c5bea9..553a1df4688d 100644
@@ -758,7 +758,9 @@ static int chipone_i2c_probe(struct i2c_client *client)
 	dev_set_drvdata(dev, icn);
 	i2c_set_clientdata(client, icn);
 
-	drm_bridge_add(&icn->bridge);
+	ret = devm_drm_bridge_add(dev, &icn->bridge);
+	if (ret)
+		return ret;
 
 	return chipone_dsi_host_attach(icn);
 }
drivers/gpu/drm/bridge/ite-it66121.c +5 -0
index aa7b1dcc5d70..f9aff56dd503 100644
@@ -1559,6 +1559,11 @@ static int it66121_probe(struct i2c_client *client)
 		return ret;
 	}
 
+	ctx->gpio_reset = devm_gpiod_get(dev, "reset", GPIOD_OUT_LOW);
+	if (IS_ERR(ctx->gpio_reset))
+		return dev_err_probe(dev, PTR_ERR(ctx->gpio_reset),
+				     "Failed to get reset GPIO\n");
+
 	it66121_hw_reset(ctx);
 
 	ctx->regmap = devm_regmap_init_i2c(client, &it66121_regmap_config);
drivers/gpu/drm/bridge/megachips-stdpxxxx-ge-b850v3-fw.c +10 -6
index c9e6505cbd88..2d02cc69f237 100644
@@ -251,7 +251,6 @@ static void ge_b850v3_lvds_remove(void)
 		goto out;
 
 	drm_bridge_remove(&ge_b850v3_lvds_ptr->bridge);
-
 	ge_b850v3_lvds_ptr = NULL;
 out:
 	mutex_unlock(&ge_b850v3_lvds_dev_mutex);
@@ -261,6 +260,7 @@ static int ge_b850v3_register(void)
 {
 	struct i2c_client *stdp4028_i2c = ge_b850v3_lvds_ptr->stdp4028_i2c;
 	struct device *dev = &stdp4028_i2c->dev;
+	int ret;
 
 	/* drm bridge initialization */
 	ge_b850v3_lvds_ptr->bridge.ops = DRM_BRIDGE_OP_DETECT |
@@ -277,11 +277,15 @@ static int ge_b850v3_register(void)
 	if (!stdp4028_i2c->irq)
 		return 0;
 
-	return devm_request_threaded_irq(&stdp4028_i2c->dev,
-			stdp4028_i2c->irq, NULL,
-			ge_b850v3_lvds_irq_handler,
-			IRQF_TRIGGER_HIGH | IRQF_ONESHOT,
-			"ge-b850v3-lvds-dp", ge_b850v3_lvds_ptr);
+	ret = devm_request_threaded_irq(&stdp4028_i2c->dev,
+					stdp4028_i2c->irq, NULL,
+					ge_b850v3_lvds_irq_handler,
+					IRQF_TRIGGER_HIGH | IRQF_ONESHOT,
+					"ge-b850v3-lvds-dp", ge_b850v3_lvds_ptr);
+	if (ret)
+		drm_bridge_remove(&ge_b850v3_lvds_ptr->bridge);
+
+	return ret;
 }
 
 static int stdp4028_ge_b850v3_fw_probe(struct i2c_client *stdp4028_i2c)
drivers/gpu/drm/drm_atomic_helper.c +1 -1
index bbec1c184f65..b06a5cba5295 100644
@@ -1913,7 +1913,7 @@ drm_atomic_helper_wait_for_vblanks(struct drm_device *dev,
 		ret = wait_event_timeout(dev->vblank[i].queue,
 					 state->crtcs[i].last_vblank_count !=
 						drm_crtc_vblank_count(crtc),
-					 msecs_to_jiffies(100));
+					 msecs_to_jiffies(1000));
 
 		WARN(!ret, "[CRTC:%d:%s] vblank wait timed out\n",
 		     crtc->base.id, crtc->name);
drivers/gpu/drm/drm_vblank.c +170 -2

187 lines not on this page · raw message

drivers/gpu/drm/drm_vblank_helper.c new file +176 -0

176 lines not on this page · raw message

drivers/gpu/drm/i915/display/intel_dp.c +1 -1
index 61f22275403b..a44fbac1e5e2 100644
@@ -4899,7 +4899,7 @@ int intel_dp_as_sdp_unpack(struct drm_dp_as_sdp *as_sdp,
 	as_sdp->length = sdp->sdp_header.HB3 & DP_ADAPTIVE_SYNC_SDP_LENGTH;
 	as_sdp->mode = sdp->db[0] & DP_ADAPTIVE_SYNC_SDP_OPERATION_MODE;
 	as_sdp->vtotal = (sdp->db[2] << 8) | sdp->db[1];
-	as_sdp->target_rr = (u64)sdp->db[3] | ((u64)sdp->db[4] & 0x3);
+	as_sdp->target_rr = ((sdp->db[4] & 0x3) << 8) | sdp->db[3];
 	as_sdp->target_rr_divider = sdp->db[4] & 0x20 ? true : false;
 
 	return 0;
drivers/gpu/drm/mediatek/mtk_cec.c +1 -1
index c7be530ca041..b8ccd6e55bed 100644
@@ -240,7 +240,7 @@ static const struct of_device_id mtk_cec_of_ids[] = {
 };
 MODULE_DEVICE_TABLE(of, mtk_cec_of_ids);
 
-struct platform_driver mtk_cec_driver = {
+static struct platform_driver mtk_cec_driver = {
 	.probe = mtk_cec_probe,
 	.remove = mtk_cec_remove,
 	.driver = {
drivers/gpu/drm/mediatek/mtk_hdmi_ddc.c +1 -1
index 6358e1af69b4..2acbdb025d89 100644
@@ -328,7 +328,7 @@ static const struct of_device_id mtk_hdmi_ddc_match[] = {
 };
 MODULE_DEVICE_TABLE(of, mtk_hdmi_ddc_match);
 
-struct platform_driver mtk_hdmi_ddc_driver = {
+static struct platform_driver mtk_hdmi_ddc_driver = {
 	.probe = mtk_hdmi_ddc_probe,
 	.remove = mtk_hdmi_ddc_remove,
 	.driver = {
drivers/gpu/drm/msm/adreno/adreno_gpu.c +6 -0
index 4b5a4edd0702..056a9e18cd4a 100644
@@ -419,15 +419,21 @@ int adreno_get_param(struct msm_gpu *gpu, struct msm_context *ctx,
 		*value = vm->mm_range;
 		return 0;
 	case MSM_PARAM_HIGHEST_BANK_BIT:
+		if (!adreno_gpu->ubwc_config)
+			return UERR(ENOENT, drm, "no UBWC on this platform");
 		*value = adreno_gpu->ubwc_config->highest_bank_bit;
 		return 0;
 	case MSM_PARAM_RAYTRACING:
 		*value = adreno_gpu->has_ray_tracing;
 		return 0;
 	case MSM_PARAM_UBWC_SWIZZLE:
+		if (!adreno_gpu->ubwc_config)
+			return UERR(ENOENT, drm, "no UBWC on this platform");
 		*value = adreno_gpu->ubwc_config->ubwc_swizzle;
 		return 0;
 	case MSM_PARAM_MACROTILE_MODE:
+		if (!adreno_gpu->ubwc_config)
+			return UERR(ENOENT, drm, "no UBWC on this platform");
 		*value = adreno_gpu->ubwc_config->macrotile_mode;
 		return 0;
 	case MSM_PARAM_UCHE_TRAP_BASE:
drivers/gpu/drm/msm/disp/dpu1/dpu_writeback.c +2 -1
index 7545c0293efb..6f2370c9dd98 100644
@@ -5,6 +5,7 @@
 
 #include <drm/drm_edid.h>
 #include <drm/drm_framebuffer.h>
+#include <drm/drm_managed.h>
 
 #include "dpu_writeback.h"
 
@@ -125,7 +126,7 @@ int dpu_writeback_init(struct drm_device *dev, struct drm_encoder *enc,
 	struct dpu_wb_connector *dpu_wb_conn;
 	int rc = 0;
 
-	dpu_wb_conn = devm_kzalloc(dev->dev, sizeof(*dpu_wb_conn), GFP_KERNEL);
+	dpu_wb_conn = drmm_kzalloc(dev, sizeof(*dpu_wb_conn), GFP_KERNEL);
 	if (!dpu_wb_conn)
 		return -ENOMEM;
 
drivers/gpu/drm/msm/disp/msm_disp_snapshot_util.c +18 -6
index 071bcdea80f7..591507db2646 100644
@@ -9,7 +9,7 @@
 
 #include "msm_disp_snapshot.h"
 
-static void msm_disp_state_dump_regs(u32 **reg, u32 aligned_len, void __iomem *base_addr)
+static void msm_disp_state_dump_regs(u32 **reg, u32 len, void __iomem *base_addr)
 {
 	u32 len_padded;
 	u32 num_rows;
@@ -19,11 +19,11 @@ static void msm_disp_state_dump_regs(u32 **reg, u32 aligned_len, void __iomem *b
 	void __iomem *end_addr;
 	int i;
 
-	len_padded = aligned_len * REG_DUMP_ALIGN;
-	num_rows = aligned_len / REG_DUMP_ALIGN;
+	len_padded = round_up(len, REG_DUMP_ALIGN);
+	num_rows = DIV_ROUND_UP(len, REG_DUMP_ALIGN);
 
 	addr = base_addr;
-	end_addr = base_addr + aligned_len;
+	end_addr = base_addr + len;
 
 	*reg = kvzalloc(len_padded, GFP_KERNEL);
 	if (!*reg)
@@ -48,8 +48,8 @@ static void msm_disp_state_dump_regs(u32 **reg, u32 aligned_len, void __iomem *b
 static void msm_disp_state_print_regs(const u32 *dump_addr, u32 len,
 		void __iomem *base_addr, struct drm_printer *p)
 {
+	void __iomem *addr, *end_addr;
 	int i;
-	void __iomem *addr;
 	u32 num_rows;
 
 	if (!dump_addr) {
@@ -58,6 +58,7 @@ static void msm_disp_state_print_regs(const u32 *dump_addr, u32 len,
 	}
 
 	addr = base_addr;
+	end_addr = base_addr + len;
 	num_rows = len / REG_DUMP_ALIGN;
 
 	for (i = 0; i < num_rows; i++) {
@@ -67,6 +68,17 @@ static void msm_disp_state_print_regs(const u32 *dump_addr, u32 len,
 				dump_addr[i * 4 + 2], dump_addr[i * 4 + 3]);
 		addr += REG_DUMP_ALIGN;
 	}
+
+	if (addr != end_addr) {
+		drm_printf(p, "0x%lx : %08x",
+			   (unsigned long)(addr - base_addr),
+			   dump_addr[i * 4]);
+		if (addr + 0x4 < end_addr)
+			drm_printf(p, " %08x", dump_addr[i * 4 + 1]);
+		if (addr + 0x8 < end_addr)
+			drm_printf(p, " %08x", dump_addr[i * 4 + 2]);
+		drm_printf(p, "\n");
+	}
 }
 
 void msm_disp_state_print(struct msm_disp_state *state, struct drm_printer *p)
@@ -186,7 +198,7 @@ void msm_disp_snapshot_add_block(struct msm_disp_state *disp_state, u32 len,
 	va_end(va);
 
 	INIT_LIST_HEAD(&new_blk->node);
-	new_blk->size = ALIGN(len, REG_DUMP_ALIGN);
+	new_blk->size = len;
 	new_blk->base_addr = base_addr;
 
 	msm_disp_state_dump_regs(&new_blk->state, new_blk->size, base_addr);
drivers/gpu/drm/msm/dsi/dsi_host.c +1 -0
index 1c0841a1c101..50474c994d47 100644
@@ -2003,6 +2003,7 @@ int msm_dsi_host_init(struct msm_dsi *msm_dsi)
 
 	/* fixup base address by io offset */
 	msm_host->ctrl_base += cfg->io_offset;
+	msm_host->ctrl_size -= cfg->io_offset;
 
 	ret = devm_regulator_bulk_get_const(&pdev->dev, cfg->num_regulators,
 					    cfg->regulator_data,
drivers/gpu/drm/msm/msm_gem_shrinker.c +16 -24
index 31fa51a44f86..8f118b5185a1 100644
@@ -43,8 +43,7 @@ msm_gem_shrinker_count(struct shrinker *shrinker, struct shrink_control *sc)
 }
 
 static bool
-with_vm_locks(struct ww_acquire_ctx *ticket,
-	      void (*fn)(struct drm_gem_object *obj),
+with_vm_locks(void (*fn)(struct drm_gem_object *obj),
 	      struct drm_gem_object *obj)
 {
 	/*
@@ -52,7 +51,7 @@ with_vm_locks(struct ww_acquire_ctx *ticket,
 	 * success paths
 	 */
 	struct drm_gpuvm_bo *vm_bo, *last_locked = NULL;
-	int ret = 0;
+	bool locked = true;
 
 	drm_gem_for_each_gpuvm_bo (vm_bo, obj) {
 		struct dma_resv *resv = drm_gpuvm_resv(vm_bo->vm);
@@ -60,23 +59,14 @@ with_vm_locks(struct ww_acquire_ctx *ticket,
 		if (resv == obj->resv)
 			continue;
 
-		ret = dma_resv_lock(resv, ticket);
-
-		/*
-		 * Since we already skip the case when the VM and obj
-		 * share a resv (ie. _NO_SHARE objs), we don't expect
-		 * to hit a double-locking scenario... which the lock
-		 * unwinding cannot really cope with.
-		 */
-		WARN_ON(ret == -EALREADY);
-
 		/*
-		 * Don't bother with slow-lock / backoff / retry sequence,
-		 * if we can't get the lock just give up and move on to
-		 * the next object.
+		 * dma_resv_lock can't be used due to acquiring 'ticket' before the
+		 * fs_reclaim lock, which is held in shrinker context
 		 */
-		if (ret)
+		if (!dma_resv_trylock(resv)) {
+			locked = false;
 			goto out_unlock;
+		}
 
 		/*
 		 * Hold a ref to prevent the vm_bo from being freed
@@ -108,11 +98,11 @@ with_vm_locks(struct ww_acquire_ctx *ticket,
 		}
 	}
 
-	return ret == 0;
+	return locked;
 }
 
 static bool
-purge(struct drm_gem_object *obj, struct ww_acquire_ctx *ticket)
+purge(struct drm_gem_object *obj, struct ww_acquire_ctx *unused)
 {
 	if (!is_purgeable(to_msm_bo(obj)))
 		return false;
@@ -120,11 +110,11 @@ purge(struct drm_gem_object *obj, struct ww_acquire_ctx *ticket)
 	if (msm_gem_active(obj))
 		return false;
 
-	return with_vm_locks(ticket, msm_gem_purge, obj);
+	return with_vm_locks(msm_gem_purge, obj);
 }
 
 static bool
-evict(struct drm_gem_object *obj, struct ww_acquire_ctx *ticket)
+evict(struct drm_gem_object *obj, struct ww_acquire_ctx *unused)
 {
 	if (is_unevictable(to_msm_bo(obj)))
 		return false;
@@ -132,7 +122,7 @@ evict(struct drm_gem_object *obj, struct ww_acquire_ctx *ticket)
 	if (msm_gem_active(obj))
 		return false;
 
-	return with_vm_locks(ticket, msm_gem_evict, obj);
+	return with_vm_locks(msm_gem_evict, obj);
 }
 
 static bool
@@ -164,7 +154,6 @@ static unsigned long
 msm_gem_shrinker_scan(struct shrinker *shrinker, struct shrink_control *sc)
 {
 	struct msm_drm_private *priv = shrinker->private_data;
-	struct ww_acquire_ctx ticket;
 	struct {
 		struct drm_gem_lru *lru;
 		bool (*shrink)(struct drm_gem_object *obj, struct ww_acquire_ctx *ticket);
@@ -185,11 +174,14 @@ msm_gem_shrinker_scan(struct shrinker *shrinker, struct shrink_control *sc)
 	for (unsigned i = 0; (nr > 0) && (i < ARRAY_SIZE(stages)); i++) {
 		if (!stages[i].cond)
 			continue;
+		/*
+		 * 'ticket' not needed on trylock paths
+		 */
 		stages[i].freed =
 			drm_gem_lru_scan(stages[i].lru, nr,
 					 &stages[i].remaining,
 					 stages[i].shrink,
-					 &ticket);
+					 NULL);
 		nr -= stages[i].freed;
 		freed += stages[i].freed;
 		remaining += stages[i].remaining;
drivers/gpu/drm/msm/msm_iommu.c +3 -2
index a188617653e8..82a172f21a3e 100644
@@ -677,7 +677,7 @@ static int msm_iommu_map(struct msm_mmu *mmu, uint64_t iova,
 			 int prot)
 {
 	struct msm_iommu *iommu = to_msm_iommu(mmu);
-	size_t ret;
+	ssize_t ret;
 
 	WARN_ON(off != 0);
 
@@ -686,7 +686,8 @@ static int msm_iommu_map(struct msm_mmu *mmu, uint64_t iova,
 		iova |= GENMASK_ULL(63, 49);
 
 	ret = iommu_map_sgtable(iommu->domain, iova, sgt, prot);
-	WARN_ON(!ret);
+	if (ret < 0)
+		return ret;
 
 	return (ret == len) ? 0 : -EINVAL;
 }
drivers/gpu/drm/v3d/v3d_sched.c +1 -15
index 0ec06bfbbebb..e0cbd12c51c9 100644
@@ -103,20 +103,6 @@ v3d_performance_query_info_free(struct v3d_performance_query_info *query_info,
 	}
 }
 
-static void
-v3d_cpu_job_free(struct drm_sched_job *sched_job)
-{
-	struct v3d_cpu_job *job = to_cpu_job(sched_job);
-
-	v3d_timestamp_query_info_free(&job->timestamp_query,
-				      job->timestamp_query.count);
-
-	v3d_performance_query_info_free(&job->performance_query,
-					job->performance_query.count);
-
-	v3d_job_cleanup(&job->base);
-}
-
 static void
 v3d_switch_perfmon(struct v3d_dev *v3d, struct v3d_job *job)
 {
@@ -860,7 +846,7 @@ static const struct drm_sched_backend_ops v3d_cache_clean_sched_ops = {
 
 static const struct drm_sched_backend_ops v3d_cpu_sched_ops = {
 	.run_job = v3d_cpu_job_run,
-	.free_job = v3d_cpu_job_free
+	.free_job = v3d_sched_job_free
 };
 
 static int
drivers/gpu/drm/v3d/v3d_submit.c +19 -3
index 23fa18e5e65c..95b9e68b0dfe 100644
@@ -119,6 +119,24 @@ v3d_render_job_free(struct kref *ref)
 	v3d_job_free(ref);
 }
 
+static void
+v3d_cpu_job_free(struct kref *ref)
+{
+	struct v3d_cpu_job *job = container_of(ref, struct v3d_cpu_job,
+					       base.refcount);
+
+	v3d_timestamp_query_info_free(&job->timestamp_query,
+				      job->timestamp_query.count);
+
+	v3d_performance_query_info_free(&job->performance_query,
+					job->performance_query.count);
+
+	if (job->indirect_csd.indirect)
+		drm_gem_object_put(job->indirect_csd.indirect);
+
+	v3d_job_free(ref);
+}
+
 void v3d_job_cleanup(struct v3d_job *job)
 {
 	if (!job)
@@ -1321,7 +1339,7 @@ v3d_submit_cpu_ioctl(struct drm_device *dev, void *data,
 	trace_v3d_submit_cpu_ioctl(&v3d->drm, cpu_job->job_type);
 
 	ret = v3d_job_init(v3d, file_priv, &cpu_job->base,
-			   v3d_job_free, 0, &se, V3D_CPU);
+			   v3d_cpu_job_free, 0, &se, V3D_CPU);
 	if (ret) {
 		v3d_job_deallocate((void *)&cpu_job);
 		goto fail;
@@ -1404,8 +1422,6 @@ v3d_submit_cpu_ioctl(struct drm_device *dev, void *data,
 	v3d_job_cleanup((void *)csd_job);
 	v3d_job_cleanup(clean_job);
 	v3d_put_multisync_post_deps(&se);
-	kvfree(cpu_job->timestamp_query.queries);
-	kvfree(cpu_job->performance_query.queries);
 
 	return ret;
 }
drivers/gpu/drm/virtio/virtgpu_drv.h +1 -0
index f17660a71a3e..2f3531950aa4 100644
@@ -317,6 +317,7 @@ virtio_gpu_array_from_handles(struct drm_file *drm_file, u32 *handles, u32 nents
 void virtio_gpu_array_add_obj(struct virtio_gpu_object_array *objs,
 			      struct drm_gem_object *obj);
 int virtio_gpu_array_lock_resv(struct virtio_gpu_object_array *objs);
+int virtio_gpu_lock_one_resv_uninterruptible(struct virtio_gpu_object_array *objs);
 void virtio_gpu_array_unlock_resv(struct virtio_gpu_object_array *objs);
 void virtio_gpu_array_add_fence(struct virtio_gpu_object_array *objs,
 				struct dma_fence *fence);
drivers/gpu/drm/virtio/virtgpu_gem.c +17 -0
index 90c99d83c4cf..015b5debd745 100644
@@ -238,6 +238,23 @@ int virtio_gpu_array_lock_resv(struct virtio_gpu_object_array *objs)
 	return ret;
 }
 
+int virtio_gpu_lock_one_resv_uninterruptible(struct virtio_gpu_object_array *objs)
+{
+	int ret;
+
+	if (objs->nents != 1)
+		return -EINVAL;
+
+	dma_resv_lock(objs->objs[0]->resv, NULL);
+
+	ret = dma_resv_reserve_fences(objs->objs[0]->resv, 1);
+	if (ret) {
+		virtio_gpu_array_unlock_resv(objs);
+		return ret;
+	}
+	return 0;
+}
+
 void virtio_gpu_array_unlock_resv(struct virtio_gpu_object_array *objs)
 {
 	if (objs->nents == 1) {
drivers/gpu/drm/virtio/virtgpu_plane.c +8 -2
index 29e4b458ae57..192327723bb9 100644
@@ -214,7 +214,10 @@ static void virtio_gpu_resource_flush(struct drm_plane *plane,
 		if (!objs)
 			return;
 		virtio_gpu_array_add_obj(objs, vgfb->base.obj[0]);
-		virtio_gpu_array_lock_resv(objs);
+		if (virtio_gpu_lock_one_resv_uninterruptible(objs)) {
+			virtio_gpu_array_put_free(objs);
+			return;
+		}
 		virtio_gpu_cmd_resource_flush(vgdev, bo->hw_res_handle, x, y,
 					      width, height, objs,
 					      vgplane_st->fence);
@@ -458,7 +461,10 @@ static void virtio_gpu_cursor_plane_update(struct drm_plane *plane,
 		if (!objs)
 			return;
 		virtio_gpu_array_add_obj(objs, vgfb->base.obj[0]);
-		virtio_gpu_array_lock_resv(objs);
+		if (virtio_gpu_lock_one_resv_uninterruptible(objs)) {
+			virtio_gpu_array_put_free(objs);
+			return;
+		}
 		virtio_gpu_cmd_transfer_to_host_2d
 			(vgdev, 0,
 			 plane->state->crtc_w,
drivers/gpu/drm/vkms/vkms_crtc.c +7 -76

122 lines not on this page · raw message

drivers/gpu/drm/vkms/vkms_drv.h +0 -2
index 8013c31efe3b..fb9711e1c6fb 100644
@@ -215,8 +215,6 @@ struct vkms_output {
 	struct drm_crtc crtc;
 	struct drm_writeback_connector wb_connector;
 	struct drm_encoder wb_encoder;
-	struct hrtimer vblank_hrtimer;
-	ktime_t period_ns;
 	struct workqueue_struct *composer_workq;
 	spinlock_t lock;
 
drivers/gpu/drm/xe/display/xe_hdcp_gsc.c +10 -2
index 4ae847b628e2..6324f526dcfa 100644
@@ -35,11 +35,19 @@ bool intel_hdcp_gsc_check_status(struct drm_device *drm)
 	struct xe_device *xe = to_xe_device(drm);
 	struct xe_tile *tile = xe_device_get_root_tile(xe);
 	struct xe_gt *gt = tile->media_gt;
-	struct xe_gsc *gsc = &gt->uc.gsc;
+	struct xe_gsc *gsc;
 	bool ret = true;
 	unsigned int fw_ref;
 
-	if (!gsc || !xe_uc_fw_is_enabled(&gsc->fw)) {
+	if (!gt) {
+		drm_dbg_kms(&xe->drm,
+			    "not checking GSC status for HDCP2.x: media GT not present or disabled\n");
+		return false;
+	}
+
+	gsc = &gt->uc.gsc;
+
+	if (!xe_uc_fw_is_enabled(&gsc->fw)) {
 		drm_dbg_kms(&xe->drm,
 			    "GSC Components not ready for HDCP2.x\n");
 		return false;
drivers/gpu/drm/xe/xe_gsc.c +1 -4
index 8371ec002e4e..2a496987b829 100644
@@ -487,8 +487,7 @@ int xe_gsc_init_post_hwconfig(struct xe_gsc *gsc)
 				 EXEC_QUEUE_FLAG_PERMANENT, 0);
 	if (IS_ERR(q)) {
 		xe_gt_err(gt, "Failed to create queue for GSC submission\n");
-		err = PTR_ERR(q);
-		goto out_bo;
+		return PTR_ERR(q);
 	}
 
 	wq = alloc_ordered_workqueue("gsc-ordered-wq", 0);
@@ -511,8 +510,6 @@ int xe_gsc_init_post_hwconfig(struct xe_gsc *gsc)
 
 out_q:
 	xe_exec_queue_put(q);
-out_bo:
-	xe_bo_unpin_map_no_vm(bo);
 	return err;
 }
 
drivers/gpu/drm/xe/xe_gt_sriov_pf_monitor.c +5 -1
index 7d532bded02a..a85ba4435378 100644
@@ -114,8 +114,10 @@ int xe_gt_sriov_pf_monitor_process_guc2pf(struct xe_gt *gt, const u32 *msg, u32
  * VFs with no events are not printed.
  *
  * This function can only be called on PF.
+ *
+ * Return: always 0
  */
-void xe_gt_sriov_pf_monitor_print_events(struct xe_gt *gt, struct drm_printer *p)
+int xe_gt_sriov_pf_monitor_print_events(struct xe_gt *gt, struct drm_printer *p)
 {
 	unsigned int n, total_vfs = xe_gt_sriov_pf_get_totalvfs(gt);
 	const struct xe_gt_sriov_monitor *data;
@@ -144,4 +146,6 @@ void xe_gt_sriov_pf_monitor_print_events(struct xe_gt *gt, struct drm_printer *p
 #undef __format
 #undef __value
 	}
+
+	return 0;
 }
drivers/gpu/drm/xe/xe_gt_sriov_pf_monitor.h +1 -1
index 7ca9351a271b..0b8f088d3a16 100644
@@ -13,7 +13,7 @@ struct drm_printer;
 struct xe_gt;
 
 void xe_gt_sriov_pf_monitor_flr(struct xe_gt *gt, u32 vfid);
-void xe_gt_sriov_pf_monitor_print_events(struct xe_gt *gt, struct drm_printer *p);
+int xe_gt_sriov_pf_monitor_print_events(struct xe_gt *gt, struct drm_printer *p);
 
 #ifdef CONFIG_PCI_IOV
 int xe_gt_sriov_pf_monitor_process_guc2pf(struct xe_gt *gt, const u32 *msg, u32 len);
drivers/gpu/drm/xe/xe_gt_sriov_vf.c +18 -6
index 0461d5513487..ca58ef3f9fd3 100644
@@ -1030,13 +1030,15 @@ void xe_gt_sriov_vf_write32(struct xe_gt *gt, struct xe_reg reg, u32 val)
 }
 
 /**
- * xe_gt_sriov_vf_print_config - Print VF self config.
+ * xe_gt_sriov_vf_print_config() - Print VF self config.
  * @gt: the &xe_gt
  * @p: the &drm_printer
  *
  * This function is for VF use only.
+ *
+ * Return: always 0.
  */
-void xe_gt_sriov_vf_print_config(struct xe_gt *gt, struct drm_printer *p)
+int xe_gt_sriov_vf_print_config(struct xe_gt *gt, struct drm_printer *p)
 {
 	struct xe_gt_sriov_vf_selfconfig *config = &gt->sriov.vf.self_config;
 	struct xe_device *xe = gt_to_xe(gt);
@@ -1060,16 +1062,20 @@ void xe_gt_sriov_vf_print_config(struct xe_gt *gt, struct drm_printer *p)
 
 	drm_printf(p, "GuC contexts:\t%u\n", config->num_ctxs);
 	drm_printf(p, "GuC doorbells:\t%u\n", config->num_dbs);
+
+	return 0;
 }
 
 /**
- * xe_gt_sriov_vf_print_runtime - Print VF's runtime regs received from PF.
+ * xe_gt_sriov_vf_print_runtime() - Print VF's runtime regs received from PF.
  * @gt: the &xe_gt
  * @p: the &drm_printer
  *
  * This function is for VF use only.
+ *
+ * Return: always 0.
  */
-void xe_gt_sriov_vf_print_runtime(struct xe_gt *gt, struct drm_printer *p)
+int xe_gt_sriov_vf_print_runtime(struct xe_gt *gt, struct drm_printer *p)
 {
 	struct vf_runtime_reg *vf_regs = gt->sriov.vf.runtime.regs;
 	unsigned int size = gt->sriov.vf.runtime.num_regs;
@@ -1078,16 +1084,20 @@ void xe_gt_sriov_vf_print_runtime(struct xe_gt *gt, struct drm_printer *p)
 
 	for (; size--; vf_regs++)
 		drm_printf(p, "%#x = %#x\n", vf_regs->offset, vf_regs->value);
+
+	return 0;
 }
 
 /**
- * xe_gt_sriov_vf_print_version - Print VF ABI versions.
+ * xe_gt_sriov_vf_print_version() - Print VF ABI versions.
  * @gt: the &xe_gt
  * @p: the &drm_printer
  *
  * This function is for VF use only.
+ *
+ * Return: always 0.
  */
-void xe_gt_sriov_vf_print_version(struct xe_gt *gt, struct drm_printer *p)
+int xe_gt_sriov_vf_print_version(struct xe_gt *gt, struct drm_printer *p)
 {
 	struct xe_device *xe = gt_to_xe(gt);
 	struct xe_uc_fw_version *guc_version = &gt->sriov.vf.guc_version;
@@ -1117,4 +1127,6 @@ void xe_gt_sriov_vf_print_version(struct xe_gt *gt, struct drm_printer *p)
 		   GUC_RELAY_VERSION_LATEST_MAJOR, GUC_RELAY_VERSION_LATEST_MINOR);
 	drm_printf(p, "\thandshake:\t%u.%u\n",
 		   pf_version->major, pf_version->minor);
+
[… more lines in the raw message]

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

drivers/gpu/drm/xe/xe_gt_sriov_vf.h +3 -3
index 0af1dc769fe0..7f6c59b1ef7b 100644

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

drivers/gpu/drm/xe/xe_oa.c +4 -2
index 98bfb127eafc..7d04591e297a 100644

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

drivers/hid/hid-quirks.c +1 -1
index f6be3ffee023..04d3ec360c1d 100644

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

drivers/hid/hid-uclogic-core.c +3 -1
index 34fb03ae8ee2..c6db3e7c5fd3 100644

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

drivers/hid/intel-thc-hid/intel-quickspi/quickspi-protocol.c +2 -2
index 16f780bc879b..cb19057f1191 100644

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

drivers/hwmon/lm90.c +22 -4
index c1f528e292f3..a465a8a7ef5a 100644

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

drivers/hwmon/pmbus/adm1266.c +21 -11
index d90f8f80be8e..9631a64cb1eb 100644

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

drivers/infiniband/hw/mana/main.c +1 -0
index fac159f7128d..4143be70eea2 100644

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

drivers/infiniband/sw/siw/siw_qp_rx.c +15 -0
index e8a88b378d51..34d03584160c 100644

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

drivers/infiniband/ulp/rtrs/rtrs-srv-sysfs.c +1 -1
index 3f305e694fe8..1b1c6ea4ee5a 100644

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

drivers/iommu/amd/debugfs.c +20 -23

43 lines not on this page · raw message

drivers/irqchip/irq-ath79-cpu.c +0 -7
index 923e4bba3776..9b7273a7f8ce 100644

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

drivers/mfd/bcm2835-pm.c +1 -0
index 3cb2b9423121..8bed59816e82 100644

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

drivers/net/dsa/mt7530.c +29 -18

47 lines not on this page · raw message

drivers/net/ethernet/airoha/airoha_eth.c +6 -4
index 27d62acfcc39..9781a6fc9bf9 100644

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

drivers/net/ethernet/amd/pds_core/debugfs.c +6 -1
index 04c5e3abd8d7..810a0cd9bcac 100644

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

drivers/net/ethernet/amd/pds_core/dev.c +9 -2
index 495ef4ef8c10..1d1e559bd99d 100644

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

drivers/net/ethernet/amd/pds_core/devlink.c +4 -2
index d8dc39da4161..621791a3c543 100644

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

drivers/net/ethernet/atheros/ag71xx.c +3 -0
index cbc730c7cff2..8e6bd99b22d7 100644

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

drivers/net/ethernet/broadcom/genet/bcmgenet.c +4 -5
index 63cdf6d9d077..abf6a6451cb1 100644

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

drivers/net/ethernet/cirrus/cs89x0.c +0 -2
index fa5857923db4..b4bfd6c174e7 100644

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

drivers/net/ethernet/cortina/gemini.c +19 -2
index 6a2004bbe87f..40bec34f06a7 100644

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

drivers/net/ethernet/intel/ice/ice_dcb_lib.c +2 -2
index 9fc8681cc58e..270f5a00ece3 100644

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

drivers/net/ethernet/intel/ice/ice_main.c +8 -2
index c064c3653c54..dc5d821bf334 100644

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

drivers/net/ethernet/intel/ice/ice_ptp_hw.c +26 -7
index d461e00d15e9..99bf38cf352a 100644

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

drivers/net/ethernet/intel/ice/ice_txrx.c +4 -3
index e0774a640955..73f08d02f9c7 100644

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

drivers/net/ethernet/intel/ice/virt/queues.c +1 -1
index 370f6ec2a374..a82024bf388b 100644

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

drivers/net/ethernet/intel/idpf/idpf_ptp.c +2 -2
index 0a8b50350b86..31c5593550e1 100644

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

drivers/net/ethernet/intel/igc/igc_tsn.c +8 -1
index 8a110145bfee..52de2bcbadbe 100644

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

drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c +1 -0
index d5ce20f47def..c999abd78481 100644

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

drivers/net/ethernet/marvell/octeontx2/af/cgx.c +6 -1
index 81b55f1416e0..c6b5f6564ed0 100644

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

drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c +1 -1
index 8658cb2143df..e28675fe1890 100644

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

drivers/net/ethernet/marvell/octeontx2/nic/rep.c +2 -1
index b476733a0234..3271ab5539a5 100644

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

drivers/net/ethernet/mellanox/mlx5/core/en/reporter_tx.c +3 -3
index d6ace2b6fc1d..198033620c83 100644

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

drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c +4 -3
index f03507a522b4..51fb857a2766 100644

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

drivers/net/ethernet/mellanox/mlx5/core/esw/ipsec_fs.c +2 -1
index 3cfe743610d3..ab50d2c734ed 100644

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

drivers/net/ethernet/microchip/lan966x/lan966x_main.c +5 -3
index 47752d3fde0b..1179a6e127c5 100644

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

drivers/net/ethernet/microsoft/mana/hw_channel.c +19 -10
index 840c6b8957c9..5faf4ca75b0f 100644

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

drivers/net/ethernet/qlogic/qed/qed_cxt.c +2 -0
index 33f4f58ee51c..1fb09372c25a 100644

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

drivers/net/ethernet/ti/icssm/icssm_prueth.c +1 -0
index 293b7af04263..cc92f2068584 100644

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

drivers/net/ifb.c +5 -6
index d3dc0914450a..0534d2471e61 100644

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

drivers/net/ovpn/io.c +6 -6
index 955c9a37e1f8..c03e58e28a86 100644

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

drivers/net/ovpn/main.c +2 -10
index 1bb1afe766a4..3f76b1b0e5f6 100644

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

drivers/net/ovpn/netlink.c +5 -3
index c7f382437630..bdb56ef0c904 100644

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

drivers/net/ovpn/peer.c +19 -4
index 4bfcab0c8652..87a83321f1dd 100644

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

drivers/net/ovpn/peer.h +0 -1
index a1423f2b09e0..4de5aeae33f7 100644

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

drivers/net/ovpn/stats.h +16 -0
index 53433d8b6c33..3a45b97c0056 100644

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

drivers/net/ovpn/tcp.c +12 -7
index 5499c1572f3e..505c2f214c9f 100644

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

drivers/net/ovpn/udp.c +1 -1
index 272b535ecaad..367563d84472 100644

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

drivers/net/phy/dp83tc811.c +1 -0
index e480c2a07450..252fb12b3e68 100644

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

drivers/net/phy/phy-c45.c +8 -0
index 61670be0f095..d2e36e460cc7 100644

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

drivers/net/phy/phy_device.c +4 -2
index dea8b94286d1..78cf05a17f8f 100644

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

drivers/net/pse-pd/pse_core.c +1 -1
index 23eb3c9d0bcd..af354483d191 100644

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

drivers/net/tap.c +1 -1
index 1197f245e873..6fd3b14273b3 100644

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

drivers/net/wireless/ath/ath10k/wmi.c +7 -8
index ce22141e5efd..cd20508399b9 100644

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

drivers/net/wireless/ath/ath11k/dp_rx.c +1 -2
index 44eea682c297..5666f6647445 100644

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

drivers/net/wireless/ath/ath11k/hal.c +11 -3
index 0c797b8d0a27..8330c9e7ac7d 100644

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

drivers/net/wireless/ath/ath11k/hal_rx.c +1 -4
index 753bd93f0212..51e0840bc0d1 100644

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

drivers/net/wireless/ath/ath11k/testmode.c +1 -0
index a9751ea2a0b7..c72eed358f6d 100644

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

drivers/net/wireless/ath/ath11k/wmi.c +16 -3
index 110035dae8a6..e1b00dc811e7 100644

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

drivers/net/wireless/intel/iwlwifi/mld/link.c +6 -7
index f6f52d297a72..e67ba3a24d02 100644

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

drivers/net/wireless/intel/iwlwifi/mld/tx.c +14 -1
index e3fb4fc4f452..a60bfb1a2ab2 100644

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

drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c +18 -9
index 49ffc4ecee85..44380ebfe09d 100644

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

drivers/net/wireless/intel/iwlwifi/mvm/utils.c +4 -10
index fa995e235d9b..63e84efdaa46 100644

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

drivers/net/wireless/microchip/wilc1000/wlan.c +1 -1
index fedc7d59216a..1cc4ee62987d 100644

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

drivers/net/wwan/iosm/iosm_ipc_imem.c +2 -0
index 530a3ea47a1a..ce7604500486 100644

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

drivers/nvme/host/ioctl.c +2 -3
index c212fa952c0f..5bbaf257fd6c 100644

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

drivers/nvme/host/pci.c +4 -2
index 2e32242bed67..5e36a5926fe0 100644

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

drivers/phy/marvell/phy-mvebu-a3700-utmi.c +2 -3
index 04f4fb4bed70..f882bc57649c 100644

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

drivers/phy/qualcomm/phy-qcom-qmp-ufs.c +1 -0
index dda877561f8c..8af777f7ddd0 100644

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

drivers/phy/samsung/phy-exynos5-usbdrd.c +4 -3
index 1c8bf80119f1..93ac302de1eb 100644

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

drivers/phy/tegra/xusb-tegra186.c +26 -7
index bec9616c4a2e..4452e73fb82a 100644

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

drivers/phy/tegra/xusb.h +1 -0
index d2b5f9565132..810b410672f3 100644

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

drivers/pinctrl/meson/pinctrl-amlogic-a4.c +3 -3
index e2293a872dcb..35d27626a336 100644

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

drivers/pinctrl/qcom/pinctrl-ipq4019.c +1 -1
index 6ede3149b6e1..07df812fb728 100644

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

drivers/pinctrl/qcom/pinctrl-msm.h +5 -0
index 4625fa5320a9..120217012a9f 100644

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

drivers/pinctrl/qcom/pinctrl-qcs615.c +3 -3
index f1c827ddbfbf..4d474c312c10 100644

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

drivers/pinctrl/qcom/pinctrl-sm8150.c +4 -4
index ad861cd66958..e4c561a9c50a 100644

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

drivers/pinctrl/renesas/pinctrl-rzg2l.c +15 -8
index ca360185740a..aaa783c79e6d 100644

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

drivers/platform/surface/surface_aggregator_registry.c +0 -2
index a594d5fcfcfd..d29158faba3e 100644

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

drivers/platform/x86/adv_swbutton.c +5 -1
index 6fa60f3fc53c..8f7a26e6de81 100644

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

drivers/platform/x86/hp/hp_accel.c +3 -0
index 10d5af18d639..39b73dc473f1 100644

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

drivers/platform/x86/intel/hid.c +5 -1
index c5e80887d0cb..f7e358be1af3 100644

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

drivers/platform/x86/intel/vbtn.c +5 -1
index 232cd12e3c9f..03b5bf461a86 100644

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

drivers/regulator/tps65219-regulator.c +95 -40

135 lines not on this page · raw message

drivers/scsi/isci/host.c +3 -0
index 6d2f4c831df7..ff199bab5d1a 100644

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

drivers/scsi/sd.c +1 -2
index 072d4c4add33..d9bae23cb929 100644

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

drivers/spi/spi-amd.c +1 -1
index 4d1dce4f4974..71a6e5c475b0 100644

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

drivers/spi/spi-dw-dma.c +1 -1
index b5bed02b7e50..31063f927092 100644

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

drivers/spi/spi-ep93xx.c +2 -0
index e1d097091925..52d2f8920cd7 100644

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

drivers/spi/spi-mtk-snfi.c +1 -1
index a026b0e61994..9e6038a5a2ad 100644

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

drivers/spi/spi-qup.c +3 -0
index a5c549479c7d..3134b9c1480a 100644

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

drivers/spi/spi-sprd.c +2 -1
index 218c38841f05..827a307c7c82 100644

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

drivers/spi/spi-ti-qspi.c +1 -0
index ba54d222d0e0..28a867c164c4 100644

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

drivers/virt/coco/sev-guest/sev-guest.c +7 -3
index 45b870b55feb..b6315cfe52bc 100644

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

fs/afs/dir.c +10 -1
index 89d36e3e5c79..fa84610e0b0d 100644

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

fs/btrfs/backref.c +5 -6
index 2ab550a1e715..e050d0938dc4 100644

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

fs/btrfs/block-group.c +1 -2
index a277c8cc9166..1e57f7d04c47 100644

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

fs/btrfs/ctree.c +7 -10
index 6e053caa6e10..27e2adc2ee71 100644

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

fs/btrfs/dir-item.c +1 -2
index 77e1bcb2a74b..085a83ae9e62 100644

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

fs/btrfs/extent-tree.c +23 -32

55 lines not on this page · raw message

fs/btrfs/free-space-tree.c +13 -16
index d86541073d42..c3734892d654 100644

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

fs/btrfs/fs.h +4 -0
index 37aa8d141a83..eccc61463947 100644

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

fs/btrfs/inode-item.c +1 -2
index 1bd73b80f9fa..7e14e1bbcf38 100644

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

fs/btrfs/inode.c +3 -4
index 2c361e0691fc..a4f1810db079 100644

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

fs/btrfs/ioctl.c +16 -44

60 lines not on this page · raw message

fs/btrfs/print-tree.c +6 -8
index 62b993fae54f..06edc5cdb00d 100644

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

fs/btrfs/qgroup.c +157 -113

270 lines not on this page · raw message

fs/btrfs/relocation.c +2 -2
index 0765e06d00b8..fc76013b1a3e 100644

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

fs/btrfs/root-tree.c +2 -2
index d07eab70f759..6a7e297ab0a7 100644

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

fs/btrfs/send.c +4 -6
index 9012ce7a742f..04473387ee8b 100644

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

fs/btrfs/super.c +3 -7
index c40944ca7b94..f1bfe97beacf 100644

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

fs/btrfs/tree-checker.c +9 -12
index 33a45737c4cf..db7402836340 100644

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

fs/btrfs/tree-log.c +19 -23

42 lines not on this page · raw message

fs/btrfs/volumes.c +1 -2
index ef9f24076cca..630fb5885692 100644

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

fs/btrfs/xattr.c +1 -2
index 79fb1614bd0c..b6f01d6c79e7 100644

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

fs/erofs/zdata.c +8 -7
index 71f01f0a0743..33932d56d3a4 100644

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

fs/fuse/dir.c +15 -5
index ecaec0fea3a1..1bc6982b5d6a 100644

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

fs/jfs/namei.c +1 -1
index 7879c049632b..553fca69cf42 100644

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

fs/mnt_idmapping.c +2 -0
index a37991fdb194..3640230a4d43 100644

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

fs/netfs/buffered_read.c +34 -30

64 lines not on this page · raw message

fs/netfs/buffered_write.c +110 -62

172 lines not on this page · raw message

fs/netfs/direct_read.c +13 -29

42 lines not on this page · raw message

fs/netfs/internal.h +3 -0
index d436e20d3418..645996ecfc80 100644

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

fs/netfs/iterator.c +17 -9
index 429e4396e1b0..b375567e0520 100644

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

fs/netfs/misc.c +6 -2
index 486166460e17..1109ac379128 100644

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

fs/netfs/read_collect.c +12 -1
index e5f6665b3341..4c7312a4c859 100644

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

fs/netfs/read_retry.c +9 -2
index cca9ac43c077..999177426141 100644

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

fs/netfs/read_single.c +10 -13
index 9d48ced80d1f..cb422de66d0c 100644

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

fs/netfs/write_issue.c +31 -15

46 lines not on this page · raw message

fs/nfsd/nfs4state.c +7 -0
index cb8096e94f51..a9e95df2fdb6 100644

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

fs/nsfs.c +1 -1
index f22c2a636e8f..e2f9a725883c 100644

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

fs/ntfs3/file.c +4 -8
index cd7aaeef45fe..5042eb321eb8 100644

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

fs/orangefs/namei.c +1 -1
index bec5475de094..75e65e72c2d6 100644

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

fs/smb/client/cifs_spnego.c +16 -0
index 9891f55bac1e..60b4147d0eea 100644

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

fs/smb/client/cifsfs.c +2 -0
index 4b34a4304edb..9059c2efbcc0 100644

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

fs/smb/client/netlink.c +5 -1
index 147d9409252c..0dd10913c37a 100644

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

fs/smb/client/smb2ops.c +2 -2
index eed3a71171c0..e1a9e89cb85f 100644

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

fs/smb/client/smb2transport.c +2 -0
index db98ced541ba..7483b29367d5 100644

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

fs/smb/server/oplock.c +5 -1
index bbb2cb3782d0..a84c01bceb8b 100644

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

fs/smb/server/smb2pdu.c +13 -2
index 756624b4e90e..da7b96707186 100644

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

fs/smb/server/smbacl.c +59 -19

78 lines not on this page · raw message

fs/smb/server/vfs_cache.c +89 -31

120 lines not on this page · raw message

fs/sysfs/group.c +1 -1
index e142bac4f9f8..68c75913c978 100644

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

fs/zonefs/super.c +5 -1
index 70be0b3dda49..7e345a6aa551 100644

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

include/asm-generic/kprobes.h +1 -1
index 060eab094e5a..5290a2b2e15a 100644

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

include/asm-generic/ring_buffer.h new file +13 -0
new file mode 100644
index 000000000000..201d2aee1005

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

include/crypto/krb5.h +6 -3
index 71dd38f59be1..aac3ecf88467 100644

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

include/drm/drm_modeset_helper_vtables.h +12 -0
index ce7c7aeac887..fe32854b7ffe 100644

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

include/drm/drm_vblank.h +32 -0
index 151ab1e85b1b..ffa564d79638 100644

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

include/drm/drm_vblank_helper.h new file +56 -0

56 lines not on this page · raw message

include/linux/cgroup.h +1 -0
index 6ed477338b16..7b2807009155 100644

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

include/linux/cleanup.h +5 -0
index 19c7e475d3a4..a1194e44b527 100644

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

include/linux/fprobe.h +5 -0
index 0a3bcd1718f3..be1b38c981d4 100644

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

include/linux/fwnode.h +1 -0
index 80b38fbf2121..31df7608737e 100644

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

include/linux/gfp_types.h +5 -5
index 65db9349f905..63bee08c6f31 100644

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

include/linux/highmem.h +4 -3
index abc20f9810fd..029172383b76 100644

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

include/linux/libata.h +4 -3
index 3b8bdea8516d..5c3f98a418c3 100644

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

include/linux/netfilter/x_tables.h +2 -1
index 77c778d84d4c..3aef60abd362 100644

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

include/linux/netfilter_arp/arp_tables.h +0 -1
index a40aaf645fa4..05631a25e622 100644

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

include/linux/netfilter_ipv4/ip_tables.h +0 -1
index 132b0e4a6d4d..13593391d605 100644

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

include/linux/netfilter_ipv6/ip6_tables.h +0 -1
index 8b8885a73c76..c6d5b927830d 100644

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

include/linux/netfs.h +1 -1
index ba17ac5bf356..62a528f90666 100644

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

include/linux/soc/airoha/airoha_offload.h +3 -3
index 0e82f1f4d36c..d4f6e8124a49 100644

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

include/net/bluetooth/bluetooth.h +1 -0
index d46ed9011ee5..3791915e4a0a 100644

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

include/net/net_shaper.h +1 -0
index 5c3f49b52fe9..3939b816b001 100644

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

include/net/netfilter/nf_queue.h +1 -0
index d17035d14d96..3978c3174cdb 100644

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

include/net/tcp.h +4 -3
index cf507b989bff..f460d2c391de 100644

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

include/trace/events/btrfs.h +1 -3
index 0864700f76e0..fa090a455037 100644

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

include/trace/events/netfs.h +8 -0
index cbe28211106c..3fe3980902c2 100644

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

include/trace/events/rxrpc.h +1 -0
index 573f2df3a2c9..704a10de6670 100644

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

io_uring/net.c +25 -1
index ad08f693bccb..7595850c2217 100644

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

io_uring/nop.c +2 -2
index 3caf07878f8a..f5c9969e7f64 100644

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

io_uring/waitid.c +1 -0
index 53532ae6256c..921b4de3a31c 100644

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

kernel/cgroup/cpuset.c +4 -4
index 08b0c264bd26..5057cf44342b 100644

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

kernel/cgroup/rstat.c +23 -14
index 150e5871e66f..de816a43db9f 100644

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

kernel/dma/debug.c +8 -1
index 21db33118591..fa4aac333917 100644

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

kernel/dma/mapping.c +0 -4
index fe7472f13b10..35e4556b9556 100644

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

kernel/irq_work.c +7 -0
index 73f7e1fd4ab4..bf411656c316 100644

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

kernel/sched/core.c +61 -98

159 lines not on this page · raw message

kernel/sched/ext.c +21 -23

44 lines not on this page · raw message

kernel/sched/sched.h +24 -9
index f750dea7b787..668841022dbf 100644

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

kernel/sched/syscalls.c +53 -42

95 lines not on this page · raw message

kernel/trace/bpf_trace.c +2 -1
index 70f1292b7ddb..88f470b31375 100644

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

kernel/trace/fprobe.c +137 -63

200 lines not on this page · raw message

kernel/trace/ring_buffer.c +25 -5
index a31fb4b7a52e..bef1c05b9b71 100644

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

kernel/trace/trace_events_hist.c +2 -4
index cb9e06713868..0089c257b465 100644

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

kernel/trace/tracing_map.c +13 -4
index 7f8da4dab69d..ba52813ce51b 100644

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

lib/kunit/Kconfig +3 -2
index 7a6af361d2fc..889380c2702c 100644

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

lib/tests/test_kprobes.c +18 -11
index b7582010125c..06e729e4de05 100644

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

mm/damon/sysfs-schemes.c +1 -0
index ca82dc78f0b9..a7be6ea812e4 100644

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

mm/memcontrol.c +3 -3
index 61cf6af26f3c..4df68e5468ad 100644

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

mm/memory.c +20 -4
index 94bf107a47ca..42b733b78523 100644

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

mm/memory_hotplug.c +2 -0
index aa1f74414307..6a7714179c20 100644

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

mm/page_alloc.c +4 -4
index f67696618003..775e02b797a3 100644

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

net/batman-adv/bat_iv_ogm.c +65 -17

82 lines not on this page · raw message

net/batman-adv/bat_v_ogm.c +35 -24

59 lines not on this page · raw message

net/batman-adv/bridge_loop_avoidance.c +73 -36

109 lines not on this page · raw message

net/batman-adv/distributed-arp-table.c +3 -0
index 8b8132eb0a79..031c295fff1b 100644

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

net/batman-adv/fragmentation.c +52 -6

58 lines not on this page · raw message

net/batman-adv/gateway_client.c +4 -0
index 7a11b245e9f4..ff341c270d91 100644

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

net/batman-adv/mesh-interface.c +1 -0
index df7e95811ef5..dcdc82f6af8c 100644

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

net/batman-adv/originator.c +2 -2
index a662408ad867..ae195053e060 100644

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

net/batman-adv/tp_meter.c +75 -42

117 lines not on this page · raw message

net/batman-adv/translation-table.c +45 -10

55 lines not on this page · raw message

net/batman-adv/tvlv.c +20 -8
index 76dff1f9c559..cde798c82dcf 100644

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

net/batman-adv/tvlv.h +1 -1
index e5697230d991..f96f6b3f44a0 100644

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

net/batman-adv/types.h +44 -15

59 lines not on this page · raw message

net/bluetooth/af_bluetooth.c +75 -22

97 lines not on this page · raw message

net/bluetooth/bnep/core.c +1 -1
index d44987d4515c..b3cef7a4db54 100644

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

net/bluetooth/iso.c +13 -1
index 46ebd69026fe..038e292fb194 100644

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

net/bluetooth/l2cap_core.c +1 -1
index bcb13ce53109..87ebe81277c5 100644

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

net/bluetooth/l2cap_sock.c +44 -7

51 lines not on this page · raw message

net/bluetooth/mgmt.c +6 -0
index 9065a864bc65..91d1c0d132f9 100644

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

net/bluetooth/rfcomm/sock.c +8 -1
index 913402806fa0..3052436e9c6d 100644

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

net/bluetooth/sco.c +8 -1
index 9404fdb10ea6..a536c2edd14f 100644

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

net/bridge/br_mrp_netlink.c +2 -2
index ce6f63c77cc0..86f0e75d6e34 100644

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

net/bridge/br_multicast.c +24 -3
index 5855eb050208..b77b3250afbd 100644

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

net/bridge/netfilter/ebtable_broute.c +6 -8
index 741360219552..f05c79f215ea 100644

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

net/bridge/netfilter/ebtable_filter.c +6 -8
index dacd81b12e62..0fc03b07e62a 100644

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

net/bridge/netfilter/ebtable_nat.c +5 -7
index 0f2a8c6118d4..8a10375d8909 100644

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

net/bridge/netfilter/ebtables.c +43 -28

71 lines not on this page · raw message

net/core/dev.c +12 -9
index 29f2f35ae5eb..681d7de89c50 100644

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

net/core/gro.c +3 -0
index 867611d171db..b5f790a643d4 100644

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

net/core/skmsg.c +7 -2
index 35a6acbf9a57..75ea4fdb2764 100644

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

net/ethtool/bitset.c +4 -4
index f0883357d12e..4691d6d0f2b7 100644

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

net/ethtool/phy.c +33 -3
index 68372bef4b2f..98392a3c34b5 100644

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

net/ipv4/inet_connection_sock.c +1 -1
index ed773cd48876..c777895a720e 100644

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

net/ipv4/netfilter/arp_tables.c +4 -14
index 97ead883e4a1..f3dadbc416a3 100644

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

net/ipv4/netfilter/arptable_filter.c +14 -13
index 78cd5ee24448..370b635e3523 100644

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

net/ipv4/netfilter/ip_tables.c +4 -14
index 23c8deff8095..f4079f0718de 100644

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

net/ipv4/netfilter/iptable_filter.c +14 -13
index 3ab908b74795..672d7da1071d 100644

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

net/ipv4/netfilter/iptable_mangle.c +15 -14
index 385d945d8ebe..13d25d9a4610 100644

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

net/ipv4/netfilter/iptable_nat.c +5 -1
index 625a1ca13b1b..a0df72554025 100644

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

net/ipv4/netfilter/iptable_raw.c +13 -13
index 0e7f53964d0a..2745c22f4034 100644

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

net/ipv4/netfilter/iptable_security.c +14 -13
index d885443cb267..491894511c54 100644

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

net/ipv4/raw.c +1 -1
index d54ebb7df966..f79f4c29a043 100644

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

net/ipv4/tcp.c +0 -3
index 2de4748269ca..6fc00b38695b 100644

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

net/ipv4/tcp_ao.c +2 -1
index 849a69c1f497..aa624434b555 100644

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

net/ipv4/tcp_input.c +6 -9
index b5cf32a56c04..c650398e9199 100644

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

net/ipv4/tcp_ipv4.c +2 -1
index 702fdff58f7a..36206fc6aed2 100644

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

net/ipv6/exthdrs.c +16 -5
index ec03bcff6b65..d15e60943820 100644

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

net/ipv6/netfilter/ip6_tables.c +4 -14
index d585ac3c1113..dfaea4f6727e 100644

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

net/ipv6/netfilter/ip6t_hbh.c +4 -0
index e7a3fb9355ee..450dd53846a2 100644

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

net/ipv6/netfilter/ip6table_filter.c +13 -13
index e8992693e14a..b074fc477676 100644

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

net/ipv6/netfilter/ip6table_mangle.c +14 -13
index 8dd4cd0c47bd..e6ee036a9b2c 100644

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

net/ipv6/netfilter/ip6table_nat.c +5 -1
index 5be723232df8..c2394e2c94b5 100644

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

net/ipv6/netfilter/ip6table_raw.c +12 -12
index fc9f6754028f..3b161ee875bc 100644

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

net/ipv6/netfilter/ip6table_security.c +14 -13
index 4df14a9bae78..4bd5d97b8ab6 100644

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

net/ipv6/tcp_ipv6.c +2 -1
index 7f20db11e8ce..59b5900dd42b 100644

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

net/l2tp/l2tp_core.c +1 -1
index 9156a937334a..be32bf45d583 100644

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

net/mac80211/mlme.c +4 -1
index bcc4090ddc1a..5d1da779cd6f 100644

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

net/mac80211/parse.c +31 -40

71 lines not on this page · raw message

net/mptcp/pm.c +46 -10

56 lines not on this page · raw message

net/netfilter/ipset/ip_set_hash_ipmark.c +5 -1
index a22ec1a6f6ec..e26ca2a370e3 100644

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

net/netfilter/ipset/ip_set_hash_ipport.c +4 -1
index e977b5a9c48d..41ca24a22a02 100644

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

net/netfilter/ipset/ip_set_hash_ipportip.c +4 -1
index 39a01934b153..b9ac2efaa15c 100644

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

net/netfilter/ipset/ip_set_hash_ipportnet.c +4 -1
index 5c6de605a9fb..2d6652d43199 100644

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

net/netfilter/nf_queue.c +3 -1
index 7f12e56e6e52..dd416c8532c5 100644

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

net/netfilter/nfnetlink_queue.c +2 -0
index fe5942535245..d42e8ac3062f 100644

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

net/netfilter/nft_inner.c +1 -2
index c4569d4b9228..ad08a43535b5 100644

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

net/netfilter/x_tables.c +86 -14

100 lines not on this page · raw message

net/phonet/pep.c +17 -2
index 4db564d9d522..058a16c423ae 100644

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

net/rxrpc/rxgk.c +13 -2
index c39f5066d8e8..04a761c79548 100644

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

net/shaper/shaper.c +154 -66

220 lines not on this page · raw message

net/smc/af_smc.c +2 -1
index 6421c2e1c84d..5915fcdef743 100644

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

net/smc/smc_tracepoint.h +1 -1
index a9a6e3c1113a..53da84f57fd6 100644

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

net/tls/tls_sw.c +32 -14

46 lines not on this page · raw message

net/unix/af_unix.c +2 -9
index 33ed8ecb556d..faf04d1b6c01 100644

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

net/vmw_vsock/virtio_transport_common.c +49 -54

103 lines not on this page · raw message

net/vmw_vsock/vmci_transport.c +1 -1
index aca3132689cf..4cd11f355e9d 100644

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

net/wireless/scan.c +3 -0
index 9a0c02c23dc5..4a1cdfc3221c 100644

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

scripts/gcc-plugins/gcc-common.h +3 -1
index 8f1b3500f8e2..abb1964c44d4 100644

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

scripts/package/PKGBUILD +1 -1
index 452374d63c24..1213c8e04671 100644

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

security/keys/keyring.c +1 -0
index f331725d5a37..df2580072cfe 100644

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

security/lsm_syscalls.c +8 -1
index 8440948a690c..b3887c85a2ba 100644

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

sound/core/pcm_lib.c +3 -0
index 6eaa950504cf..932b9337c93e 100644

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

sound/core/seq/seq_ump_client.c +18 -4
index ebbe1cbe0b9b..9a6b4b61bd74 100644

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

sound/hda/codecs/realtek/alc269.c +6 -6
index ea98cbc4310d..4cd5b719556e 100644

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

sound/hda/codecs/side-codecs/cs35l41_hda.c +3 -1
index 21e00055c0c4..47263c5a021c 100644

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

sound/hda/codecs/side-codecs/cs35l56_hda.c +1 -0
index 79c15e21d4bc..1d25fe01066e 100644

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

sound/pci/asihpi/hpicmn.c +6 -0
index 7d1abaedb46a..f06f44b13d3d 100644

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

sound/soc/amd/acp/acp-sdw-legacy-mach.c +1 -1
index 798c73d7e26d..e87d9e9991e1 100644

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

sound/soc/codecs/cs35l56-sdw.c +2 -1
index 42d24ac2977f..a513a15d7e5a 100644

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

sound/soc/codecs/fs210x.c +1 -1
index e2f85714972d..e2207c53c50d 100644

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

sound/soc/sdw_utils/soc_sdw_utils.c +4 -0
index 3848c7df1916..3facb78748ac 100644

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

sound/soc/soc-utils.c +1 -0
index c8adfff826bd..9cb7567e263e 100644

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

sound/soc/sof/amd/acp.c +1 -1
index 71a18f156de2..f615b8d1c802 100644

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

sound/usb/misc/ua101.c +3 -2
index 99e98b5e3241..586ef13097a3 100644

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

sound/usb/mixer_scarlett2.c +7 -2
index a75a4610663e..da3c2741ef57 100644

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

tools/testing/selftests/mm/hmm-tests.c +50 -0

50 lines not on this page · raw message

tools/testing/selftests/mm/run_vmtests.sh +1 -1
index d9173f2312b7..1edb2d785d93 100755

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

tools/testing/selftests/net/lib/xdp_native.bpf.c +30 -25

55 lines not on this page · raw message

tools/testing/selftests/ublk/kublk.c +11 -0
index cbd23444c8a9..ac47979349a4 100644

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

The rest of this diff is not shown. View the raw message.

Part of the diff is not shown here. View the raw message.