Skip to contentSkip to conversation

Linux 6.13.8

DISCUSSION Greg Kroah-Hartman 1 participant 2 messages Mar 22, 2025 Stable branch

lore
Share & tools
lore

Greg Kroah-Hartman

author maintainer
#0 lore raw

I'm announcing the release of the 6.13.8 kernel.

All users of the 6.13 kernel series must upgrade.

The updated 6.13.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-6.13.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/rust/quick-start.rst                                   |    2 
 Makefile                                                             |    2 
 arch/alpha/include/asm/elf.h                                         |    6 
 arch/alpha/include/asm/pgtable.h                                     |    2 
 arch/alpha/include/asm/processor.h                                   |    8 
 arch/alpha/kernel/osf_sys.c                                          |   11 
 arch/arm64/include/asm/tlbflush.h                                    |   22 -
 arch/arm64/kernel/topology.c                                         |   22 -
 arch/arm64/mm/mmu.c                                                  |    5 
 arch/loongarch/kvm/switch.S                                          |    2 
 arch/loongarch/mm/pageattr.c                                         |    3 
 arch/x86/events/intel/core.c                                         |   85 ++++
 arch/x86/events/rapl.c                                               |    1 
 arch/x86/include/asm/sev.h                                           |    6 
 arch/x86/kernel/cpu/microcode/amd.c                                  |    2 
 arch/x86/kernel/cpu/vmware.c                                         |    4 
 arch/x86/kernel/devicetree.c                                         |    3 
 arch/x86/kernel/irq.c                                                |    2 
 arch/x86/kvm/mmu/mmu.c                                               |    2 
 block/bio.c                                                          |    2 
 drivers/acpi/resource.c                                              |    6 
 drivers/block/null_blk/main.c                                        |    4 
 drivers/block/virtio_blk.c                                           |    5 
 drivers/clk/samsung/clk-gs101.c                                      |    8 
 drivers/clk/samsung/clk-pll.c                                        |    7 
 drivers/firmware/iscsi_ibft.c                                        |    5 
 drivers/gpio/gpiolib-cdev.c                                          |   15 
 drivers/gpio/gpiolib.c                                               |    8 
 drivers/gpio/gpiolib.h                                               |    5 
 drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c                               |    5 
 drivers/gpu/drm/amd/amdgpu/vce_v2_0.c                                |    2 
 drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c                |    8 
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c                    |   12 
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c               |    1 
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c                |   64 ++-
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c              |    7 
 drivers/gpu/drm/amd/display/dc/core/dc_resource.c                    |    7 
 drivers/gpu/drm/amd/display/dc/dce60/dce60_timing_generator.c        |    1 
 drivers/gpu/drm/amd/display/dc/dml2/dml21/dml21_translation_helper.c |    4 
 drivers/gpu/drm/amd/display/dc/dml2/dml2_translation_helper.c        |    6 
 drivers/gpu/drm/display/drm_dp_mst_topology.c                        |   40 +-
 drivers/gpu/drm/drm_atomic_uapi.c                                    |    4 
 drivers/gpu/drm/drm_connector.c                                      |    4 
 drivers/gpu/drm/drm_panic_qr.rs                                      |   16 
 drivers/gpu/drm/gma500/mid_bios.c                                    |    5 
 drivers/gpu/drm/hyperv/hyperv_drm_drv.c                              |    2 
 drivers/gpu/drm/i915/display/intel_display.c                         |    5 
 drivers/gpu/drm/i915/gem/i915_gem_mman.c                             |    5 
 drivers/gpu/drm/nouveau/nouveau_connector.c                          |    1 
 drivers/gpu/drm/tests/drm_hdmi_state_helper_test.c                   |  193 ++++------
 drivers/gpu/drm/vkms/vkms_composer.c                                 |    2 
 drivers/gpu/drm/xe/xe_guc_ct.c                                       |    6 
 drivers/gpu/drm/xe/xe_guc_log.c                                      |    3 
 drivers/gpu/drm/xe/xe_guc_submit.c                                   |    4 
 drivers/gpu/drm/xe/xe_hmm.c                                          |    6 
 drivers/gpu/drm/xe/xe_pm.c                                           |   13 
 drivers/hid/Kconfig                                                  |    3 
 drivers/hid/hid-apple.c                                              |   13 
 drivers/hid/hid-ids.h                                                |    3 
 drivers/hid/hid-quirks.c                                             |    1 
 drivers/hid/hid-steam.c                                              |    6 
 drivers/hid/hid-topre.c                                              |    7 
 drivers/hid/intel-ish-hid/ipc/hw-ish.h                               |    2 
 drivers/hid/intel-ish-hid/ipc/ipc.c                                  |   15 
 drivers/hid/intel-ish-hid/ipc/pci-ish.c                              |    7 
 drivers/hid/intel-ish-hid/ishtp/ishtp-dev.h                          |    2 
 drivers/hv/vmbus_drv.c                                               |   13 
 drivers/i2c/busses/i2c-ali1535.c                                     |   12 
 drivers/i2c/busses/i2c-ali15x3.c                                     |   12 
 drivers/i2c/busses/i2c-sis630.c                                      |   12 
 drivers/input/joystick/xpad.c                                        |   39 +-
 drivers/input/misc/iqs7222.c                                         |   50 +-
 drivers/input/serio/i8042-acpipnpio.h                                |  111 ++---
 drivers/input/touchscreen/ads7846.c                                  |    2 
 drivers/input/touchscreen/goodix_berlin_core.c                       |   24 -
 drivers/irqchip/irq-riscv-imsic-early.c                              |    2 
 drivers/irqchip/irq-thead-c900-aclint-sswi.c                         |    2 
 drivers/md/dm-flakey.c                                               |    2 
 drivers/net/bonding/bond_options.c                                   |   55 ++
 drivers/net/dsa/mv88e6xxx/chip.c                                     |   59 ++-
 drivers/net/ethernet/broadcom/bnxt/bnxt.c                            |   25 +
 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c                        |   13 
 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.h                        |    3 
 drivers/net/ethernet/intel/ice/ice_arfs.c                            |    2 
 drivers/net/ethernet/intel/ice/ice_eswitch.c                         |    6 
 drivers/net/ethernet/intel/ice/ice_lag.c                             |   27 +
 drivers/net/ethernet/intel/ice/ice_lib.c                             |   18 
 drivers/net/ethernet/intel/ice/ice_lib.h                             |    4 
 drivers/net/ethernet/intel/ice/ice_txrx.c                            |    4 
 drivers/net/ethernet/mellanox/mlx5/core/devlink.c                    |    3 
 drivers/net/ethernet/mellanox/mlx5/core/en/rep/bridge.c              |   12 
 drivers/net/ethernet/mellanox/mlx5/core/en_main.c                    |    6 
 drivers/net/ethernet/mellanox/mlx5/core/eq.c                         |    2 
 drivers/net/ethernet/mellanox/mlx5/core/irq_affinity.c               |    2 
 drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c                    |    4 
 drivers/net/ethernet/mellanox/mlx5/core/lag/lag.h                    |    1 
 drivers/net/ethernet/mellanox/mlx5/core/lag/mpesw.c                  |    3 
 drivers/net/ethernet/mellanox/mlx5/core/lib/fs_chains.c              |    5 
 drivers/net/ethernet/mellanox/mlx5/core/mlx5_irq.h                   |    4 
 drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c                    |   13 
 drivers/net/ethernet/mellanox/mlx5/core/pci_irq.h                    |    2 
 drivers/net/ethernet/mellanox/mlx5/core/steering/hws/bwc.h           |    2 
 drivers/net/ethernet/microsoft/mana/gdma_main.c                      |   11 
 drivers/net/ethernet/microsoft/mana/mana_en.c                        |   10 
 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c             |    8 
 drivers/net/ethernet/realtek/rtase/rtase_main.c                      |   10 
 drivers/net/mctp/mctp-i2c.c                                          |    5 
 drivers/net/mctp/mctp-i3c.c                                          |    5 
 drivers/net/phy/nxp-c45-tja11xx.c                                    |   68 +++
 drivers/net/wireless/intel/iwlwifi/mvm/fw.c                          |    6 
 drivers/net/wwan/mhi_wwan_mbim.c                                     |    2 
 drivers/nvme/host/apple.c                                            |    5 
 drivers/nvme/host/core.c                                             |   14 
 drivers/nvme/host/fc.c                                               |   59 ---
 drivers/nvme/host/pci.c                                              |    7 
 drivers/nvme/target/rdma.c                                           |   33 +
 drivers/phy/ti/phy-gmii-sel.c                                        |   15 
 drivers/pinctrl/bcm/pinctrl-bcm281xx.c                               |    2 
 drivers/pinctrl/nuvoton/pinctrl-npcm8xx.c                            |    3 
 drivers/platform/x86/intel/int3472/discrete.c                        |   85 +++-
 drivers/platform/x86/intel/pmc/core.c                                |    4 
 drivers/platform/x86/thinkpad_acpi.c                                 |   50 +-
 drivers/powercap/powercap_sys.c                                      |    3 
 drivers/s390/cio/chp.c                                               |    3 
 drivers/scsi/qla1280.c                                               |    2 
 drivers/scsi/scsi_scan.c                                             |    2 
 drivers/spi/spi-microchip-core.c                                     |   41 --
 drivers/thermal/cpufreq_cooling.c                                    |    2 
 drivers/ufs/core/ufshcd.c                                            |    7 
 drivers/usb/phy/phy-generic.c                                        |    2 
 drivers/usb/serial/ftdi_sio.c                                        |   14 
 drivers/usb/serial/ftdi_sio_ids.h                                    |   13 
 drivers/usb/serial/option.c                                          |   48 +-
 drivers/usb/typec/tcpm/tcpm.c                                        |    8 
 drivers/vhost/vhost.c                                                |    2 
 drivers/video/fbdev/hyperv_fb.c                                      |   52 +-
 drivers/virt/coco/sev-guest/sev-guest.c                              |   63 ++-
 drivers/xen/swiotlb-xen.c                                            |    2 
 fs/btrfs/extent_io.c                                                 |   11 
 fs/btrfs/qgroup.c                                                    |    6 
 fs/fuse/dir.c                                                        |    2 
 fs/namei.c                                                           |   24 -
 fs/netfs/read_collect.c                                              |    2 
 fs/smb/client/asn1.c                                                 |    2 
 fs/smb/client/cifs_spnego.c                                          |    4 
 fs/smb/client/cifsglob.h                                             |    4 
 fs/smb/client/connect.c                                              |   16 
 fs/smb/client/fs_context.c                                           |   18 
 fs/smb/client/inode.c                                                |   13 
 fs/smb/client/reparse.c                                              |    5 
 fs/smb/client/sess.c                                                 |    3 
 fs/smb/client/smb2pdu.c                                              |    4 
 fs/smb/common/smbfsctl.h                                             |    3 
 fs/smb/server/connection.c                                           |   20 +
 fs/smb/server/connection.h                                           |    2 
 fs/smb/server/ksmbd_work.c                                           |    3 
 fs/smb/server/ksmbd_work.h                                           |    1 
 fs/smb/server/oplock.c                                               |   43 +-
 fs/smb/server/oplock.h                                               |    1 
 fs/smb/server/server.c                                               |   14 
 fs/vboxsf/super.c                                                    |    3 
 include/asm-generic/vmlinux.lds.h                                    |    1 
 include/linux/blk-mq.h                                               |   16 
 include/linux/fs.h                                                   |    2 
 include/linux/hugetlb.h                                              |    5 
 include/linux/module.h                                               |    5 
 include/linux/pci_ids.h                                              |    1 
 include/net/bluetooth/hci_core.h                                     |  108 +----
 include/net/bluetooth/l2cap.h                                        |    3 
 include/net/netfilter/nf_tables.h                                    |    4 
 include/sound/soc.h                                                  |    5 
 init/Kconfig                                                         |    2 
 io_uring/futex.c                                                     |    2 
 io_uring/io-wq.c                                                     |   23 -
 kernel/futex/core.c                                                  |    5 
 kernel/futex/futex.h                                                 |   11 
 kernel/futex/pi.c                                                    |    2 
 kernel/futex/waitwake.c                                              |    4 
 kernel/rcu/tree.c                                                    |   14 
 kernel/sched/core.c                                                  |    5 
 kernel/sched/debug.c                                                 |    2 
 kernel/sched/ext.c                                                   |    3 
 kernel/time/hrtimer.c                                                |   22 -
 kernel/vhost_task.c                                                  |    4 
 mm/hugetlb.c                                                         |    8 
 mm/page_isolation.c                                                  |   10 
 mm/userfaultfd.c                                                     |   91 +++-
 net/bluetooth/hci_core.c                                             |   10 
 net/bluetooth/hci_event.c                                            |   37 +
 net/bluetooth/iso.c                                                  |    6 
 net/bluetooth/l2cap_core.c                                           |  181 ++++-----
 net/bluetooth/l2cap_sock.c                                           |   15 
 net/bluetooth/rfcomm/core.c                                          |    6 
 net/bluetooth/sco.c                                                  |   25 -
 net/core/dev.c                                                       |    5 
 net/core/netpoll.c                                                   |    9 
 net/ipv6/addrconf.c                                                  |   15 
 net/mac80211/eht.c                                                   |    9 
 net/mac80211/util.c                                                  |    8 
 net/mctp/route.c                                                     |   10 
 net/mctp/test/route-test.c                                           |  109 +++++
 net/mptcp/protocol.h                                                 |    2 
 net/netfilter/ipvs/ip_vs_ctl.c                                       |    8 
 net/netfilter/nf_conncount.c                                         |    6 
 net/netfilter/nf_tables_api.c                                        |   24 -
 net/netfilter/nft_compat.c                                           |    8 
 net/netfilter/nft_ct.c                                               |    6 
 net/netfilter/nft_exthdr.c                                           |   10 
 net/openvswitch/conntrack.c                                          |   30 -
 net/openvswitch/datapath.h                                           |    3 
 net/openvswitch/flow_netlink.c                                       |   15 
 net/sched/sch_api.c                                                  |    6 
 net/sched/sch_gred.c                                                 |    3 
 net/sctp/stream.c                                                    |    2 
 net/switchdev/switchdev.c                                            |   25 -
 net/wireless/core.c                                                  |    7 
 rust/kernel/alloc/allocator_test.rs                                  |   18 
 rust/kernel/error.rs                                                 |    2 
 rust/kernel/init.rs                                                  |   23 -
 rust/kernel/init/macros.rs                                           |    6 
 rust/kernel/lib.rs                                                   |    2 
 rust/kernel/sync.rs                                                  |   16 
 scripts/generate_rust_analyzer.py                                    |   73 ++-
 scripts/mod/modpost.c                                                |   35 +
 scripts/mod/modpost.h                                                |    6 
 scripts/module.lds.S                                                 |    1 
 scripts/rustdoc_test_gen.rs                                          |    4 
 sound/hda/intel-dsp-config.c                                         |    5 
 sound/pci/hda/hda_intel.c                                            |    2 
 sound/pci/hda/patch_realtek.c                                        |    1 
 sound/soc/amd/yc/acp6x-mach.c                                        |    7 
 sound/soc/codecs/arizona.c                                           |   14 
 sound/soc/codecs/cs42l43.c                                           |    2 
 sound/soc/codecs/madera.c                                            |   10 
 sound/soc/codecs/rt722-sdca-sdw.c                                    |    4 
 sound/soc/codecs/tas2764.c                                           |   10 
 sound/soc/codecs/tas2764.h                                           |    8 
 sound/soc/codecs/tas2770.c                                           |    2 
 sound/soc/codecs/wm0010.c                                            |   13 
 sound/soc/codecs/wm5110.c                                            |    8 
 sound/soc/generic/simple-card-utils.c                                |    1 
 sound/soc/intel/boards/sof_sdw.c                                     |   43 +-
 sound/soc/intel/common/soc-acpi-intel-mtl-match.c                    |    2 
 sound/soc/renesas/rcar/core.c                                        |   14 
 sound/soc/renesas/rcar/rsnd.h                                        |    1 
 sound/soc/renesas/rcar/src.c                                         |  116 ++++--
 sound/soc/renesas/rcar/ssi.c                                         |    3 
 sound/soc/soc-ops.c                                                  |   15 
 sound/soc/sof/amd/acp-ipc.c                                          |   23 -
 sound/soc/sof/amd/acp.c                                              |    1 
 sound/soc/sof/amd/acp.h                                              |    1 
 sound/soc/sof/amd/vangogh.c                                          |   18 
 sound/soc/sof/intel/hda-codec.c                                      |    1 
 sound/soc/sof/intel/hda.c                                            |   18 
 sound/soc/sof/intel/pci-ptl.c                                        |    1 
 sound/soc/tegra/tegra210_adx.c                                       |    4 
 tools/objtool/check.c                                                |    9 
 tools/sched_ext/include/scx/common.bpf.h                             |   11 
 tools/sound/dapm-graph                                               |    2 
 tools/testing/selftests/bpf/prog_tests/sockmap_basic.c               |    6 
 tools/testing/selftests/bpf/prog_tests/xdp_cpumap_attach.c           |    4 
 tools/testing/selftests/bpf/prog_tests/xdp_devmap_attach.c           |    8 
 tools/testing/selftests/cgroup/test_cpuset_v1_hp.sh                  |    2 
 tools/testing/selftests/drivers/net/bonding/bond_options.sh          |    4 
 tools/testing/selftests/filesystems/statmount/statmount_test.c       |   22 +
 tools/testing/selftests/sched_ext/dsp_local_on.bpf.c                 |    2 
 266 files changed, 2455 insertions(+), 1273 deletions(-)

Aaron Ma (1):
perf/x86/rapl: Add support for Intel Arrow Lake U

Ajay Kaher (1):
x86/vmware: Parse MP tables for SEV-SNP enabled guests under VMware hypervisors

Alban Kurti (2):
rust: error: add missing newline to pr_warn! calls
rust: init: add missing newline to pr_info! calls

Alex Deucher (1):
drm/amdgpu/vce2: fix ip block reference

Alex Henrie (2):
HID: apple: fix up the F6 key on the Omoton KB066 keyboard
HID: apple: disable Fn key handling on the Omoton KB066

Alex Hung (2):
drm/amd/display: Fix out-of-bound accesses drm/amd/display: Assign normalized_pix_clk when color depth = 14

Alexander Stein (1):
usb: phy: generic: Use proper helper for property detection

Alexey Kardashevskiy (1):
virt: sev-guest: Move SNP Guest Request data pages handling under snp_cmd_mutex

Alexey Kashavkin (1):
netfilter: nft_exthdr: fix offset with ipv4_find_option()

Aliaksei Urbanski (1):
drm/amd/display: fix missing .is_two_pixels_per_container

Amit Cohen (1):
net: switchdev: Convert blocking notification chain to a raw one

Amit Sunil Dhamne (1):
usb: typec: tcpm: fix state transition for SNK_WAIT_CAPABILITIES state in run_state_machine()

Andrea Righi (3):
sched_ext: Validate prev_cpu in scx_bpf_select_cpu_dfl()
sched_ext: selftests/dsp_local_on: Fix selftest on UP systems tools/sched_ext: Add helper to check task migration state

Andrei Botila (2):
net: phy: nxp-c45-tja11xx: add TJA112X PHY configuration errata
net: phy: nxp-c45-tja11xx: add TJA112XB SGMII PCS restart errata

Andrew Davis (1):
phy: ti: gmii-sel: Do not use syscon helper to build regmap

Andy Shevchenko (1):
hrtimers: Mark is_migration_base() with __always_inline

Antheas Kapenekakis (3):
Input: xpad - add support for ZOTAC Gaming Zone
Input: xpad - add support for TECNO Pocket Go
Input: xpad - rename QH controller to Legion Go S

Arnd Bergmann (1):
x86/irq: Define trace events conditionally

Artur Weber (1):
pinctrl: bcm281xx: Fix incorrect regmap max_registers value

Bard Liao (3):
ASoC: Intel: soc-acpi-intel-mtl-match: declare adr as ull
ASoC: SOF: Intel: don't check number of sdw links when set dmic_fixup
ASoC: rt722-sdca: add missing readable registers

Barry Song (1):
mm: fix kernel BUG when userfaultfd_move encounters swapcache

Bartosz Golaszewski (1):
gpio: cdev: use raw notifier for line state events

Beata Michalska (1):
arm64: amu: Delay allocating cpumask for AMU FIE support

Benjamin Berg (1):
wifi: mac80211: fix MPDU length parsing for EHT 5/6 GHz

Benno Lossin (1):
rust: init: fix Zeroable implementation for Option<NonNull<T>> and Option<KBox<T>>

Bharadwaj Raju (1):
selftests/cgroup: use bash in test_cpuset_v1_hp.sh

Bibo Mao (1):
LoongArch: KVM: Set host with kernel mode when switch to VM mode

Boon Khai Ng (1):
USB: serial: ftdi_sio: add support for Altera USB Blaster 3

Brahmajit Das (1):
vboxsf: fix building with GCC 15

Breno Leitao (1):
netpoll: hold rcu read lock in __netpoll_send_skb()

Carolina Jubran (1):
net/mlx5e: Prevent bridge link show failure for non-eswitch-allowed devices

Charles Han (1):
pinctrl: nuvoton: npcm8xx: Add NULL check in npcm8xx_gpio_fw

Charles Keepax (2):
ASoC: ops: Consistently treat platform_max as control value
ASoC: cs42l43: Fix maximum ADC Volume

Chengen Du (1):
iscsi_ibft: Fix UBSAN shift-out-of-bounds warning in ibft_attr_show_nic()

Chia-Lin Kao (AceLan) (1):
HID: ignore non-functional sensor in HP 5MP Camera

Christian Loehle (1):
sched/debug: Provide slice length for fair tasks

Christophe JAILLET (4):
ASoC: codecs: wm0010: Fix error handling path in wm0010_spi_probe()
i2c: ali1535: Fix an error handling path in ali1535_probe()
i2c: ali15x3: Fix an error handling path in ali15x3_probe()
i2c: sis630: Fix an error handling path in sis630_probe()

Christopher Lentocha (1):
nvme-pci: quirk Acer FA100 for non-uniqueue identifiers

Cong Wang (1):
net_sched: Prevent creation of classes with TC_H_ROOT

Conor Dooley (1):
spi: microchip-core: prevent RX overflows when transmit size > FIFO size

Cristian Ciocaltea (2):
ASoC: SOF: amd: Add post_fw_run_delay ACP quirk
ASoC: SOF: amd: Handle IPC replies before FW_BOOT_COMPLETE

Dan Carpenter (1):
ipvs: prevent integer overflow in do_ip_vs_get_ctl()

Daniel Brackenbury (1):
HID: topre: Fix n-key rollover on Realforce R3S TKL boards

Daniel Lezcano (1):
thermal/cpufreq_cooling: Remove structure member documentation

Daniel Wagner (4):
nvme-fc: go straight to connecting state when initializing
nvme-fc: do not ignore connectivity loss during connecting
nvme: only allow entering LIVE from CONNECTING state
nvme-fc: rely on state transitions to handle connectivity loss

David Rosca (1):
drm/amdgpu/display: Allow DCC for video formats on GFX12

Dmitry Kandybka (1):
platform/x86/intel: pmc: fix ltr decode in pmc_core_ltr_show()

Dmytro Maluka (1):
x86/of: Don't use DTB for SMP setup if ACPI is enabled

Edson Juliano Drosdeck (1):
ALSA: hda/realtek: Limit mic boost on Positivo ARN50

Emmanuel Grumbach (1):
wifi: iwlwifi: mvm: fix PNVM timeout for non-MSI-X platforms

Eric W. Biederman (1):
alpha/elf: Fix misc/setarch test of util-linux by removing 32bit support

Fabio Porcedda (2):
USB: serial: option: add Telit Cinterion FE990B compositions
USB: serial: option: fix Telit Cinterion FE990A name

Filipe Manana (1):
btrfs: avoid starting new transaction when cleaning qgroup during subvolume drop

Florent Revest (1):
x86/microcode/AMD: Fix out-of-bounds on systems with CPU-less NUMA nodes

Florian Westphal (1):
netfilter: nf_tables: make destruction work queue pernet

Frederic Weisbecker (1):
net: Handle napi_schedule() calls from non-interrupt

Gannon Kolding (1):
ACPI: resource: IRQ override for Eluktronics MECH-17

Ge Yang (1):
mm/hugetlb: wait for hugetlb folios to be freed

Greg Kroah-Hartman (1):

      Linux 6.13.8

Grzegorz Nitka (1):
ice: fix memory leak in aRFS after reset

Guillaume Nault (1):
gre: Fix IPv6 link-local address generation.

H. Nikolaus Schaller (1):
Input: ads7846 - fix gpiod allocation

Hangbin Liu (2):
bonding: fix incorrect MAC address setting to receive NS messages
selftests: bonding: fix incorrect mac address

Haoxiang Li (1):
qlcnic: fix memory leak issues in qlcnic_sriov_common.c

Harry Wentland (1):
drm/vkms: Round fixp2int conversion in lerp_u16

Hector Martin (4):
apple-nvme: Release power domains when probe fails
ASoC: tas2770: Fix volume scale
ASoC: tas2764: Fix power control mask
ASoC: tas2764: Set the SDOUT polarity correctly

Henrique Carvalho (1):
smb: client: Fix match_session bug preventing session reuse

Huacai Chen (1):
LoongArch: Fix kernel_page_present() for KPRANGE/XKPRANGE

Ievgen Vovk (1):
HID: hid-apple: Apple Magic Keyboard a3203 USB-C support

Ilya Maximets (1):
net: openvswitch: remove misbehaving actions length check

Imre Deak (1):
drm/dp_mst: Fix locking when skipping CSN before topology probing

Ivan Abramov (1):
drm/gma500: Add NULL check for pci_gfx_root in mid_get_vbt_data()

Jan Beulich (1):
Xen/swiotlb: mark xen_swiotlb_fixup() __init

Jann Horn (1):

      sched: Clarify wake_up_q()'s write to task->wake_q.next

Jeff LaBundy (1):
Input: iqs7222 - preserve system status register

Jens Axboe (1):
futex: Pass in task to futex_queue()

Jianbo Liu (1):
net/mlx5: Bridge, fix the crash caused by LAG state check

Jiayuan Chen (1):
selftests/bpf: Fix invalid flag of recv()

Jiri Pirko (1):
net/mlx5: Fill out devlink dev info only for PFs

Joe Hattori (1):
powercap: call put_device() on an error path in powercap_register_control_type()

Johan Hovold (1):
USB: serial: option: match on interface class for Telit FN990B

Joseph Huang (1):
net: dsa: mv88e6xxx: Verify after ATU Load ops

Josh Poimboeuf (1):
objtool: Ignore dangling jump table entries

José Roberto de Souza (2):
drm/xe: Make GUC binaries dump consistent with other binaries in devcoredump drm/i915: Increase I915_PARAM_MMAP_GTT_VERSION version to indicate support for partial mmaps

Jun Yang (1):
sched: address a potential NULL pointer dereference in the GRED scheduler.

Justin Lai (1):
rtase: Fix improper release of ring list entries in rtase_sw_reset

Kan Liang (1):
perf/x86/intel: Use better start period for frequency mode

Keith Busch (1):
vhost: return task creation error instead of NULL

Kent Overstreet (1):
dm-flakey: Fix memory corruption in optional corrupt_bio_byte feature

Kohei Enju (1):
netfilter: nf_conncount: Fully initialize struct nf_conncount_tuple in insert_tree()

Kuninori Morimoto (4):
ASoC: simple-card-utils.c: add missing dlc->of_node
ASoC: rsnd: indicate unsupported clock rate
ASoC: rsnd: don't indicate warning on rsnd_kctrl_accept_runtime()
ASoC: rsnd: adjust convert rate limitation

Larysa Zaremba (1):
ice: do not configure destination override for switchdev

Leo Li (1):
drm/amd/display: Disable unneeded hpd interrupts during dm_init

Luca Weiss (1):
Input: goodix-berlin - fix vddio regulator references

Lucas De Marchi (1):
drm/xe/guc: Fix size_t print format

Luiz Augusto von Dentz (4):
Bluetooth: hci_event: Fix enabling passive scanning
Revert "Bluetooth: hci_core: Fix sleeping function called from invalid context"
Bluetooth: L2CAP: Fix slab-use-after-free Read in l2cap_send_cmd
Bluetooth: L2CAP: Fix corrupted list in hci_chan_del

Magnus Lindholm (1):
scsi: qla1280: Fix kernel oops when debug level > 2

Marcin Szycik (1):
ice: Fix switchdev slow-path in LAG

Mario Limonciello (3):
drm/amd/display: fix default brightness
drm/amd/display: Restore correct backlight brightness after a GPU reset drm/amd/display: Fix slab-use-after-free on hdcp_work

Mark Pearson (1):
platform/x86: thinkpad_acpi: Support for V9 DYTC platform profiles

Masahiro Yamada (1):
kbuild: keep symbols for symbol_get() even with CONFIG_TRIM_UNUSED_KSYMS

Matt Johnston (3):
net: mctp i3c: Copy headers if cloned
net: mctp i2c: Copy headers if cloned
net: mctp: unshare packets when reassembling

Matthew Maurer (1):
rust: Disallow BTF generation with Rust + LTO

Matthew Wilcox (Oracle) (1):
btrfs: fix two misuses of folio_shift()

Matthieu Baerts (NGI0) (1):
mptcp: safety check before fallback

Max Kellermann (1):

      fs/netfs/read_collect: add to next->prev_donated

Maxime Ripard (3):
drm/tests: hdmi: Remove redundant assignments drm/tests: hdmi: Reorder DRM entities variables assignment drm/tests: hdmi: Fix recursive locking

Michael Kelley (4):
fbdev: hyperv_fb: iounmap() the correct memory when removing a device drm/hyperv: Fix address space leak when Hyper-V DRM device is removed
fbdev: hyperv_fb: Fix hang in kdump kernel when on Hyper-V Gen 2 VMs
Drivers: hv: vmbus: Don't release fb_mmio resource in vmbus_free_mmio()

Miguel Ojeda (3):
rust: remove leftover mentions of the alloc crate drm/panic: use div_ceil to clean Clippy warning drm/panic: fix overindented list items in documentation

Miklos Szeredi (2):
selftests: always check mask returned by statmount(2)
fuse: don't truncate cached, mutated symlink

Mina Almasry (1):
netmem: prevent TX of unreadable skbs

Ming Lei (1):
block: fix 'kmem_cache of name 'bio-108' already exists'

Miri Korenblit (2):
wifi: mac80211: don't queue sdata::work for a non-running sdata
wifi: cfg80211: cancel wiphy_work before freeing wiphy

Mitchell Levy (1):
rust: lockdep: Remove support for dynamically allocated LockClassKeys

Murad Masimov (4):
cifs: Fix integer overflow while processing acregmax mount option
cifs: Fix integer overflow while processing acdirmax mount option
cifs: Fix integer overflow while processing actimeo mount option
cifs: Fix integer overflow while processing closetimeo mount option

Namjae Jeon (2):
ksmbd: fix use-after-free in ksmbd_free_work_struct
ksmbd: prevent connection release during oplock break notification

Natalie Vock (1):
drm/amdgpu: NULL-check BO's backing store when determining GFX12 PTE flags

Nicklas Bo Jensen (1):
netfilter: nf_conncount: garbage collection is not skipped when jiffies wrap around

Nicolas Frattaroli (1):
ASoC: dapm-graph: set fill colour of turned on nodes

Nilton Perim Neto (1):
Input: xpad - add 8BitDo SN30 Pro, Hyperkin X91 and Gamesir G7 SE controllers

Pali Rohár (2):
cifs: Throw -EOPNOTSUPP error on unsupported reparse point type from parse_reparse_point()
cifs: Treat unhandled directory name surrogate reparse points as mount directory nodes

Pauli Virtanen (1):
Bluetooth: SCO: fix sco_conn refcounting on sco_conn_ready

Paulo Alcantara (2):
smb: client: fix noisy when tree connecting to DFS interlink targets
smb: client: fix regression with guest option

Pavel Rojtberg (1):
Input: xpad - add multiple supported devices

Peter Griffin (1):
clk: samsung: gs101: fix synchronous external abort in samsung_clk_save()

Peter Oberparleiter (1):
s390/cio: Fix CHPID "configure" attribute caching

Peter Ujfalusi (2):
ASoC: SOF: Intel: pci-ptl: Add support for PTL-H
ASoC: Intel: sof_sdw: Fix unlikely uninitialized variable use in create_sdw_dailinks()

Pierre-Louis Bossart (3):
PCI: pci_ids: add INTEL_HDA_PTL_H
ALSA: hda: intel-dsp-config: Add PTL-H support
ALSA: hda: hda-intel: add Panther Lake-H support

Piotr Jaroszynski (1):
Fix mmu notifiers for range-based invalidates

Richard Fitzgerald (2):
ASoC: Intel: sof_sdw: Add lookup of quirk using PCI subsystem ID
ASoC: Intel: sof_sdw: Add quirk for Asus Zenbook S14

Rik van Riel (1):
scsi: core: Use GFP_NOIO to avoid circular locking dependency

Rodrigo Vivi (1):
drm/xe/pm: Temporarily disable D3Cold on BMG

Ruozhu Li (1):
nvmet-rdma: recheck queue state is LIVE in state lock in recv done

Sakari Ailus (2):
platform/x86: int3472: Use correct type for "polarity", call it gpio_flags platform/x86: int3472: Call "reset" GPIO "enable" for INT347E

Saurabh Sengar (2):
fbdev: hyperv_fb: Simplify hvfb_putmem
fbdev: hyperv_fb: Allow graceful removal of framebuffer

Sebastian Andrzej Siewior (1):
netfilter: nft_ct: Use __refcount_inc() for per-CPU nft_ct_pcpu_template.

Seunghui Lee (1):
scsi: ufs: core: Fix error return with query response

Shay Drory (2):
net/mlx5: Fix incorrect IRQ pool usage when releasing IRQs net/mlx5: Lag, Check shared fdb before creating MultiPort E-Switch

Shigeru Yoshida (1):
selftests/bpf: Adjust data size to have ETH_HLEN

Shin'ichiro Kawasaki (2):
nvme: move error logging from nvme_end_req() to __nvme_end_req()
block: change blk_mq_add_to_batch() third argument type to bool

Shradha Gupta (1):
net: mana: cleanup mana struct after debugfs_remove()

Stephan Gerhold (1):
net: wwan: mhi_wwan_mbim: Silence sequence number glitch errors

Steve French (1):
smb3: add support for IAKerb

Suren Baghdasaryan (1):
userfaultfd: fix PTE unmapping stack-allocated PTE copies

Sybil Isabel Dorsett (1):
platform/x86: thinkpad_acpi: Fix invalid fan speed on ThinkPad X120e

Taehee Yoo (6):
eth: bnxt: fix truesize for mb-xdp-pass case
eth: bnxt: return fail if interface is down in bnxt_queue_mem_alloc()
eth: bnxt: do not use BNXT_VNIC_NTUPLE unconditionally in queue restart logic
eth: bnxt: do not update checksum in bnxt_xdp_build_skb()
eth: bnxt: fix kernel panic in the bnxt_get_queue_stats{rx | tx}
eth: bnxt: fix memory leak in queue reset

Tamir Duberstein (4):
rust: alloc: satisfy POSIX alignment requirement
scripts: generate_rust_analyzer: add missing macros deps
scripts: generate_rust_analyzer: add missing include_dirs
scripts: generate_rust_analyzer: add uapi crate

Tejas Upadhyay (2):
drm/xe: cancel pending job timer before freeing scheduler drm/xe: Release guc ids before cancelling work

Tejun Heo (1):
sched_ext: selftests/dsp_local_on: Fix sporadic failures

Terry Cheong (1):
ASoC: SOF: Intel: hda: add softdep pre to snd-hda-codec-hdmi module

Thomas Hellström (1):
drm/xe/userptr: Fix an incorrect assert

Thomas Mizrahi (1):
ASoC: amd: yc: Support mic on another Lenovo ThinkPad E16 Gen 2 model

Thomas Zimmermann (1):
drm/nouveau: Do not override forced connector status

Thorsten Blum (1):
ASoC: tegra: Fix ADX S24_LE audio format

Uday M Bhat (1):
ASoC: Intel: sof_sdw: Add support for Fatcat board with BT offload enabled in PTL platform

Uday Shankar (1):
io-wq: backoff when retrying worker creation

Uladzislau Rezki (Sony) (1):
mm/slab/kvfree_rcu: Switch to WQ_MEM_RECLAIM wq

Varada Pavani (1):
clk: samsung: update PLL locktime for PLL142XX used on FSD platform

Vicki Pfau (1):
HID: hid-steam: Fix issues with disabling both gamepad mode and lizard mode

Ville Syrjälä (2):
drm/i915/cdclk: Do cdclk post plane programming later drm/atomic: Filter out redundant DPMS calls

Vitaly Rodionov (1):
ASoC: arizona/madera: use fsleep() in up/down DAPM event delays.

Vlad Dogaru (1):
net/mlx5: HWS, Rightsize bwc matcher priority

Wentao Liang (1):
net/mlx5: handle errors in mlx5_chains_create_table()

Werner Sembach (4):
Input: i8042 - swap old quirk combination with new quirk for NHxxRZQ
Input: i8042 - add required quirks for missing old boardnames
Input: i8042 - swap old quirk combination with new quirk for several devices
Input: i8042 - swap old quirk combination with new quirk for more devices

Xin Long (1):
Revert "openvswitch: switch to per-action label counting in conntrack"

Xu Lu (1):
irqchip/riscv: Ensure ordering of memory writes and IPI writes

Yifan Zha (1):
drm/amd/amdkfd: Evict all queues even HWS remove queue failed

Yu-Chun Lin (1):
sctp: Fix undefined behavior in left shift operation

Zhang Lixu (3):
HID: intel-ish-hid: fix the length of MNG_SYNC_FW_CLOCK in doorbell
HID: intel-ish-hid: Send clock sync message immediately after reset
HID: intel-ish-hid: ipc: Add Panther Lake PCI device IDs

Zhenhua Huang (1):
arm64: mm: Populate vmemmap at the page level if not section aligned

author maintainer
#1 lore raw
Documentation/rust/quick-start.rst +1 -1
index 4aa50e5fcb8c..6d2607870ba4 100644
@@ -145,7 +145,7 @@ Rust standard library source
 ****************************
 
 The Rust standard library source is required because the build system will
-cross-compile ``core`` and ``alloc``.
+cross-compile ``core``.
 
 If ``rustup`` is being used, run::
 
Makefile +1 -1
index 3363645fa624..44d99cd682ba 100644
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0
 VERSION = 6
 PATCHLEVEL = 13
-SUBLEVEL = 7
+SUBLEVEL = 8
 EXTRAVERSION =
 NAME = Baby Opossum Posse
 
arch/alpha/include/asm/elf.h +1 -5
index 4d7c46f50382..50c82187e60e 100644
@@ -74,7 +74,7 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
 /*
  * This is used to ensure we don't load something for the wrong architecture.
  */
-#define elf_check_arch(x) ((x)->e_machine == EM_ALPHA)
+#define elf_check_arch(x) (((x)->e_machine == EM_ALPHA) && !((x)->e_flags & EF_ALPHA_32BIT))
 
 /*
  * These are used to set parameters in the core dumps.
@@ -137,10 +137,6 @@ extern int dump_elf_task(elf_greg_t *dest, struct task_struct *task);
 	: amask (AMASK_CIX) ? "ev6" : "ev67");	\
 })
 
-#define SET_PERSONALITY(EX)					\
-	set_personality(((EX).e_flags & EF_ALPHA_32BIT)		\
-	   ? PER_LINUX_32BIT : PER_LINUX)
-
 extern int alpha_l1i_cacheshape;
 extern int alpha_l1d_cacheshape;
 extern int alpha_l2_cacheshape;
arch/alpha/include/asm/pgtable.h +1 -1
index 635f0a5f5bbd..02e8817a8921 100644
@@ -360,7 +360,7 @@ static inline pte_t pte_swp_clear_exclusive(pte_t pte)
 
 extern void paging_init(void);
 
-/* We have our own get_unmapped_area to cope with ADDR_LIMIT_32BIT.  */
+/* We have our own get_unmapped_area */
 #define HAVE_ARCH_UNMAPPED_AREA
 
 #endif /* _ALPHA_PGTABLE_H */
arch/alpha/include/asm/processor.h +2 -6
index 55bb1c09fd39..5dce5518a211 100644
@@ -8,23 +8,19 @@
 #ifndef __ASM_ALPHA_PROCESSOR_H
 #define __ASM_ALPHA_PROCESSOR_H
 
-#include <linux/personality.h>	/* for ADDR_LIMIT_32BIT */
-
 /*
  * We have a 42-bit user address space: 4TB user VM...
  */
 #define TASK_SIZE (0x40000000000UL)
 
-#define STACK_TOP \
-  (current->personality & ADDR_LIMIT_32BIT ? 0x80000000 : 0x00120000000UL)
+#define STACK_TOP (0x00120000000UL)
 
 #define STACK_TOP_MAX	0x00120000000UL
 
 /* This decides where the kernel will search for a free chunk of vm
  * space during mmap's.
  */
-#define TASK_UNMAPPED_BASE \
-  ((current->personality & ADDR_LIMIT_32BIT) ? 0x40000000 : TASK_SIZE / 2)
+#define TASK_UNMAPPED_BASE (TASK_SIZE / 2)
 
 /* This is dead.  Everything has been moved to thread_info.  */
 struct thread_struct { };
arch/alpha/kernel/osf_sys.c +2 -9
index 86185021f75a..a08e8edef1a4 100644
@@ -1210,8 +1210,7 @@ SYSCALL_DEFINE1(old_adjtimex, struct timex32 __user *, txc_p)
 	return ret;
 }
 
-/* Get an address range which is currently unmapped.  Similar to the
-   generic version except that we know how to honor ADDR_LIMIT_32BIT.  */
+/* Get an address range which is currently unmapped. */
 
 static unsigned long
 arch_get_unmapped_area_1(unsigned long addr, unsigned long len,
@@ -1230,13 +1229,7 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
 		       unsigned long len, unsigned long pgoff,
 		       unsigned long flags, vm_flags_t vm_flags)
 {
-	unsigned long limit;
-
-	/* "32 bit" actually means 31 bit, since pointers sign extend.  */
-	if (current->personality & ADDR_LIMIT_32BIT)
-		limit = 0x80000000;
-	else
-		limit = TASK_SIZE;
+	unsigned long limit = TASK_SIZE;
 
 	if (len > limit)
 		return -ENOMEM;
arch/arm64/include/asm/tlbflush.h +12 -10
index bc94e036a26b..8104aee4f9a0 100644
@@ -396,33 +396,35 @@ static inline void arch_tlbbatch_flush(struct arch_tlbflush_unmap_batch *batch)
 #define __flush_tlb_range_op(op, start, pages, stride,			\
 				asid, tlb_level, tlbi_user, lpa2)	\
 do {									\
+	typeof(start) __flush_start = start;				\
+	typeof(pages) __flush_pages = pages;				\
 	int num = 0;							\
 	int scale = 3;							\
 	int shift = lpa2 ? 16 : PAGE_SHIFT;				\
 	unsigned long addr;						\
 									\
-	while (pages > 0) {						\
+	while (__flush_pages > 0) {					\
 		if (!system_supports_tlb_range() ||			\
-		    pages == 1 ||					\
-		    (lpa2 && start != ALIGN(start, SZ_64K))) {		\
-			addr = __TLBI_VADDR(start, asid);		\
+		    __flush_pages == 1 ||				\
+		    (lpa2 && __flush_start != ALIGN(__flush_start, SZ_64K))) {	\
+			addr = __TLBI_VADDR(__flush_start, asid);	\
 			__tlbi_level(op, addr, tlb_level);		\
 			if (tlbi_user)					\
 				__tlbi_user_level(op, addr, tlb_level);	\
-			start += stride;				\
-			pages -= stride >> PAGE_SHIFT;			\
+			__flush_start += stride;			\
+			__flush_pages -= stride >> PAGE_SHIFT;		\
 			continue;					\
 		}							\
 									\
-		num = __TLBI_RANGE_NUM(pages, scale);			\
+		num = __TLBI_RANGE_NUM(__flush_pages, scale);		\
 		if (num >= 0) {						\
-			addr = __TLBI_VADDR_RANGE(start >> shift, asid, \
+			addr = __TLBI_VADDR_RANGE(__flush_start >> shift, asid, \
 						scale, num, tlb_level);	\
 			__tlbi(r##op, addr);				\
 			if (tlbi_user)					\
 				__tlbi_user(r##op, addr);		\
-			start += __TLBI_RANGE_PAGES(num, scale) << PAGE_SHIFT; \
-			pages -= __TLBI_RANGE_PAGES(num, scale);	\
+			__flush_start += __TLBI_RANGE_PAGES(num, scale) << PAGE_SHIFT; \
+			__flush_pages -= __TLBI_RANGE_PAGES(num, scale);\
 		}							\
 		scale--;						\
 	}								\
arch/arm64/kernel/topology.c +10 -12
index 1a2c72f3e7f8..cb180684d10d 100644
@@ -194,12 +194,19 @@ static void amu_fie_setup(const struct cpumask *cpus)
 	int cpu;
 
 	/* We are already set since the last insmod of cpufreq driver */
-	if (unlikely(cpumask_subset(cpus, amu_fie_cpus)))
+	if (cpumask_available(amu_fie_cpus) &&
+	    unlikely(cpumask_subset(cpus, amu_fie_cpus)))
 		return;
 
-	for_each_cpu(cpu, cpus) {
+	for_each_cpu(cpu, cpus)
 		if (!freq_counters_valid(cpu))
 			return;
+
+	if (!cpumask_available(amu_fie_cpus) &&
+	    !zalloc_cpumask_var(&amu_fie_cpus, GFP_KERNEL)) {
+		WARN_ONCE(1, "Failed to allocate FIE cpumask for CPUs[%*pbl]\n",
+			  cpumask_pr_args(cpus));
+		return;
 	}
 
 	cpumask_or(amu_fie_cpus, amu_fie_cpus, cpus);
@@ -237,17 +244,8 @@ static struct notifier_block init_amu_fie_notifier = {
 
 static int __init init_amu_fie(void)
 {
-	int ret;
-
-	if (!zalloc_cpumask_var(&amu_fie_cpus, GFP_KERNEL))
-		return -ENOMEM;
-
-	ret = cpufreq_register_notifier(&init_amu_fie_notifier,
+	return cpufreq_register_notifier(&init_amu_fie_notifier,
 					CPUFREQ_POLICY_NOTIFIER);
-	if (ret)
-		free_cpumask_var(amu_fie_cpus);
-
-	return ret;
 }
 core_initcall(init_amu_fie);
 
arch/arm64/mm/mmu.c +4 -1
index e2739b69e11b..d1a4646f13a9 100644
@@ -1176,8 +1176,11 @@ int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node,
 		struct vmem_altmap *altmap)
 {
 	WARN_ON((start < VMEMMAP_START) || (end > VMEMMAP_END));
+	/* [start, end] should be within one section */
+	WARN_ON_ONCE(end - start > PAGES_PER_SECTION * sizeof(struct page));
 
-	if (!IS_ENABLED(CONFIG_ARM64_4K_PAGES))
+	if (!IS_ENABLED(CONFIG_ARM64_4K_PAGES) ||
+	    (end - start < PAGES_PER_SECTION * sizeof(struct page)))
 		return vmemmap_populate_basepages(start, end, node, altmap);
 	else
 		return vmemmap_populate_hugepages(start, end, node, altmap);
arch/loongarch/kvm/switch.S +1 -1
index 0c292f818492..1be185e94807 100644
@@ -85,7 +85,7 @@
 	 * Guest CRMD comes from separate GCSR_CRMD register
 	 */
 	ori	t0, zero, CSR_PRMD_PIE
-	csrxchg	t0, t0,   LOONGARCH_CSR_PRMD
+	csrwr	t0, LOONGARCH_CSR_PRMD
 
 	/* Set PVM bit to setup ertn to guest context */
 	ori	t0, zero, CSR_GSTAT_PVM
arch/loongarch/mm/pageattr.c +2 -1
index bf8678248444..99165903908a 100644
@@ -3,6 +3,7 @@
  * Copyright (C) 2024 Loongson Technology Corporation Limited
  */
 
+#include <linux/memblock.h>
 #include <linux/pagewalk.h>
 #include <linux/pgtable.h>
 #include <asm/set_memory.h>
@@ -167,7 +168,7 @@ bool kernel_page_present(struct page *page)
 	unsigned long addr = (unsigned long)page_address(page);
 
 	if (addr < vm_map_base)
-		return true;
+		return memblock_is_memory(__pa(addr));
 
 	pgd = pgd_offset_k(addr);
 	if (pgd_none(pgdp_get(pgd)))
arch/x86/events/intel/core.c +85 -0

97 lines not on this page · raw message

arch/x86/events/rapl.c +1 -0
index a8defc813c36..7e493963d057 100644
@@ -796,6 +796,7 @@ static const struct x86_cpu_id rapl_model_match[] __initconst = {
 	X86_MATCH_VFM(INTEL_METEORLAKE_L,	&model_skl),
 	X86_MATCH_VFM(INTEL_ARROWLAKE_H,	&model_skl),
 	X86_MATCH_VFM(INTEL_ARROWLAKE,		&model_skl),
+	X86_MATCH_VFM(INTEL_ARROWLAKE_U,	&model_skl),
 	X86_MATCH_VFM(INTEL_LUNARLAKE_M,	&model_skl),
 	{},
 };
arch/x86/include/asm/sev.h +3 -3
index 91f08af31078..82d9250aac34 100644
@@ -185,6 +185,9 @@ struct snp_guest_req {
 	unsigned int vmpck_id;
 	u8 msg_version;
 	u8 msg_type;
+
+	struct snp_req_data input;
+	void *certs_data;
 };
 
 /*
@@ -245,9 +248,6 @@ struct snp_msg_desc {
 	struct snp_guest_msg secret_request, secret_response;
 
 	struct snp_secrets_page *secrets;
-	struct snp_req_data input;
-
-	void *certs_data;
 
 	struct aesgcm_ctx *ctx;
 
arch/x86/kernel/cpu/microcode/amd.c +1 -1
index def6a2854a4b..07fc145f3531 100644
@@ -1075,7 +1075,7 @@ static enum ucode_state load_microcode_amd(u8 family, const u8 *data, size_t siz
 	if (ret != UCODE_OK)
 		return ret;
 
-	for_each_node(nid) {
+	for_each_node_with_cpus(nid) {
 		cpu = cpumask_first(cpumask_of_node(nid));
 		c = &cpu_data(cpu);
 
arch/x86/kernel/cpu/vmware.c +4 -0
index 00189cdeb775..cb3f900c46fc 100644
@@ -26,6 +26,7 @@
 #include <linux/export.h>
 #include <linux/clocksource.h>
 #include <linux/cpu.h>
+#include <linux/efi.h>
 #include <linux/reboot.h>
 #include <linux/static_call.h>
 #include <asm/div64.h>
@@ -429,6 +430,9 @@ static void __init vmware_platform_setup(void)
 		pr_warn("Failed to get TSC freq from the hypervisor\n");
 	}
 
+	if (cc_platform_has(CC_ATTR_GUEST_SEV_SNP) && !efi_enabled(EFI_BOOT))
+		x86_init.mpparse.find_mptable = mpparse_find_mptable;
+
 	vmware_paravirt_ops_setup();
 
 #ifdef CONFIG_X86_IO_APIC
arch/x86/kernel/devicetree.c +2 -1
index 59d23cdf4ed0..dd8748c45529 100644
@@ -2,6 +2,7 @@
 /*
  * Architecture specific OF callbacks.
  */
+#include <linux/acpi.h>
 #include <linux/export.h>
 #include <linux/io.h>
 #include <linux/interrupt.h>
@@ -313,6 +314,6 @@ void __init x86_flattree_get_config(void)
 	if (initial_dtb)
 		early_memunmap(dt, map_len);
 #endif
-	if (of_have_populated_dt())
+	if (acpi_disabled && of_have_populated_dt())
 		x86_init.mpparse.parse_smp_cfg = x86_dtb_parse_smp_config;
 }
arch/x86/kernel/irq.c +2 -0
index 385e3a5fc304..feca4f20b06a 100644
@@ -25,8 +25,10 @@
 #include <asm/posted_intr.h>
 #include <asm/irq_remapping.h>
 
+#if defined(CONFIG_X86_LOCAL_APIC) || defined(CONFIG_X86_THERMAL_VECTOR)
 #define CREATE_TRACE_POINTS
 #include <asm/trace/irq_vectors.h>
+#endif
 
 DEFINE_PER_CPU_SHARED_ALIGNED(irq_cpustat_t, irq_stat);
 EXPORT_PER_CPU_SYMBOL(irq_stat);
arch/x86/kvm/mmu/mmu.c +1 -1
index e102505735a7..0e6bf24093f7 100644
@@ -7435,7 +7435,7 @@ static void kvm_mmu_start_lpage_recovery(struct once *once)
 				      kvm_nx_huge_page_recovery_worker_kill,
 				      kvm, "kvm-nx-lpage-recovery");
 
-	if (!nx_thread)
+	if (IS_ERR(nx_thread))
 		return;
 
 	vhost_task_start(nx_thread);
block/bio.c +1 -1
index d5bdc31d88d3..f54e8572affc 100644
@@ -77,7 +77,7 @@ struct bio_slab {
 	struct kmem_cache *slab;
 	unsigned int slab_ref;
 	unsigned int slab_size;
-	char name[8];
+	char name[12];
 };
 static DEFINE_MUTEX(bio_slab_lock);
 static DEFINE_XARRAY(bio_slabs);
drivers/acpi/resource.c +6 -0
index 90aaec923889..b4cd14e7fa76 100644
@@ -563,6 +563,12 @@ static const struct dmi_system_id irq1_edge_low_force_override[] = {
 			DMI_MATCH(DMI_BOARD_NAME, "RP-15"),
 		},
 	},
+	{
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "Eluktronics Inc."),
+			DMI_MATCH(DMI_BOARD_NAME, "MECH-17"),
+		},
+	},
 	{
 		/* TongFang GM6XGxX/TUXEDO Stellaris 16 Gen5 AMD */
 		.matches = {
drivers/block/null_blk/main.c +2 -2
index 3c3d8d200abb..f10369ad90f7 100644
@@ -1541,8 +1541,8 @@ static int null_poll(struct blk_mq_hw_ctx *hctx, struct io_comp_batch *iob)
 		cmd = blk_mq_rq_to_pdu(req);
 		cmd->error = null_process_cmd(cmd, req_op(req), blk_rq_pos(req),
 						blk_rq_sectors(req));
-		if (!blk_mq_add_to_batch(req, iob, (__force int) cmd->error,
-					blk_mq_end_request_batch))
+		if (!blk_mq_add_to_batch(req, iob, cmd->error != BLK_STS_OK,
+					 blk_mq_end_request_batch))
 			blk_mq_end_request(req, cmd->error);
 		nr++;
 	}
drivers/block/virtio_blk.c +3 -2
index 5afc8aac62ab..9515e9829216 100644
@@ -1207,11 +1207,12 @@ static int virtblk_poll(struct blk_mq_hw_ctx *hctx, struct io_comp_batch *iob)
 
 	while ((vbr = virtqueue_get_buf(vq->vq, &len)) != NULL) {
 		struct request *req = blk_mq_rq_from_pdu(vbr);
+		u8 status = virtblk_vbr_status(vbr);
 
 		found++;
 		if (!blk_mq_complete_request_remote(req) &&
-		    !blk_mq_add_to_batch(req, iob, virtblk_vbr_status(vbr),
-						virtblk_complete_batch))
+		    !blk_mq_add_to_batch(req, iob, status != VIRTIO_BLK_S_OK,
+					 virtblk_complete_batch))
 			virtblk_request_done(req);
 	}
 
drivers/clk/samsung/clk-gs101.c +0 -8
index 86b39edba122..08b867ae3ed9 100644
@@ -382,17 +382,9 @@ static const unsigned long cmu_top_clk_regs[] __initconst = {
 	EARLY_WAKEUP_DPU_DEST,
 	EARLY_WAKEUP_CSIS_DEST,
 	EARLY_WAKEUP_SW_TRIG_APM,
-	EARLY_WAKEUP_SW_TRIG_APM_SET,
-	EARLY_WAKEUP_SW_TRIG_APM_CLEAR,
 	EARLY_WAKEUP_SW_TRIG_CLUSTER0,
-	EARLY_WAKEUP_SW_TRIG_CLUSTER0_SET,
-	EARLY_WAKEUP_SW_TRIG_CLUSTER0_CLEAR,
 	EARLY_WAKEUP_SW_TRIG_DPU,
-	EARLY_WAKEUP_SW_TRIG_DPU_SET,
-	EARLY_WAKEUP_SW_TRIG_DPU_CLEAR,
 	EARLY_WAKEUP_SW_TRIG_CSIS,
-	EARLY_WAKEUP_SW_TRIG_CSIS_SET,
-	EARLY_WAKEUP_SW_TRIG_CSIS_CLEAR,
 	CLK_CON_MUX_MUX_CLKCMU_BO_BUS,
 	CLK_CON_MUX_MUX_CLKCMU_BUS0_BUS,
 	CLK_CON_MUX_MUX_CLKCMU_BUS1_BUS,
drivers/clk/samsung/clk-pll.c +6 -1
index be6b51694919..8f79807036a8 100644
@@ -206,6 +206,7 @@ static const struct clk_ops samsung_pll3000_clk_ops = {
  */
 /* Maximum lock time can be 270 * PDIV cycles */
 #define PLL35XX_LOCK_FACTOR	(270)
+#define PLL142XX_LOCK_FACTOR	(150)
 
 #define PLL35XX_MDIV_MASK       (0x3FF)
 #define PLL35XX_PDIV_MASK       (0x3F)
@@ -272,7 +273,11 @@ static int samsung_pll35xx_set_rate(struct clk_hw *hw, unsigned long drate,
 	}
 
 	/* Set PLL lock time. */
-	writel_relaxed(rate->pdiv * PLL35XX_LOCK_FACTOR,
+	if (pll->type == pll_142xx)
+		writel_relaxed(rate->pdiv * PLL142XX_LOCK_FACTOR,
+			pll->lock_reg);
+	else
+		writel_relaxed(rate->pdiv * PLL35XX_LOCK_FACTOR,
 			pll->lock_reg);
 
 	/* Change PLL PMS values */
drivers/firmware/iscsi_ibft.c +4 -1
index 6e9788324fea..371f24569b3b 100644
@@ -310,7 +310,10 @@ static ssize_t ibft_attr_show_nic(void *data, int type, char *buf)
 		str += sprintf_ipaddr(str, nic->ip_addr);
 		break;
 	case ISCSI_BOOT_ETH_SUBNET_MASK:
-		val = cpu_to_be32(~((1 << (32-nic->subnet_mask_prefix))-1));
+		if (nic->subnet_mask_prefix > 32)
+			val = cpu_to_be32(~0);
+		else
+			val = cpu_to_be32(~((1 << (32-nic->subnet_mask_prefix))-1));
 		str += sprintf(str, "%pI4", &val);
 		break;
 	case ISCSI_BOOT_ETH_PREFIX_LEN:
drivers/gpio/gpiolib-cdev.c +9 -6
index 40f76a90fd7d..107d75558b5a 100644
@@ -2729,8 +2729,9 @@ static int gpio_chrdev_open(struct inode *inode, struct file *file)
 	cdev->gdev = gpio_device_get(gdev);
 
 	cdev->lineinfo_changed_nb.notifier_call = lineinfo_changed_notify;
-	ret = atomic_notifier_chain_register(&gdev->line_state_notifier,
-					     &cdev->lineinfo_changed_nb);
+	scoped_guard(write_lock_irqsave, &gdev->line_state_lock)
+		ret = raw_notifier_chain_register(&gdev->line_state_notifier,
+						  &cdev->lineinfo_changed_nb);
 	if (ret)
 		goto out_free_bitmap;
 
@@ -2754,8 +2755,9 @@ static int gpio_chrdev_open(struct inode *inode, struct file *file)
 	blocking_notifier_chain_unregister(&gdev->device_notifier,
 					   &cdev->device_unregistered_nb);
 out_unregister_line_notifier:
-	atomic_notifier_chain_unregister(&gdev->line_state_notifier,
-					 &cdev->lineinfo_changed_nb);
+	scoped_guard(write_lock_irqsave, &gdev->line_state_lock)
+		raw_notifier_chain_unregister(&gdev->line_state_notifier,
+					      &cdev->lineinfo_changed_nb);
 out_free_bitmap:
 	gpio_device_put(gdev);
 	bitmap_free(cdev->watched_lines);
@@ -2779,8 +2781,9 @@ static int gpio_chrdev_release(struct inode *inode, struct file *file)
 
 	blocking_notifier_chain_unregister(&gdev->device_notifier,
 					   &cdev->device_unregistered_nb);
-	atomic_notifier_chain_unregister(&gdev->line_state_notifier,
-					 &cdev->lineinfo_changed_nb);
+	scoped_guard(write_lock_irqsave, &gdev->line_state_lock)
+		raw_notifier_chain_unregister(&gdev->line_state_notifier,
+					      &cdev->lineinfo_changed_nb);
 	bitmap_free(cdev->watched_lines);
 	gpio_device_put(gdev);
 	kfree(cdev);
drivers/gpio/gpiolib.c +5 -3
index 19878bc75e94..2509b723b34d 100644
@@ -1025,7 +1025,8 @@ int gpiochip_add_data_with_key(struct gpio_chip *gc, void *data,
 		}
 	}
 
-	ATOMIC_INIT_NOTIFIER_HEAD(&gdev->line_state_notifier);
+	rwlock_init(&gdev->line_state_lock);
+	RAW_INIT_NOTIFIER_HEAD(&gdev->line_state_notifier);
 	BLOCKING_INIT_NOTIFIER_HEAD(&gdev->device_notifier);
 
 	ret = init_srcu_struct(&gdev->srcu);
@@ -4171,8 +4172,9 @@ EXPORT_SYMBOL_GPL(gpiod_set_array_value_cansleep);
 
 void gpiod_line_state_notify(struct gpio_desc *desc, unsigned long action)
 {
-	atomic_notifier_call_chain(&desc->gdev->line_state_notifier,
-				   action, desc);
+	guard(read_lock_irqsave)(&desc->gdev->line_state_lock);
+
+	raw_notifier_call_chain(&desc->gdev->line_state_notifier, action, desc);
 }
 
 /**
drivers/gpio/gpiolib.h +4 -1
index 147156ec502b..c129a03e2040 100644
@@ -16,6 +16,7 @@
 #include <linux/gpio/driver.h>
 #include <linux/module.h>
 #include <linux/notifier.h>
+#include <linux/spinlock.h>
 #include <linux/srcu.h>
 #include <linux/workqueue.h>
 
@@ -45,6 +46,7 @@
  * @list: links gpio_device:s together for traversal
  * @line_state_notifier: used to notify subscribers about lines being
  *                       requested, released or reconfigured
+ * @line_state_lock: RW-spinlock protecting the line state notifier
  * @line_state_wq: used to emit line state events from a separate thread in
  *                 process context
  * @device_notifier: used to notify character device wait queues about the GPIO
@@ -72,7 +74,8 @@ struct gpio_device {
 	const char		*label;
 	void			*data;
 	struct list_head        list;
-	struct atomic_notifier_head line_state_notifier;
+	struct raw_notifier_head line_state_notifier;
+	rwlock_t		line_state_lock;
 	struct workqueue_struct	*line_state_wq;
 	struct blocking_notifier_head device_notifier;
 	struct srcu_struct	srcu;
drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c +3 -2
index d22b027fd0bb..69f1aaeac99d 100644
@@ -528,8 +528,9 @@ static void gmc_v12_0_get_vm_pte(struct amdgpu_device *adev,
 
 	bo_adev = amdgpu_ttm_adev(bo->tbo.bdev);
 	coherent = bo->flags & AMDGPU_GEM_CREATE_COHERENT;
-	is_system = (bo->tbo.resource->mem_type == TTM_PL_TT) ||
-		(bo->tbo.resource->mem_type == AMDGPU_PL_PREEMPT);
+	is_system = bo->tbo.resource &&
+		(bo->tbo.resource->mem_type == TTM_PL_TT ||
+		 bo->tbo.resource->mem_type == AMDGPU_PL_PREEMPT);
 
 	if (bo && bo->flags & AMDGPU_GEM_CREATE_GFX12_DCC)
 		*flags |= AMDGPU_PTE_DCC;
drivers/gpu/drm/amd/amdgpu/vce_v2_0.c +1 -1
index c1ed91b39415..0ed91e6dd122 100644
@@ -284,7 +284,7 @@ static int vce_v2_0_stop(struct amdgpu_device *adev)
 		return 0;
 	}
 
-	ip_block = amdgpu_device_ip_get_ip_block(adev, AMD_IP_BLOCK_TYPE_VCN);
+	ip_block = amdgpu_device_ip_get_ip_block(adev, AMD_IP_BLOCK_TYPE_VCE);
 	if (!ip_block)
 		return -EINVAL;
 
drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c +5 -3
index 6f3099488053..8ab83dcb1a3c 100644
@@ -1230,11 +1230,13 @@ static int evict_process_queues_cpsch(struct device_queue_manager *dqm,
 		decrement_queue_count(dqm, qpd, q);
 
 		if (dqm->dev->kfd->shared_resources.enable_mes) {
-			retval = remove_queue_mes(dqm, q, qpd);
-			if (retval) {
+			int err;
+
+			err = remove_queue_mes(dqm, q, qpd);
+			if (err) {
 				dev_err(dev, "Failed to evict queue %d\n",
 					q->properties.queue_id);
-				goto out;
+				retval = err;
 			}
 		}
 	}
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +11 -1
index ca6b9a585aba..56a30c2d0abe 100644
@@ -244,6 +244,10 @@ static int amdgpu_dm_atomic_check(struct drm_device *dev,
 static void handle_hpd_irq_helper(struct amdgpu_dm_connector *aconnector);
 static void handle_hpd_rx_irq(void *param);
 
+static void amdgpu_dm_backlight_set_level(struct amdgpu_display_manager *dm,
+					 int bl_idx,
+					 u32 user_brightness);
+
 static bool
 is_timing_unchanged_for_freesync(struct drm_crtc_state *old_crtc_state,
 				 struct drm_crtc_state *new_crtc_state);
@@ -3318,6 +3322,12 @@ static int dm_resume(struct amdgpu_ip_block *ip_block)
 
 		mutex_unlock(&dm->dc_lock);
 
+		/* set the backlight after a reset */
+		for (i = 0; i < dm->num_of_edps; i++) {
+			if (dm->backlight_dev[i])
+				amdgpu_dm_backlight_set_level(dm, i, dm->brightness[i]);
+		}
+
 		return 0;
 	}
 	/* Recreate dc_state - DC invalidates it when setting power state to S3. */
@@ -4848,6 +4858,7 @@ amdgpu_dm_register_backlight_device(struct amdgpu_dm_connector *aconnector)
 	dm->backlight_dev[aconnector->bl_idx] =
 		backlight_device_register(bl_name, aconnector->base.kdev, dm,
 					  &amdgpu_dm_backlight_ops, &props);
+	dm->brightness[aconnector->bl_idx] = props.brightness;
 
 	if (IS_ERR(dm->backlight_dev[aconnector->bl_idx])) {
 		DRM_ERROR("DM: Backlight registration failed!\n");
@@ -4915,7 +4926,6 @@ static void setup_backlight_device(struct amdgpu_display_manager *dm,
 	aconnector->bl_idx = bl_idx;
 
 	amdgpu_dm_update_backlight_caps(dm, bl_idx);
-	dm->brightness[bl_idx] = AMDGPU_MAX_BL_LEVEL;
 	dm->backlight_link[bl_idx] = link;
 	dm->num_of_edps++;
 
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c +1 -0
index e339c7a8d541..c0dc23244049 100644
@@ -455,6 +455,7 @@ void hdcp_destroy(struct kobject *kobj, struct hdcp_workqueue *hdcp_work)
 	for (i = 0; i < hdcp_work->max_link; i++) {
 		cancel_delayed_work_sync(&hdcp_work[i].callback_dwork);
 		cancel_delayed_work_sync(&hdcp_work[i].watchdog_timer_dwork);
+		cancel_delayed_work_sync(&hdcp_work[i].property_validate_dwork);
 	}
 
 	sysfs_remove_bin_file(kobj, &hdcp_work[0].attr);
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c +45 -19

101 lines not on this page · raw message

drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c +5 -2
index 83c7c8853ede..62e30942f735 100644
@@ -275,8 +275,11 @@ static int amdgpu_dm_plane_validate_dcc(struct amdgpu_device *adev,
 	if (!dcc->enable)
 		return 0;
 
-	if (format >= SURFACE_PIXEL_FORMAT_VIDEO_BEGIN ||
-	    !dc->cap_funcs.get_dcc_compression_cap)
+	if (adev->family < AMDGPU_FAMILY_GC_12_0_0 &&
+	    format >= SURFACE_PIXEL_FORMAT_VIDEO_BEGIN)
+		return -EINVAL;
+
+	if (!dc->cap_funcs.get_dcc_compression_cap)
 		return -EINVAL;
 
 	input.format = format;
drivers/gpu/drm/amd/display/dc/core/dc_resource.c +5 -2
index 568f5b215ce2..68722a74ec43 100644
@@ -3389,10 +3389,13 @@ static int get_norm_pix_clk(const struct dc_crtc_timing *timing)
 			break;
 		case COLOR_DEPTH_121212:
 			normalized_pix_clk = (pix_clk * 36) / 24;
-		break;
+			break;
+		case COLOR_DEPTH_141414:
+			normalized_pix_clk = (pix_clk * 42) / 24;
+			break;
 		case COLOR_DEPTH_161616:
 			normalized_pix_clk = (pix_clk * 48) / 24;
-		break;
+			break;
 		default:
 			ASSERT(0);
 		break;
drivers/gpu/drm/amd/display/dc/dce60/dce60_timing_generator.c +1 -0
index e5fb0e8333e4..e691a1cf3356 100644
@@ -239,6 +239,7 @@ static const struct timing_generator_funcs dce60_tg_funcs = {
 				dce60_timing_generator_enable_advanced_request,
 		.configure_crc = dce60_configure_crc,
 		.get_crc = dce110_get_crc,
+		.is_two_pixels_per_container = dce110_is_two_pixels_per_container,
 };
 
 void dce60_timing_generator_construct(
drivers/gpu/drm/amd/display/dc/dml2/dml21/dml21_translation_helper.c +2 -2
index c6a5a8614679..de2b6e954fbd 100644
@@ -1010,7 +1010,7 @@ bool dml21_map_dc_state_into_dml_display_cfg(const struct dc *in_dc, struct dc_s
 		if (disp_cfg_stream_location < 0)
 			disp_cfg_stream_location = dml_dispcfg->num_streams++;
 
-		ASSERT(disp_cfg_stream_location >= 0 && disp_cfg_stream_location <= __DML2_WRAPPER_MAX_STREAMS_PLANES__);
+		ASSERT(disp_cfg_stream_location >= 0 && disp_cfg_stream_location < __DML2_WRAPPER_MAX_STREAMS_PLANES__);
 		populate_dml21_timing_config_from_stream_state(&dml_dispcfg->stream_descriptors[disp_cfg_stream_location].timing, context->streams[stream_index], dml_ctx);
 		adjust_dml21_hblank_timing_config_from_pipe_ctx(&dml_dispcfg->stream_descriptors[disp_cfg_stream_location].timing, &context->res_ctx.pipe_ctx[stream_index]);
 		populate_dml21_output_config_from_stream_state(&dml_dispcfg->stream_descriptors[disp_cfg_stream_location].output, context->streams[stream_index], &context->res_ctx.pipe_ctx[stream_index]);
@@ -1035,7 +1035,7 @@ bool dml21_map_dc_state_into_dml_display_cfg(const struct dc *in_dc, struct dc_s
 				if (disp_cfg_plane_location < 0)
 					disp_cfg_plane_location = dml_dispcfg->num_planes++;
 
-				ASSERT(disp_cfg_plane_location >= 0 && disp_cfg_plane_location <= __DML2_WRAPPER_MAX_STREAMS_PLANES__);
+				ASSERT(disp_cfg_plane_location >= 0 && disp_cfg_plane_location < __DML2_WRAPPER_MAX_STREAMS_PLANES__);
 
 				populate_dml21_surface_config_from_plane_state(in_dc, &dml_dispcfg->plane_descriptors[disp_cfg_plane_location].surface, context->stream_status[stream_index].plane_states[plane_index]);
 				populate_dml21_plane_config_from_plane_state(dml_ctx, &dml_dispcfg->plane_descriptors[disp_cfg_plane_location], context->stream_status[stream_index].plane_states[plane_index], context, stream_index);
drivers/gpu/drm/amd/display/dc/dml2/dml2_translation_helper.c +3 -3
index bde4250853b1..81ba8809a3b4 100644
@@ -746,7 +746,7 @@ static void populate_dml_output_cfg_from_stream_state(struct dml_output_cfg_st *
 	case SIGNAL_TYPE_DISPLAY_PORT_MST:
 	case SIGNAL_TYPE_DISPLAY_PORT:
 		out->OutputEncoder[location] = dml_dp;
-		if (dml2->v20.scratch.hpo_stream_to_link_encoder_mapping[location] != -1)
+		if (location < MAX_HPO_DP2_ENCODERS && dml2->v20.scratch.hpo_stream_to_link_encoder_mapping[location] != -1)
 			out->OutputEncoder[dml2->v20.scratch.hpo_stream_to_link_encoder_mapping[location]] = dml_dp2p0;
 		break;
 	case SIGNAL_TYPE_EDP:
@@ -1303,7 +1303,7 @@ void map_dc_state_into_dml_display_cfg(struct dml2_context *dml2, struct dc_stat
 		if (disp_cfg_stream_location < 0)
 			disp_cfg_stream_location = dml_dispcfg->num_timings++;
 
-		ASSERT(disp_cfg_stream_location >= 0 && disp_cfg_stream_location <= __DML2_WRAPPER_MAX_STREAMS_PLANES__);
+		ASSERT(disp_cfg_stream_location >= 0 && disp_cfg_stream_location < __DML2_WRAPPER_MAX_STREAMS_PLANES__);
 
 		populate_dml_timing_cfg_from_stream_state(&dml_dispcfg->timing, disp_cfg_stream_location, context->streams[i]);
 		populate_dml_output_cfg_from_stream_state(&dml_dispcfg->output, disp_cfg_stream_location, context->streams[i], current_pipe_context, dml2);
@@ -1343,7 +1343,7 @@ void map_dc_state_into_dml_display_cfg(struct dml2_context *dml2, struct dc_stat
 				if (disp_cfg_plane_location < 0)
 					disp_cfg_plane_location = dml_dispcfg->num_surfaces++;
 
-				ASSERT(disp_cfg_plane_location >= 0 && disp_cfg_plane_location <= __DML2_WRAPPER_MAX_STREAMS_PLANES__);
+				ASSERT(disp_cfg_plane_location >= 0 && disp_cfg_plane_location < __DML2_WRAPPER_MAX_STREAMS_PLANES__);
 
 				populate_dml_surface_cfg_from_plane_state(dml2->v20.dml_core_ctx.project, &dml_dispcfg->surface, disp_cfg_plane_location, context->stream_status[i].plane_states[j]);
 				populate_dml_plane_cfg_from_plane_state(
drivers/gpu/drm/display/drm_dp_mst_topology.c +24 -16
index dc4446d589e7..acbcfc291f72 100644
@@ -4035,6 +4035,22 @@ static int drm_dp_mst_handle_down_rep(struct drm_dp_mst_topology_mgr *mgr)
 	return 0;
 }
 
+static bool primary_mstb_probing_is_done(struct drm_dp_mst_topology_mgr *mgr)
+{
+	bool probing_done = false;
+
+	mutex_lock(&mgr->lock);
+
+	if (mgr->mst_primary && drm_dp_mst_topology_try_get_mstb(mgr->mst_primary)) {
+		probing_done = mgr->mst_primary->link_address_sent;
+		drm_dp_mst_topology_put_mstb(mgr->mst_primary);
+	}
+
+	mutex_unlock(&mgr->lock);
+
+	return probing_done;
+}
+
 static inline bool
 drm_dp_mst_process_up_req(struct drm_dp_mst_topology_mgr *mgr,
 			  struct drm_dp_pending_up_req *up_req)
@@ -4065,8 +4081,12 @@ drm_dp_mst_process_up_req(struct drm_dp_mst_topology_mgr *mgr,
 
 	/* TODO: Add missing handler for DP_RESOURCE_STATUS_NOTIFY events */
 	if (msg->req_type == DP_CONNECTION_STATUS_NOTIFY) {
-		dowork = drm_dp_mst_handle_conn_stat(mstb, &msg->u.conn_stat);
-		hotplug = true;
+		if (!primary_mstb_probing_is_done(mgr)) {
+			drm_dbg_kms(mgr->dev, "Got CSN before finish topology probing. Skip it.\n");
+		} else {
+			dowork = drm_dp_mst_handle_conn_stat(mstb, &msg->u.conn_stat);
+			hotplug = true;
+		}
 	}
 
 	drm_dp_mst_topology_put_mstb(mstb);
@@ -4148,10 +4168,11 @@ static int drm_dp_mst_handle_up_req(struct drm_dp_mst_topology_mgr *mgr)
 	drm_dp_send_up_ack_reply(mgr, mst_primary, up_req->msg.req_type,
 				 false);
 
+	drm_dp_mst_topology_put_mstb(mst_primary);
+
 	if (up_req->msg.req_type == DP_CONNECTION_STATUS_NOTIFY) {
 		const struct drm_dp_connection_status_notify *conn_stat =
 			&up_req->msg.u.conn_stat;
-		bool handle_csn;
 
 		drm_dbg_kms(mgr->dev, "Got CSN: pn: %d ldps:%d ddps: %d mcs: %d ip: %d pdt: %d\n",
 			    conn_stat->port_number,
@@ -4160,16 +4181,6 @@ static int drm_dp_mst_handle_up_req(struct drm_dp_mst_topology_mgr *mgr)
 			    conn_stat->message_capability_status,
 			    conn_stat->input_port,
 			    conn_stat->peer_device_type);
-
-		mutex_lock(&mgr->probe_lock);
-		handle_csn = mst_primary->link_address_sent;
-		mutex_unlock(&mgr->probe_lock);
-
-		if (!handle_csn) {
-			drm_dbg_kms(mgr->dev, "Got CSN before finish topology probing. Skip it.");
-			kfree(up_req);
-			goto out_put_primary;
-		}
 	} else if (up_req->msg.req_type == DP_RESOURCE_STATUS_NOTIFY) {
 		const struct drm_dp_resource_status_notify *res_stat =
 			&up_req->msg.u.resource_stat;
@@ -4184,9 +4195,6 @@ static int drm_dp_mst_handle_up_req(struct drm_dp_mst_topology_mgr *mgr)
 	list_add_tail(&up_req->next, &mgr->up_req_list);
 	mutex_unlock(&mgr->up_req_lock);
 	queue_work(system_long_wq, &mgr->up_req_work);
-
-out_put_primary:
-	drm_dp_mst_topology_put_mstb(mst_primary);
 out_clear_reply:
 	reset_msg_rx_state(&mgr->up_req_recv);
 	return ret;
drivers/gpu/drm/drm_atomic_uapi.c +4 -0
index 370dc676e3aa..fd36b8fd54e9 100644
@@ -956,6 +956,10 @@ int drm_atomic_connector_commit_dpms(struct drm_atomic_state *state,
 
 	if (mode != DRM_MODE_DPMS_ON)
 		mode = DRM_MODE_DPMS_OFF;
+
+	if (connector->dpms == mode)
+		goto out;
+
 	connector->dpms = mode;
 
 	crtc = connector->state->crtc;
drivers/gpu/drm/drm_connector.c +4 -0
index 0e6021235a93..994afa5a0ffb 100644
@@ -1308,6 +1308,10 @@ EXPORT_SYMBOL(drm_hdmi_connector_get_output_format_name);
  * 	callback. For atomic drivers the remapping to the "ACTIVE" property is
  * 	implemented in the DRM core.
  *
+ * 	On atomic drivers any DPMS setproperty ioctl where the value does not
+ * 	change is completely skipped, otherwise a full atomic commit will occur.
+ * 	On legacy drivers the exact behavior is driver specific.
+ *
  * 	Note that this property cannot be set through the MODE_ATOMIC ioctl,
  * 	userspace must use "ACTIVE" on the CRTC instead.
  *
drivers/gpu/drm/drm_panic_qr.rs +8 -8
index bcf248f69252..6903e2010cb9 100644
@@ -545,7 +545,7 @@ fn add_segments(&mut self, segments: &[&Segment<'_>]) {
         }
         self.push(&mut offset, (MODE_STOP, 4));
 
-        let pad_offset = (offset + 7) / 8;
+        let pad_offset = offset.div_ceil(8);
         for i in pad_offset..self.version.max_data() {
             self.data[i] = PADDING[(i & 1) ^ (pad_offset & 1)];
         }
@@ -659,7 +659,7 @@ struct QrImage<'a> {
 impl QrImage<'_> {
     fn new<'a, 'b>(em: &'b EncodedMsg<'b>, qrdata: &'a mut [u8]) -> QrImage<'a> {
         let width = em.version.width();
-        let stride = (width + 7) / 8;
+        let stride = width.div_ceil(8);
         let data = qrdata;
 
         let mut qr_image = QrImage {
@@ -911,16 +911,16 @@ fn draw_all(&mut self, data: impl Iterator<Item = u8>) {
 ///
 /// * `url`: The base URL of the QR code. It will be encoded as Binary segment.
 /// * `data`: A pointer to the binary data, to be encoded. if URL is NULL, it
-///    will be encoded as binary segment, otherwise it will be encoded
-///    efficiently as a numeric segment, and appended to the URL.
+///   will be encoded as binary segment, otherwise it will be encoded
+///   efficiently as a numeric segment, and appended to the URL.
 /// * `data_len`: Length of the data, that needs to be encoded, must be less
-///    than data_size.
+///   than data_size.
 /// * `data_size`: Size of data buffer, it should be at least 4071 bytes to hold
-///    a V40 QR code. It will then be overwritten with the QR code image.
+///   a V40 QR code. It will then be overwritten with the QR code image.
 /// * `tmp`: A temporary buffer that the QR code encoder will use, to write the
-///    segments and ECC.
+///   segments and ECC.
 /// * `tmp_size`: Size of the temporary buffer, it must be at least 3706 bytes
-///    long for V40.
+///   long for V40.
 ///
 /// # Safety
 ///
drivers/gpu/drm/gma500/mid_bios.c +5 -0
index 7e76790c6a81..cba97d7db131 100644
@@ -279,6 +279,11 @@ static void mid_get_vbt_data(struct drm_psb_private *dev_priv)
 					    0, PCI_DEVFN(2, 0));
 	int ret = -1;
 
+	if (pci_gfx_root == NULL) {
+		WARN_ON(1);
+		return;
+	}
+
 	/* Get the address of the platform config vbt */
 	pci_read_config_dword(pci_gfx_root, 0xFC, &addr);
 	pci_dev_put(pci_gfx_root);
drivers/gpu/drm/hyperv/hyperv_drm_drv.c +2 -0
index e0953777a206..b491827941f1 100644
@@ -156,6 +156,7 @@ static int hyperv_vmbus_probe(struct hv_device *hdev,
 	return 0;
 
 err_free_mmio:
+	iounmap(hv->vram);
 	vmbus_free_mmio(hv->mem->start, hv->fb_size);
 err_vmbus_close:
 	vmbus_close(hdev->channel);
@@ -174,6 +175,7 @@ static void hyperv_vmbus_remove(struct hv_device *hdev)
 	vmbus_close(hdev->channel);
 	hv_set_drvdata(hdev, NULL);
 
+	iounmap(hv->vram);
 	vmbus_free_mmio(hv->mem->start, hv->fb_size);
 }
 
drivers/gpu/drm/i915/display/intel_display.c +2 -3
index 9d9fe11dd055..d188ea929080 100644
@@ -7840,9 +7840,6 @@ static void intel_atomic_commit_tail(struct intel_atomic_state *state)
 	/* Now enable the clocks, plane, pipe, and connectors that we set up. */
 	dev_priv->display.funcs.display->commit_modeset_enables(state);
 
-	if (state->modeset)
-		intel_set_cdclk_post_plane_update(state);
-
 	intel_wait_for_vblank_workers(state);
 
 	/* FIXME: We should call drm_atomic_helper_commit_hw_done() here
@@ -7916,6 +7913,8 @@ static void intel_atomic_commit_tail(struct intel_atomic_state *state)
 		intel_verify_planes(state);
 
 	intel_sagv_post_plane_update(state);
+	if (state->modeset)
+		intel_set_cdclk_post_plane_update(state);
 	intel_pmdemand_post_plane_update(state);
 
 	drm_atomic_helper_commit_hw_done(&state->base);
drivers/gpu/drm/i915/gem/i915_gem_mman.c +4 -1
index 21274aa9bddd..c3dabb857960 100644
@@ -164,6 +164,9 @@ static unsigned int tile_row_pages(const struct drm_i915_gem_object *obj)
  * 4 - Support multiple fault handlers per object depending on object's
  *     backing storage (a.k.a. MMAP_OFFSET).
  *
+ * 5 - Support multiple partial mmaps(mmap part of BO + unmap a offset, multiple
+ *     times with different size and offset).
+ *
  * Restrictions:
  *
  *  * snoopable objects cannot be accessed via the GTT. It can cause machine
@@ -191,7 +194,7 @@ static unsigned int tile_row_pages(const struct drm_i915_gem_object *obj)
  */
 int i915_gem_mmap_gtt_version(void)
 {
-	return 4;
+	return 5;
 }
 
 static inline struct i915_gtt_view
drivers/gpu/drm/nouveau/nouveau_connector.c +0 -1
index 8d5c9c74cbb9..eac0d1d2dbda 100644
@@ -775,7 +775,6 @@ nouveau_connector_force(struct drm_connector *connector)
 	if (!nv_encoder) {
 		NV_ERROR(drm, "can't find encoder to force %s on!\n",
 			 connector->name);
-		connector->status = connector_status_disconnected;
 		return;
 	}
 
drivers/gpu/drm/tests/drm_hdmi_state_helper_test.c +96 -97

493 lines not on this page · raw message

drivers/gpu/drm/vkms/vkms_composer.c +1 -1
index 3f0977d746be..87dfb9f69ee5 100644
@@ -98,7 +98,7 @@ static u16 lerp_u16(u16 a, u16 b, s64 t)
 
 	s64 delta = drm_fixp_mul(b_fp - a_fp,  t);
 
-	return drm_fixp2int(a_fp + delta);
+	return drm_fixp2int_round(a_fp + delta);
 }
 
 static s64 get_lut_index(const struct vkms_color_lut *lut, u16 channel_value)
drivers/gpu/drm/xe/xe_guc_ct.c +4 -2
index 6eabf7a9d3b0..fd9734b0c19f 100644
@@ -1699,9 +1699,11 @@ void xe_guc_ct_snapshot_print(struct xe_guc_ct_snapshot *snapshot,
 		drm_printf(p, "\tg2h outstanding: %d\n",
 			   snapshot->g2h_outstanding);
 
-		if (snapshot->ctb)
-			xe_print_blob_ascii85(p, "CTB data", '\n',
+		if (snapshot->ctb) {
+			drm_printf(p, "[CTB].length: 0x%zx\n", snapshot->ctb_size);
+			xe_print_blob_ascii85(p, "[CTB].data", '\n',
 					      snapshot->ctb, 0, snapshot->ctb_size);
+		}
 	} else {
 		drm_puts(p, "CT disabled\n");
 	}
drivers/gpu/drm/xe/xe_guc_log.c +2 -1
index 2baa4d95571f..0ca3056d8bd3 100644
@@ -208,10 +208,11 @@ void xe_guc_log_snapshot_print(struct xe_guc_log_snapshot *snapshot, struct drm_
 	drm_printf(p, "GuC timestamp: 0x%08llX [%llu]\n", snapshot->stamp, snapshot->stamp);
 	drm_printf(p, "Log level: %u\n", snapshot->level);
 
+	drm_printf(p, "[LOG].length: 0x%zx\n", snapshot->size);
 	remain = snapshot->size;
 	for (i = 0; i < snapshot->num_chunks; i++) {
 		size_t size = min(GUC_LOG_CHUNK_SIZE, remain);
-		const char *prefix = i ? NULL : "Log data";
+		const char *prefix = i ? NULL : "[LOG].data";
 		char suffix = i == snapshot->num_chunks - 1 ? '\n' : 0;
 
 		xe_print_blob_ascii85(p, prefix, suffix, snapshot->copy[i], 0, size);
drivers/gpu/drm/xe/xe_guc_submit.c +3 -1
index 6f4a9812b4f4..d2b1fce121a8 100644
@@ -1236,9 +1236,11 @@ static void __guc_exec_queue_fini_async(struct work_struct *w)
 	xe_pm_runtime_get(guc_to_xe(guc));
 	trace_xe_exec_queue_destroy(q);
 
+	release_guc_id(guc, q);
 	if (xe_exec_queue_is_lr(q))
 		cancel_work_sync(&ge->lr_tdr);
-	release_guc_id(guc, q);
+	/* Confirm no work left behind accessing device structures */
+	cancel_delayed_work_sync(&ge->sched.base.work_tdr);
 	xe_sched_entity_fini(&ge->entity);
 	xe_sched_fini(&ge->sched);
 
drivers/gpu/drm/xe/xe_hmm.c +5 -1
index d7a9408b3a97..f6bc4f29d753 100644
@@ -138,13 +138,17 @@ static int xe_build_sg(struct xe_device *xe, struct hmm_range *range,
 		i += size;
 
 		if (unlikely(j == st->nents - 1)) {
+			xe_assert(xe, i >= npages);
 			if (i > npages)
 				size -= (i - npages);
+
 			sg_mark_end(sgl);
+		} else {
+			xe_assert(xe, i < npages);
 		}
+
 		sg_set_page(sgl, page, size << PAGE_SHIFT, 0);
 	}
-	xe_assert(xe, i == npages);
 
 	return dma_map_sgtable(dev, st, write ? DMA_BIDIRECTIONAL : DMA_TO_DEVICE,
 			       DMA_ATTR_SKIP_CPU_SYNC | DMA_ATTR_NO_KERNEL_MAPPING);
drivers/gpu/drm/xe/xe_pm.c +12 -1
index 40f7c844ed44..f13bccfa09e2 100644
@@ -266,6 +266,15 @@ int xe_pm_init_early(struct xe_device *xe)
 }
 ALLOW_ERROR_INJECTION(xe_pm_init_early, ERRNO); /* See xe_pci_probe() */
 
+static u32 vram_threshold_value(struct xe_device *xe)
+{
+	/* FIXME: D3Cold temporarily disabled by default on BMG */
+	if (xe->info.platform == XE_BATTLEMAGE)
+		return 0;
+
+	return DEFAULT_VRAM_THRESHOLD;
+}
+
 /**
  * xe_pm_init - Initialize Xe Power Management
  * @xe: xe device instance
@@ -276,6 +285,7 @@ ALLOW_ERROR_INJECTION(xe_pm_init_early, ERRNO); /* See xe_pci_probe() */
  */
 int xe_pm_init(struct xe_device *xe)
 {
+	u32 vram_threshold;
 	int err;
 
 	/* For now suspend/resume is only allowed with GuC */
@@ -289,7 +299,8 @@ int xe_pm_init(struct xe_device *xe)
 		if (err)
 			return err;
 
-		err = xe_pm_set_vram_threshold(xe, DEFAULT_VRAM_THRESHOLD);
+		vram_threshold = vram_threshold_value(xe);
+		err = xe_pm_set_vram_threshold(xe, vram_threshold);
 		if (err)
 			return err;
 	}
drivers/hid/Kconfig +2 -1
index 4d2a89d65b65..363c860835d3 100644
@@ -1167,7 +1167,8 @@ config HID_TOPRE
 	tristate "Topre REALFORCE keyboards"
 	depends on HID
 	help
-	  Say Y for N-key rollover support on Topre REALFORCE R2 108/87 key keyboards.
+	  Say Y for N-key rollover support on Topre REALFORCE R2 108/87 key and
+          Topre REALFORCE R3S 87 key keyboards.
 
 config HID_THINGM
 	tristate "ThingM blink(1) USB RGB LED"
drivers/hid/hid-apple.c +12 -1
index 7e1ae2a2bcc2..d900dd05c335 100644
@@ -378,6 +378,12 @@ static bool apple_is_non_apple_keyboard(struct hid_device *hdev)
 	return false;
 }
 
+static bool apple_is_omoton_kb066(struct hid_device *hdev)
+{
+	return hdev->product == USB_DEVICE_ID_APPLE_ALU_WIRELESS_ANSI &&
+		strcmp(hdev->name, "Bluetooth Keyboard") == 0;
+}
+
 static inline void apple_setup_key_translation(struct input_dev *input,
 		const struct apple_key_translation *table)
 {
@@ -474,6 +480,7 @@ static int hidinput_apple_event(struct hid_device *hid, struct input_dev *input,
 			 hid->product == USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_NUMPAD_2015)
 			table = magic_keyboard_2015_fn_keys;
 		else if (hid->product == USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_2021 ||
+			 hid->product == USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_2024 ||
 			 hid->product == USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_FINGERPRINT_2021 ||
 			 hid->product == USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_NUMPAD_2021)
 			table = apple2021_fn_keys;
@@ -724,7 +731,7 @@ static int apple_input_configured(struct hid_device *hdev,
 {
 	struct apple_sc *asc = hid_get_drvdata(hdev);
 
-	if ((asc->quirks & APPLE_HAS_FN) && !asc->fn_found) {
+	if (((asc->quirks & APPLE_HAS_FN) && !asc->fn_found) || apple_is_omoton_kb066(hdev)) {
 		hid_info(hdev, "Fn key not found (Apple Wireless Keyboard clone?), disabling Fn key handling\n");
 		asc->quirks &= ~APPLE_HAS_FN;
 	}
@@ -1150,6 +1157,10 @@ static const struct hid_device_id apple_devices[] = {
 		.driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK | APPLE_RDESC_BATTERY },
 	{ HID_BLUETOOTH_DEVICE(BT_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_2021),
 		.driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK },
+	{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_2024),
+		.driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK | APPLE_RDESC_BATTERY },
+	{ HID_BLUETOOTH_DEVICE(BT_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_2024),
+		.driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK },
 	{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_FINGERPRINT_2021),
 		.driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK | APPLE_RDESC_BATTERY },
 	{ HID_BLUETOOTH_DEVICE(BT_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_FINGERPRINT_2021),
drivers/hid/hid-ids.h +3 -0
index d1d479ca50a2..c4ca7a579e3d 100644
@@ -184,6 +184,7 @@
 #define USB_DEVICE_ID_APPLE_IRCONTROL4	0x8242
 #define USB_DEVICE_ID_APPLE_IRCONTROL5	0x8243
 #define USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_2021   0x029c
+#define USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_2024   0x0320
 #define USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_FINGERPRINT_2021   0x029a
 #define USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_NUMPAD_2021   0x029f
 #define USB_DEVICE_ID_APPLE_TOUCHBAR_BACKLIGHT 0x8102
@@ -1093,6 +1094,7 @@
 #define USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH_3001		0x3001
 #define USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH_3003		0x3003
 #define USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH_3008		0x3008
+#define USB_DEVICE_ID_QUANTA_HP_5MP_CAMERA_5473		0x5473
 
 #define I2C_VENDOR_ID_RAYDIUM		0x2386
 #define I2C_PRODUCT_ID_RAYDIUM_4B33	0x4b33
@@ -1299,6 +1301,7 @@
 #define USB_VENDOR_ID_TOPRE			0x0853
 #define USB_DEVICE_ID_TOPRE_REALFORCE_R2_108			0x0148
 #define USB_DEVICE_ID_TOPRE_REALFORCE_R2_87			0x0146
+#define USB_DEVICE_ID_TOPRE_REALFORCE_R3S_87			0x0313
 
 #define USB_VENDOR_ID_TOPSEED		0x0766
 #define USB_DEVICE_ID_TOPSEED_CYBERLINK	0x0204
drivers/hid/hid-quirks.c +1 -0
index e0bbf0c6345d..5d7a418ccdbe 100644
@@ -891,6 +891,7 @@ static const struct hid_device_id hid_ignore_list[] = {
 	{ HID_USB_DEVICE(USB_VENDOR_ID_SYNAPTICS, USB_DEVICE_ID_SYNAPTICS_DPAD) },
 #endif
 	{ HID_USB_DEVICE(USB_VENDOR_ID_YEALINK, USB_DEVICE_ID_YEALINK_P1K_P4K_B2K) },
+	{ HID_USB_DEVICE(USB_VENDOR_ID_QUANTA, USB_DEVICE_ID_QUANTA_HP_5MP_CAMERA_5473) },
 	{ }
 };
 
drivers/hid/hid-steam.c +3 -3
index 03e57d8acdad..10460b7bde1a 100644
@@ -1051,10 +1051,10 @@ static void steam_mode_switch_cb(struct work_struct *work)
 							struct steam_device, mode_switch);
 	unsigned long flags;
 	bool client_opened;
-	steam->gamepad_mode = !steam->gamepad_mode;
 	if (!lizard_mode)
 		return;
 
+	steam->gamepad_mode = !steam->gamepad_mode;
 	if (steam->gamepad_mode)
 		steam_set_lizard_mode(steam, false);
 	else {
@@ -1623,7 +1623,7 @@ static void steam_do_deck_input_event(struct steam_device *steam,
 		schedule_delayed_work(&steam->mode_switch, 45 * HZ / 100);
 	}
 
-	if (!steam->gamepad_mode)
+	if (!steam->gamepad_mode && lizard_mode)
 		return;
 
 	lpad_touched = b10 & BIT(3);
@@ -1693,7 +1693,7 @@ static void steam_do_deck_sensors_event(struct steam_device *steam,
 	 */
 	steam->sensor_timestamp_us += 4000;
 
-	if (!steam->gamepad_mode)
+	if (!steam->gamepad_mode && lizard_mode)
 		return;
 
 	input_event(sensors, EV_MSC, MSC_TIMESTAMP, steam->sensor_timestamp_us);
drivers/hid/hid-topre.c +7 -0
index 848361f6225d..ccedf8721722 100644
@@ -29,6 +29,11 @@ static const __u8 *topre_report_fixup(struct hid_device *hdev, __u8 *rdesc,
 		hid_info(hdev,
 			"fixing up Topre REALFORCE keyboard report descriptor\n");
 		rdesc[72] = 0x02;
+	} else if (*rsize >= 106 && rdesc[28] == 0x29 && rdesc[29] == 0xe7 &&
+				    rdesc[30] == 0x81 && rdesc[31] == 0x00) {
+		hid_info(hdev,
+			"fixing up Topre REALFORCE keyboard report descriptor\n");
+		rdesc[31] = 0x02;
 	}
 	return rdesc;
 }
@@ -38,6 +43,8 @@ static const struct hid_device_id topre_id_table[] = {
 			 USB_DEVICE_ID_TOPRE_REALFORCE_R2_108) },
 	{ HID_USB_DEVICE(USB_VENDOR_ID_TOPRE,
 			 USB_DEVICE_ID_TOPRE_REALFORCE_R2_87) },
+	{ HID_USB_DEVICE(USB_VENDOR_ID_TOPRE,
+			 USB_DEVICE_ID_TOPRE_REALFORCE_R3S_87) },
 	{ }
 };
 MODULE_DEVICE_TABLE(hid, topre_id_table);
drivers/hid/intel-ish-hid/ipc/hw-ish.h +2 -0
index cdd80c653918..07e90d51f073 100644
@@ -36,6 +36,8 @@
 #define PCI_DEVICE_ID_INTEL_ISH_ARL_H		0x7745
 #define PCI_DEVICE_ID_INTEL_ISH_ARL_S		0x7F78
 #define PCI_DEVICE_ID_INTEL_ISH_LNL_M		0xA845
+#define PCI_DEVICE_ID_INTEL_ISH_PTL_H		0xE345
+#define PCI_DEVICE_ID_INTEL_ISH_PTL_P		0xE445
 
 #define	REVISION_ID_CHT_A0	0x6
 #define	REVISION_ID_CHT_Ax_SI	0x0
drivers/hid/intel-ish-hid/ipc/ipc.c +9 -6
index 3cd53fc80634..4c861119e97a 100644
@@ -517,6 +517,10 @@ static int ish_fw_reset_handler(struct ishtp_device *dev)
 	/* ISH FW is dead */
 	if (!ish_is_input_ready(dev))
 		return	-EPIPE;
+
+	/* Send clock sync at once after reset */
+	ishtp_dev->prev_sync = 0;
+
 	/*
 	 * Set HOST2ISH.ILUP. Apparently we need this BEFORE sending
 	 * RESET_NOTIFY_ACK - FW will be checking for it
@@ -577,15 +581,14 @@ static void fw_reset_work_fn(struct work_struct *work)
  */
 static void _ish_sync_fw_clock(struct ishtp_device *dev)
 {
-	static unsigned long	prev_sync;
-	uint64_t	usec;
+	struct ipc_time_update_msg time = {};
 
-	if (prev_sync && time_before(jiffies, prev_sync + 20 * HZ))
+	if (dev->prev_sync && time_before(jiffies, dev->prev_sync + 20 * HZ))
 		return;
 
-	prev_sync = jiffies;
-	usec = ktime_to_us(ktime_get_boottime());
-	ipc_send_mng_msg(dev, MNG_SYNC_FW_CLOCK, &usec, sizeof(uint64_t));
+	dev->prev_sync = jiffies;
+	/* The fields of time would be updated while sending message */
+	ipc_send_mng_msg(dev, MNG_SYNC_FW_CLOCK, &time, sizeof(time));
 }
 
 /**
drivers/hid/intel-ish-hid/ipc/pci-ish.c +7 -0
index 9e2401291a2f..ff0fc8010072 100644
@@ -26,9 +26,11 @@
 enum ishtp_driver_data_index {
 	ISHTP_DRIVER_DATA_NONE,
 	ISHTP_DRIVER_DATA_LNL_M,
+	ISHTP_DRIVER_DATA_PTL,
 };
 
 #define ISH_FW_GEN_LNL_M "lnlm"
+#define ISH_FW_GEN_PTL "ptl"
 
 #define ISH_FIRMWARE_PATH(gen) "intel/ish/ish_" gen ".bin"
 #define ISH_FIRMWARE_PATH_ALL "intel/ish/ish_*.bin"
@@ -37,6 +39,9 @@ static struct ishtp_driver_data ishtp_driver_data[] = {
 	[ISHTP_DRIVER_DATA_LNL_M] = {
 		.fw_generation = ISH_FW_GEN_LNL_M,
 	},
+	[ISHTP_DRIVER_DATA_PTL] = {
+		.fw_generation = ISH_FW_GEN_PTL,
+	},
 };
 
 static const struct pci_device_id ish_pci_tbl[] = {
@@ -63,6 +68,8 @@ static const struct pci_device_id ish_pci_tbl[] = {
 	{PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_ISH_ARL_H)},
 	{PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_ISH_ARL_S)},
 	{PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_ISH_LNL_M), .driver_data = ISHTP_DRIVER_DATA_LNL_M},
+	{PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_ISH_PTL_H), .driver_data = ISHTP_DRIVER_DATA_PTL},
+	{PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_ISH_PTL_P), .driver_data = ISHTP_DRIVER_DATA_PTL},
 	{}
 };
 MODULE_DEVICE_TABLE(pci, ish_pci_tbl);
drivers/hid/intel-ish-hid/ishtp/ishtp-dev.h +2 -0
index effbb442c727..dfc8cfd39353 100644
@@ -254,6 +254,8 @@ struct ishtp_device {
 	unsigned int	ipc_tx_cnt;
 	unsigned long long	ipc_tx_bytes_cnt;
 
+	/* Time of the last clock sync */
+	unsigned long prev_sync;
 	const struct ishtp_hw_ops *ops;
 	size_t	mtu;
 	uint32_t	ishtp_msg_hdr;
drivers/hv/vmbus_drv.c +13 -0
index 0f6cd44fff29..6e55a1a2613d 100644
@@ -2262,12 +2262,25 @@ void vmbus_free_mmio(resource_size_t start, resource_size_t size)
 	struct resource *iter;
 
 	mutex_lock(&hyperv_mmio_lock);
+
+	/*
+	 * If all bytes of the MMIO range to be released are within the
+	 * special case fb_mmio shadow region, skip releasing the shadow
+	 * region since no corresponding __request_region() was done
+	 * in vmbus_allocate_mmio().
+	 */
+	if (fb_mmio && start >= fb_mmio->start &&
+	    (start + size - 1 <= fb_mmio->end))
+		goto skip_shadow_release;
+
 	for (iter = hyperv_mmio; iter; iter = iter->sibling) {
 		if ((iter->start >= start + size) || (iter->end <= start))
 			continue;
 
 		__release_region(iter, start, size);
 	}
+
+skip_shadow_release:
 	release_mem_region(start, size);
 	mutex_unlock(&hyperv_mmio_lock);
 
drivers/i2c/busses/i2c-ali1535.c +11 -1
index 544c94e86b89..1eac35838040 100644
@@ -485,6 +485,8 @@ MODULE_DEVICE_TABLE(pci, ali1535_ids);
 
 static int ali1535_probe(struct pci_dev *dev, const struct pci_device_id *id)
 {
+	int ret;
+
 	if (ali1535_setup(dev)) {
 		dev_warn(&dev->dev,
 			"ALI1535 not detected, module not inserted.\n");
@@ -496,7 +498,15 @@ static int ali1535_probe(struct pci_dev *dev, const struct pci_device_id *id)
 
 	snprintf(ali1535_adapter.name, sizeof(ali1535_adapter.name),
 		"SMBus ALI1535 adapter at %04x", ali1535_offset);
-	return i2c_add_adapter(&ali1535_adapter);
+	ret = i2c_add_adapter(&ali1535_adapter);
+	if (ret)
+		goto release_region;
+
+	return 0;
+
+release_region:
+	release_region(ali1535_smba, ALI1535_SMB_IOSIZE);
+	return ret;
 }
 
 static void ali1535_remove(struct pci_dev *dev)
drivers/i2c/busses/i2c-ali15x3.c +11 -1
index 4761c7208102..418d11266671 100644
@@ -472,6 +472,8 @@ MODULE_DEVICE_TABLE (pci, ali15x3_ids);
 
 static int ali15x3_probe(struct pci_dev *dev, const struct pci_device_id *id)
 {
+	int ret;
+
 	if (ali15x3_setup(dev)) {
 		dev_err(&dev->dev,
 			"ALI15X3 not detected, module not inserted.\n");
@@ -483,7 +485,15 @@ static int ali15x3_probe(struct pci_dev *dev, const struct pci_device_id *id)
 
 	snprintf(ali15x3_adapter.name, sizeof(ali15x3_adapter.name),
 		"SMBus ALI15X3 adapter at %04x", ali15x3_smba);
-	return i2c_add_adapter(&ali15x3_adapter);
+	ret = i2c_add_adapter(&ali15x3_adapter);
+	if (ret)
+		goto release_region;
+
+	return 0;
+
+release_region:
+	release_region(ali15x3_smba, ALI15X3_SMB_IOSIZE);
+	return ret;
 }
 
 static void ali15x3_remove(struct pci_dev *dev)
drivers/i2c/busses/i2c-sis630.c +11 -1
index 3505cf29cedd..a19c3d251804 100644
@@ -509,6 +509,8 @@ MODULE_DEVICE_TABLE(pci, sis630_ids);
 
 static int sis630_probe(struct pci_dev *dev, const struct pci_device_id *id)
 {
+	int ret;
+
 	if (sis630_setup(dev)) {
 		dev_err(&dev->dev,
 			"SIS630 compatible bus not detected, "
@@ -522,7 +524,15 @@ static int sis630_probe(struct pci_dev *dev, const struct pci_device_id *id)
 	snprintf(sis630_adapter.name, sizeof(sis630_adapter.name),
 		 "SMBus SIS630 adapter at %04x", smbus_base + SMB_STS);
 
-	return i2c_add_adapter(&sis630_adapter);
+	ret = i2c_add_adapter(&sis630_adapter);
+	if (ret)
+		goto release_region;
+
+	return 0;
+
+release_region:
+	release_region(smbus_base + SMB_STS, SIS630_SMB_IOREGION);
+	return ret;
 }
 
 static void sis630_remove(struct pci_dev *dev)
drivers/input/joystick/xpad.c +32 -7
index 8fe2a51df649..c33e6f33265b 100644
@@ -140,6 +140,7 @@ static const struct xpad_device {
 	{ 0x044f, 0x0f00, "Thrustmaster Wheel", 0, XTYPE_XBOX },
 	{ 0x044f, 0x0f03, "Thrustmaster Wheel", 0, XTYPE_XBOX },
 	{ 0x044f, 0x0f07, "Thrustmaster, Inc. Controller", 0, XTYPE_XBOX },
+	{ 0x044f, 0xd01e, "ThrustMaster, Inc. ESWAP X 2 ELDEN RING EDITION", 0, XTYPE_XBOXONE },
 	{ 0x044f, 0x0f10, "Thrustmaster Modena GT Wheel", 0, XTYPE_XBOX },
 	{ 0x044f, 0xb326, "Thrustmaster Gamepad GP XID", 0, XTYPE_XBOX360 },
 	{ 0x045e, 0x0202, "Microsoft X-Box pad v1 (US)", 0, XTYPE_XBOX },
@@ -177,6 +178,7 @@ static const struct xpad_device {
 	{ 0x06a3, 0x0200, "Saitek Racing Wheel", 0, XTYPE_XBOX },
 	{ 0x06a3, 0x0201, "Saitek Adrenalin", 0, XTYPE_XBOX },
 	{ 0x06a3, 0xf51a, "Saitek P3600", 0, XTYPE_XBOX360 },
+	{ 0x0738, 0x4503, "Mad Catz Racing Wheel", 0, XTYPE_XBOXONE },
 	{ 0x0738, 0x4506, "Mad Catz 4506 Wireless Controller", 0, XTYPE_XBOX },
 	{ 0x0738, 0x4516, "Mad Catz Control Pad", 0, XTYPE_XBOX },
 	{ 0x0738, 0x4520, "Mad Catz Control Pad Pro", 0, XTYPE_XBOX },
@@ -238,6 +240,7 @@ static const struct xpad_device {
 	{ 0x0e6f, 0x0146, "Rock Candy Wired Controller for Xbox One", 0, XTYPE_XBOXONE },
 	{ 0x0e6f, 0x0147, "PDP Marvel Xbox One Controller", 0, XTYPE_XBOXONE },
 	{ 0x0e6f, 0x015c, "PDP Xbox One Arcade Stick", MAP_TRIGGERS_TO_BUTTONS, XTYPE_XBOXONE },
+	{ 0x0e6f, 0x015d, "PDP Mirror's Edge Official Wired Controller for Xbox One", XTYPE_XBOXONE },
 	{ 0x0e6f, 0x0161, "PDP Xbox One Controller", 0, XTYPE_XBOXONE },
 	{ 0x0e6f, 0x0162, "PDP Xbox One Controller", 0, XTYPE_XBOXONE },
 	{ 0x0e6f, 0x0163, "PDP Xbox One Controller", 0, XTYPE_XBOXONE },
@@ -276,12 +279,15 @@ static const struct xpad_device {
 	{ 0x0f0d, 0x0078, "Hori Real Arcade Pro V Kai Xbox One", MAP_TRIGGERS_TO_BUTTONS, XTYPE_XBOXONE },
 	{ 0x0f0d, 0x00c5, "Hori Fighting Commander ONE", MAP_TRIGGERS_TO_BUTTONS, XTYPE_XBOXONE },
 	{ 0x0f0d, 0x00dc, "HORIPAD FPS for Nintendo Switch", MAP_TRIGGERS_TO_BUTTONS, XTYPE_XBOX360 },
+	{ 0x0f0d, 0x0151, "Hori Racing Wheel Overdrive for Xbox Series X", 0, XTYPE_XBOXONE },
+	{ 0x0f0d, 0x0152, "Hori Racing Wheel Overdrive for Xbox Series X", 0, XTYPE_XBOXONE },
 	{ 0x0f30, 0x010b, "Philips Recoil", 0, XTYPE_XBOX },
 	{ 0x0f30, 0x0202, "Joytech Advanced Controller", 0, XTYPE_XBOX },
 	{ 0x0f30, 0x8888, "BigBen XBMiniPad Controller", 0, XTYPE_XBOX },
 	{ 0x102c, 0xff0c, "Joytech Wireless Advanced Controller", 0, XTYPE_XBOX },
 	{ 0x1038, 0x1430, "SteelSeries Stratus Duo", 0, XTYPE_XBOX360 },
 	{ 0x1038, 0x1431, "SteelSeries Stratus Duo", 0, XTYPE_XBOX360 },
+	{ 0x10f5, 0x7005, "Turtle Beach Recon Controller", 0, XTYPE_XBOXONE },
 	{ 0x11c9, 0x55f0, "Nacon GC-100XF", 0, XTYPE_XBOX360 },
 	{ 0x11ff, 0x0511, "PXN V900", 0, XTYPE_XBOX360 },
 	{ 0x1209, 0x2882, "Ardwiino Controller", 0, XTYPE_XBOX360 },
@@ -306,7 +312,7 @@ static const struct xpad_device {
 	{ 0x1689, 0xfe00, "Razer Sabertooth", 0, XTYPE_XBOX360 },
 	{ 0x17ef, 0x6182, "Lenovo Legion Controller for Windows", 0, XTYPE_XBOX360 },
 	{ 0x1949, 0x041a, "Amazon Game Controller", 0, XTYPE_XBOX360 },
-	{ 0x1a86, 0xe310, "QH Electronics Controller", 0, XTYPE_XBOX360 },
+	{ 0x1a86, 0xe310, "Legion Go S", 0, XTYPE_XBOX360 },
 	{ 0x1bad, 0x0002, "Harmonix Rock Band Guitar", 0, XTYPE_XBOX360 },
 	{ 0x1bad, 0x0003, "Harmonix Rock Band Drumkit", MAP_DPAD_TO_BUTTONS, XTYPE_XBOX360 },
 	{ 0x1bad, 0x0130, "Ion Drum Rocker", MAP_DPAD_TO_BUTTONS, XTYPE_XBOX360 },
@@ -343,6 +349,7 @@ static const struct xpad_device {
 	{ 0x1bad, 0xfa01, "MadCatz GamePad", 0, XTYPE_XBOX360 },
 	{ 0x1bad, 0xfd00, "Razer Onza TE", 0, XTYPE_XBOX360 },
 	{ 0x1bad, 0xfd01, "Razer Onza", 0, XTYPE_XBOX360 },
+	{ 0x1ee9, 0x1590, "ZOTAC Gaming Zone", 0, XTYPE_XBOX360 },
 	{ 0x20d6, 0x2001, "BDA Xbox Series X Wired Controller", 0, XTYPE_XBOXONE },
 	{ 0x20d6, 0x2009, "PowerA Enhanced Wired Controller for Xbox Series X|S", 0, XTYPE_XBOXONE },
 	{ 0x20d6, 0x281f, "PowerA Wired Controller For Xbox 360", 0, XTYPE_XBOX360 },
@@ -366,6 +373,7 @@ static const struct xpad_device {
 	{ 0x24c6, 0x5510, "Hori Fighting Commander ONE (Xbox 360/PC Mode)", MAP_TRIGGERS_TO_BUTTONS, XTYPE_XBOX360 },
 	{ 0x24c6, 0x551a, "PowerA FUSION Pro Controller", 0, XTYPE_XBOXONE },
 	{ 0x24c6, 0x561a, "PowerA FUSION Controller", 0, XTYPE_XBOXONE },
+	{ 0x24c6, 0x581a, "ThrustMaster XB1 Classic Controller", 0, XTYPE_XBOXONE },
 	{ 0x24c6, 0x5b00, "ThrustMaster Ferrari 458 Racing Wheel", 0, XTYPE_XBOX360 },
 	{ 0x24c6, 0x5b02, "Thrustmaster, Inc. GPX Controller", 0, XTYPE_XBOX360 },
 	{ 0x24c6, 0x5b03, "Thrustmaster Ferrari 458 Racing Wheel", 0, XTYPE_XBOX360 },
@@ -374,10 +382,15 @@ static const struct xpad_device {
 	{ 0x2563, 0x058d, "OneXPlayer Gamepad", 0, XTYPE_XBOX360 },
 	{ 0x294b, 0x3303, "Snakebyte GAMEPAD BASE X", 0, XTYPE_XBOXONE },
 	{ 0x294b, 0x3404, "Snakebyte GAMEPAD RGB X", 0, XTYPE_XBOXONE },
+	{ 0x2993, 0x2001, "TECNO Pocket Go", 0, XTYPE_XBOX360 },
 	{ 0x2dc8, 0x2000, "8BitDo Pro 2 Wired Controller fox Xbox", 0, XTYPE_XBOXONE },
 	{ 0x2dc8, 0x3106, "8BitDo Ultimate Wireless / Pro 2 Wired Controller", 0, XTYPE_XBOX360 },
+	{ 0x2dc8, 0x3109, "8BitDo Ultimate Wireless Bluetooth", 0, XTYPE_XBOX360 },
 	{ 0x2dc8, 0x310a, "8BitDo Ultimate 2C Wireless Controller", 0, XTYPE_XBOX360 },
+	{ 0x2dc8, 0x6001, "8BitDo SN30 Pro", 0, XTYPE_XBOX360 },
 	{ 0x2e24, 0x0652, "Hyperkin Duke X-Box One pad", 0, XTYPE_XBOXONE },
+	{ 0x2e24, 0x1688, "Hyperkin X91 X-Box One pad", 0, XTYPE_XBOXONE },
+	{ 0x2e95, 0x0504, "SCUF Gaming Controller", MAP_SELECT_BUTTON, XTYPE_XBOXONE },
 	{ 0x31e3, 0x1100, "Wooting One", 0, XTYPE_XBOX360 },
 	{ 0x31e3, 0x1200, "Wooting Two", 0, XTYPE_XBOX360 },
 	{ 0x31e3, 0x1210, "Wooting Lekker", 0, XTYPE_XBOX360 },
@@ -385,11 +398,16 @@ static const struct xpad_device {
 	{ 0x31e3, 0x1230, "Wooting Two HE (ARM)", 0, XTYPE_XBOX360 },
 	{ 0x31e3, 0x1300, "Wooting 60HE (AVR)", 0, XTYPE_XBOX360 },
 	{ 0x31e3, 0x1310, "Wooting 60HE (ARM)", 0, XTYPE_XBOX360 },
+	{ 0x3285, 0x0603, "Nacon Pro Compact controller for Xbox", 0, XTYPE_XBOXONE },
 	{ 0x3285, 0x0607, "Nacon GC-100", 0, XTYPE_XBOX360 },
+	{ 0x3285, 0x0614, "Nacon Pro Compact", 0, XTYPE_XBOXONE },
 	{ 0x3285, 0x0646, "Nacon Pro Compact", 0, XTYPE_XBOXONE },
+	{ 0x3285, 0x0662, "Nacon Revolution5 Pro", 0, XTYPE_XBOX360 },
 	{ 0x3285, 0x0663, "Nacon Evol-X", 0, XTYPE_XBOXONE },
 	{ 0x3537, 0x1004, "GameSir T4 Kaleid", 0, XTYPE_XBOX360 },
+	{ 0x3537, 0x1010, "GameSir G7 SE", 0, XTYPE_XBOXONE },
 	{ 0x3767, 0x0101, "Fanatec Speedster 3 Forceshock Wheel", 0, XTYPE_XBOX },
+	{ 0x413d, 0x2104, "Black Shark Green Ghost Gamepad", 0, XTYPE_XBOX360 },
 	{ 0xffff, 0xffff, "Chinese-made Xbox Controller", 0, XTYPE_XBOX },
 	{ 0x0000, 0x0000, "Generic X-Box pad", 0, XTYPE_UNKNOWN }
 };
@@ -488,6 +506,7 @@ static const struct usb_device_id xpad_table[] = {
 	XPAD_XBOX360_VENDOR(0x03f0),		/* HP HyperX Xbox 360 controllers */
 	XPAD_XBOXONE_VENDOR(0x03f0),		/* HP HyperX Xbox One controllers */
 	XPAD_XBOX360_VENDOR(0x044f),		/* Thrustmaster Xbox 360 controllers */
+	XPAD_XBOXONE_VENDOR(0x044f),		/* Thrustmaster Xbox One controllers */
 	XPAD_XBOX360_VENDOR(0x045e),		/* Microsoft Xbox 360 controllers */
 	XPAD_XBOXONE_VENDOR(0x045e),		/* Microsoft Xbox One controllers */
 	XPAD_XBOX360_VENDOR(0x046d),		/* Logitech Xbox 360-style controllers */
@@ -519,8 +538,9 @@ static const struct usb_device_id xpad_table[] = {
 	XPAD_XBOX360_VENDOR(0x1689),		/* Razer Onza */
 	XPAD_XBOX360_VENDOR(0x17ef),		/* Lenovo */
 	XPAD_XBOX360_VENDOR(0x1949),		/* Amazon controllers */
-	XPAD_XBOX360_VENDOR(0x1a86),		/* QH Electronics */
+	XPAD_XBOX360_VENDOR(0x1a86),		/* Nanjing Qinheng Microelectronics (WCH) */
 	XPAD_XBOX360_VENDOR(0x1bad),		/* Harmonix Rock Band guitar and drums */
+	XPAD_XBOX360_VENDOR(0x1ee9),		/* ZOTAC Technology Limited */
 	XPAD_XBOX360_VENDOR(0x20d6),		/* PowerA controllers */
 	XPAD_XBOXONE_VENDOR(0x20d6),		/* PowerA controllers */
 	XPAD_XBOX360_VENDOR(0x2345),		/* Machenike Controllers */
@@ -528,17 +548,20 @@ static const struct usb_device_id xpad_table[] = {
 	XPAD_XBOXONE_VENDOR(0x24c6),		/* PowerA controllers */
 	XPAD_XBOX360_VENDOR(0x2563),		/* OneXPlayer Gamepad */
 	XPAD_XBOX360_VENDOR(0x260d),		/* Dareu H101 */
-       XPAD_XBOXONE_VENDOR(0x294b),            /* Snakebyte */
+	XPAD_XBOXONE_VENDOR(0x294b),		/* Snakebyte */
+	XPAD_XBOX360_VENDOR(0x2993),		/* TECNO Mobile */
 	XPAD_XBOX360_VENDOR(0x2c22),		/* Qanba Controllers */
-	XPAD_XBOX360_VENDOR(0x2dc8),            /* 8BitDo Pro 2 Wired Controller */
-	XPAD_XBOXONE_VENDOR(0x2dc8),		/* 8BitDo Pro 2 Wired Controller for Xbox */
-	XPAD_XBOXONE_VENDOR(0x2e24),		/* Hyperkin Duke Xbox One pad */
-	XPAD_XBOX360_VENDOR(0x2f24),		/* GameSir controllers */
+	XPAD_XBOX360_VENDOR(0x2dc8),		/* 8BitDo Controllers */
+	XPAD_XBOXONE_VENDOR(0x2dc8),		/* 8BitDo Controllers */
+	XPAD_XBOXONE_VENDOR(0x2e24),		/* Hyperkin Controllers */
+	XPAD_XBOX360_VENDOR(0x2f24),		/* GameSir Controllers */
+	XPAD_XBOXONE_VENDOR(0x2e95),		/* SCUF Gaming Controller */
 	XPAD_XBOX360_VENDOR(0x31e3),		/* Wooting Keyboards */
 	XPAD_XBOX360_VENDOR(0x3285),		/* Nacon GC-100 */
 	XPAD_XBOXONE_VENDOR(0x3285),		/* Nacon Evol-X */
 	XPAD_XBOX360_VENDOR(0x3537),		/* GameSir Controllers */
 	XPAD_XBOXONE_VENDOR(0x3537),		/* GameSir Controllers */
+	XPAD_XBOX360_VENDOR(0x413d),		/* Black Shark Green Ghost Controller */
 	{ }
 };
 
@@ -691,7 +714,9 @@ static const struct xboxone_init_packet xboxone_init_packets[] = {
 	XBOXONE_INIT_PKT(0x045e, 0x0b00, xboxone_s_init),
 	XBOXONE_INIT_PKT(0x045e, 0x0b00, extra_input_packet_init),
 	XBOXONE_INIT_PKT(0x0e6f, 0x0000, xboxone_pdp_led_on),
+	XBOXONE_INIT_PKT(0x20d6, 0xa01a, xboxone_pdp_led_on),
 	XBOXONE_INIT_PKT(0x0e6f, 0x0000, xboxone_pdp_auth),
+	XBOXONE_INIT_PKT(0x20d6, 0xa01a, xboxone_pdp_auth),
 	XBOXONE_INIT_PKT(0x24c6, 0x541a, xboxone_rumblebegin_init),
 	XBOXONE_INIT_PKT(0x24c6, 0x542a, xboxone_rumblebegin_init),
 	XBOXONE_INIT_PKT(0x24c6, 0x543a, xboxone_rumblebegin_init),
drivers/input/misc/iqs7222.c +22 -28

195 lines not on this page · raw message

drivers/input/serio/i8042-acpipnpio.h +55 -56

240 lines not on this page · raw message

drivers/input/touchscreen/ads7846.c +1 -1
index 066dc04003fa..67264c5b49cb 100644
@@ -1021,7 +1021,7 @@ static int ads7846_setup_pendown(struct spi_device *spi,
 	if (pdata->get_pendown_state) {
 		ts->get_pendown_state = pdata->get_pendown_state;
 	} else {
-		ts->gpio_pendown = gpiod_get(&spi->dev, "pendown", GPIOD_IN);
+		ts->gpio_pendown = devm_gpiod_get(&spi->dev, "pendown", GPIOD_IN);
 		if (IS_ERR(ts->gpio_pendown)) {
 			dev_err(&spi->dev, "failed to request pendown GPIO\n");
 			return PTR_ERR(ts->gpio_pendown);
drivers/input/touchscreen/goodix_berlin_core.c +12 -12
index 3fc03cf0ca23..141c64675997 100644
@@ -165,7 +165,7 @@ struct goodix_berlin_core {
 	struct device *dev;
 	struct regmap *regmap;
 	struct regulator *avdd;
-	struct regulator *iovdd;
+	struct regulator *vddio;
 	struct gpio_desc *reset_gpio;
 	struct touchscreen_properties props;
 	struct goodix_berlin_fw_version fw_version;
@@ -248,19 +248,19 @@ static int goodix_berlin_power_on(struct goodix_berlin_core *cd)
 {
 	int error;
 
-	error = regulator_enable(cd->iovdd);
+	error = regulator_enable(cd->vddio);
 	if (error) {
-		dev_err(cd->dev, "Failed to enable iovdd: %d\n", error);
+		dev_err(cd->dev, "Failed to enable vddio: %d\n", error);
 		return error;
 	}
 
-	/* Vendor waits 3ms for IOVDD to settle */
+	/* Vendor waits 3ms for VDDIO to settle */
 	usleep_range(3000, 3100);
 
 	error = regulator_enable(cd->avdd);
 	if (error) {
 		dev_err(cd->dev, "Failed to enable avdd: %d\n", error);
-		goto err_iovdd_disable;
+		goto err_vddio_disable;
 	}
 
 	/* Vendor waits 15ms for IOVDD to settle */
@@ -283,8 +283,8 @@ static int goodix_berlin_power_on(struct goodix_berlin_core *cd)
 err_dev_reset:
 	gpiod_set_value_cansleep(cd->reset_gpio, 1);
 	regulator_disable(cd->avdd);
-err_iovdd_disable:
-	regulator_disable(cd->iovdd);
+err_vddio_disable:
+	regulator_disable(cd->vddio);
 	return error;
 }
 
@@ -292,7 +292,7 @@ static void goodix_berlin_power_off(struct goodix_berlin_core *cd)
 {
 	gpiod_set_value_cansleep(cd->reset_gpio, 1);
 	regulator_disable(cd->avdd);
-	regulator_disable(cd->iovdd);
+	regulator_disable(cd->vddio);
 }
 
 static int goodix_berlin_read_version(struct goodix_berlin_core *cd)
@@ -744,10 +744,10 @@ int goodix_berlin_probe(struct device *dev, int irq, const struct input_id *id,
 		return dev_err_probe(dev, PTR_ERR(cd->avdd),
 				     "Failed to request avdd regulator\n");
 
-	cd->iovdd = devm_regulator_get(dev, "iovdd");
-	if (IS_ERR(cd->iovdd))
-		return dev_err_probe(dev, PTR_ERR(cd->iovdd),
-				     "Failed to request iovdd regulator\n");
+	cd->vddio = devm_regulator_get(dev, "vddio");
+	if (IS_ERR(cd->vddio))
+		return dev_err_probe(dev, PTR_ERR(cd->vddio),
+				     "Failed to request vddio regulator\n");
 
 	error = goodix_berlin_power_on(cd);
 	if (error) {
drivers/irqchip/irq-riscv-imsic-early.c +1 -1
index c5c2e6929a2f..275df5005705 100644
@@ -27,7 +27,7 @@ static void imsic_ipi_send(unsigned int cpu)
 {
 	struct imsic_local_config *local = per_cpu_ptr(imsic->global.local, cpu);
 
-	writel_relaxed(IMSIC_IPI_ID, local->msi_va);
+	writel(IMSIC_IPI_ID, local->msi_va);
 }
 
 static void imsic_ipi_starting_cpu(void)
drivers/irqchip/irq-thead-c900-aclint-sswi.c +1 -1
index b0e366ade427..8ff6e7a1363b 100644
@@ -31,7 +31,7 @@ static DEFINE_PER_CPU(void __iomem *, sswi_cpu_regs);
 
 static void thead_aclint_sswi_ipi_send(unsigned int cpu)
 {
-	writel_relaxed(0x1, per_cpu(sswi_cpu_regs, cpu));
+	writel(0x1, per_cpu(sswi_cpu_regs, cpu));
 }
 
 static void thead_aclint_sswi_ipi_clear(void)
drivers/md/dm-flakey.c +1 -1
index 731467d4ed10..b690905ab89f 100644
@@ -426,7 +426,7 @@ static struct bio *clone_bio(struct dm_target *ti, struct flakey_c *fc, struct b
 	if (!clone)
 		return NULL;
 
-	bio_init(clone, fc->dev->bdev, bio->bi_inline_vecs, nr_iovecs, bio->bi_opf);
+	bio_init(clone, fc->dev->bdev, clone->bi_inline_vecs, nr_iovecs, bio->bi_opf);
 
 	clone->bi_iter.bi_sector = flakey_map_sector(ti, bio->bi_iter.bi_sector);
 	clone->bi_private = bio;
drivers/net/bonding/bond_options.c +47 -8

87 lines not on this page · raw message

drivers/net/dsa/mv88e6xxx/chip.c +48 -11

94 lines not on this page · raw message

drivers/net/ethernet/broadcom/bnxt/bnxt.c +22 -3
index b6f844cac80e..a79c78061d1d 100644
@@ -2039,6 +2039,7 @@ static int bnxt_rx_pkt(struct bnxt *bp, struct bnxt_cp_ring_info *cpr,
 	struct rx_cmp_ext *rxcmp1;
 	u32 tmp_raw_cons = *raw_cons;
 	u16 cons, prod, cp_cons = RING_CMP(tmp_raw_cons);
+	struct skb_shared_info *sinfo;
 	struct bnxt_sw_rx_bd *rx_buf;
 	unsigned int len;
 	u8 *data_ptr, agg_bufs, cmp_type;
@@ -2165,6 +2166,7 @@ static int bnxt_rx_pkt(struct bnxt *bp, struct bnxt_cp_ring_info *cpr,
 							     false);
 			if (!frag_len)
 				goto oom_next_rx;
+
 		}
 		xdp_active = true;
 	}
@@ -2174,6 +2176,12 @@ static int bnxt_rx_pkt(struct bnxt *bp, struct bnxt_cp_ring_info *cpr,
 			rc = 1;
 			goto next_rx;
 		}
+		if (xdp_buff_has_frags(&xdp)) {
+			sinfo = xdp_get_shared_info_from_buff(&xdp);
+			agg_bufs = sinfo->nr_frags;
+		} else {
+			agg_bufs = 0;
+		}
 	}
 
 	if (len <= bp->rx_copy_thresh) {
@@ -2211,7 +2219,8 @@ static int bnxt_rx_pkt(struct bnxt *bp, struct bnxt_cp_ring_info *cpr,
 			if (!skb)
 				goto oom_next_rx;
 		} else {
-			skb = bnxt_xdp_build_skb(bp, skb, agg_bufs, rxr->page_pool, &xdp, rxcmp1);
+			skb = bnxt_xdp_build_skb(bp, skb, agg_bufs,
+						 rxr->page_pool, &xdp);
 			if (!skb) {
 				/* we should be able to free the old skb here */
 				bnxt_xdp_buff_frags_free(rxr, &xdp);
@@ -15322,6 +15331,9 @@ static void bnxt_get_queue_stats_rx(struct net_device *dev, int i,
 	struct bnxt_cp_ring_info *cpr;
 	u64 *sw;
 
+	if (!bp->bnapi)
+		return;
+
 	cpr = &bp->bnapi[i]->cp_ring;
 	sw = cpr->stats.sw_stats;
 
@@ -15345,6 +15357,9 @@ static void bnxt_get_queue_stats_tx(struct net_device *dev, int i,
 	struct bnxt_napi *bnapi;
 	u64 *sw;
 
+	if (!bp->tx_ring)
+		return;
+
 	bnapi = bp->tx_ring[bp->tx_ring_map[i]].bnapi;
 	sw = bnapi->cp_ring.stats.sw_stats;
 
@@ -15386,6 +15401,9 @@ static int bnxt_queue_mem_alloc(struct net_device *dev, void *qmem, int idx)
 	struct bnxt_ring_struct *ring;
 	int rc;
 
+	if (!bp->rx_ring)
+		return -ENETDOWN;
+
 	rxr = &bp->rx_ring[idx];
 	clone = qmem;
 	memcpy(clone, rxr, sizeof(*rxr));
@@ -15468,6 +15486,7 @@ static void bnxt_queue_mem_free(struct net_device *dev, void *qmem)
 	struct bnxt_ring_struct *ring;
 
 	bnxt_free_one_rx_ring_skbs(bp, rxr);
+	bnxt_free_one_tpa_info(bp, rxr);
 
 	xdp_rxq_info_unreg(&rxr->xdp_rxq);
 
@@ -15579,7 +15598,7 @@ static int bnxt_queue_start(struct net_device *dev, void *qmem, int idx)
 	cpr = &rxr->bnapi->cp_ring;
 	cpr->sw_stats->rx.rx_resets++;
 
-	for (i = 0; i <= BNXT_VNIC_NTUPLE; i++) {
+	for (i = 0; i <= bp->nr_vnics; i++) {
 		vnic = &bp->vnic_info[i];
 
 		rc = bnxt_hwrm_vnic_set_rss_p5(bp, vnic, true);
@@ -15607,7 +15626,7 @@ static int bnxt_queue_stop(struct net_device *dev, void *qmem, int idx)
 	struct bnxt_vnic_info *vnic;
 	int i;
 
-	for (i = 0; i <= BNXT_VNIC_NTUPLE; i++) {
+	for (i = 0; i <= bp->nr_vnics; i++) {
 		vnic = &bp->vnic_info[i];
 		vnic->mru = 0;
 		bnxt_hwrm_vnic_update(bp, vnic,
drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c +3 -10
index dc51dce209d5..8726657f5cb9 100644
@@ -456,23 +456,16 @@ int bnxt_xdp(struct net_device *dev, struct netdev_bpf *xdp)
 
 struct sk_buff *
 bnxt_xdp_build_skb(struct bnxt *bp, struct sk_buff *skb, u8 num_frags,
-		   struct page_pool *pool, struct xdp_buff *xdp,
-		   struct rx_cmp_ext *rxcmp1)
+		   struct page_pool *pool, struct xdp_buff *xdp)
 {
 	struct skb_shared_info *sinfo = xdp_get_shared_info_from_buff(xdp);
 
 	if (!skb)
 		return NULL;
-	skb_checksum_none_assert(skb);
-	if (RX_CMP_L4_CS_OK(rxcmp1)) {
-		if (bp->dev->features & NETIF_F_RXCSUM) {
-			skb->ip_summed = CHECKSUM_UNNECESSARY;
-			skb->csum_level = RX_CMP_ENCAP(rxcmp1);
-		}
-	}
+
 	xdp_update_skb_shared_info(skb, num_frags,
 				   sinfo->xdp_frags_size,
-				   BNXT_RX_PAGE_SIZE * sinfo->nr_frags,
+				   BNXT_RX_PAGE_SIZE * num_frags,
 				   xdp_buff_is_frag_pfmemalloc(xdp));
 	return skb;
 }
drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.h +1 -2
index 0122782400b8..220285e190fc 100644
@@ -33,6 +33,5 @@ void bnxt_xdp_buff_frags_free(struct bnxt_rx_ring_info *rxr,
 			      struct xdp_buff *xdp);
 struct sk_buff *bnxt_xdp_build_skb(struct bnxt *bp, struct sk_buff *skb,
 				   u8 num_frags, struct page_pool *pool,
-				   struct xdp_buff *xdp,
-				   struct rx_cmp_ext *rxcmp1);
+				   struct xdp_buff *xdp);
 #endif
drivers/net/ethernet/intel/ice/ice_arfs.c +1 -1
index 7cee365cc7d1..405ddd17de1b 100644
@@ -511,7 +511,7 @@ void ice_init_arfs(struct ice_vsi *vsi)
 	struct hlist_head *arfs_fltr_list;
 	unsigned int i;
 
-	if (!vsi || vsi->type != ICE_VSI_PF)
+	if (!vsi || vsi->type != ICE_VSI_PF || ice_is_arfs_active(vsi))
 		return;
 
 	arfs_fltr_list = kcalloc(ICE_MAX_ARFS_LIST, sizeof(*arfs_fltr_list),
drivers/net/ethernet/intel/ice/ice_eswitch.c +0 -6
index d649c197cf67..ed21d7f55ac1 100644
@@ -49,9 +49,6 @@ static int ice_eswitch_setup_env(struct ice_pf *pf)
 	if (vlan_ops->dis_rx_filtering(uplink_vsi))
 		goto err_vlan_filtering;
 
-	if (ice_vsi_update_security(uplink_vsi, ice_vsi_ctx_set_allow_override))
-		goto err_override_uplink;
-
 	if (ice_vsi_update_local_lb(uplink_vsi, true))
 		goto err_override_local_lb;
 
@@ -63,8 +60,6 @@ static int ice_eswitch_setup_env(struct ice_pf *pf)
 err_up:
 	ice_vsi_update_local_lb(uplink_vsi, false);
 err_override_local_lb:
-	ice_vsi_update_security(uplink_vsi, ice_vsi_ctx_clear_allow_override);
-err_override_uplink:
 	vlan_ops->ena_rx_filtering(uplink_vsi);
 err_vlan_filtering:
 	ice_cfg_dflt_vsi(uplink_vsi->port_info, uplink_vsi->idx, false,
@@ -275,7 +270,6 @@ static void ice_eswitch_release_env(struct ice_pf *pf)
 	vlan_ops = ice_get_compat_vsi_vlan_ops(uplink_vsi);
 
 	ice_vsi_update_local_lb(uplink_vsi, false);
-	ice_vsi_update_security(uplink_vsi, ice_vsi_ctx_clear_allow_override);
 	vlan_ops->ena_rx_filtering(uplink_vsi);
 	ice_cfg_dflt_vsi(uplink_vsi->port_info, uplink_vsi->idx, false,
 			 ICE_FLTR_TX);
drivers/net/ethernet/intel/ice/ice_lag.c +27 -0
index 1ccb572ce285..22371011c249 100644
@@ -1000,6 +1000,28 @@ static void ice_lag_link(struct ice_lag *lag)
 	netdev_info(lag->netdev, "Shared SR-IOV resources in bond are active\n");
 }
 
+/**
+ * ice_lag_config_eswitch - configure eswitch to work with LAG
+ * @lag: lag info struct
+ * @netdev: active network interface device struct
+ *
+ * Updates all port representors in eswitch to use @netdev for Tx.
+ *
+ * Configures the netdev to keep dst metadata (also used in representor Tx).
+ * This is required for an uplink without switchdev mode configured.
+ */
+static void ice_lag_config_eswitch(struct ice_lag *lag,
+				   struct net_device *netdev)
+{
+	struct ice_repr *repr;
+	unsigned long id;
+
+	xa_for_each(&lag->pf->eswitch.reprs, id, repr)
+		repr->dst->u.port_info.lower_dev = netdev;
+
+	netif_keep_dst(netdev);
+}
+
 /**
  * ice_lag_unlink - handle unlink event
  * @lag: LAG info struct
@@ -1021,6 +1043,9 @@ static void ice_lag_unlink(struct ice_lag *lag)
 			ice_lag_move_vf_nodes(lag, act_port, pri_port);
 		lag->primary = false;
 		lag->active_port = ICE_LAG_INVALID_PORT;
+
+		/* Config primary's eswitch back to normal operation. */
+		ice_lag_config_eswitch(lag, lag->netdev);
 	} else {
 		struct ice_lag *primary_lag;
 
@@ -1419,6 +1444,7 @@ static void ice_lag_monitor_active(struct ice_lag *lag, void *ptr)
 				ice_lag_move_vf_nodes(lag, prim_port,
 						      event_port);
 			lag->active_port = event_port;
+			ice_lag_config_eswitch(lag, event_netdev);
 			return;
 		}
 
@@ -1428,6 +1454,7 @@ static void ice_lag_monitor_active(struct ice_lag *lag, void *ptr)
 		/* new active port */
 		ice_lag_move_vf_nodes(lag, lag->active_port, event_port);
 		lag->active_port = event_port;
+		ice_lag_config_eswitch(lag, event_netdev);
 	} else {
 		/* port not set as currently active (e.g. new active port
 		 * has already claimed the nodes and filters
drivers/net/ethernet/intel/ice/ice_lib.c +0 -18
index a7d45a8ce7ac..e07fc8851e1d 100644
@@ -3930,24 +3930,6 @@ void ice_vsi_ctx_clear_antispoof(struct ice_vsi_ctx *ctx)
 				 ICE_AQ_VSI_SEC_TX_PRUNE_ENA_S);
 }
 
-/**
- * ice_vsi_ctx_set_allow_override - allow destination override on VSI
- * @ctx: pointer to VSI ctx structure
- */
-void ice_vsi_ctx_set_allow_override(struct ice_vsi_ctx *ctx)
-{
-	ctx->info.sec_flags |= ICE_AQ_VSI_SEC_FLAG_ALLOW_DEST_OVRD;
-}
-
-/**
- * ice_vsi_ctx_clear_allow_override - turn off destination override on VSI
- * @ctx: pointer to VSI ctx structure
- */
-void ice_vsi_ctx_clear_allow_override(struct ice_vsi_ctx *ctx)
-{
-	ctx->info.sec_flags &= ~ICE_AQ_VSI_SEC_FLAG_ALLOW_DEST_OVRD;
-}
-
 /**
  * ice_vsi_update_local_lb - update sw block in VSI with local loopback bit
  * @vsi: pointer to VSI structure
drivers/net/ethernet/intel/ice/ice_lib.h +0 -4
index 10d6fc479a32..6085039bac95 100644
@@ -104,10 +104,6 @@ ice_vsi_update_security(struct ice_vsi *vsi, void (*fill)(struct ice_vsi_ctx *))
 void ice_vsi_ctx_set_antispoof(struct ice_vsi_ctx *ctx);
 
 void ice_vsi_ctx_clear_antispoof(struct ice_vsi_ctx *ctx);
-
-void ice_vsi_ctx_set_allow_override(struct ice_vsi_ctx *ctx);
-
-void ice_vsi_ctx_clear_allow_override(struct ice_vsi_ctx *ctx);
 int ice_vsi_update_local_lb(struct ice_vsi *vsi, bool set);
 int ice_vsi_add_vlan_zero(struct ice_vsi *vsi);
 int ice_vsi_del_vlan_zero(struct ice_vsi *vsi);
drivers/net/ethernet/intel/ice/ice_txrx.c +3 -1
index 9c9ea4c1b93b..380ba1e8b3b2 100644
@@ -2424,7 +2424,9 @@ ice_xmit_frame_ring(struct sk_buff *skb, struct ice_tx_ring *tx_ring)
 					ICE_TXD_CTX_QW1_CMD_S);
 
 	ice_tstamp(tx_ring, skb, first, &offload);
-	if (ice_is_switchdev_running(vsi->back) && vsi->type != ICE_VSI_SF)
+	if ((ice_is_switchdev_running(vsi->back) ||
+	     ice_lag_is_switchdev_running(vsi->back)) &&
+	    vsi->type != ICE_VSI_SF)
 		ice_eswitch_set_target_vsi(skb, &offload);
 
 	if (offload.cd_qw1 & ICE_TX_DESC_DTYPE_CTX) {
drivers/net/ethernet/mellanox/mlx5/core/devlink.c +3 -0
index 98d4306929f3..a2cf3e79693d 100644
@@ -46,6 +46,9 @@ mlx5_devlink_info_get(struct devlink *devlink, struct devlink_info_req *req,
 	u32 running_fw, stored_fw;
 	int err;
 
+	if (!mlx5_core_is_pf(dev))
+		return 0;
+
 	err = devlink_info_version_fixed_put(req, "fw.psid", dev->board_id);
 	if (err)
 		return err;
drivers/net/ethernet/mellanox/mlx5/core/en/rep/bridge.c +5 -7
index 5d128c5b4529..0f5d7ea8956f 100644
@@ -48,15 +48,10 @@ mlx5_esw_bridge_lag_rep_get(struct net_device *dev, struct mlx5_eswitch *esw)
 	struct list_head *iter;
 
 	netdev_for_each_lower_dev(dev, lower, iter) {
-		struct mlx5_core_dev *mdev;
-		struct mlx5e_priv *priv;
-
 		if (!mlx5e_eswitch_rep(lower))
 			continue;
 
-		priv = netdev_priv(lower);
-		mdev = priv->mdev;
-		if (mlx5_lag_is_shared_fdb(mdev) && mlx5_esw_bridge_dev_same_esw(lower, esw))
[… more lines in the raw message]

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

drivers/net/ethernet/mellanox/mlx5/core/en_main.c +2 -4
index cb93f46eaa7c..e02bb589104a 100644

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

drivers/net/ethernet/mellanox/mlx5/core/eq.c +1 -1
index 2b229b6226c6..dfb079e59d85 100644

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

drivers/net/ethernet/mellanox/mlx5/core/irq_affinity.c +1 -1
index 1477db7f5307..2691d88cdee1 100644

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

drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c +2 -2
index 7f68468c2e75..4b3da7ebd631 100644

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

drivers/net/ethernet/mellanox/mlx5/core/lag/lag.h +1 -0
index 50fcb1eee574..48a5f3e7b91a 100644

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

drivers/net/ethernet/mellanox/mlx5/core/lag/mpesw.c +2 -1
index 571ea26edd0c..2381a0eec190 100644

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

drivers/net/ethernet/mellanox/mlx5/core/lib/fs_chains.c +5 -0
index a80ecb672f33..711d14dea248 100644

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

drivers/net/ethernet/mellanox/mlx5/core/mlx5_irq.h +3 -1
index 0881e961d8b1..586688da9940 100644

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

drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c +10 -3
index d9362eabc6a1..2c5f850c31f6 100644

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

drivers/net/ethernet/mellanox/mlx5/core/pci_irq.h +1 -1
index c4d377f8df30..cc064425fe16 100644

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

drivers/net/ethernet/mellanox/mlx5/core/steering/hws/bwc.h +1 -1
index 655fa7a22d84..7c00740f1d13 100644

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

drivers/net/ethernet/microsoft/mana/gdma_main.c +10 -1
index be95336ce089..11457b6296cc 100644

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

drivers/net/ethernet/microsoft/mana/mana_en.c +6 -4
index aa1e47233fe5..ae76ecc7a5d3 100644

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

drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c +6 -2
index f9dd50152b1e..28d24d59efb8 100644

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

drivers/net/ethernet/realtek/rtase/rtase_main.c +10 -0
index c42c0516656b..bb8f1bc215cd 100644

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

drivers/net/mctp/mctp-i2c.c +5 -0
index d2b3f5a59141..a0dba912aece 100644

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

drivers/net/mctp/mctp-i3c.c +5 -0
index c1e72253063b..c678f79aa356 100644

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

drivers/net/phy/nxp-c45-tja11xx.c +68 -0

68 lines not on this page · raw message

drivers/net/wireless/intel/iwlwifi/mvm/fw.c +3 -3
index 5ea684802ad1..d4bc1e85b930 100644

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

drivers/net/wwan/mhi_wwan_mbim.c +1 -1
index d5a9360323d2..8755c5e6a65b 100644

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

drivers/nvme/host/apple.c +4 -1
index 4319ab50c10d..05cd4c4f1ed6 100644

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

drivers/nvme/host/core.c +6 -8
index 46e04b30f642..e4034cec5923 100644

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

drivers/nvme/host/fc.c +8 -51

59 lines not on this page · raw message

drivers/nvme/host/pci.c +5 -2
index 99c2983dbe6c..0b4ca8e8f9b4 100644

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

drivers/nvme/target/rdma.c +23 -10
index 1afd93026f9b..2a4536ef6184 100644

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

drivers/phy/ti/phy-gmii-sel.c +14 -1
index e0ca59ae3153..ff5d5e29629f 100644

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

drivers/pinctrl/bcm/pinctrl-bcm281xx.c +1 -1
index 73dbf29c002f..cf6efa9c0364 100644

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

drivers/pinctrl/nuvoton/pinctrl-npcm8xx.c +3 -0
index 471f644c5eef..d09a5e9b2eca 100644

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

drivers/platform/x86/intel/int3472/discrete.c +65 -20

85 lines not on this page · raw message

drivers/platform/x86/intel/pmc/core.c +2 -2
index 3e7f99ac8c94..c5dae640a0b2 100644

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

drivers/platform/x86/thinkpad_acpi.c +36 -14

50 lines not on this page · raw message

drivers/powercap/powercap_sys.c +1 -2
index 52c32dcbf7d8..4112a0097338 100644

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

drivers/s390/cio/chp.c +2 -1
index cba2d048a96b..7855d88a49d8 100644

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

drivers/scsi/qla1280.c +1 -1
index 8958547ac111..fed07b146070 100644

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

drivers/scsi/scsi_scan.c +1 -1
index 042329b74c6e..fe08af4dcb67 100644

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

drivers/spi/spi-microchip-core.c +18 -23

41 lines not on this page · raw message

drivers/thermal/cpufreq_cooling.c +0 -2
index 280071be30b1..6b7ab1814c12 100644

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

drivers/ufs/core/ufshcd.c +6 -1
index a5bb6ea96460..96cb294e2ec3 100644

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

drivers/usb/phy/phy-generic.c +1 -1
index 6c3ececf9137..8423be59ec0f 100644

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

drivers/usb/serial/ftdi_sio.c +14 -0
index e07c5e3eb18c..9b34e23b7091 100644

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

drivers/usb/serial/ftdi_sio_ids.h +13 -0
index 5ee60ba2a73c..52be47d684ea 100644

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

drivers/usb/serial/option.c +32 -16

48 lines not on this page · raw message

drivers/usb/typec/tcpm/tcpm.c +4 -4
index 061c04efffa7..ea700d53d676 100644

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

drivers/vhost/vhost.c +1 -1
index 9ac25d08f473..63612faeab72 100644

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

drivers/video/fbdev/hyperv_fb.c +34 -18

52 lines not on this page · raw message

drivers/virt/coco/sev-guest/sev-guest.c +39 -24

63 lines not on this page · raw message

drivers/xen/swiotlb-xen.c +1 -1
index 26c62e0d34e9..1f65795cf5d7 100644

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

fs/btrfs/extent_io.c +5 -6
index 0dd24d128986..95d3cf2e15c8 100644

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

fs/btrfs/qgroup.c +1 -5
index 5ab51781d0e4..20b025f6ac3c 100644

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

fs/fuse/dir.c +1 -1
index e540d05549ff..b7944d8bfb17 100644

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

fs/namei.c +19 -5
index 9d30c7aa9aa6..553729a29095 100644

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

fs/netfs/read_collect.c +1 -1
index 8878b46589ff..cafadfe8e858 100644

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

fs/smb/client/asn1.c +2 -0
index b5724ef9f182..214a44509e7b 100644

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

fs/smb/client/cifs_spnego.c +3 -1
index 28f568b5fc27..bc1c1e9b288a 100644

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

fs/smb/client/cifsglob.h +4 -0
index 37b7d84e2691..774d47318b0d 100644

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

fs/smb/client/connect.c +12 -4
index eaa6be4456d0..a5d443c42996 100644

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

fs/smb/client/fs_context.c +11 -7
index 49123f458d0c..c85285bf730e 100644

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

fs/smb/client/inode.c +13 -0
index 4d8effe78be5..a1b06ca07fcc 100644

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

fs/smb/client/reparse.c +2 -3
index b387dfbaf16b..a93127c94aff 100644

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

fs/smb/client/sess.c +2 -1
index 91d4d409cb1d..faa80e7d54a6 100644

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

fs/smb/client/smb2pdu.c +2 -2
index 10eca164c838..7ece98c742bd 100644

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

fs/smb/common/smbfsctl.h +3 -0
index 4b379e84c46b..3253a18ecb5c 100644

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

fs/smb/server/connection.c +20 -0
index f8a40f65db6a..c1f22c129111 100644

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

fs/smb/server/connection.h +2 -0
index b379ae4fdcdf..91c2318639e7 100644

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

fs/smb/server/ksmbd_work.c +0 -3
index 4af2e6007c29..72b00ca6e455 100644

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

fs/smb/server/ksmbd_work.h +0 -1
index 8ca2c813246e..d36393ff8310 100644

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

fs/smb/server/oplock.c +21 -22

43 lines not on this page · raw message

fs/smb/server/oplock.h +0 -1
index 72bc88a63a40..3f64f0787263 100644

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

fs/smb/server/server.c +2 -12
index 601e7fcbcf1e..ab533c602987 100644

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

fs/vboxsf/super.c +2 -1
index e95b8a48d8a0..1d94bb784108 100644

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

include/asm-generic/vmlinux.lds.h +1 -0
index 337d3336e175..0d5b186abee8 100644

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

include/linux/blk-mq.h +12 -4
index 7b19b83349cf..07af26550a5a 100644

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

include/linux/fs.h +2 -0
index f7efc6866ebc..1f07469f3d6e 100644

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

include/linux/hugetlb.h +5 -0
index 0385103dffcd..39fa83a0f478 100644

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

include/linux/module.h +4 -1
index b3a643435357..541e4357ea2f 100644

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

include/linux/pci_ids.h +1 -0
index de5deb1a0118..1a2594a38199 100644

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

include/net/bluetooth/hci_core.h +38 -70

108 lines not on this page · raw message

include/net/bluetooth/l2cap.h +2 -1
index d9c767cf773d..9189354c568f 100644

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

include/net/netfilter/nf_tables.h +3 -1
index f6958118986a..ea0236c938d8 100644

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

include/sound/soc.h +4 -1
index 4f5d411e3823..355575c63a13 100644

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

init/Kconfig +1 -1
index a20e6efd3f0f..4c88cb58c261 100644

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

io_uring/futex.c +1 -1
index e29662f039e1..f108da4ff863 100644

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

io_uring/io-wq.c +18 -5
index a38f36b68060..a2d577b09930 100644

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

kernel/futex/core.c +3 -2
index ebdd76b4ecbb..3db8567f5a44 100644

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

kernel/futex/futex.h +8 -3
index 99b32e728c4a..6b2f4c7eb720 100644

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

kernel/futex/pi.c +1 -1
index d62cca5ed8f4..635c7d5d4222 100644

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

kernel/futex/waitwake.c +2 -2
index 3a10375d9521..a9056acb75ee 100644

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

kernel/rcu/tree.c +10 -4
index ff98233d4aa5..4703b08fb882 100644

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

kernel/sched/core.c +3 -2
index 86cb6db08168..4b5878b2fdd0 100644

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

kernel/sched/debug.c +2 -0
index a1be00a988bf..5b32d3cc393b 100644

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

kernel/sched/ext.c +3 -0
index 5ccd46124ff0..b08d8691b26b 100644

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

kernel/time/hrtimer.c +12 -10
index 36dd2f5c30da..3e7554597be2 100644

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

kernel/vhost_task.c +2 -2
index 8800f5acc007..2ef2e1b80091 100644

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

mm/hugetlb.c +8 -0
index 15ae955c7cbc..6c7607d46f97 100644

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

mm/page_isolation.c +10 -0
index 7e04047977cf..6989c5ffd474 100644

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

mm/userfaultfd.c +74 -17

91 lines not on this page · raw message

net/bluetooth/hci_core.c +7 -3
index 18ab5628f85a..f9e19f9cb5a3 100644

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

net/bluetooth/hci_event.c +22 -15
index 2cc7a9306350..903b0b52692a 100644

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

net/bluetooth/iso.c +0 -6
index 43d0ebe11100..73724439fe71 100644

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

net/bluetooth/l2cap_core.c +85 -96

181 lines not on this page · raw message

net/bluetooth/l2cap_sock.c +7 -8
index 46ea0bee2259..acd11b268b98 100644

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

net/bluetooth/rfcomm/core.c +0 -6
index 4c56ca5a216c..ad5177e3a69b 100644

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

net/bluetooth/sco.c +18 -7
index aa7bfe26cb40..5d1bc0d6aee0 100644

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

net/core/dev.c +4 -1
index 2b09714761c6..b180d175c37f 100644

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

net/core/netpoll.c +7 -2
index 96a6ed37d4cc..7ee754cd2e2f 100644

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

net/ipv6/addrconf.c +9 -6
index 0e765466d7f7..bdf39388e514 100644

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

net/mac80211/eht.c +8 -1
index 7a3116c36df9..fd41046e3b68 100644

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

net/mac80211/util.c +5 -3
index dc0b74443c8d..5ee7fc81ff8c 100644

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

net/mctp/route.c +8 -2
index 3f2bd65ff5e3..4c460160914f 100644

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

net/mctp/test/route-test.c +109 -0

109 lines not on this page · raw message

net/mptcp/protocol.h +2 -0
index b70a303e0828..7e2f70f22b05 100644

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

net/netfilter/ipvs/ip_vs_ctl.c +4 -4
index 7d13110ce188..0633276d96bf 100644

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

net/netfilter/nf_conncount.c +4 -2
index 4890af4dc263..913ede2f57f9 100644

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

net/netfilter/nf_tables_api.c +14 -10
index 73e37861ff11..99f6b2530b96 100644

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

net/netfilter/nft_compat.c +4 -4
index 7ca4f0d21fe2..72711d62fddf 100644

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

net/netfilter/nft_ct.c +4 -2
index 67a41cd2baaf..a1b373b99f7b 100644

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

net/netfilter/nft_exthdr.c +4 -6
index b8d03364566c..c74012c99125 100644

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

net/openvswitch/conntrack.c +18 -12
index 3bb4810234aa..e573e9221302 100644

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

net/openvswitch/datapath.h +3 -0
index 365b9bb7f546..9ca6231ea647 100644

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

net/openvswitch/flow_netlink.c +1 -14
index 881ddd3696d5..95e0dd14dc1a 100644

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

net/sched/sch_api.c +6 -0
index fac9c946a4c7..778cf54df69b 100644

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

net/sched/sch_gred.c +2 -1
index 7d2151c62c4a..85a32b3f6585 100644

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

net/sctp/stream.c +1 -1
index c241cc552e8d..bfcff6d6a438 100644

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

net/switchdev/switchdev.c +18 -7
index 6488ead9e464..4d5fbacef496 100644

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

net/wireless/core.c +7 -0
index afbdc549fb4a..8baf22758ac1 100644

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

rust/kernel/alloc/allocator_test.rs +18 -0
index e3240d16040b..c37d4c0c64e9 100644

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

rust/kernel/error.rs +1 -1
index 5fece574ec02..4911b294bfe6 100644

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

rust/kernel/init.rs +10 -13
index c962029f96e1..90bfb5cb26cd 100644

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

rust/kernel/init/macros.rs +3 -3
index 1fd146a83241..b7213962a6a5 100644

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

rust/kernel/lib.rs +1 -1
index e1065a7551a3..fb7837bafab3 100644

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

rust/kernel/sync.rs +4 -12
index 1eab7ebf25fd..cb92f2c323e5 100644

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

scripts/generate_rust_analyzer.py +43 -30

73 lines not on this page · raw message

scripts/mod/modpost.c +35 -0
index 7ea59dc4926b..967d698e0c92 100644

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

scripts/mod/modpost.h +6 -0
index ffd0a52a606e..59366f456b76 100644

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

scripts/module.lds.S +1 -0
index c2f80f9141d4..450f1088d5fd 100644

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

scripts/rustdoc_test_gen.rs +2 -2
index 5ebd42ae4a3f..76aaa8329413 100644

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

sound/hda/intel-dsp-config.c +5 -0
index f564ec7af194..ce3ae2cba660 100644

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

sound/pci/hda/hda_intel.c +2 -0
index 188b64c0ed75..c050539d6057 100644

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

sound/pci/hda/patch_realtek.c +1 -0
index 10e9ec74104d..f952918191ef 100644

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

sound/soc/amd/yc/acp6x-mach.c +7 -0
index b16587d8f97a..a7637056972a 100644

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

sound/soc/codecs/arizona.c +7 -7
index 402b9a2ff024..68cdb1027d0c 100644

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

sound/soc/codecs/cs42l43.c +1 -1
index 83c21c17fb80..b1969536862b 100644

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

sound/soc/codecs/madera.c +5 -5
index b24d6472ad5f..fbfd7fb7f168 100644

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

sound/soc/codecs/rt722-sdca-sdw.c +4 -0
index 25fc13687bc8..4d3043627bd0 100644

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

sound/soc/codecs/tas2764.c +9 -1
index d482cd194c08..58315eab492a 100644

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

sound/soc/codecs/tas2764.h +7 -1
index 168af772a898..9490f2686e38 100644

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

sound/soc/codecs/tas2770.c +1 -1
index 9f93b230652a..863c3f672ba9 100644

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

sound/soc/codecs/wm0010.c +11 -2
index edd2cb185c42..9e67fbfc2cca 100644

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

sound/soc/codecs/wm5110.c +4 -4
index 502196253d42..64eee0d2347d 100644

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

sound/soc/generic/simple-card-utils.c +1 -0
index 24b371f32066..5b6c2f7f288a 100644

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

sound/soc/intel/boards/sof_sdw.c +36 -7

43 lines not on this page · raw message

sound/soc/intel/common/soc-acpi-intel-mtl-match.c +1 -1
index 03fc5a187012..9b9098485b8c 100644

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

sound/soc/renesas/rcar/core.c +0 -14
index d3709fd0409e..f3f0c3f0bb9f 100644

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

sound/soc/renesas/rcar/rsnd.h +0 -1
index a5f54b65313c..04c70690f7a2 100644

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

sound/soc/renesas/rcar/src.c +93 -23

116 lines not on this page · raw message

sound/soc/renesas/rcar/ssi.c +2 -1
index b3d4e8ae07ef..0c6424a1fcac 100644

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

sound/soc/soc-ops.c +7 -8
index 19928f098d8d..b0e4e4168f38 100644

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

sound/soc/sof/amd/acp-ipc.c +16 -7
index 5f371d9263f3..12caefd08788 100644

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

sound/soc/sof/amd/acp.c +1 -0
index 33648ff8b833..9e13c96528be 100644

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

sound/soc/sof/amd/acp.h +1 -0
index 800594440f73..2a19d82d6200 100644

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

sound/soc/sof/amd/vangogh.c +18 -0
index 8e2672106ac6..d5f1dddd43e7 100644

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

sound/soc/sof/intel/hda-codec.c +1 -0
index 568f3dfe822f..2f9925830d1d 100644

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

sound/soc/sof/intel/hda.c +2 -16
index be689f6e10c8..a1ccd95da8bb 100644

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

sound/soc/sof/intel/pci-ptl.c +1 -0
index 0aacdfac9fb4..c4fb6a2441b7 100644

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

sound/soc/tegra/tegra210_adx.c +2 -2
index 3e6e8f51f380..0aa93b948378 100644

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

tools/objtool/check.c +9 -0
index 6691bd106e4b..6f3f408d0a01 100644

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

tools/sched_ext/include/scx/common.bpf.h +11 -0
index 9fa64b053ba9..eb0f7c26453f 100644

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

tools/sound/dapm-graph +1 -1
index f14bdfedee8f..b6196ee5065a 100755

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

tools/testing/selftests/bpf/prog_tests/sockmap_basic.c +3 -3
index 884ad87783d5..0c51b7288978 100644

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

tools/testing/selftests/bpf/prog_tests/xdp_cpumap_attach.c +2 -2
index c7f74f068e78..df27535995af 100644

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

tools/testing/selftests/bpf/prog_tests/xdp_devmap_attach.c +4 -4
index 27ffed17d4be..461ab18705d5 100644

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

tools/testing/selftests/cgroup/test_cpuset_v1_hp.sh +1 -1
index 3f45512fb512..7406c24be1ac 100755

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

tools/testing/selftests/drivers/net/bonding/bond_options.sh +2 -2
index edc56e2cc606..7bc148889ca7 100755

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

tools/testing/selftests/filesystems/statmount/statmount_test.c +21 -1
index 8eb6aa606a0d..46d289611ce8 100644

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

tools/testing/selftests/sched_ext/dsp_local_on.bpf.c +1 -1
index fbda6bf54671..c02b2aa6fc64 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.