Commit Graph

2349 Commits

Author SHA1 Message Date
Greg Kroah-Hartman 8cb2595f93 Merge 6.12.35 into android16-6.12-lts
GKI (arm64) relevant 87 out of 414 changes, affecting 112 files +738/-352
  bdb71ee651 configfs: Do not override creating attribute file failure in populate_attrs() [1 file, +1/-1]
  ba789be63d io_uring: account drain memory to cgroup [1 file, +1/-1]
  c58b577cf7 io_uring/kbuf: account ring io_buffer_list memory [1 file, +1/-1]
  f78b38af35 jbd2: fix data-race and null-ptr-deref in jbd2_journal_dirty_metadata() [1 file, +3/-2]
  2429bb9fad media: v4l2-dev: fix error handling in __video_register_device() [1 file, +7/-7]
  5d8b057ed7 media: videobuf2: use sgtable-based scatterlist wrappers [1 file, +2/-2]
  b52dc88361 media: uvcvideo: Return the number of processed controls [1 file, +10/-1]
  6d2b12e7c5 media: uvcvideo: Send control events for partial succeeds [1 file, +9/-3]
  aac91ae06c media: uvcvideo: Fix deferred probing error [1 file, +19/-8]
  86d9837e46 arm64/mm: Close theoretical race where stale TLB entry remains valid [1 file, +5/-4]
  5538af3843 block: use plug request list tail for one-shot backmerge attempt [1 file, +13/-13]
  943801c380 block: Clear BIO_EMULATES_ZONE_APPEND flag on BIO completion [1 file, +1/-0]
  1c71f3cf5f cgroup,freezer: fix incomplete freezing when attaching tasks [1 file, +1/-2]
  a0890b7805 bus: firewall: Fix missing static inline annotations for stubs [1 file, +9/-6]
  5766da2237 ext4: inline: fix len overflow in ext4_prepare_inline_data [1 file, +1/-1]
  796632e6f8 ext4: fix calculation of credits for extent tree modification [1 file, +6/-5]
  4b36399711 ext4: ensure i_size is smaller than maxbytes [1 file, +2/-1]
  be5f3061a6 ext4: only dirty folios when data journaling regular files [1 file, +6/-1]
  a0b1c91ada Input: gpio-keys - fix possible concurrent access in gpio_keys_irq_timer() [1 file, +2/-0]
  fed611bd8c f2fs: fix to do sanity check on ino and xnid [1 file, +6/-0]
  aaa644e7ff f2fs: prevent kernel warning due to negative i_nlink from corrupted image [1 file, +9/-0]
  ee1b421c46 f2fs: fix to do sanity check on sit_bitmap_size [1 file, +8/-0]
  f16a797dce watchdog: fix watchdog may detect false positive of softlockup [1 file, +27/-14]
  02137179ff mm: fix ratelimit_pages update error in dirty_ratio_handler() [1 file, +1/-1]
  462eee6d42 firmware: arm_scmi: Ensure that the message-id supports fastchannel [2 files, +45/-33]
  e3cf1ef571 dm-verity: fix a memory leak if some arguments are specified multiple times [3 files, +24/-5]
  f2986bccf2 dm: lock limits when reading them [1 file, +7/-1]
  ec5f0b4412 ovl: Fix nested backing file paths [1 file, +2/-2]
  92776ca0cc remoteproc: core: Cleanup acquired resources when rproc_handle_resources() fails in rproc_attach() [1 file, +2/-3]
  f4ef928ca5 remoteproc: core: Release rproc->clean_table after rproc_attach() fails [1 file, +1/-0]
  68e58f5791 PCI: dwc: ep: Correct PBA offset in .set_msix() callback [1 file, +3/-2]
  b20701d594 PCI: Add ACS quirk for Loongson PCIe [1 file, +23/-0]
  be0cf75cbd PCI: Fix lock symmetry in pci_slot_unlock() [1 file, +2/-1]
  7b45d2401d clocksource: Fix the CPUs' choice in the watchdog per CPU verification [1 file, +1/-1]
  c05aba32a9 ACPICA: Avoid sequence overread in call to strncmp() [1 file, +1/-1]
  66613b13cd ACPI: Add missing prototype for non CONFIG_SUSPEND/CONFIG_X86 case [1 file, +8/-1]
  33cd650d38 pmdomain: core: Reset genpd->states to avoid freeing invalid data [1 file, +3/-1]
  f34e0c1556 platform-msi: Add msi_remove_device_irq_domain() in platform_device_msi_free_irqs_all() [1 file, +1/-0]
  c519f81e9c gpiolib: of: Add polarity quirk for s5m8767 [1 file, +9/-0]
  1f152ae557 PM: runtime: fix denying of auto suspend in pm_suspend_timer_fn() [1 file, +1/-1]
  6c1151d53c tipc: use kfree_sensitive() for aead cleanup [1 file, +1/-1]
  b0e647442c f2fs: use vmalloc instead of kvmalloc in .init_{,de}compress_ctx [2 files, +15/-13]
  2d834477bb bpf: Check rcu_read_lock_trace_held() in bpf_map_lookup_percpu_elem() [1 file, +2/-1]
  77ff6aec7c cpufreq: scmi: Skip SCMI devices that aren't used by the CPUs [1 file, +35/-1]
  0a8446058c tcp: always seek for minimal rtt in tcp_rcv_rtt_update() [1 file, +8/-14]
  f97085d365 tcp: remove zero TCP TS samples for autotuning [1 file, +5/-5]
  89b20c406e tcp: fix initial tp->rcvq_space.space value for passive TS enabled flows [1 file, +3/-3]
  84c156a351 tcp: add receive queue awareness in tcp_rcv_space_adjust() [2 files, +5/-3]
  3a9e74d158 ipv4/route: Use this_cpu_inc() for stats on PREEMPT_RT [1 file, +4/-0]
  5eb9c50e0c net: page_pool: Don't recycle into cache on PREEMPT_RT [1 file, +4/-0]
  8b0741b167 xfrm: validate assignment of maximal possible SEQ number [1 file, +42/-10]
  8fdf2f79eb bpf: Pass the same orig_call value to trampoline functions [1 file, +1/-1]
  f0023d7a2a f2fs: fix to bail out in get_new_segment() [2 files, +6/-1]
  448dc45eea bpf: Use proper type to calculate bpf_raw_tp_null_args.mask index [1 file, +2/-2]
  78f768e36c net: bridge: mcast: re-implement br_multicast_{enable, disable}_port functions [1 file, +69/-8]
  4b3383110b software node: Correct a OOB check in software_node_get_reference_args() [1 file, +1/-1]
  b7129ef57d sock: Correct error checking condition for (assign|release)_proto_idx() [1 file, +2/-2]
  a58f0a0e99 f2fs: fix to set atomic write status more clear [3 files, +12/-2]
  b8b4b8bb34 bpf, sockmap: Fix data lost during EAGAIN retries [1 file, +2/-1]
  7c41f73b64 fs/xattr.c: fix simple_xattr_list() [1 file, +1/-0]
  2e10dc9c2a io_uring/kbuf: don't truncate end buffer for multiple buffer peeks [1 file, +4/-1]
  1a4254ab06 io_uring: fix task leak issue in io_wq_create() [1 file, +3/-1]
  4220cc0b98 nvme: always punt polled uring_cmd end_io work to task_work [1 file, +7/-14]
  f9b97d466e net_sched: sch_sfq: reject invalid perturb period [1 file, +8/-2]
  2a3ad42a57 net: clear the dst when changing skb protocol [1 file, +13/-6]
  510a29d776 mm: close theoretical race where stale TLB entries could linger [1 file, +2/-0]
  57ec081869 sched_ext, sched/core: Don't call scx_group_set_weight() prematurely from sched_create_group() [3 files, +9/-2]
  3d828519bd atm: Revert atm_account_tx() if copy_from_iter_full() fails. [3 files, +8/-1]
  47f34289d1 arm64: Restrict pagetable teardown to avoid false warning [1 file, +2/-1]
  9cf5b2a3b7 mm/hugetlb: unshare page tables during VMA split, not before [5 files, +57/-16]
  dc5f0aef9e net: Fix checksum update for ILA adj-transport [4 files, +7/-7]
  2516299184 bpf: Fix L4 csum update on IPv6 in CHECKSUM_COMPLETE [3 files, +7/-2]
  50189d9c5e erofs: remove unused trace event erofs_destroy_inode [1 file, +0/-18]
  348e541fef ipv6: remove leftover ip6 cookie initializer [1 file, +0/-2]
  3c44ebad5a ipv6: replace ipcm6_init calls with ipcm6_init_sk [4 files, +3/-29]
  6b358b3adf io_uring/sqpoll: don't put task_struct on tctx setup failure [1 file, +1/-4]
  8873080b88 workqueue: Initialize wq_isolated_cpumask in workqueue_init_early() [1 file, +2/-1]
  ac462a75fd net: netmem: fix skb_ensure_writable with unreadable skbs [1 file, +0/-3]
  61b39e189d ptp: allow reading of currently dialed frequency to succeed on free-running clocks [1 file, +2/-1]
  397c1faf8f tcp: fix tcp_packet_delayed() for tcp_is_non_sack_preventing_reopen() behavior [1 file, +25/-12]
  0d3d91c350 tipc: fix null-ptr-deref when acquiring remote ip of ethernet bearer [1 file, +2/-2]
  31d50dfe9c tcp: fix passive TFO socket having invalid NAPI ID [1 file, +3/-0]
  0f8df5d6f2 ublk: santizize the arguments from userspace when adding a device [1 file, +3/-0]
  456019adaa perf: Fix sample vs do_exit() [2 files, +16/-8]
  7335c33d62 perf: Fix cgroup state vs ERROR [1 file, +30/-21]
  fd199366bf perf/core: Fix WARN in perf_cgroup_switch() [1 file, +20/-2]
  22f935bc86 arm64/ptrace: Fix stack-out-of-bounds read in regs_get_kernel_stack_nth() [1 file, +1/-1]

Changes in 6.12.35
	configfs: Do not override creating attribute file failure in populate_attrs()
	crypto: marvell/cesa - Do not chain submitted requests
	gfs2: move msleep to sleepable context
	crypto: qat - add shutdown handler to qat_c3xxx
	crypto: qat - add shutdown handler to qat_420xx
	crypto: qat - add shutdown handler to qat_4xxx
	crypto: qat - add shutdown handler to qat_c62x
	crypto: qat - add shutdown handler to qat_dh895xcc
	ASoC: qcom: sdm845: Add error handling in sdm845_slim_snd_hw_params()
	ASoC: meson: meson-card-utils: use of_property_present() for DT parsing
	ASoC: amd: sof_amd_sdw: Fix unlikely uninitialized variable use in create_sdw_dailinks()
	io_uring: account drain memory to cgroup
	io_uring/kbuf: account ring io_buffer_list memory
	powerpc/pseries/msi: Avoid reading PCI device registers in reduced power states
	s390/pci: Remove redundant bus removal and disable from zpci_release_device()
	s390/pci: Prevent self deletion in disable_slot()
	s390/pci: Allow re-add of a reserved but not yet removed device
	s390/pci: Serialize device addition and removal
	regulator: max20086: Fix MAX200086 chip id
	regulator: max20086: Change enable gpio to optional
	net/mlx5_core: Add error handling inmlx5_query_nic_vport_qkey_viol_cntr()
	net/mlx5: Add error handling in mlx5_query_nic_vport_node_guid()
	wifi: p54: prevent buffer-overflow in p54_rx_eeprom_readback()
	wifi: mt76: mt7925: fix host interrupt register initialization
	wifi: ath11k: fix rx completion meta data corruption
	wifi: rtw88: usb: Upload the firmware in bigger chunks
	wifi: ath11k: fix ring-buffer corruption
	NFSD: unregister filesystem in case genl_register_family() fails
	NFSD: fix race between nfsd registration and exports_proc
	NFSD: Implement FATTR4_CLONE_BLKSIZE attribute
	nfsd: nfsd4_spo_must_allow() must check this is a v4 compound request
	nfsd: Initialize ssc before laundromat_work to prevent NULL dereference
	SUNRPC: Prevent hang on NFS mount with xprtsec=[m]tls
	NFSv4: Don't check for OPEN feature support in v4.1
	fs/nfs/read: fix double-unlock bug in nfs_return_empty_folio()
	wifi: ath12k: fix ring-buffer corruption
	jbd2: fix data-race and null-ptr-deref in jbd2_journal_dirty_metadata()
	svcrdma: Unregister the device if svc_rdma_accept() fails
	wifi: rtw88: usb: Reduce control message timeout to 500 ms
	wifi: rtlwifi: disable ASPM for RTL8723BE with subsystem ID 11ad:1723
	media: ov8856: suppress probe deferral errors
	media: ov5675: suppress probe deferral errors
	media: imx335: Use correct register width for HNUM
	media: nxp: imx8-isi: better handle the m2m usage_count
	media: i2c: ds90ub913: Fix returned fmt from .set_fmt()
	media: ccs-pll: Start VT pre-PLL multiplier search from correct value
	media: ov2740: Move pm-runtime cleanup on probe-errors to proper place
	media: ccs-pll: Start OP pre-PLL multiplier search from correct value
	media: ccs-pll: Correct the upper limit of maximum op_pre_pll_clk_div
	media: ccs-pll: Check for too high VT PLL multiplier in dual PLL case
	media: cxusb: no longer judge rbuf when the write fails
	media: davinci: vpif: Fix memory leak in probe error path
	media: gspca: Add error handling for stv06xx_read_sensor()
	media: i2c: imx335: Fix frame size enumeration
	media: imagination: fix a potential memory leak in e5010_probe()
	media: intel/ipu6: Fix dma mask for non-secure mode
	media: ipu6: Remove workaround for Meteor Lake ES2
	media: mediatek: vcodec: Correct vsi_core framebuffer size
	media: omap3isp: use sgtable-based scatterlist wrappers
	media: v4l2-dev: fix error handling in __video_register_device()
	media: venus: Fix probe error handling
	media: videobuf2: use sgtable-based scatterlist wrappers
	media: vidtv: Terminating the subsequent process of initialization failure
	media: vivid: Change the siize of the composing
	media: imx-jpeg: Drop the first error frames
	media: imx-jpeg: Move mxc_jpeg_free_slot_data() ahead
	media: imx-jpeg: Reset slot data pointers when freed
	media: imx-jpeg: Cleanup after an allocation error
	media: uvcvideo: Return the number of processed controls
	media: uvcvideo: Send control events for partial succeeds
	media: uvcvideo: Fix deferred probing error
	arm64/mm: Close theoretical race where stale TLB entry remains valid
	ARM: 9447/1: arm/memremap: fix arch_memremap_can_ram_remap()
	ARM: omap: pmic-cpcap: do not mess around without CPCAP or OMAP4
	ASoC: codecs: wcd9375: Fix double free of regulator supplies
	ASoC: codecs: wcd937x: Drop unused buck_supply
	block: use plug request list tail for one-shot backmerge attempt
	block: Clear BIO_EMULATES_ZONE_APPEND flag on BIO completion
	bus: mhi: ep: Update read pointer only after buffer is written
	bus: mhi: host: Fix conflict between power_up and SYSERR
	can: kvaser_pciefd: refine error prone echo_skb_max handling logic
	can: tcan4x5x: fix power regulator retrieval during probe
	ceph: avoid kernel BUG for encrypted inode with unaligned file size
	ceph: set superblock s_magic for IMA fsmagic matching
	cgroup,freezer: fix incomplete freezing when attaching tasks
	bus: firewall: Fix missing static inline annotations for stubs
	ata: pata_via: Force PIO for ATAPI devices on VT6415/VT6330
	ata: ahci: Disallow LPM for ASUSPRO-D840SA motherboard
	ata: ahci: Disallow LPM for Asus B550-F motherboard
	bus: fsl-mc: do not add a device-link for the UAPI used DPMCP device
	bus: fsl-mc: fix GET/SET_TAILDROP command ids
	ext4: inline: fix len overflow in ext4_prepare_inline_data
	ext4: fix calculation of credits for extent tree modification
	ext4: factor out ext4_get_maxbytes()
	ext4: ensure i_size is smaller than maxbytes
	ext4: only dirty folios when data journaling regular files
	Input: ims-pcu - check record size in ims_pcu_flash_firmware()
	Input: gpio-keys - fix possible concurrent access in gpio_keys_irq_timer()
	f2fs: fix to do sanity check on ino and xnid
	f2fs: prevent kernel warning due to negative i_nlink from corrupted image
	f2fs: fix to do sanity check on sit_bitmap_size
	hwmon: (ftsteutates) Fix TOCTOU race in fts_read()
	NFC: nci: uart: Set tty->disc_data only in success path
	net/sched: fix use-after-free in taprio_dev_notifier
	net: ftgmac100: select FIXED_PHY
	iommu/vt-d: Restore context entry setup order for aliased devices
	fbdev: Fix do_register_framebuffer to prevent null-ptr-deref in fb_videomode_to_var
	EDAC/altera: Use correct write width with the INTTEST register
	fbdev: Fix fb_set_var to prevent null-ptr-deref in fb_videomode_to_var
	parisc/unaligned: Fix hex output to show 8 hex chars
	vgacon: Add check for vc_origin address range in vgacon_scroll()
	parisc: fix building with gcc-15
	clk: meson-g12a: add missing fclk_div2 to spicc
	ipc: fix to protect IPCS lookups using RCU
	watchdog: fix watchdog may detect false positive of softlockup
	RDMA/iwcm: Fix use-after-free of work objects after cm_id destruction
	mm: fix ratelimit_pages update error in dirty_ratio_handler()
	soc: qcom: pmic_glink_altmode: fix spurious DP hotplug events
	configfs-tsm-report: Fix NULL dereference of tsm_ops
	firmware: arm_scmi: Ensure that the message-id supports fastchannel
	mtd: rawnand: sunxi: Add randomizer configuration in sunxi_nfc_hw_ecc_write_chunk
	mtd: nand: sunxi: Add randomizer configuration before randomizer enable
	KVM: SVM: Clear current_vmcb during vCPU free for all *possible* CPUs
	KVM: VMX: Flush shadow VMCS on emergency reboot
	dm-mirror: fix a tiny race condition
	dm-verity: fix a memory leak if some arguments are specified multiple times
	mtd: rawnand: qcom: Fix read len for onfi param page
	ftrace: Fix UAF when lookup kallsym after ftrace disabled
	dm: lock limits when reading them
	phy: fsl-imx8mq-usb: fix phy_tx_vboost_level_from_property()
	net: ch9200: fix uninitialised access during mii_nway_restart
	KVM: s390: rename PROT_NONE to PROT_TYPE_DUMMY
	sysfb: Fix screen_info type check for VGA
	video: screen_info: Relocate framebuffers behind PCI bridges
	pwm: axi-pwmgen: fix missing separate external clock
	staging: iio: ad5933: Correct settling cycles encoding per datasheet
	mips: Add -std= flag specified in KBUILD_CFLAGS to vdso CFLAGS
	ovl: Fix nested backing file paths
	regulator: max14577: Add error check for max14577_read_reg()
	remoteproc: core: Cleanup acquired resources when rproc_handle_resources() fails in rproc_attach()
	remoteproc: core: Release rproc->clean_table after rproc_attach() fails
	remoteproc: k3-m4: Don't assert reset in detach routine
	cifs: reset connections for all channels when reconnect requested
	cifs: update dstaddr whenever channel iface is updated
	cifs: dns resolution is needed only for primary channel
	smb: client: add NULL check in automount_fullpath
	Drivers: hv: Allocate interrupt and monitor pages aligned to system page boundary
	uio_hv_generic: Use correct size for interrupt and monitor pages
	uio_hv_generic: Align ring size to system page
	PCI: cadence-ep: Correct PBA offset in .set_msix() callback
	PCI: dwc: ep: Correct PBA offset in .set_msix() callback
	PCI: Add ACS quirk for Loongson PCIe
	PCI: Fix lock symmetry in pci_slot_unlock()
	PCI: dw-rockchip: Remove PCIE_L0S_ENTRY check from rockchip_pcie_link_up()
	PCI: dw-rockchip: Fix PHY function call sequence in rockchip_pcie_phy_deinit()
	iio: accel: fxls8962af: Fix temperature scan element sign
	accel/ivpu: Improve buffer object logging
	accel/ivpu: Use firmware names from upstream repo
	accel/ivpu: Use dma_resv_lock() instead of a custom mutex
	accel/ivpu: Fix warning in ivpu_gem_bo_free()
	dummycon: Trigger redraw when switching consoles with deferred takeover
	mm/hugetlb: fix huge_pmd_unshare() vs GUP-fast race
	iio: imu: inv_icm42600: Fix temperature calculation
	iio: adc: ad7944: mask high bits on direct read
	iio: adc: ti-ads1298: Kconfig: add kfifo dependency to fix module build
	iio: adc: ad7606_spi: fix reg write value mask
	ACPICA: fix acpi operand cache leak in dswstate.c
	ASoC: amd: yc: Add quirk for Lenovo Yoga Pro 7 14ASP9
	clocksource: Fix the CPUs' choice in the watchdog per CPU verification
	power: supply: collie: Fix wakeup source leaks on device unbind
	mmc: Add quirk to disable DDR50 tuning
	ACPICA: Avoid sequence overread in call to strncmp()
	ASoC: tas2770: Power cycle amp on ISENSE/VSENSE change
	ASoC: intel/sdw_utils: Assign initial value in asoc_sdw_rt_amp_spk_rtd_init()
	ACPI: bus: Bail out if acpi_kobj registration fails
	ACPI: Add missing prototype for non CONFIG_SUSPEND/CONFIG_X86 case
	ACPICA: fix acpi parse and parseext cache leaks
	ACPICA: Apply pack(1) to union aml_resource
	ALSA: hda: cs35l41: Fix swapped l/r audio channels for Acer Helios laptops
	power: supply: bq27xxx: Retrieve again when busy
	pmdomain: core: Reset genpd->states to avoid freeing invalid data
	ACPICA: utilities: Fix overflow check in vsnprintf()
	platform-msi: Add msi_remove_device_irq_domain() in platform_device_msi_free_irqs_all()
	ASoC: tegra210_ahub: Add check to of_device_get_match_data()
	Make 'cc-option' work correctly for the -Wno-xyzzy pattern
	gpiolib: of: Add polarity quirk for s5m8767
	PM: runtime: fix denying of auto suspend in pm_suspend_timer_fn()
	power: supply: max17040: adjust thermal channel scaling
	ACPI: battery: negate current when discharging
	net: macb: Check return value of dma_set_mask_and_coherent()
	net: lan743x: Modify the EEPROM and OTP size for PCI1xxxx devices
	tipc: use kfree_sensitive() for aead cleanup
	f2fs: use vmalloc instead of kvmalloc in .init_{,de}compress_ctx
	bpf: Check rcu_read_lock_trace_held() in bpf_map_lookup_percpu_elem()
	Bluetooth: btusb: Add new VID/PID 13d3/3584 for MT7922
	i2c: designware: Invoke runtime suspend on quick slave re-registration
	wifi: mt76: mt7996: drop fragments with multicast or broadcast RA
	emulex/benet: correct command version selection in be_cmd_get_stats()
	Bluetooth: btusb: Add new VID/PID 13d3/3630 for MT7925
	wifi: mt76: mt76x2: Add support for LiteOn WN4516R,WN4519R
	wifi: mt76: mt7921: add 160 MHz AP for mt7922 device
	wifi: mt76: mt7925: introduce thermal protection
	wifi: mac80211: validate SCAN_FLAG_AP in scan request during MLO
	sctp: Do not wake readers in __sctp_write_space()
	libbpf/btf: Fix string handling to support multi-split BTF
	cpufreq: scmi: Skip SCMI devices that aren't used by the CPUs
	i2c: tegra: check msg length in SMBUS block read
	i2c: npcm: Add clock toggle recovery
	clk: qcom: gcc-x1e80100: Set FORCE MEM CORE for UFS clocks
	net: dlink: add synchronization for stats update
	wifi: ath12k: fix macro definition HAL_RX_MSDU_PKT_LENGTH_GET
	wifi: ath12k: fix a possible dead lock caused by ab->base_lock
	wifi: ath11k: Fix QMI memory reuse logic
	iommu/amd: Allow matching ACPI HID devices without matching UIDs
	wifi: rtw89: leave idle mode when setting WEP encryption for AP mode
	tcp: always seek for minimal rtt in tcp_rcv_rtt_update()
	tcp: remove zero TCP TS samples for autotuning
	tcp: fix initial tp->rcvq_space.space value for passive TS enabled flows
	tcp: add receive queue awareness in tcp_rcv_space_adjust()
	x86/sgx: Prevent attempts to reclaim poisoned pages
	ipv4/route: Use this_cpu_inc() for stats on PREEMPT_RT
	net: page_pool: Don't recycle into cache on PREEMPT_RT
	xfrm: validate assignment of maximal possible SEQ number
	net: atlantic: generate software timestamp just before the doorbell
	pinctrl: armada-37xx: propagate error from armada_37xx_pmx_set_by_name()
	pinctrl: armada-37xx: propagate error from armada_37xx_gpio_get_direction()
	bpf: Pass the same orig_call value to trampoline functions
	net: stmmac: generate software timestamp just before the doorbell
	pinctrl: armada-37xx: propagate error from armada_37xx_pmx_gpio_set_direction()
	libbpf: Check bpf_map_skeleton link for NULL
	pinctrl: armada-37xx: propagate error from armada_37xx_gpio_get()
	net: mlx4: add SOF_TIMESTAMPING_TX_SOFTWARE flag when getting ts info
	net: vertexcom: mse102x: Return code for mse102x_rx_pkt_spi
	wireless: purelifi: plfxlc: fix memory leak in plfxlc_usb_wreq_asyn()
	wifi: mac80211: do not offer a mesh path if forwarding is disabled
	clk: rockchip: rk3036: mark ddrphy as critical
	hid-asus: check ROG Ally MCU version and warn
	wifi: iwlwifi: mvm: fix beacon CCK flag
	f2fs: fix to bail out in get_new_segment()
	netfilter: nft_set_pipapo: clamp maximum map bucket size to INT_MAX
	libbpf: Add identical pointer detection to btf_dedup_is_equiv()
	scsi: lpfc: Fix lpfc_check_sli_ndlp() handling for GEN_REQUEST64 commands
	scsi: smartpqi: Add new PCI IDs
	iommu/amd: Ensure GA log notifier callbacks finish running before module unload
	wifi: iwlwifi: pcie: make sure to lock rxq->read
	wifi: rtw89: 8922a: fix TX fail with wrong VCO setting
	wifi: mac80211_hwsim: Prevent tsf from setting if beacon is disabled
	netdevsim: Mark NAPI ID on skb in nsim_rcv
	net/mlx5: HWS, Fix IP version decision
	bpf: Use proper type to calculate bpf_raw_tp_null_args.mask index
	wifi: mac80211: VLAN traffic in multicast path
	Revert "mac80211: Dynamically set CoDel parameters per station"
	wifi: iwlwifi: Add missing MODULE_FIRMWARE for Qu-c0-jf-b0
	net: bridge: mcast: update multicast contex when vlan state is changed
	net: bridge: mcast: re-implement br_multicast_{enable, disable}_port functions
	vxlan: Do not treat dst cache initialization errors as fatal
	bnxt_en: Remove unused field "ref_count" in struct bnxt_ulp
	wifi: ath12k: using msdu end descriptor to check for rx multicast packets
	net: ethernet: ti: am65-cpsw: handle -EPROBE_DEFER
	software node: Correct a OOB check in software_node_get_reference_args()
	isofs: fix Y2038 and Y2156 issues in Rock Ridge TF entry
	pinctrl: mcp23s08: Reset all pins to input at probe
	wifi: ath12k: fix failed to set mhi state error during reboot with hardware grouping
	scsi: lpfc: Use memcpy() for BIOS version
	sock: Correct error checking condition for (assign|release)_proto_idx()
	i40e: fix MMIO write access to an invalid page in i40e_clear_hw
	ixgbe: Fix unreachable retry logic in combined and byte I2C write functions
	RDMA/hns: initialize db in update_srq_db()
	ice: fix check for existing switch rule
	usbnet: asix AX88772: leave the carrier control to phylink
	f2fs: fix to set atomic write status more clear
	bpf, sockmap: Fix data lost during EAGAIN retries
	net: ethernet: cortina: Use TOE/TSO on all TCP
	octeontx2-pf: Add error log forcn10k_map_unmap_rq_policer()
	wifi: ath11k: determine PM policy based on machine model
	wifi: ath12k: fix link valid field initialization in the monitor Rx
	wifi: ath12k: fix incorrect CE addresses
	wifi: ath12k: Pass correct values of center freq1 and center freq2 for 160 MHz
	net/mlx5: HWS, Harden IP version definer checks
	fbcon: Make sure modelist not set on unregistered console
	watchdog: da9052_wdt: respect TWDMIN
	bus: fsl-mc: increase MC_CMD_COMPLETION_TIMEOUT_MS value
	ARM: OMAP2+: Fix l4ls clk domain handling in STANDBY
	tee: Prevent size calculation wraparound on 32-bit kernels
	Revert "bus: ti-sysc: Probe for l4_wkup and l4_cfg interconnect devices first"
	fs/xattr.c: fix simple_xattr_list()
	platform/x86/amd: pmc: Clear metrics table at start of cycle
	platform/x86/amd: pmf: Prevent amd_pmf_tee_deinit() from running twice
	platform/x86: dell_rbu: Fix list usage
	platform/x86: dell_rbu: Stop overwriting data buffer
	powerpc/vdso: Fix build of VDSO32 with pcrel
	powerpc/eeh: Fix missing PE bridge reconfiguration during VFIO EEH recovery
	io_uring/kbuf: don't truncate end buffer for multiple buffer peeks
	io_uring: fix task leak issue in io_wq_create()
	drivers/rapidio/rio_cm.c: prevent possible heap overwrite
	platform/loongarch: laptop: Get brightness setting from EC on probe
	platform/loongarch: laptop: Unregister generic_sub_drivers on exit
	platform/loongarch: laptop: Add backlight power control support
	LoongArch: vDSO: Correctly use asm parameters in syscall wrappers
	LoongArch: Avoid using $r0/$r1 as "mask" for csrxchg
	LoongArch: Fix panic caused by NULL-PMD in huge_pte_offset()
	jffs2: check that raw node were preallocated before writing summary
	jffs2: check jffs2_prealloc_raw_node_refs() result in few other places
	cifs: deal with the channel loading lag while picking channels
	cifs: serialize other channels when query server interfaces is pending
	cifs: do not disable interface polling on failure
	smb: improve directory cache reuse for readdir operations
	scsi: storvsc: Increase the timeouts to storvsc_timeout
	scsi: s390: zfcp: Ensure synchronous unit_add
	nvme: always punt polled uring_cmd end_io work to task_work
	net_sched: sch_sfq: reject invalid perturb period
	net: clear the dst when changing skb protocol
	mm: close theoretical race where stale TLB entries could linger
	udmabuf: use sgtable-based scatterlist wrappers
	x86/virt/tdx: Avoid indirect calls to TDX assembly functions
	selftests/x86: Add a test to detect infinite SIGTRAP handler loop
	ksmbd: fix null pointer dereference in destroy_previous_session
	platform/x86: ideapad-laptop: use usleep_range() for EC polling
	selinux: fix selinux_xfrm_alloc_user() to set correct ctx_len
	platform/x86/intel-uncore-freq: Fail module load when plat_info is NULL
	sched_ext, sched/core: Don't call scx_group_set_weight() prematurely from sched_create_group()
	atm: Revert atm_account_tx() if copy_from_iter_full() fails.
	wifi: rtw89: phy: add dummy C2H event handler for report of TAS power
	cpufreq/amd-pstate: Add missing NULL ptr check in amd_pstate_update
	Input: sparcspkr - avoid unannotated fall-through
	wifi: ath12k: Clear affinity hint before calling ath12k_pci_free_irq() in error path
	wifi: cfg80211: init wiphy_work before allocating rfkill fails
	arm64: Restrict pagetable teardown to avoid false warning
	ALSA: usb-audio: Rename ALSA kcontrol PCM and PCM1 for the KTMicro sound card
	ALSA: hda/intel: Add Thinkpad E15 to PM deny list
	ALSA: hda/realtek - Add mute LED support for HP Victus 16-s1xxx and HP Victus 15-fa1xxx
	ALSA: hda/realtek: enable headset mic on Latitude 5420 Rugged
	ALSA: hda/realtek: Fix built-in mic on ASUS VivoBook X513EA
	ALSA: hda/realtek: Add quirk for Asus GU605C
	iio: accel: fxls8962af: Fix temperature calculation
	mm/hugetlb: unshare page tables during VMA split, not before
	drm/amdgpu: read back register after written for VCN v4.0.5
	kbuild: rust: add rustc-min-version support function
	rust: compile libcore with edition 2024 for 1.87+
	net: Fix checksum update for ILA adj-transport
	bpf: Fix L4 csum update on IPv6 in CHECKSUM_COMPLETE
	erofs: remove unused trace event erofs_destroy_inode
	nfsd: use threads array as-is in netlink interface
	sunrpc: handle SVC_GARBAGE during svc auth processing as auth error
	drm/v3d: Avoid NULL pointer dereference in `v3d_job_update_stats()`
	Kunit to check the longest symbol length
	x86/tools: Drop duplicate unlikely() definition in insn_decoder_test.c
	ipv6: remove leftover ip6 cookie initializer
	ipv6: replace ipcm6_init calls with ipcm6_init_sk
	smb: fix secondary channel creation issue with kerberos by populating hostname when adding channels
	drm/msm/disp: Correct porch timing for SDM845
	drm/msm/dsi/dsi_phy_10nm: Fix missing initial VCO rate
	drm/msm: Fix CP_RESET_CONTEXT_STATE bitfield names
	drm/msm/a7xx: Call CP_RESET_CONTEXT_STATE
	drm/ssd130x: fix ssd132x_clear_screen() columns
	ionic: Prevent driver/fw getting out of sync on devcmd(s)
	drm/nouveau/bl: increase buffer size to avoid truncate warning
	drm/i915/pmu: Fix build error with GCOV and AutoFDO enabled
	hwmon: (occ) Rework attribute registration for stack usage
	hwmon: (occ) fix unaligned accesses
	hwmon: (ltc4282) avoid repeated register write
	pldmfw: Select CRC32 when PLDMFW is selected
	aoe: clean device rq_list in aoedev_downdev()
	io_uring/sqpoll: don't put task_struct on tctx setup failure
	net: ice: Perform accurate aRFS flow match
	ice: fix eswitch code memory leak in reset scenario
	e1000e: set fixed clock frequency indication for Nahum 11 and Nahum 13
	workqueue: Initialize wq_isolated_cpumask in workqueue_init_early()
	ksmbd: add free_transport ops in ksmbd connection
	net: netmem: fix skb_ensure_writable with unreadable skbs
	bnxt_en: Fix double invocation of bnxt_ulp_stop()/bnxt_ulp_start()
	eth: bnxt: fix out-of-range access of vnic_info array
	bnxt_en: Add a helper function to configure MRU and RSS
	bnxt_en: Update MRU and RSS table of RSS contexts on queue reset
	ptp: fix breakage after ptp_vclock_in_use() rework
	ptp: allow reading of currently dialed frequency to succeed on free-running clocks
	wifi: carl9170: do not ping device which has failed to load firmware
	mpls: Use rcu_dereference_rtnl() in mpls_route_input_rcu().
	atm: atmtcp: Free invalid length skb in atmtcp_c_send().
	tcp: fix tcp_packet_delayed() for tcp_is_non_sack_preventing_reopen() behavior
	tipc: fix null-ptr-deref when acquiring remote ip of ethernet bearer
	tcp: fix passive TFO socket having invalid NAPI ID
	eth: fbnic: avoid double free when failing to DMA-map FW msg
	net: lan743x: fix potential out-of-bounds write in lan743x_ptp_io_event_clock_get()
	ublk: santizize the arguments from userspace when adding a device
	drm/xe: Wire up device shutdown handler
	drm/xe/gt: Update handling of xe_force_wake_get return
	drm/xe/bmg: Update Wa_16023588340
	calipso: Fix null-ptr-deref in calipso_req_{set,del}attr().
	mlxbf_gige: return EPROBE_DEFER if PHY IRQ is not available
	net: atm: add lec_mutex
	net: atm: fix /proc/net/atm/lec handling
	EDAC/amd64: Correct number of UMCs for family 19h models 70h-7fh
	dt-bindings: i2c: nvidia,tegra20-i2c: Specify the required properties
	smb: Log an error when close_all_cached_dirs fails
	serial: sh-sci: Clean sci_ports[0] after at earlycon exit
	serial: sh-sci: Increment the runtime usage counter for the earlycon device
	smb: client: fix first command failure during re-negotiation
	smb: client: fix max_sge overflow in smb_extract_folioq_to_rdma()
	s390/pci: Fix __pcilg_mio_inuser() inline assembly
	perf: Fix sample vs do_exit()
	perf: Fix cgroup state vs ERROR
	perf/core: Fix WARN in perf_cgroup_switch()
	arm64/ptrace: Fix stack-out-of-bounds read in regs_get_kernel_stack_nth()
	scsi: elx: efct: Fix memory leak in efct_hw_parse_filter()
	RISC-V: KVM: Fix the size parameter check in SBI SFENCE calls
	RISC-V: KVM: Don't treat SBI HFENCE calls as NOPs
	gpio: pca953x: fix wrong error probe return value
	perf evsel: Missed close() when probing hybrid core PMUs
	perf test: Directory file descriptor leak
	gpio: mlxbf3: only get IRQ for device instance 0
	cifs: Remove duplicate fattr->cf_dtype assignment from wsl_to_fattr() function
	bpftool: Fix cgroup command to only show cgroup bpf programs
	Linux 6.12.35

Change-Id: Ida57d269272a624bedb979bfad0b3c5e7df7e846
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-07-10 16:01:38 +00:00
Greg Kroah-Hartman 036a0d8df2 Merge 6.12.34 into android16-6.12-lts
GKI (arm64) relevant 105 out of 506 changes, affecting 145 files +1290/-523
  623074162b sched: Fix trace_sched_switch(.prev_state) [1 file, +4/-2]
  781bbc8252 perf/core: Fix broken throttling when max_samples_per_tick=1 [1 file, +8/-8]
  451a18d71b sched/core: Tweak wait_task_inactive() to force dequeue sched_delayed tasks [1 file, +6/-0]
  5b814cde62 brd: fix aligned_sector from brd_do_discard() [1 file, +1/-1]
  48e11bcee9 brd: fix discard end sector [1 file, +6/-3]
  9cfca45aec erofs: fix file handle encoding for 64-bit NIDs [1 file, +36/-8]
  65115472f7 erofs: avoid using multiple devices with different type [1 file, +4/-1]
  58beaa1aee rcu/cpu_stall_cputime: fix the hardirq count for x86 architecture [3 files, +10/-6]
  5ed92ad1b7 crypto: xts - Only add ecb if it is not already there [1 file, +2/-2]
  e9ecaeaf41 kunit: Fix wrong parameter to kunit_deactivate_static_stub() [1 file, +1/-1]
  9c094deb6b crypto: api - Redo lookup on EEXIST [1 file, +11/-2]
  81d72f9241 PM: EM: Fix potential division-by-zero error in em_compute_costs() [1 file, +4/-0]
  0426e92970 PM: wakeup: Delete space in the end of string shown by pm_show_wakelocks() [1 file, +3/-0]
  77d45ba1be PM: sleep: Print PM debug messages during hibernation [3 files, +11/-1]
  45844a9403 ALSA: core: fix up bus match const issues. [4 files, +8/-8]
  fa65c89f3f arm64/fpsimd: Avoid RES0 bits in the SME trap handler [2 files, +9/-7]
  6103f9ba51 arm64/fpsimd: Discard stale CPU state when handling SME traps [1 file, +2/-0]
  945d247d1c arm64/fpsimd: Don't corrupt FPMR when streaming mode changes [1 file, +3/-3]
  55d52af498 arm64/fpsimd: Avoid clobbering kernel FPSIMD state with SMSTOP [1 file, +1/-1]
  2756dac036 arm64/fpsimd: Reset FPMR upon exec() [1 file, +3/-0]
  f5ffc750db arm64/fpsimd: Fix merging of FPSIMD state during signal return [1 file, +1/-1]
  0860d48b70 firmware: psci: Fix refcount leak in psci_dt_init [1 file, +3/-1]
  64a9ee6e11 arm64/fpsimd: Avoid warning when sve_to_fpsimd() is unused [1 file, +2/-2]
  b3cfc1f9f5 arm64/fpsimd: Do not discard modified SVE state [3 files, +47/-17]
  e55f46a11b overflow: Fix direct struct member initialization in _DEFINE_FLEX() [1 file, +3/-3]
  671dd1fb87 bpf: Check link_create.flags parameter for multi_kprobe [1 file, +3/-0]
  3a8e680f7d bpf, sockmap: fix duplicated data transmission [1 file, +9/-5]
  3d25fa2d7f bpf, sockmap: Fix panic when calling skb_linearize [1 file, +16/-15]
  44a51592ac f2fs: zone: fix to avoid inconsistence in between SIT and SSA [1 file, +3/-0]
  4f51fb0d25 page_pool: Track DMA-mapped pages and unmap them when destroying the pool [5 files, +147/-18]
  88f65bb66d iommu: Protect against overflow in iommu_pgsize() [1 file, +3/-1]
  04daca6012 f2fs: clean up w/ fscrypt_is_bounce_page() [1 file, +1/-1]
  4248ba53e4 f2fs: fix to detect gcing page in f2fs_is_cp_guaranteed() [1 file, +1/-1]
  c1f418cc27 bpf: Allow XDP dev-bound programs to perform XDP_REDIRECT into maps [1 file, +16/-11]
  e53a8dcd36 tracing: Move histogram trigger variables from stack to per CPU structure [1 file, +105/-15]
  69a995644a efi/libstub: Describe missing 'out' parameter in efi_load_initrd [1 file, +1/-0]
  709412b92a tracing: Fix error handling in event_trigger_parse() [1 file, +2/-2]
  c98cdf6795 bpf: Fix WARN() in get_bpf_raw_tp_regs [1 file, +1/-1]
  e0657136ae scsi: ufs: mcq: Delete ufshcd_release_scsi_cmd() in ufshcd_mcq_abort() [1 file, +0/-6]
  6bfb154f95 kernfs: Relax constraint in draining guard [2 files, +5/-3]
  df00f9147e Bluetooth: ISO: Fix not using SID from adv report [5 files, +75/-14]
  1d249cc92d bpf: Revert "bpf: remove unnecessary rcu_read_{lock,unlock}() in multi-uprobe attach logic" [1 file, +2/-0]
  1750c3f1d9 Bluetooth: MGMT: iterate over mesh commands in mgmt_mesh_foreach() [1 file, +1/-1]
  15c0250dae bpf, sockmap: Avoid using sk_socket after free when sending [1 file, +8/-0]
  30a9e834c7 net: usb: aqc111: fix error handling of usbnet read calls [1 file, +8/-2]
  7893a41dea vsock/virtio: fix `rx_bytes` accounting for stream sockets [2 files, +17/-10]
  2bc6dffb4b bpf: Avoid __bpf_prog_ret0_warn when jit fails [1 file, +1/-1]
  ddc654e89a net: phy: clear phydev->devlink when the link is deleted [1 file, +3/-1]
  f15ed37dd3 net: phy: fix up const issues in to_mdio_device() and to_phy_device() [2 files, +2/-8]
  532601e783 f2fs: use d_inode(dentry) cleanup dentry->d_inode [2 files, +6/-6]
  0befc3005d f2fs: fix to correct check conditions in f2fs_cross_rename [1 file, +1/-1]
  2eeb181e76 dm: don't change md if dm_table_set_restrictions() fails [1 file, +12/-10]
  48e0b54be4 dm: free table mempools if not used in __bind [1 file, +4/-4]
  17e4b0fcd2 PCI: Print the actual delay time in pci_bridge_wait_for_secondary_bus() [1 file, +1/-1]
  0a3e2ec508 PCI: endpoint: Retain fixed-size BAR size as well as aligned size [2 files, +18/-7]
  9f40ae8310 USB: gadget: udc: fix const issue in gadget_match_driver() [1 file, +1/-1]
  4bd30962f3 USB: typec: fix const issue in typec_match() [1 file, +1/-1]
  3091d4c0d0 loop: add file_start_write() and file_end_write() [1 file, +6/-2]
  90891eadb8 Fix sock_exceed_buf_limit not being triggered in __sk_mem_raise_allocated [1 file, +4/-4]
  e869a85acc page_pool: Fix use-after-free in page_pool_recycle_in_ring [1 file, +14/-13]
  c762fc79d7 net: tipc: fix refcount warning in tipc_aead_encrypt [1 file, +5/-1]
  b788cebf72 Bluetooth: L2CAP: Fix not responding with L2CAP_CR_LE_ENCRYPTION [1 file, +2/-1]
  4399f59a94 net: fix udp gso skb_segment after pull from frag_list [1 file, +5/-0]
  0cffc6e40d PM: sleep: Fix power.is_suspended cleanup for direct-complete devices [1 file, +2/-1]
  f34dc858e6 netfilter: nf_nat: also check reverse tuple to obtain clashing entry [1 file, +9/-3]
  4f0fcdb835 wifi: cfg80211/mac80211: correctly parse S1G beacon optional elements [4 files, +83/-32]
  933466fc50 wireguard: device: enable threaded NAPI [1 file, +1/-0]
  1be1f3b848 iov_iter: use iov_offset for length calculation in iov_iter_aligned_bvec [1 file, +1/-1]
  1d79230719 path_overmount(): avoid false negatives [1 file, +13/-6]
  e1d02fe504 fix propagation graph breakage by MOVE_MOUNT_SET_GROUP move_mount(2) [1 file, +1/-1]
  9c1ddfeb66 do_change_type(): refuse to operate on unmounted/not ours mounts [1 file, +4/-0]
  80f7c5be4f pmdomain: core: Introduce dev_pm_genpd_rpm_always_on() [2 files, +42/-0]
  3464a707d1 scsi: core: ufs: Fix a hang in the error handler [1 file, +6/-1]
  99e3d69853 Bluetooth: hci_core: fix list_for_each_entry_rcu usage [1 file, +3/-8]
  9df3e5e7f7 Bluetooth: MGMT: Fix UAF on mgmt_remove_adv_monitor_complete [3 files, +12/-30]
  84ab1283eb Bluetooth: MGMT: Remove unused mgmt_pending_find_data [2 files, +0/-21]
  4e83f2dbb2 Bluetooth: MGMT: Protect mgmt_pending list with its own lock [5 files, +80/-59]
  d1bc80da75 net_sched: sch_sfq: fix a potential crash on gso_skb handling [1 file, +4/-1]
  1e0de7582c net: Fix TOCTOU issue in sk_is_readable() [1 file, +5/-2]
  78fa7b723e macsec: MACsec SCI assignment for ES = 0 [1 file, +34/-6]
  b02d9d2732 net/mdiobus: Fix potential out-of-bounds read/write access [1 file, +6/-0]
  31bf7b2b92 net/mdiobus: Fix potential out-of-bounds clause 45 read/write access [1 file, +6/-0]
  842f7c3154 Bluetooth: Fix NULL pointer deference on eir_get_service_data [1 file, +6/-4]
  907ef6e12f Bluetooth: hci_sync: Fix broadcast/PA when using an existing instance [1 file, +15/-5]
  2af40d795d Bluetooth: eir: Fix possible crashes on eir_create_adv_data [3 files, +8/-6]
  7a41744e38 Bluetooth: MGMT: Fix sparse errors [1 file, +2/-2]
  e3f6745006 net_sched: prio: fix a race in prio_tune() [1 file, +1/-1]
  180b12eafa net_sched: tbf: fix a race in tbf_change() [1 file, +1/-1]
  0a2500782f fs/filesystems: Fix potential unsigned integer underflow in fs_name() [1 file, +9/-5]
  f351bb3085 perf: Ensure bpf_perf_link path is properly serialized [1 file, +30/-4]
  a5c7b61eed block: use q->elevator with ->elevator_lock held in elv_iosched_show() [1 file, +1/-2]
  af8c13f9ee io_uring: fix use-after-free of sq->thread in __io_uring_show_fdinfo() [2 files, +14/-7]
  0fccb6773b block: don't use submit_bio_noacct_nocheck in blk_zone_wplug_bio_work [1 file, +5/-2]
  48f33ec141 io_uring: consistently use rcu semantics with sqpoll thread [4 files, +38/-15]
  a9022c8631 bio: Fix bio_first_folio() for SPARSEMEM without VMEMMAP [1 file, +1/-1]
  4b1ef15ffd block: Fix bvec_set_folio() for very large folios [1 file, +5/-2]
  84e9f0a2c2 ALSA: usb-audio: Add implicit feedback quirk for RODE AI-1 [1 file, +1/-0]
  c29d531870 posix-cpu-timers: fix race between handle_posix_cpu_timers() and posix_cpu_timer_del() [1 file, +9/-0]
  657003ced7 usb: Flush altsetting 0 endpoints before reinitializating them after reset. [1 file, +14/-2]
  7bdd712abe usb: typec: tcpm: move tcpm_queue_vdm_unlocked to asynchronous work [1 file, +71/-20]
  b8df8cb8f7 ring-buffer: Do not trigger WARN_ON() due to a commit_overrun [1 file, +18/-8]
  e09c0600be ring-buffer: Fix buffer locking in ring_buffer_subbuf_order_set() [1 file, +1/-3]
  2d6a6cfe96 ring-buffer: Move cpus_read_lock() outside of buffer->mutex [1 file, +6/-5]
  5ed1d7a700 net: usb: aqc111: debug info before sanitation [1 file, +4/-4]
  ab20b0bdb0 overflow: Introduce __DEFINE_FLEX for having no initializer [1 file, +19/-6]

Changes in 6.12.34
	tools/x86/kcpuid: Fix error handling
	x86/idle: Remove MFENCEs for X86_BUG_CLFLUSH_MONITOR in mwait_idle_with_hints() and prefer_mwait_c1_over_halt()
	crypto: sun8i-ce-hash - fix error handling in sun8i_ce_hash_run()
	sched: Fix trace_sched_switch(.prev_state)
	perf/x86/amd/uncore: Remove unused 'struct amd_uncore_ctx::node' member
	perf/x86/amd/uncore: Prevent UMC counters from saturating
	gfs2: replace sd_aspace with sd_inode
	gfs2: gfs2_create_inode error handling fix
	perf/core: Fix broken throttling when max_samples_per_tick=1
	crypto: sun8i-ce-cipher - fix error handling in sun8i_ce_cipher_prepare()
	crypto: sun8i-ss - do not use sg_dma_len before calling DMA functions
	powerpc: do not build ppc_save_regs.o always
	powerpc/crash: Fix non-smp kexec preparation
	sched/core: Tweak wait_task_inactive() to force dequeue sched_delayed tasks
	x86/microcode/AMD: Do not return error when microcode update is not necessary
	crypto: sun8i-ce - undo runtime PM changes during driver removal
	x86/cpu: Sanitize CPUID(0x80000000) output
	x86/insn: Fix opcode map (!REX2) superscript tags
	brd: fix aligned_sector from brd_do_discard()
	brd: fix discard end sector
	kselftest: cpufreq: Get rid of double suspend in rtcwake case
	crypto: marvell/cesa - Handle zero-length skcipher requests
	crypto: marvell/cesa - Avoid empty transfer descriptor
	erofs: fix file handle encoding for 64-bit NIDs
	erofs: avoid using multiple devices with different type
	powerpc/pseries/iommu: Fix kmemleak in TCE table userspace view
	btrfs: scrub: update device stats when an error is detected
	btrfs: scrub: fix a wrong error type when metadata bytenr mismatches
	btrfs: fix invalid data space release when truncating block in NOCOW mode
	rcu/cpu_stall_cputime: fix the hardirq count for x86 architecture
	crypto: lrw - Only add ecb if it is not already there
	crypto: xts - Only add ecb if it is not already there
	crypto: sun8i-ce - move fallback ahash_request to the end of the struct
	kunit: Fix wrong parameter to kunit_deactivate_static_stub()
	crypto: api - Redo lookup on EEXIST
	ACPICA: exserial: don't forget to handle FFixedHW opregions for reading
	ASoC: tas2764: Enable main IRQs
	ASoC: mediatek: mt8195: Set ETDM1/2 IN/OUT to COMP_DUMMY()
	EDAC/skx_common: Fix general protection fault
	EDAC/{skx_common,i10nm}: Fix the loss of saved RRL for HBM pseudo channel 0
	spi: tegra210-quad: Fix X1_X2_X4 encoding and support x4 transfers
	spi: tegra210-quad: remove redundant error handling code
	spi: tegra210-quad: modify chip select (CS) deactivation
	power: reset: at91-reset: Optimize at91_reset()
	PM: EM: Fix potential division-by-zero error in em_compute_costs()
	ASoC: SOF: ipc4-pcm: Adjust pipeline_list->pipelines allocation type
	ASoC: SOF: amd: add missing acp descriptor field
	PM: wakeup: Delete space in the end of string shown by pm_show_wakelocks()
	ACPI: resource: fix a typo for MECHREVO in irq1_edge_low_force_override[]
	x86/mtrr: Check if fixed-range MTRRs exist in mtrr_save_fixed_ranges()
	PM: sleep: Print PM debug messages during hibernation
	thermal/drivers/mediatek/lvts: Fix debugfs unregister on failure
	ACPI: OSI: Stop advertising support for "3.0 _SCP Extensions"
	spi: sh-msiof: Fix maximum DMA transfer size
	ASoC: apple: mca: Constrain channels according to TDM mask
	ALSA: core: fix up bus match const issues.
	drm/vmwgfx: Add seqno waiter for sync_files
	drm/vmwgfx: Add error path for xa_store in vmw_bo_add_detached_resource
	drm/vmwgfx: Fix dumb buffer leak
	drm/xe/d3cold: Set power state to D3Cold during s2idle/s3
	drm/vc4: tests: Use return instead of assert
	drm/amd/pp: Fix potential NULL pointer dereference in atomctrl_initialize_mc_reg_table
	media: rkvdec: Fix frame size enumeration
	arm64/fpsimd: Avoid RES0 bits in the SME trap handler
	arm64/fpsimd: Discard stale CPU state when handling SME traps
	arm64/fpsimd: Don't corrupt FPMR when streaming mode changes
	arm64/fpsimd: Avoid clobbering kernel FPSIMD state with SMSTOP
	arm64/fpsimd: Reset FPMR upon exec()
	arm64/fpsimd: Fix merging of FPSIMD state during signal return
	drm/panthor: Fix GPU_COHERENCY_ACE[_LITE] definitions
	drm/panthor: Update panthor_mmu::irq::mask when needed
	perf: arm-ni: Unregister PMUs on probe failure
	perf: arm-ni: Fix missing platform_set_drvdata()
	drm/panel: samsung-sofef00: Drop s6e3fc2x01 support
	drm/bridge: lt9611uxc: Fix an error handling path in lt9611uxc_probe()
	fs/ntfs3: handle hdr_first_de() return value
	fs/ntfs3: Add missing direct_IO in ntfs_aops_cmpr
	kunit/usercopy: Disable u64 test on 32-bit SPARC
	watchdog: exar: Shorten identity name to fit correctly
	m68k: mac: Fix macintosh_config for Mac II
	firmware: psci: Fix refcount leak in psci_dt_init
	arm64: Support ARM64_VA_BITS=52 when setting ARCH_MMAP_RND_BITS_MAX
	arm64/fpsimd: Avoid warning when sve_to_fpsimd() is unused
	selftests/seccomp: fix syscall_restart test for arm compat
	drm/msm/dpu: enable SmartDMA on SM8150
	drm/msm/dpu: enable SmartDMA on SC8180X
	drm: rcar-du: Fix memory leak in rcar_du_vsps_init()
	drm/vkms: Adjust vkms_state->active_planes allocation type
	drm/tegra: rgb: Fix the unbound reference count
	firmware: SDEI: Allow sdei initialization without ACPI_APEI_GHES
	arm64/fpsimd: Do not discard modified SVE state
	overflow: Fix direct struct member initialization in _DEFINE_FLEX()
	scsi: qedf: Use designated initializer for struct qed_fcoe_cb_ops
	perf/amlogic: Replace smp_processor_id() with raw_smp_processor_id() in meson_ddr_pmu_create()
	selftests/seccomp: fix negative_ENOSYS tracer tests on arm32
	drm/msm/a6xx: Disable rgb565_predicator on Adreno 7c3
	drm/mediatek: mtk_drm_drv: Fix kobject put for mtk_mutex device ptr
	drm/mediatek: Fix kobject put for component sub-drivers
	drm/mediatek: mtk_drm_drv: Unbind secondary mmsys components on err
	media: verisilicon: Free post processor buffers on error
	svcrdma: Reduce the number of rdma_rw contexts per-QP
	xen/x86: fix initial memory balloon target
	wifi: ath11k: fix node corruption in ar->arvifs list
	wifi: ath12k: Fix memory leak during vdev_id mismatch
	wifi: ath12k: Fix invalid memory access while forming 802.11 header
	IB/cm: use rwlock for MAD agent lock
	bpf: Check link_create.flags parameter for multi_kprobe
	selftests/bpf: Fix bpf_nf selftest failure
	bpf: fix ktls panic with sockmap
	bpf, sockmap: fix duplicated data transmission
	bpf, sockmap: Fix panic when calling skb_linearize
	f2fs: zone: fix to avoid inconsistence in between SIT and SSA
	wifi: ath12k: fix cleanup path after mhi init
	wifi: ath12k: Fix WMI tag for EHT rate in peer assoc
	wifi: ath12k: Fix buffer overflow in debugfs
	f2fs: clean up unnecessary indentation
	f2fs: prevent the current section from being selected as a victim during GC
	f2fs: fix to do sanity check on sbi->total_valid_block_count
	page_pool: Move pp_magic check into helper functions
	page_pool: Track DMA-mapped pages and unmap them when destroying the pool
	net: ncsi: Fix GCPS 64-bit member variables
	libbpf: Fix buffer overflow in bpf_object__init_prog
	net/mlx5: Avoid using xso.real_dev unnecessarily
	xfrm: Use xdo.dev instead of xdo.real_dev
	wifi: rtw88: sdio: map mgmt frames to queue TX_DESC_QSEL_MGMT
	wifi: rtw88: sdio: call rtw_sdio_indicate_tx_status unconditionally
	wifi: rtw88: do not ignore hardware read error during DPK
	wifi: ath12k: fix invalid access to memory
	wifi: ath12k: Add MSDU length validation for TKIP MIC error
	wifi: ath12k: Fix the QoS control field offset to build QoS header
	wifi: ath12k: fix node corruption in ar->arvifs list
	RDMA/hns: Include hnae3.h in hns_roce_hw_v2.h
	scsi: hisi_sas: Call I_T_nexus after soft reset for SATA disk
	libbpf: Fix event name too long error
	libbpf: Remove sample_period init in perf_buffer
	Use thread-safe function pointer in libbpf_print
	iommu: Protect against overflow in iommu_pgsize()
	bonding: assign random address if device address is same as bond
	f2fs: clean up w/ fscrypt_is_bounce_page()
	f2fs: fix to detect gcing page in f2fs_is_cp_guaranteed()
	scsi: smartpqi: Fix smp_processor_id() call trace for preemptible kernels
	libbpf: Use proper errno value in linker
	bpf: Allow XDP dev-bound programs to perform XDP_REDIRECT into maps
	netfilter: bridge: Move specific fragmented packet to slow_path instead of dropping it
	netfilter: nft_quota: match correctly when the quota just depleted
	netfilter: nft_set_pipapo: prevent overflow in lookup table allocation
	RDMA/mlx5: Fix error flow upon firmware failure for RQ destruction
	bpf: Fix uninitialized values in BPF_{CORE,PROBE}_READ
	tracing: Move histogram trigger variables from stack to per CPU structure
	clk: qcom: camcc-sm6350: Add *_wait_val values for GDSCs
	clk: qcom: dispcc-sm6350: Add *_wait_val values for GDSCs
	clk: qcom: gcc-sm6350: Add *_wait_val values for GDSCs
	clk: qcom: gpucc-sm6350: Add *_wait_val values for GDSCs
	bpftool: Fix regression of "bpftool cgroup tree" EINVAL on older kernels
	clk: bcm: rpi: Add NULL check in raspberrypi_clk_register()
	wifi: iwlfiwi: mvm: Fix the rate reporting
	efi/libstub: Describe missing 'out' parameter in efi_load_initrd
	selftests/bpf: Fix caps for __xlated/jited_unpriv
	tracing: Rename event_trigger_alloc() to trigger_data_alloc()
	tracing: Fix error handling in event_trigger_parse()
	of: unittest: Unlock on error in unittest_data_add()
	ktls, sockmap: Fix missing uncharge operation
	libbpf: Use proper errno value in nlattr
	pinctrl: at91: Fix possible out-of-boundary access
	bpf: Fix WARN() in get_bpf_raw_tp_regs
	dt-bindings: soc: fsl,qman-fqd: Fix reserved-memory.yaml reference
	clk: qcom: gcc-msm8939: Fix mclk0 & mclk1 for 24 MHz
	s390/bpf: Store backchain even for leaf progs
	wifi: rtw89: pci: enlarge retry times of RX tag to 1000
	wifi: rtw88: fix the 'para' buffer size to avoid reading out of bounds
	wifi: rtw89: fix firmware scan delay unit for WiFi 6 chips
	iommu: remove duplicate selection of DMAR_TABLE
	wifi: ath12k: fix memory leak in ath12k_service_ready_ext_event
	hisi_acc_vfio_pci: fix XQE dma address error
	hisi_acc_vfio_pci: add eq and aeq interruption restore
	hisi_acc_vfio_pci: bugfix live migration function without VF device driver
	wifi: ath9k_htc: Abort software beacon handling if disabled
	scsi: ufs: mcq: Delete ufshcd_release_scsi_cmd() in ufshcd_mcq_abort()
	kernfs: Relax constraint in draining guard
	Bluetooth: ISO: Fix not using SID from adv report
	wifi: mt76: mt7996: Fix null-ptr-deref in mt7996_mmio_wed_init()
	wifi: mt76: mt7915: Fix null-ptr-deref in mt7915_mmio_wed_init()
	wifi: mt76: mt7925: prevent multiple scan commands
	wifi: mt76: mt7925: refine the sniffer commnad
	wifi: mt76: mt7925: ensure all MCU commands wait for response
	wifi: mt76: mt7996: set EHT max ampdu length capability
	wifi: mt76: mt7996: fix RX buffer size of MCU event
	bpf: Revert "bpf: remove unnecessary rcu_read_{lock,unlock}() in multi-uprobe attach logic"
	netfilter: xtables: support arpt_mark and ipv6 optstrip for iptables-nft only builds
	netfilter: nf_tables: nft_fib_ipv6: fix VRF ipv4/ipv6 result discrepancy
	vfio/type1: Fix error unwind in migration dirty bitmap allocation
	Bluetooth: MGMT: iterate over mesh commands in mgmt_mesh_foreach()
	Bluetooth: btintel: Check dsbr size from EFI variable
	bpf, sockmap: Avoid using sk_socket after free when sending
	netfilter: nf_tables: nft_fib: consistent l3mdev handling
	netfilter: nft_tunnel: fix geneve_opt dump
	RISC-V: KVM: lock the correct mp_state during reset
	net: usb: aqc111: fix error handling of usbnet read calls
	vsock/virtio: fix `rx_bytes` accounting for stream sockets
	RDMA/cma: Fix hang when cma_netevent_callback fails to queue_work
	net: lan966x: Fix 1-step timestamping over ipv4 or ipv6
	net: xilinx: axienet: Fix Tx skb circular buffer occupancy check in dmaengine xmit
	bpf: Avoid __bpf_prog_ret0_warn when jit fails
	net: phy: clear phydev->devlink when the link is deleted
	net: phy: fix up const issues in to_mdio_device() and to_phy_device()
	net: lan743x: rename lan743x_reset_phy to lan743x_hw_reset_phy
	net: lan743x: Fix PHY reset handling during initialization and WOL
	net: phy: mscc: Fix memory leak when using one step timestamping
	octeontx2-pf: QOS: Perform cache sync on send queue teardown
	octeontx2-pf: QOS: Refactor TC_HTB_LEAF_DEL_LAST callback
	calipso: Don't call calipso functions for AF_INET sk.
	net: openvswitch: Fix the dead loop of MPLS parse
	net: phy: mscc: Stop clearing the the UDPv4 checksum for L2 frames
	f2fs: use d_inode(dentry) cleanup dentry->d_inode
	f2fs: fix to correct check conditions in f2fs_cross_rename
	arm64: dts: qcom: x1e80100: Mark usb_2 as dma-coherent
	arm64: dts: qcom: sm8650: setup gpu thermal with higher temperatures
	arm64: dts: qcom: sm8650: add missing cpu-cfg interconnect path in the mdss node
	arm64: dts: qcom: x1e80100-romulus: Keep L12B and L15B always on
	arm64: dts: qcom: sdm845-starqltechn: remove wifi
	arm64: dts: qcom: sdm845-starqltechn: fix usb regulator mistake
	arm64: dts: qcom: sdm845-starqltechn: refactor node order
	arm64: dts: qcom: sdm845-starqltechn: remove excess reserved gpios
	arm64: dts: qcom: sm8350: Reenable crypto & cryptobam
	arm64: dts: qcom: sm8250: Fix CPU7 opp table
	arm64: dts: qcom: sc8280xp-x13s: Drop duplicate DMIC supplies
	arm64: dts: qcom: ipq9574: Fix USB vdd info
	arm64: dts: rockchip: Move SHMEM memory to reserved memory on rk3588
	ARM: dts: at91: usb_a9263: fix GPIO for Dataflash chip select
	ARM: dts: at91: at91sam9263: fix NAND chip selects
	arm64: dts: mediatek: mt8195: Reparent vdec1/2 and venc1 power domains
	arm64: dts: qcom: sdm660-xiaomi-lavender: Add missing SD card detect GPIO
	arm64: dts: mt8183: Add port node to mt8183.dtsi
	arm64: dts: imx8mm-beacon: Fix RTC capacitive load
	arm64: dts: imx8mn-beacon: Fix RTC capacitive load
	arm64: dts: imx8mp-beacon: Fix RTC capacitive load
	arm64: dts: imx8mm-beacon: Set SAI5 MCLK direction to output for HDMI audio
	arm64: dts: imx8mn-beacon: Set SAI5 MCLK direction to output for HDMI audio
	arm64: dts: mediatek: mt6357: Drop regulator-fixed compatibles
	arm64: dts: mt6359: Add missing 'compatible' property to regulators node
	arm64: dts: qcom: sdm660-lavender: Add missing USB phy supply
	arm64: dts: qcom: sda660-ifc6560: Fix dt-validate warning
	arm64: dts: rockchip: Add vcc-supply to SPI flash on rk3566-rock3c
	arm64: dts: rockchip: Update eMMC for NanoPi R5 series
	arm64: tegra: Drop remaining serial clock-names and reset-names
	arm64: tegra: Add uartd serial alias for Jetson TX1 module
	arm64: dts: ti: k3-j721e-common-proc-board: Enable OSPI1 on J721E
	soc: qcom: smp2p: Fix fallback to qcom,ipc parse
	Squashfs: check return result of sb_min_blocksize
	ocfs2: fix possible memory leak in ocfs2_finish_quota_recovery
	nilfs2: add pointer check for nilfs_direct_propagate()
	nilfs2: do not propagate ENOENT error from nilfs_btree_propagate()
	bus: fsl-mc: fix double-free on mc_dev
	dt-bindings: vendor-prefixes: Add Liontron name
	ARM: dts: qcom: apq8064: add missing clocks to the timer node
	ARM: dts: qcom: apq8064 merge hw splinlock into corresponding syscon device
	ARM: dts: qcom: apq8064: move replicator out of soc node
	arm64: defconfig: mediatek: enable PHY drivers
	arm64: dts: rockchip: disable unrouted USB controllers and PHY on RK3399 Puma with Haikou
	arm64: dts: qcom: qcm2290: fix (some) of QUP interconnects
	arm64: dts: renesas: white-hawk-ard-audio: Fix TPU0 groups
	arm64: dts: mt6359: Rename RTC node to match binding expectations
	ARM: aspeed: Don't select SRAM
	soc: aspeed: lpc: Fix impossible judgment condition
	soc: aspeed: Add NULL check in aspeed_lpc_enable_snoop()
	fbdev: core: fbcvt: avoid division by 0 in fb_cvt_hperiod()
	randstruct: gcc-plugin: Remove bogus void member
	randstruct: gcc-plugin: Fix attribute addition
	perf build: Warn when libdebuginfod devel files are not available
	perf ui browser hists: Set actions->thread before calling do_zoom_thread()
	dm: don't change md if dm_table_set_restrictions() fails
	dm: free table mempools if not used in __bind
	backlight: pm8941: Add NULL check in wled_configure()
	x86/irq: Ensure initial PIR loads are performed exactly once
	mtd: nand: ecc-mxic: Fix use of uninitialized variable ret
	hwmon: (asus-ec-sensors) check sensor index in read_string()
	perf symbol-minimal: Fix double free in filename__read_build_id
	dm: fix dm_blk_report_zones
	dm-flakey: error all IOs when num_features is absent
	dm-flakey: make corrupting read bios work
	perf trace: Fix leaks of 'struct thread' in set_filter_loop_pids()
	perf tests: Fix 'perf report' tests installation
	perf intel-pt: Fix PEBS-via-PT data_src
	perf scripts python: exported-sql-viewer.py: Fix pattern matching with Python 3
	remoteproc: qcom_wcnss_iris: Add missing put_device() on error in probe
	remoteproc: k3-r5: Drop check performed in k3_r5_rproc_{mbox_callback/kick}
	remoteproc: k3-dsp: Drop check performed in k3_dsp_rproc_{mbox_callback/kick}
	rpmsg: qcom_smd: Fix uninitialized return variable in __qcom_smd_send()
	mfd: exynos-lpass: Fix an error handling path in exynos_lpass_probe()
	mfd: exynos-lpass: Avoid calling exynos_lpass_disable() twice in exynos_lpass_remove()
	mfd: stmpe-spi: Correct the name used in MODULE_DEVICE_TABLE
	perf tests switch-tracking: Fix timestamp comparison
	mailbox: imx: Fix TXDB_V2 sending
	mailbox: mtk-cmdq: Refine GCE_GCTL_VALUE setting
	perf symbol: Fix use-after-free in filename__read_build_id
	perf record: Fix incorrect --user-regs comments
	perf trace: Always print return value for syscalls returning a pid
	nfs: clear SB_RDONLY before getting superblock
	nfs: ignore SB_RDONLY when remounting nfs
	perf trace: Set errpid to false for rseq and set_robust_list
	perf callchain: Always populate the addr_location map when adding IP
	cifs: Fix validation of SMB1 query reparse point response
	rust: alloc: add missing invariant in Vec::set_len()
	rtc: sh: assign correct interrupts with DT
	phy: rockchip: samsung-hdptx: Fix clock ratio setup
	phy: rockchip: samsung-hdptx: Do no set rk_hdptx_phy->rate in case of errors
	PCI: Print the actual delay time in pci_bridge_wait_for_secondary_bus()
	PCI: rcar-gen4: set ep BAR4 fixed size
	PCI: cadence: Fix runtime atomic count underflow
	PCI: apple: Use gpiod_set_value_cansleep in probe flow
	phy: qcom-qmp-usb: Fix an NULL vs IS_ERR() bug
	dmaengine: ti: Add NULL check in udma_probe()
	PCI/ACPI: Fix allocated memory release on error in pci_acpi_scan_root()
	PCI/DPC: Initialize aer_err_info before using it
	PCI/DPC: Log Error Source ID only when valid
	rtc: loongson: Add missing alarm notifications for ACPI RTC events
	PCI: endpoint: Retain fixed-size BAR size as well as aligned size
	usb: renesas_usbhs: Reorder clock handling and power management in probe
	serial: Fix potential null-ptr-deref in mlb_usio_probe()
	thunderbolt: Fix a logic error in wake on connect
	iio: filter: admv8818: fix band 4, state 15
	iio: filter: admv8818: fix integer overflow
	iio: filter: admv8818: fix range calculation
	iio: filter: admv8818: Support frequencies >= 2^32
	iio: adc: ad7124: Fix 3dB filter frequency reading
	usb: acpi: Prevent null pointer dereference in usb_acpi_add_usb4_devlink()
	MIPS: Loongson64: Add missing '#interrupt-cells' for loongson64c_ls7a
	coresight: Fixes device's owner field for registered using coresight_init_driver()
	coresight: catu: Introduce refcount and spinlock for enabling/disabling
	counter: interrupt-cnt: Protect enable/disable OPs with mutex
	fpga: fix potential null pointer deref in fpga_mgr_test_img_load_sgt()
	coresight: prevent deactivate active config while enabling the config
	vt: remove VT_RESIZE and VT_RESIZEX from vt_compat_ioctl()
	mei: vsc: Cast tx_buf to (__be32 *) when passed to cpu_to_be32_array()
	iio: adc: PAC1934: fix typo in documentation link
	iio: adc: mcp3911: fix device dependent mappings for conversion result registers
	USB: gadget: udc: fix const issue in gadget_match_driver()
	USB: typec: fix const issue in typec_match()
	loop: add file_start_write() and file_end_write()
	drm/xe: Make xe_gt_freq part of the Documentation
	Fix sock_exceed_buf_limit not being triggered in __sk_mem_raise_allocated
	page_pool: Fix use-after-free in page_pool_recycle_in_ring
	net: stmmac: platform: guarantee uniqueness of bus_id
	gve: Fix RX_BUFFERS_POSTED stat to report per-queue fill_cnt
	net: tipc: fix refcount warning in tipc_aead_encrypt
	driver: net: ethernet: mtk_star_emac: fix suspend/resume issue
	net/mlx4_en: Prevent potential integer overflow calculating Hz
	net: lan966x: Make sure to insert the vlan tags also in host mode
	spi: bcm63xx-spi: fix shared reset
	spi: bcm63xx-hsspi: fix shared reset
	Bluetooth: L2CAP: Fix not responding with L2CAP_CR_LE_ENCRYPTION
	ice: fix Tx scheduler error handling in XDP callback
	ice: create new Tx scheduler nodes for new queues only
	ice: fix rebuilding the Tx scheduler tree for large queue counts
	idpf: fix a race in txq wakeup
	idpf: avoid mailbox timeout delays during reset
	net: dsa: tag_brcm: legacy: fix pskb_may_pull length
	net: stmmac: make sure that ptp_rate is not 0 before configuring timestamping
	net: stmmac: make sure that ptp_rate is not 0 before configuring EST
	drm/i915/guc: Check if expecting reply before decrementing outstanding_submission_g2h
	drm/i915/psr: Fix using wrong mask in REG_FIELD_PREP
	drm/i915/guc: Handle race condition where wakeref count drops below 0
	net: fix udp gso skb_segment after pull from frag_list
	net: wwan: t7xx: Fix napi rx poll issue
	vmxnet3: correctly report gso type for UDP tunnels
	selftests: net: build net/lib dependency in all target
	PM: sleep: Fix power.is_suspended cleanup for direct-complete devices
	nvme: fix command limits status code
	gve: add missing NULL check for gve_alloc_pending_packet() in TX DQO
	drm/panel-simple: fix the warnings for the Evervision VGG644804
	netfilter: nf_set_pipapo_avx2: fix initial map fill
	netfilter: nf_nat: also check reverse tuple to obtain clashing entry
	net: ti: icssg-prueth: Fix swapped TX stats for MII interfaces.
	net: dsa: b53: do not enable RGMII delay on bcm63xx
	net: dsa: b53: allow RGMII for bcm63xx RGMII ports
	net: dsa: b53: do not touch DLL_IQQD on bcm53115
	wifi: cfg80211/mac80211: correctly parse S1G beacon optional elements
	net: wwan: mhi_wwan_mbim: use correct mux_id for multiplexing
	wireguard: device: enable threaded NAPI
	seg6: Fix validation of nexthop addresses
	riscv: misaligned: fix sleeping function called during misaligned access handling
	scsi: ufs: qcom: Prevent calling phy_exit() before phy_init()
	ASoC: codecs: hda: Fix RPM usage count underflow
	ASoC: Intel: avs: Fix deadlock when the failing IPC is SET_D0IX
	ASoC: Intel: avs: Verify content returned by parse_int_array()
	ASoC: ti: omap-hdmi: Re-add dai_link->platform to fix card init
	iov_iter: use iov_offset for length calculation in iov_iter_aligned_bvec
	path_overmount(): avoid false negatives
	fix propagation graph breakage by MOVE_MOUNT_SET_GROUP move_mount(2)
	do_change_type(): refuse to operate on unmounted/not ours mounts
	tools/power turbostat: Fix AMD package-energy reporting
	ALSA: hda/realtek: fix micmute LEDs on HP Laptops with ALC3315
	ALSA: hda/realtek: fix micmute LEDs on HP Laptops with ALC3247
	ALSA: hda/realtek: Add support for various HP Laptops using CS35L41 HDA
	ALSA: hda/realtek - Support mute led function for HP platform
	ALSA: hda/realtek - Add new HP ZBook laptop with micmute led fixup
	ALSA: hda/realtek: Add support for HP Agusta using CS35L41 HDA
	Input: synaptics-rmi - fix crash with unsupported versions of F34
	pmdomain: core: Introduce dev_pm_genpd_rpm_always_on()
	mmc: sdhci-of-dwcmshc: add PD workaround on RK3576
	arm64: dts: qcom: x1e80100: Apply consistent critical thermal shutdown
	arm64: dts: qcom: x1e80100: Add GPU cooling
	pinctrl: samsung: refactor drvdata suspend & resume callbacks
	pinctrl: samsung: add dedicated SoC eint suspend/resume callbacks
	pinctrl: samsung: add gs101 specific eint suspend/resume callbacks
	dt-bindings: pwm: adi,axi-pwmgen: Increase #pwm-cells to 3
	dt-bindings: pwm: Correct indentation and style in DTS example
	dt-bindings: pwm: adi,axi-pwmgen: Fix clocks
	serial: sh-sci: Move runtime PM enable to sci_probe_single()
	scsi: core: ufs: Fix a hang in the error handler
	Bluetooth: hci_core: fix list_for_each_entry_rcu usage
	Bluetooth: btintel_pcie: Fix driver not posting maximum rx buffers
	Bluetooth: btintel_pcie: Increase the tx and rx descriptor count
	Bluetooth: btintel_pcie: Reduce driver buffer posting to prevent race condition
	Bluetooth: MGMT: Fix UAF on mgmt_remove_adv_monitor_complete
	Bluetooth: MGMT: Remove unused mgmt_pending_find_data
	Bluetooth: MGMT: Protect mgmt_pending list with its own lock
	net: dsa: b53: fix untagged traffic sent via cpu tagged with VID 0
	ptp: remove ptp->n_vclocks check logic in ptp_vclock_in_use()
	ath10k: snoc: fix unbalanced IRQ enable in crash recovery
	wifi: ath11k: convert timeouts to secs_to_jiffies()
	wifi: ath11k: avoid burning CPU in ath11k_debugfs_fw_stats_request()
	wifi: ath11k: don't use static variables in ath11k_debugfs_fw_stats_process()
	wifi: ath11k: don't wait when there is no vdev started
	wifi: ath11k: move some firmware stats related functions outside of debugfs
	wifi: ath11k: validate ath11k_crypto_mode on top of ath11k_core_qmi_firmware_ready
	wifi: ath12k: refactor ath12k_hw_regs structure
	wifi: ath12k: fix GCC_GCC_PCIE_HOT_RST definition for WCN7850
	regulator: max20086: Fix refcount leak in max20086_parse_regulators_dt()
	spi: omap2-mcspi: Disable multi mode when CS should be kept asserted after message
	spi: omap2-mcspi: Disable multi-mode when the previous message kept CS asserted
	pinctrl: qcom: pinctrl-qcm2290: Add missing pins
	scsi: iscsi: Fix incorrect error path labels for flashnode operations
	net_sched: sch_sfq: fix a potential crash on gso_skb handling
	powerpc/powernv/memtrace: Fix out of bounds issue in memtrace mmap
	powerpc/vas: Return -EINVAL if the offset is non-zero in mmap()
	drm/meson: use unsigned long long / Hz for frequency types
	drm/meson: fix debug log statement when setting the HDMI clocks
	drm/meson: use vclk_freq instead of pixel_freq in debug print
	drm/meson: fix more rounding issues with 59.94Hz modes
	i40e: return false from i40e_reset_vf if reset is in progress
	i40e: retry VFLR handling if there is ongoing VF reset
	ACPI: CPPC: Fix NULL pointer dereference when nosmp is used
	net: Fix TOCTOU issue in sk_is_readable()
	macsec: MACsec SCI assignment for ES = 0
	net/mdiobus: Fix potential out-of-bounds read/write access
	net/mdiobus: Fix potential out-of-bounds clause 45 read/write access
	Bluetooth: Fix NULL pointer deference on eir_get_service_data
	Bluetooth: hci_sync: Fix broadcast/PA when using an existing instance
	Bluetooth: eir: Fix possible crashes on eir_create_adv_data
	Bluetooth: MGMT: Fix sparse errors
	net/mlx5: Ensure fw pages are always allocated on same NUMA
	net/mlx5: Fix ECVF vports unload on shutdown flow
	net/mlx5: Fix return value when searching for existing flow group
	net/mlx5: HWS, fix missing ip_version handling in definer
	net/mlx5e: Fix leak of Geneve TLV option object
	net_sched: prio: fix a race in prio_tune()
	net_sched: red: fix a race in __red_change()
	net_sched: tbf: fix a race in tbf_change()
	net_sched: ets: fix a race in ets_qdisc_change()
	net: drv: netdevsim: don't napi_complete() from netpoll
	btrfs: exit after state insertion failure at btrfs_convert_extent_bit()
	fs/filesystems: Fix potential unsigned integer underflow in fs_name()
	gfs2: pass through holder from the VFS for freeze/thaw
	btrfs: exit after state split error at set_extent_bit()
	nvmet-fcloop: access fcpreq only when holding reqlock
	perf: Ensure bpf_perf_link path is properly serialized
	block: use q->elevator with ->elevator_lock held in elv_iosched_show()
	io_uring: fix use-after-free of sq->thread in __io_uring_show_fdinfo()
	block: don't use submit_bio_noacct_nocheck in blk_zone_wplug_bio_work
	io_uring: consistently use rcu semantics with sqpoll thread
	bio: Fix bio_first_folio() for SPARSEMEM without VMEMMAP
	block: Fix bvec_set_folio() for very large folios
	objtool/rust: relax slice condition to cover more `noreturn` Rust functions
	tools/resolve_btfids: Fix build when cross compiling kernel with clang.
	Revert "wifi: mwifiex: Fix HT40 bandwidth issue."
	ALSA: usb-audio: Add implicit feedback quirk for RODE AI-1
	HID: usbhid: Eliminate recurrent out-of-bounds bug in usbhid_parse()
	posix-cpu-timers: fix race between handle_posix_cpu_timers() and posix_cpu_timer_del()
	nvmem: zynqmp_nvmem: unbreak driver after cleanup
	usb: usbtmc: Fix read_stb function and get_stb ioctl
	VMCI: fix race between vmci_host_setup_notify and vmci_ctx_unset_notify
	tty: serial: 8250_omap: fix TX with DMA for am33xx
	usb: misc: onboard_usb_dev: Fix usb5744 initialization sequence
	usb: cdnsp: Fix issue with detecting command completion event
	usb: cdnsp: Fix issue with detecting USB 3.2 speed
	usb: Flush altsetting 0 endpoints before reinitializating them after reset.
	usb: typec: tcpm/tcpci_maxim: Fix bounds check in process_rx()
	usb: typec: tcpm: move tcpm_queue_vdm_unlocked to asynchronous work
	9p: Add a migrate_folio method
	ring-buffer: Do not trigger WARN_ON() due to a commit_overrun
	ring-buffer: Fix buffer locking in ring_buffer_subbuf_order_set()
	ring-buffer: Move cpus_read_lock() outside of buffer->mutex
	xfs: don't assume perags are initialised when trimming AGs
	xen/arm: call uaccess_ttbr0_enable for dm_op hypercall
	x86/iopl: Cure TIF_IO_BITMAP inconsistencies
	x86/fred/signal: Prevent immediate repeat of single step trap on return from SIGTRAP handler
	calipso: unlock rcu before returning -EAFNOSUPPORT
	regulator: dt-bindings: mt6357: Drop fixed compatible requirement
	usb: misc: onboard_usb_dev: fix build warning for CONFIG_USB_ONBOARD_DEV_USB5744=n
	net: usb: aqc111: debug info before sanitation
	overflow: Introduce __DEFINE_FLEX for having no initializer
	gfs2: Don't clear sb->s_fs_info in gfs2_sys_fs_add
	drm/meson: Use 1000ULL when operating with mode->clock
	thermal/drivers/mediatek/lvts: Remove unused lvts_debugfs_exit
	Linux 6.12.34

Change-Id: I679f0f1ddcf9bf8a0b86089ccb7b78536f5bc441
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-07-09 08:59:06 +00:00
Greg Kroah-Hartman e5ead1ec40 Merge 48ca7139ab ("cifs: Fix validation of SMB1 query reparse point response") into android16-6.12-lts
Steps on the way to 6.12.34

Resolves merge conflicts in:
	kernel/sched/core.c
	net/netfilter/xt_mark.c

Change-Id: I6df5e27c2a5bfa8b077b1f2814ad98b2a3dc0877
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-07-04 07:05:22 +00:00
Greg Kroah-Hartman 580b0fa739 Merge 6.12.33 into android16-6.12-lts
GKI (arm64) relevant 8 out of 25 changes, affecting 9 files +103/-61
  db758487f3 tracing: Fix compilation warning on arm32 [1 file, +1/-1]
  bf49527089 f2fs: fix to avoid accessing uninitialized curseg [2 files, +15/-1]
  a6a55fe660 rtc: Make rtc_time64_to_tm() support dates before 1970 [1 file, +19/-5]
  6b482b16f3 rtc: Fix offset calculation for .start_secs < 0 [1 file, +1/-1]
  3c4fed940d PCI/ASPM: Disable L1 before disabling L1 PM Substates [1 file, +50/-42]
  0c60158ff1 block: fix adding folio to bio [1 file, +7/-4]
  23179d009c usb: quirks: Add NO_LPM quirk for SanDisk Extreme 55AE [1 file, +3/-0]
  e428b7e205 Bluetooth: hci_qca: move the SoC type check to the right place [1 file, +7/-7]

Changes in 6.12.33
	tracing: Fix compilation warning on arm32
	f2fs: fix to avoid accessing uninitialized curseg
	pinctrl: armada-37xx: use correct OUTPUT_VAL register for GPIOs > 31
	pinctrl: armada-37xx: set GPIO output value before setting direction
	acpi-cpufreq: Fix nominal_freq units to KHz in get_max_boost_ratio()
	Documentation: ACPI: Use all-string data node references
	rtc: Make rtc_time64_to_tm() support dates before 1970
	rtc: Fix offset calculation for .start_secs < 0
	accel/ivpu: Add initial Panther Lake support
	accel/ivpu: Update power island delays
	PCI/ASPM: Disable L1 before disabling L1 PM Substates
	block: fix adding folio to bio
	Revert "cpufreq: tegra186: Share policy per cluster"
	usb: quirks: Add NO_LPM quirk for SanDisk Extreme 55AE
	usb: storage: Ignore UAS driver for SanDisk 3.2 Gen2 storage device
	USB: serial: pl2303: add new chip PL2303GC-Q20 and PL2303GT-2AB
	usb: typec: ucsi: fix Clang -Wsign-conversion warning
	Bluetooth: hci_qca: move the SoC type check to the right place
	serial: jsm: fix NPE during jsm_uart_port_init
	usb: usbtmc: Fix timeout value in get_stb
	thunderbolt: Do not double dequeue a configuration request
	dt-bindings: usb: cypress,hx3: Add support for all variants
	dt-bindings: phy: imx8mq-usb: fix fsl,phy-tx-vboost-level-microvolt property
	Revert "drm/amd/display: more liberal vmin/vmax update for freesync"
	Linux 6.12.33

Change-Id: I7c7a2ac6d4c5733af81a449f838133d9da60cafe
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-07-03 10:48:20 +00:00
Greg Kroah-Hartman 69f799168c Merge 6.12.31 into android16-6.12-lts
GKI (arm64) relevant 137 out of 624 changes, affecting 192 files +1647/-1035
  a4f865ecdb nvmem: core: fix bit offsets of more than one byte [1 file, +17/-7]
  4327479e55 nvmem: core: verify cell's raw_len [1 file, +12/-0]
  410f8b72e0 nvmem: core: update raw_len if the bit reading is required [1 file, +3/-1]
  7aea1517fb scsi: ufs: Introduce quirk to extend PA_HIBERN8TIME for UFS devices [2 files, +35/-0]
  b730cb1096 virtio_ring: Fix data race by tagging event_triggered as racy for KCSAN [1 file, +1/-1]
  2998813177 dma/mapping.c: dev_dbg support for dma_addressing_limited [1 file, +10/-1]
  3eec42a17a dma-mapping: avoid potential unused data compilation warning [1 file, +8/-4]
  97edaa0ec6 cgroup: Fix compilation issue due to cgroup_mutex not being exported [1 file, +1/-1]
  f93675793b vhost_task: fix vhost_task_create() documentation [1 file, +1/-1]
  e22034cbee dma-mapping: Fix warning reported for missing prototype [1 file, +8/-8]
  4f5553a08f fs/buffer: split locking for pagecache lookups [1 file, +25/-16]
  e138fc2316 fs/buffer: introduce sleeping flavors for pagecache lookups [2 files, +17/-0]
  a49a4a87ce fs/buffer: use sleeping version of __find_get_block() [1 file, +9/-2]
  f1c5aa614b fs/jbd2: use sleeping version of __find_get_block() [1 file, +9/-6]
  9ece099e95 fs/ext4: use sleeping version of sb_find_get_block() [1 file, +2/-1]
  64f505b08e block: fix race between set_blocksize and read paths [4 files, +43/-1]
  218c838d03 io_uring: don't duplicate flushing in io_req_post_cqe [1 file, +8/-3]
  8014d3e56e bpf: fix possible endless loop in BPF map iteration [1 file, +1/-1]
  d40ca27602 fuse: Return EPERM rather than ENOSYS from link() [1 file, +2/-0]
  bab0bd1389 exfat: call bh_read in get_block only when necessary [1 file, +77/-82]
  01677e7ee1 io_uring/msg: initialise msg request opcode [1 file, +1/-0]
  e506751b7d arm64: Add support for HIP09 Spectre-BHB mitigation [2 files, +3/-0]
  4f427ca9ed tracing: Mark binary printing functions with __printf() attribute [4 files, +18/-21]
  15787ab82a mailbox: use error ret code of of_parse_phandle_with_args() [1 file, +4/-3]
  f48ee562c0 Bluetooth: Disable SCO support if READ_VOICE_SETTING is unsupported/broken [1 file, +3/-0]
  44b79041c4 dql: Fix dql->limit value when reset. [1 file, +1/-1]
  ac30595154 lockdep: Fix wait context check on softirq for PREEMPT_RT [1 file, +18/-0]
  e63b634806 PCI: dwc: ep: Ensure proper iteration over outbound map windows [1 file, +1/-1]
  37ac2434aa ext4: on a remount, only log the ro or r/w state when it has changed [1 file, +4/-3]
  1d1e1efad1 libnvdimm/labels: Fix divide error in nd_label_data_init() [1 file, +2/-1]
  123bcd8f42 pidfs: improve multi-threaded exec and premature thread-group leader exit polling [3 files, +9/-9]
  8f82cf305e cgroup/rstat: avoid disabling irqs for O(num_cpu) [1 file, +5/-7]
  a5a507fa5f blk-cgroup: improve policy registration error handling [1 file, +12/-10]
  94c3cbc69a ext4: reorder capability check last [1 file, +2/-2]
  e658f2d94a bpf: Return prog btf_id without capable check [1 file, +2/-2]
  e2520cc19b PCI: dwc: Use resource start as ioremap() input in dw_pcie_pme_turn_off() [1 file, +1/-1]
  50452704ec jbd2: do not try to recover wiped journal [1 file, +6/-5]
  dab35f4921 tcp: reorganize tcp_in_ack_event() and tcp_count_delivered() [1 file, +32/-24]
  555c0b713c bpf: Allow pre-ordering for bpf cgroup progs [5 files, +30/-9]
  572ed3fb99 kconfig: do not clear SYMBOL_VALID when reading include/config/auto.conf [1 file, +12/-7]
  174dedce64 dm: restrict dm device size to 2^63-512 bytes [1 file, +4/-0]
  2f5f326214 ext4: reject the 'data_err=abort' option in nojournal mode [1 file, +12/-0]
  d0dc233fe2 posix-timers: Add cond_resched() to posix_timer_add() search loop [1 file, +1/-0]
  ae22452d15 posix-timers: Ensure that timer initialization is fully visible [1 file, +14/-7]
  3fb9ee05ec timer_list: Don't use %pK through printk() [1 file, +2/-2]
  21153e0974 netfilter: conntrack: Bound nf_conntrack sysctl writes [1 file, +9/-3]
  236a87e9d2 PNP: Expand length of fixup id string [1 file, +1/-1]
  6215143ad3 arm64/mm: Check pmd_table() in pmd_trans_huge() [1 file, +12/-12]
  8ad58a7eba arm64/mm: Check PUD_TYPE_TABLE in pud_bad() [1 file, +2/-1]
  28306c58da mmc: sdhci: Disable SD card clock before changing parameters [1 file, +7/-2]
  3a75fe58a1 usb: xhci: Don't change the status of stalled TDs on failed Stop EP [1 file, +11/-1]
  101a3b9920 printk: Check CON_SUSPEND when unblanking a console [1 file, +12/-2]
  faba68a86a wifi: cfg80211: allow IR in 20 MHz configurations [5 files, +46/-25]
  c1502fc84d ipv6: save dontfrag in cork [2 files, +6/-4]
  75ae2a3553 badblocks: Fix a nonsense WARN_ON() which checks whether a u64 variable < 0 [1 file, +3/-2]
  7caad075ac crypto: lzo - Fix compression buffer overrun [6 files, +106/-28]
  73d01bcbf2 tcp: bring back NUMA dispersion in inet_ehash_locks_alloc() [1 file, +26/-11]
  1c17190880 usb: xhci: set page size to the xHCI-supported size [2 files, +22/-20]
  93f581d763 drm/gem: Test for imported GEM buffers with helper [2 files, +16/-2]
  c4525b513d net: phylink: use pl->link_interface in phylink_expects_phy() [1 file, +1/-1]
  f29c876d72 perf/core: Clean up perf_try_init_event() [1 file, +38/-27]
  af73c8fd73 ublk: enforce ublks_max only for unprivileged devices [1 file, +27/-15]
  592ba27580 perf/hw_breakpoint: Return EOPNOTSUPP for unsupported breakpoint type [1 file, +3/-2]
  3de322a98b scsi: logging: Fix scsi_logging_level bounds [1 file, +3/-1]
  f33b310eac ipv4: fib: Move fib_valid_key_len() to rtm_to_fib_config(). [2 files, +16/-24]
  564f03a797 block: mark bounce buffering as incompatible with integrity [2 files, +5/-2]
  82209faa87 ublk: complete command synchronously on error [1 file, +6/-5]
  b98aad5e5e media: uvcvideo: Add sanity check to uvc_ioctl_xu_ctrl_map [1 file, +6/-0]
  2d6231d5ce media: uvcvideo: Handle uvc menu translation inside uvc_get_le_value [1 file, +32/-45]
  e359d62886 perf: arm_pmuv3: Call kvm_vcpu_pmu_resync_el0() before enabling counters [1 file, +2/-2]
  673dde8d3c bpf: Search and add kfuncs in struct_ops prologue and epilogue [1 file, +24/-1]
  083383aba0 cpuidle: menu: Avoid discarding useful information [1 file, +12/-1]
  20a53c3689 loop: check in LO_FLAGS_DIRECT_IO in loop_default_blocksize [1 file, +1/-1]
  b55a97d1bd dm: fix unconditional IO throttle caused by REQ_PREFLUSH [1 file, +6/-2]
  9f27b38771 crypto: ahash - Set default reqsize from ahash_alg [2 files, +7/-0]
  897c98fb32 crypto: skcipher - Zap type in crypto_alloc_sync_skcipher [1 file, +1/-0]
  4d9fa2ebc0 net: ipv6: Init tunnel link-netns before registering dev [4 files, +9/-7]
  53f42776e4 genirq/msi: Store the IOMMU IOVA directly in msi_desc instead of iommu_cookie [2 files, +25/-36]
  2b129e89b8 bpf: don't do clean_live_states when state->loop_entry->branches > 0 [1 file, +4/-0]
  46ba5757a7 bpf: copy_verifier_state() should copy 'loop_entry' field [1 file, +3/-0]
  82b54455b6 PCI: Fix old_size lower bound in calculate_iosize() too [1 file, +2/-4]
  dc5f5c9d2b hrtimers: Replace hrtimer_clock_to_base_table with switch-case [1 file, +12/-17]
  000dd6e344 ASoC: ops: Enforce platform maximum on initial value [1 file, +28/-1]
  c4260bf83b ASoC: soc-dai: check return value at snd_soc_dai_set_tdm_slot() [1 file, +5/-3]
  5b1b4cb46d pinctrl: devicetree: do not goto err when probing hogs in pinctrl_dt_to_map [1 file, +8/-2]
  69689d1138 media: v4l: Memset argument to 0 before calling get_mbus_config pad op [2 files, +5/-1]
  e6e31b0182 sched: Reduce the default slice to avoid tasks getting an extra tick [1 file, +3/-3]
  ef31dc41cf phy: core: don't require set_mode() callback for phy_get_mode() to work [1 file, +4/-3]
  06daedb443 xfrm: prevent high SEQ input in non-ESN mode [1 file, +12/-0]
  9f2911868a ip: fib_rules: Fetch net from fib_rule in fib[46]_rule_configure(). [2 files, +4/-4]
  7fea5a9140 r8152: add vendor/device ID pair for Dell Alienware AW1022z [2 files, +2/-0]
  16ddd67bb5 pstore: Change kmsg_bytes storage size to u32 [3 files, +9/-8]
  73733c2fdb ext4: don't write back data before punch hole in nojournal mode [1 file, +5/-13]
  1d15319323 f2fs: introduce f2fs_base_attr for global sysfs entries [1 file, +52/-22]
  ded26f9e4c ipv4: ip_gre: Fix set but not used warning in ipgre_err() if IPv4-only [1 file, +10/-6]
  76e56dbe50 net: flush_backlog() small changes [1 file, +8/-4]
  58cdd1ee65 bridge: mdb: Allow replace of a host-joined group [2 files, +2/-2]
  fcabb69674 rcu: handle unstable rdp in rcu_read_unlock_strict() [2 files, +11/-2]
  d402437cde rcu: fix header guard for rcu_all_qs() [1 file, +1/-1]
  887e39ac47 perf: Avoid the read if the count is already updated [3 files, +24/-18]
  c80b2d159c bpf: Use kallsyms to find the function name of a struct_ops's stub function [1 file, +44/-54]
  46f1c2b508 firmware: arm_scmi: Relax duplicate name constraint across protocol ids [1 file, +6/-13]
  1351052877 drm/atomic: clarify the rules around drm_atomic_state->allow_modeset [1 file, +21/-2]
  9fddd1f154 drm: Add valid clones check [1 file, +28/-0]
  ff214b079d nvme-pci: add quirks for device 126f:1001 [1 file, +3/-0]
  6d196cae4b nvme-pci: add quirks for WDC Blue SN550 15b7:5009 [1 file, +3/-0]
  6a09b6bad0 ALSA: usb-audio: Fix duplicated name in MIDI substream names [1 file, +12/-4]
  ad3e83a6c8 io_uring/fdinfo: annotate racy sq/cq head/tail reads [1 file, +2/-2]
  7f7c8c03fe btrfs: correct the order of prelim_ref arguments in btrfs__prelim_ref [1 file, +1/-1]
  8cafd7266f __legitimize_mnt(): check for MNT_SYNC_UMOUNT should be under mount_lock [1 file, +1/-5]
  28756f22de espintcp: fix skb leaks [3 files, +9/-3]
  9cbca30102 espintcp: remove encap socket caching to avoid reference leak [4 files, +8/-94]
  b1a687eb15 xfrm: Fix UDP GRO handling for some corner cases [2 files, +20/-16]
  447c8f0c06 kernel/fork: only call untrack_pfn_clear() on VMAs duplicated for fork() [1 file, +5/-4]
  252f78a931 xfrm: Sanitize marks before insert [2 files, +6/-0]
  7207effe47 driver core: Split devres APIs to device/devres.h [2 files, +125/-118]
  1e8b7e96f7 Bluetooth: L2CAP: Fix not checking l2cap_chan security level [1 file, +8/-7]
  cd7f022296 loop: don't require ->write_iter for writable files in loop_configure [1 file, +0/-3]
  873ebaf3c1 io_uring: fix overflow resched cqe reordering [1 file, +1/-0]
  689a205cd9 net/tipc: fix slab-use-after-free Read in tipc_aead_encrypt_done [1 file, +5/-0]
  adb05149a9 can: slcan: allow reception of short error messages [1 file, +20/-6]
  cc55dd28c2 can: bcm: add locking for bcm_op runtime updates [1 file, +45/-21]
  63567ecd99 can: bcm: add missing rcu read protection for procfs content [1 file, +9/-4]
  bf85e49aaf ALSA: pcm: Fix race of buffer access at PCM OSS layer [3 files, +14/-2]
  e78908caf1 pmdomain: core: Fix error checking in genpd_dev_pm_attach_by_id() [1 file, +1/-1]
  dc9bdfb9b0 drm/edid: fixed the bug that hdr metadata was not reset [1 file, +1/-0]
  cb9a1019a6 Input: xpad - add more controllers [1 file, +3/-0]
  9b8263cae6 highmem: add folio_test_partial_kmap() [2 files, +12/-5]
  314bf771cb memcg: always call cond_resched() after fn() [1 file, +2/-4]
  9da33ce114 mm/page_alloc.c: avoid infinite retries caused by cpuset race [1 file, +8/-0]
  9f9517f156 mm: mmap: map MAP_STACK to VM_NOHUGEPAGE only if THP is enabled [1 file, +2/-0]
  94efb0d656 mm: vmalloc: actually use the in-place vrealloc region [1 file, +1/-0]
  483ac74183 mm: vmalloc: only zero-init on vrealloc shrink [1 file, +7/-5]
  1d45e0170c spi: use container_of_cont() for to_spi_device() [1 file, +1/-4]
  d28b0305f7 err.h: move IOMEM_ERR_PTR() to err.h [2 files, +3/-2]
  80eb73778d bpf: abort verification if env->cur_state->loop_entry != NULL [1 file, +4/-2]
  85fb1edd05 drm/gem: Internally test import_attach for imported objects [1 file, +1/-2]

Changes in 6.12.31
	drm/amd/display: Configure DTBCLK_P with OPTC only for dcn401
	drm/amd/display: Do not enable replay when vtotal update is pending.
	drm/amd/display: Correct timing_adjust_pending flag setting.
	drm/amd/display: Defer BW-optimization-blocked DRR adjustments
	i2c: designware: Use temporary variable for struct device
	i2c: designware: Fix an error handling path in i2c_dw_pci_probe()
	phy: renesas: rcar-gen3-usb2: Move IRQ request in probe
	phy: renesas: rcar-gen3-usb2: Lock around hardware registers and driver data
	phy: renesas: rcar-gen3-usb2: Assert PLL reset on PHY power off
	cpufreq: Add SM8650 to cpufreq-dt-platdev blocklist
	nvmem: rockchip-otp: Move read-offset into variant-data
	nvmem: rockchip-otp: add rk3576 variant data
	nvmem: core: fix bit offsets of more than one byte
	nvmem: core: verify cell's raw_len
	nvmem: core: update raw_len if the bit reading is required
	nvmem: qfprom: switch to 4-byte aligned reads
	scsi: target: iscsi: Fix timeout on deleted connection
	scsi: ufs: Introduce quirk to extend PA_HIBERN8TIME for UFS devices
	virtio_ring: Fix data race by tagging event_triggered as racy for KCSAN
	dma/mapping.c: dev_dbg support for dma_addressing_limited
	intel_th: avoid using deprecated page->mapping, index fields
	mei: vsc: Use struct vsc_tp_packet as vsc-tp tx_buf and rx_buf type
	dma-mapping: avoid potential unused data compilation warning
	cgroup: Fix compilation issue due to cgroup_mutex not being exported
	vhost_task: fix vhost_task_create() documentation
	vhost-scsi: protect vq->log_used with vq->mutex
	scsi: mpi3mr: Add level check to control event logging
	net: enetc: refactor bulk flipping of RX buffers to separate function
	dma-mapping: Fix warning reported for missing prototype
	ima: process_measurement() needlessly takes inode_lock() on MAY_READ
	fs/buffer: split locking for pagecache lookups
	fs/buffer: introduce sleeping flavors for pagecache lookups
	fs/buffer: use sleeping version of __find_get_block()
	fs/ocfs2: use sleeping version of __find_get_block()
	fs/jbd2: use sleeping version of __find_get_block()
	fs/ext4: use sleeping version of sb_find_get_block()
	drm/amd/display: Enable urgent latency adjustment on DCN35
	drm/amdgpu: Allow P2P access through XGMI
	selftests/bpf: Mitigate sockmap_ktls disconnect_after_delete failure
	block: fix race between set_blocksize and read paths
	io_uring: don't duplicate flushing in io_req_post_cqe
	bpf: fix possible endless loop in BPF map iteration
	samples/bpf: Fix compilation failure for samples/bpf on LoongArch Fedora
	kconfig: merge_config: use an empty file as initfile
	x86/fred: Fix system hang during S4 resume with FRED enabled
	s390/vfio-ap: Fix no AP queue sharing allowed message written to kernel log
	cifs: Add fallback for SMB2 CREATE without FILE_READ_ATTRIBUTES
	cifs: Fix querying and creating MF symlinks over SMB1
	cifs: Fix negotiate retry functionality
	smb: client: Store original IO parameters and prevent zero IO sizes
	fuse: Return EPERM rather than ENOSYS from link()
	exfat: call bh_read in get_block only when necessary
	io_uring/msg: initialise msg request opcode
	NFSv4: Check for delegation validity in nfs_start_delegation_return_locked()
	NFS: Don't allow waiting for exiting tasks
	SUNRPC: Don't allow waiting for exiting tasks
	arm64: Add support for HIP09 Spectre-BHB mitigation
	iommufd: Extend IOMMU_GET_HW_INFO to report PASID capability
	tracing: Mark binary printing functions with __printf() attribute
	ACPI: PNP: Add Intel OC Watchdog IDs to non-PNP device list
	tpm: Convert warn to dbg in tpm2_start_auth_session()
	mailbox: pcc: Use acpi_os_ioremap() instead of ioremap()
	mailbox: use error ret code of of_parse_phandle_with_args()
	riscv: Allow NOMMU kernels to access all of RAM
	fbdev: fsl-diu-fb: add missing device_remove_file()
	fbcon: Use correct erase colour for clearing in fbcon
	fbdev: core: tileblit: Implement missing margin clearing for tileblit
	cifs: Set default Netbios RFC1001 server name to hostname in UNC
	cifs: add validation check for the fields in smb_aces
	cifs: Fix establishing NetBIOS session for SMB2+ connection
	NFSv4: Treat ENETUNREACH errors as fatal for state recovery
	SUNRPC: rpc_clnt_set_transport() must not change the autobind setting
	SUNRPC: rpcbind should never reset the port to the value '0'
	spi-rockchip: Fix register out of bounds access
	ASoC: codecs: wsa884x: Correct VI sense channel mask
	ASoC: codecs: wsa883x: Correct VI sense channel mask
	mctp: Fix incorrect tx flow invalidation condition in mctp-i2c
	net: tn40xx: add pci-id of the aqr105-based Tehuti TN4010 cards
	net: tn40xx: create swnode for mdio and aqr105 phy and add to mdiobus
	thermal/drivers/mediatek/lvts: Start sensor interrupts disabled
	thermal/drivers/qoriq: Power down TMU on system suspend
	Bluetooth: btmtksdio: Prevent enabling interrupts after IRQ handler removal
	Bluetooth: Disable SCO support if READ_VOICE_SETTING is unsupported/broken
	dql: Fix dql->limit value when reset.
	lockdep: Fix wait context check on softirq for PREEMPT_RT
	objtool: Properly disable uaccess validation
	PCI: dwc: ep: Ensure proper iteration over outbound map windows
	r8169: disable RTL8126 ZRX-DC timeout
	tools/build: Don't pass test log files to linker
	pNFS/flexfiles: Report ENETDOWN as a connection error
	drm/amdgpu/discovery: check ip_discovery fw file available
	drm/amdkfd: set precise mem ops caps to disabled for gfx 11 and 12
	PCI: vmd: Disable MSI remapping bypass under Xen
	xen/pci: Do not register devices with segments >= 0x10000
	ext4: on a remount, only log the ro or r/w state when it has changed
	libnvdimm/labels: Fix divide error in nd_label_data_init()
	pidfs: improve multi-threaded exec and premature thread-group leader exit polling
	staging: vchiq_arm: Create keep-alive thread during probe
	mmc: host: Wait for Vdd to settle on card power off
	drm/amdgpu: Skip pcie_replay_count sysfs creation for VF
	cgroup/rstat: avoid disabling irqs for O(num_cpu)
	wifi: mt76: only mark tx-status-failed frames as ACKed on mt76x0/2
	wifi: mt76: mt7996: fix SER reset trigger on WED reset
	wifi: mt76: mt7996: revise TXS size
	wifi: mt76: mt7925: load the appropriate CLC data based on hardware type
	wifi: mt76: mt7925: fix fails to enter low power mode in suspend state
	x86/headers: Replace __ASSEMBLY__ with __ASSEMBLER__ in UAPI headers
	x86/stackprotector/64: Only export __ref_stack_chk_guard on CONFIG_SMP
	x86/smpboot: Fix INIT delay assignment for extended Intel Families
	x86/microcode: Update the Intel processor flag scan check
	x86/mm: Check return value from memblock_phys_alloc_range()
	i2c: qup: Vote for interconnect bandwidth to DRAM
	i2c: pxa: fix call balance of i2c->clk handling routines
	btrfs: make btrfs_discard_workfn() block_group ref explicit
	btrfs: avoid linker error in btrfs_find_create_tree_block()
	btrfs: run btrfs_error_commit_super() early
	btrfs: fix non-empty delayed iputs list on unmount due to async workers
	btrfs: get zone unusable bytes while holding lock at btrfs_reclaim_bgs_work()
	btrfs: send: return -ENAMETOOLONG when attempting a path that is too long
	blk-cgroup: improve policy registration error handling
	drm/amdgpu: release xcp_mgr on exit
	drm/amd/display: Guard against setting dispclk low for dcn31x
	drm/amdgpu: adjust drm_firmware_drivers_only() handling
	i3c: master: svc: Fix missing STOP for master request
	s390/tlb: Use mm_has_pgste() instead of mm_alloc_pgste()
	dlm: make tcp still work in multi-link env
	clocksource/drivers/timer-riscv: Stop stimecmp when cpu hotplug
	um: Store full CSGSFS and SS register from mcontext
	um: Update min_low_pfn to match changes in uml_reserved
	wifi: mwifiex: Fix HT40 bandwidth issue.
	bnxt_en: Query FW parameters when the CAPS_CHANGE bit is set
	riscv: Call secondary mmu notifier when flushing the tlb
	ext4: reorder capability check last
	hypfs_create_cpu_files(): add missing check for hypfs_mkdir() failure
	scsi: st: Tighten the page format heuristics with MODE SELECT
	scsi: st: ERASE does not change tape location
	vfio/pci: Handle INTx IRQ_NOTCONNECTED
	bpf: Return prog btf_id without capable check
	PCI: dwc: Use resource start as ioremap() input in dw_pcie_pme_turn_off()
	jbd2: do not try to recover wiped journal
	tcp: reorganize tcp_in_ack_event() and tcp_count_delivered()
	rtc: rv3032: fix EERD location
	objtool: Fix error handling inconsistencies in check()
	thunderbolt: Do not add non-active NVM if NVM upgrade is disabled for retimer
	erofs: initialize decompression early
	spi: spi-mux: Fix coverity issue, unchecked return value
	ASoC: pcm6240: Drop bogus code handling IRQ as GPIO
	ASoC: mediatek: mt6359: Add stub for mt6359_accdet_enable_jack_detect
	bpf: Allow pre-ordering for bpf cgroup progs
	kbuild: fix argument parsing in scripts/config
	kconfig: do not clear SYMBOL_VALID when reading include/config/auto.conf
	crypto: octeontx2 - suppress auth failure screaming due to negative tests
	dm: restrict dm device size to 2^63-512 bytes
	net/smc: use the correct ndev to find pnetid by pnetid table
	xen: Add support for XenServer 6.1 platform device
	pinctrl-tegra: Restore SFSEL bit when freeing pins
	mfd: tps65219: Remove TPS65219_REG_TI_DEV_ID check
	drm/amdgpu/gfx12: don't read registers in mqd init
	drm/amdgpu/gfx11: don't read registers in mqd init
	drm/amdgpu: Update SRIOV video codec caps
	ASoC: sun4i-codec: support hp-det-gpios property
	clk: qcom: lpassaudiocc-sc7280: Add support for LPASS resets for QCM6490
	ext4: reject the 'data_err=abort' option in nojournal mode
	ext4: do not convert the unwritten extents if data writeback fails
	RDMA/uverbs: Propagate errors from rdma_lookup_get_uobject()
	posix-timers: Add cond_resched() to posix_timer_add() search loop
	posix-timers: Ensure that timer initialization is fully visible
	net: stmmac: dwmac-rk: Validate GRF and peripheral GRF during probe
	net: hsr: Fix PRP duplicate detection
	timer_list: Don't use %pK through printk()
	wifi: rtw89: set force HE TB mode when connecting to 11ax AP
	netfilter: conntrack: Bound nf_conntrack sysctl writes
	PNP: Expand length of fixup id string
	phy: rockchip: usbdp: Only verify link rates/lanes/voltage when the corresponding set flags are set
	arm64/mm: Check pmd_table() in pmd_trans_huge()
	arm64/mm: Check PUD_TYPE_TABLE in pud_bad()
	mmc: dw_mmc: add exynos7870 DW MMC support
	mmc: sdhci: Disable SD card clock before changing parameters
	usb: xhci: Don't change the status of stalled TDs on failed Stop EP
	wifi: iwlwifi: mvm: fix setting the TK when associated
	hwmon: (dell-smm) Increment the number of fans
	iommu: Keep dev->iommu state consistent
	printk: Check CON_SUSPEND when unblanking a console
	wifi: iwlwifi: don't warn when if there is a FW error
	wifi: iwlwifi: w/a FW SMPS mode selection
	wifi: iwlwifi: fix debug actions order
	wifi: iwlwifi: mark Br device not integrated
	wifi: iwlwifi: fix the ECKV UEFI variable name
	wifi: mac80211: fix warning on disconnect during failed ML reconf
	wifi: mac80211_hwsim: Fix MLD address translation
	wifi: cfg80211: allow IR in 20 MHz configurations
	ipv6: save dontfrag in cork
	drm/amd/display: remove minimum Dispclk and apply oem panel timing.
	drm/amd/display: calculate the remain segments for all pipes
	drm/amd/display: not abort link train when bw is low
	drm/amd/display: Fix incorrect DPCD configs while Replay/PSR switch
	gfs2: Check for empty queue in run_queue
	auxdisplay: charlcd: Partially revert "Move hwidth and bwidth to struct hd44780_common"
	ASoC: qcom: sm8250: explicitly set format in sm8250_be_hw_params_fixup()
	badblocks: Fix a nonsense WARN_ON() which checks whether a u64 variable < 0
	coresight-etb10: change etb_drvdata spinlock's type to raw_spinlock_t
	iommu/amd/pgtbl_v2: Improve error handling
	cpufreq: tegra186: Share policy per cluster
	watchdog: aspeed: Update bootstatus handling
	PCI: endpoint: pci-epf-test: Fix double free that causes kernel to oops
	misc: pci_endpoint_test: Give disabled BARs a distinct error code
	crypto: lzo - Fix compression buffer overrun
	crypto: mxs-dcp - Only set OTP_KEY bit for OTP key
	drm/amdkfd: Set per-process flags only once for gfx9/10/11/12
	drm/amdkfd: Set per-process flags only once cik/vi
	drm/amdgpu: Fix missing drain retry fault the last entry
	arm64: tegra: p2597: Fix gpio for vdd-1v8-dis regulator
	arm64: tegra: Resize aperture for the IGX PCIe C5 slot
	powerpc/prom_init: Fixup missing #size-cells on PowerBook6,7
	ALSA: seq: Improve data consistency at polling
	tcp: bring back NUMA dispersion in inet_ehash_locks_alloc()
	rtc: ds1307: stop disabling alarms on probe
	ieee802154: ca8210: Use proper setters and getters for bitwise types
	drm/xe: Nuke VM's mapping upon close
	drm/xe: Retry BO allocation
	soc: samsung: include linux/array_size.h where needed
	ARM: tegra: Switch DSI-B clock parent to PLLD on Tegra114
	media: c8sectpfe: Call of_node_put(i2c_bus) only once in c8sectpfe_probe()
	usb: xhci: set page size to the xHCI-supported size
	dm cache: prevent BUG_ON by blocking retries on failed device resumes
	soc: mediatek: mtk-mutex: Add DPI1 SOF/EOF to MT8188 mutex tables
	orangefs: Do not truncate file size
	drm/gem: Test for imported GEM buffers with helper
	net: phylink: use pl->link_interface in phylink_expects_phy()
	blk-throttle: don't take carryover for prioritized processing of metadata
	remoteproc: qcom_wcnss: Handle platforms with only single power domain
	drm/amdgpu: Do not program AGP BAR regs under SRIOV in gfxhub_v1_0.c
	drm/amd/display: Ensure DMCUB idle before reset on DCN31/DCN35
	drm/amd/display: Skip checking FRL_MODE bit for PCON BW determination
	drm/amd/display: Fix DMUB reset sequence for DCN401
	drm/amd/display: Fix p-state type when p-state is unsupported
	drm/amd/display: Request HW cursor on DCN3.2 with SubVP
	perf/core: Clean up perf_try_init_event()
	media: cx231xx: set device_caps for 417
	pinctrl: bcm281xx: Use "unsigned int" instead of bare "unsigned"
	rcu: Fix get_state_synchronize_rcu_full() GP-start detection
	net: ethernet: ti: cpsw_new: populate netdev of_node
	net: phy: nxp-c45-tja11xx: add match_phy_device to TJA1103/TJA1104
	dpll: Add an assertion to check freq_supported_num
	ublk: enforce ublks_max only for unprivileged devices
	iommufd: Disallow allocating nested parent domain with fault ID
	media: imx335: Set vblank immediately
	net: pktgen: fix mpls maximum labels list parsing
	perf/hw_breakpoint: Return EOPNOTSUPP for unsupported breakpoint type
	ALSA: hda/realtek: Enable PC beep passthrough for HP EliteBook 855 G7
	scsi: logging: Fix scsi_logging_level bounds
	ipv4: fib: Move fib_valid_key_len() to rtm_to_fib_config().
	drm/rockchip: vop2: Add uv swap for cluster window
	block: mark bounce buffering as incompatible with integrity
	ublk: complete command synchronously on error
	media: uvcvideo: Add sanity check to uvc_ioctl_xu_ctrl_map
	media: uvcvideo: Handle uvc menu translation inside uvc_get_le_value
	clk: imx8mp: inform CCF of maximum frequency of clocks
	x86/bugs: Make spectre user default depend on MITIGATION_SPECTRE_V2
	hwmon: (gpio-fan) Add missing mutex locks
	ARM: at91: pm: fix at91_suspend_finish for ZQ calibration
	drm/mediatek: mtk_dpi: Add checks for reg_h_fre_con existence
	fpga: altera-cvp: Increase credit timeout
	perf: arm_pmuv3: Call kvm_vcpu_pmu_resync_el0() before enabling counters
	soc: apple: rtkit: Use high prio work queue
	soc: apple: rtkit: Implement OSLog buffers properly
	wifi: ath12k: Report proper tx completion status to mac80211
	PCI: brcmstb: Expand inbound window size up to 64GB
	PCI: brcmstb: Add a softdep to MIP MSI-X driver
	firmware: arm_ffa: Set dma_mask for ffa devices
	drm/xe/vf: Retry sending MMIO request to GUC on timeout error
	drm/xe/pf: Create a link between PF and VF devices
	net/mlx5: Avoid report two health errors on same syndrome
	selftests/net: have `gro.sh -t` return a correct exit code
	pinctrl: sophgo: avoid to modify untouched bit when setting cv1800 pinconf
	drm/amdkfd: KFD release_work possible circular locking
	drm/xe: xe_gen_wa_oob: replace program_invocation_short_name
	leds: pwm-multicolor: Add check for fwnode_property_read_u32
	net: ethernet: mtk_ppe_offload: Allow QinQ, double ETH_P_8021Q only
	net: xgene-v2: remove incorrect ACPI_PTR annotation
	bonding: report duplicate MAC address in all situations
	wifi: ath12k: Improve BSS discovery with hidden SSID in 6 GHz band
	soc: ti: k3-socinfo: Do not use syscon helper to build regmap
	bpf: Search and add kfuncs in struct_ops prologue and epilogue
	Octeontx2-af: RPM: Register driver with PCI subsys IDs
	x86/build: Fix broken copy command in genimage.sh when making isoimage
	drm/amd/display: handle max_downscale_src_width fail check
	drm/amd/display: fix dcn4x init failed
	drm/amd/display: Fix mismatch type comparison
	ASoC: mediatek: mt8188: Treat DMIC_GAINx_CUR as non-volatile
	ASoC: mediatek: mt8188: Add reference for dmic clocks
	x86/nmi: Add an emergency handler in nmi_desc & use it in nmi_shootdown_cpus()
	vhost-scsi: Return queue full for page alloc failures during copy
	vdpa/mlx5: Fix mlx5_vdpa_get_config() endianness on big-endian machines
	cpuidle: menu: Avoid discarding useful information
	media: adv7180: Disable test-pattern control on adv7180
	media: tc358746: improve calculation of the D-PHY timing registers
	net/mlx5e: Add correct match to check IPSec syndromes for switchdev mode
	scsi: mpi3mr: Update timestamp only for supervisor IOCs
	loop: check in LO_FLAGS_DIRECT_IO in loop_default_blocksize
	libbpf: Fix out-of-bound read
	dm: fix unconditional IO throttle caused by REQ_PREFLUSH
	scsi: scsi_debug: First fixes for tapes
	net/mlx5: Change POOL_NEXT_SIZE define value and make it global
	x86/kaslr: Reduce KASLR entropy on most x86 systems
	crypto: ahash - Set default reqsize from ahash_alg
	crypto: skcipher - Zap type in crypto_alloc_sync_skcipher
	net: ipv6: Init tunnel link-netns before registering dev
	drm/xe/oa: Ensure that polled read returns latest data
	MIPS: Use arch specific syscall name match function
	drm/amdgpu: remove all KFD fences from the BO on release
	x86/locking: Use ALT_OUTPUT_SP() for percpu_{,try_}cmpxchg{64,128}_op()
	genirq/msi: Store the IOMMU IOVA directly in msi_desc instead of iommu_cookie
	MIPS: pm-cps: Use per-CPU variables as per-CPU, not per-core
	clocksource: mips-gic-timer: Enable counter when CPUs start
	PCI: epf-mhi: Update device ID for SA8775P
	scsi: mpt3sas: Send a diag reset if target reset fails
	wifi: rtw88: Fix rtw_init_vht_cap() for RTL8814AU
	wifi: rtw88: Fix rtw_init_ht_cap() for RTL8814AU
	wifi: rtw88: Fix rtw_desc_to_mcsrate() to handle MCS16-31
	wifi: rtw89: fw: propagate error code from rtw89_h2c_tx()
	wifi: rtw89: fw: get sb_sel_ver via get_unaligned_le32()
	wifi: rtw89: fw: add blacklist to avoid obsolete secure firmware
	wifi: rtw89: 8922a: fix incorrect STA-ID in EHT MU PPDU
	net: pktgen: fix access outside of user given buffer in pktgen_thread_write()
	power: supply: axp20x_battery: Update temp sensor for AXP717 from device tree
	EDAC/ie31200: work around false positive build warning
	i3c: master: svc: Flush FIFO before sending Dynamic Address Assignment(DAA)
	mfd: axp20x: AXP717: Add AXP717_TS_PIN_CFG to writeable regs
	eeprom: ee1004: Check chip before probing
	irqchip/riscv-imsic: Separate next and previous pointers in IMSIC vector
	drm/amd/pm: Fetch current power limit from PMFW
	drm/amd/display: Add support for disconnected eDP streams
	drm/amd/display: Guard against setting dispclk low when active
	drm/amd/display: Fix BT2020 YCbCr limited/full range input
	drm/amd/display: Read LTTPR ALPM caps during link cap retrieval
	Revert "drm/amd/display: Request HW cursor on DCN3.2 with SubVP"
	drm/amd/display: Don't treat wb connector as physical in create_validate_stream_for_sink
	serial: mctrl_gpio: split disable_ms into sync and no_sync APIs
	RDMA/core: Fix best page size finding when it can cross SG entries
	pmdomain: imx: gpcv2: use proper helper for property detection
	can: c_can: Use of_property_present() to test existence of DT property
	bpf: don't do clean_live_states when state->loop_entry->branches > 0
	bpf: copy_verifier_state() should copy 'loop_entry' field
	eth: mlx4: don't try to complete XDP frames in netpoll
	PCI: Fix old_size lower bound in calculate_iosize() too
	ACPI: HED: Always initialize before evged
	vxlan: Join / leave MC group after remote changes
	hrtimers: Replace hrtimer_clock_to_base_table with switch-case
	irqchip/riscv-imsic: Set irq_set_affinity() for IMSIC base
	media: test-drivers: vivid: don't call schedule in loop
	net/mlx5: Modify LSB bitmask in temperature event to include only the first bit
	net/mlx5: Apply rate-limiting to high temperature warning
	firmware: arm_ffa: Reject higher major version as incompatible
	firmware: arm_ffa: Handle the presence of host partition in the partition info
	firmware: xilinx: Dont send linux address to get fpga config get status
	ASoC: ops: Enforce platform maximum on initial value
	ASoC: tas2764: Add reg defaults for TAS2764_INT_CLK_CFG
	ASoC: tas2764: Mark SW_RESET as volatile
	ASoC: tas2764: Power up/down amp on mute ops
	ASoC: soc-dai: check return value at snd_soc_dai_set_tdm_slot()
	pinctrl: devicetree: do not goto err when probing hogs in pinctrl_dt_to_map
	smack: recognize ipv4 CIPSO w/o categories
	smack: Revert "smackfs: Added check catlen"
	kunit: tool: Use qboot on QEMU x86_64
	media: i2c: imx219: Correct the minimum vblanking value
	media: v4l: Memset argument to 0 before calling get_mbus_config pad op
	net/mlx4_core: Avoid impossible mlx4_db_alloc() order value
	drm/xe: Stop ignoring errors from xe_ttm_stolen_mgr_init()
	drm/xe: Fix xe_tile_init_noalloc() error propagation
	clk: qcom: ipq5018: allow it to be bulid on arm32
	clk: qcom: clk-alpha-pll: Do not use random stack value for recalc rate
	drm/xe/debugfs: fixed the return value of wedged_mode_set
	drm/xe/debugfs: Add missing xe_pm_runtime_put in wedge_mode_set
	x86/ibt: Handle FineIBT in handle_cfi_failure()
	x86/traps: Cleanup and robustify decode_bug()
	sched: Reduce the default slice to avoid tasks getting an extra tick
	serial: sh-sci: Update the suspend/resume support
	pinctrl: renesas: rzg2l: Add suspend/resume support for pull up/down
	phy: phy-rockchip-samsung-hdptx: Swap the definitions of LCPLL_REF and ROPLL_REF
	phy: core: don't require set_mode() callback for phy_get_mode() to work
	phy: exynos5-usbdrd: fix EDS distribution tuning (gs101)
	soundwire: amd: change the soundwire wake enable/disable sequence
	soundwire: cadence_master: set frame shape and divider based on actual clk freq
	net: stmmac: dwmac-loongson: Set correct {tx,rx}_fifo_size
	drm/amdgpu/mes11: fix set_hw_resources_1 calculation
	drm/amdkfd: fix missing L2 cache info in topology
	drm/amdgpu: Set snoop bit for SDMA for MI series
	drm/amd/display: pass calculated dram_speed_mts to dml2
	drm/amd/display: Don't try AUX transactions on disconnected link
	drm/amdgpu: reset psp->cmd to NULL after releasing the buffer
	drm/amd/pm: Skip P2S load for SMU v13.0.12
	drm/amd/display: Support multiple options during psr entry.
	Revert "drm/amd/display: Exit idle optimizations before attempt to access PHY"
	drm/amd/display: Update CR AUX RD interval interpretation
	drm/amd/display: Initial psr_version with correct setting
	drm/amd/display: Increase block_sequence array size
	drm/amd/display: Use Nominal vBlank If Provided Instead Of Capping It
	drm/amd/display: Populate register address for dentist for dcn401
	drm/amdgpu: Use active umc info from discovery
	drm/amdgpu: enlarge the VBIOS binary size limit
	drm/amd/display/dm: drop hw_support check in amdgpu_dm_i2c_xfer()
	scsi: target: spc: Fix loop traversal in spc_rsoc_get_descr()
	net/mlx5: XDP, Enable TX side XDP multi-buffer support
	net/mlx5: Extend Ethtool loopback selftest to support non-linear SKB
	net/mlx5e: set the tx_queue_len for pfifo_fast
	net/mlx5e: reduce rep rxq depth to 256 for ECPF
	net/mlx5e: reduce the max log mpwrq sz for ECPF and reps
	drm/v3d: Add clock handling
	xfrm: prevent high SEQ input in non-ESN mode
	wifi: ath12k: fix the ampdu id fetch in the HAL_RX_MPDU_START TLV
	mptcp: pm: userspace: flags: clearer msg if no remote addr
	wifi: iwlwifi: use correct IMR dump variable
	wifi: iwlwifi: don't warn during reprobe
	wifi: mac80211: don't unconditionally call drv_mgd_complete_tx()
	wifi: mac80211: remove misplaced drv_mgd_complete_tx() call
	wifi: mac80211: set ieee80211_prep_tx_info::link_id upon Auth Rx
	net: fec: Refactor MAC reset to function
	powerpc/pseries/iommu: memory notifier incorrectly adds TCEs for pmemory
	powerpc/pseries/iommu: create DDW for devices with DMA mask less than 64-bits
	arch/powerpc/perf: Check the instruction type before creating sample with perf_mem_data_src
	ip: fib_rules: Fetch net from fib_rule in fib[46]_rule_configure().
	r8152: add vendor/device ID pair for Dell Alienware AW1022z
	iio: adc: ad7944: don't use storagebits for sizing
	pstore: Change kmsg_bytes storage size to u32
	leds: trigger: netdev: Configure LED blink interval for HW offload
	ext4: don't write back data before punch hole in nojournal mode
	ext4: remove writable userspace mappings before truncating page cache
	wifi: rtw88: Fix download_firmware_validate() for RTL8814AU
	wifi: rtw88: Fix __rtw_download_firmware() for RTL8814AU
	wifi: rtw89: coex: Assign value over than 0 to avoid firmware timer hang
	wifi: rtw89: fw: validate multi-firmware header before getting its size
	wifi: rtw89: fw: validate multi-firmware header before accessing
	wifi: rtw89: call power_on ahead before selecting firmware
	clk: qcom: camcc-sm8250: Use clk_rcg2_shared_ops for some RCGs
	net: page_pool: avoid false positive warning if NAPI was never added
	tools/power turbostat: Clustered Uncore MHz counters should honor show/hide options
	hwmon: (xgene-hwmon) use appropriate type for the latency value
	f2fs: introduce f2fs_base_attr for global sysfs entries
	media: qcom: camss: csid: Only add TPG v4l2 ctrl if TPG hardware is available
	media: qcom: camss: Add default case in vfe_src_pad_code
	drm/rockchip: vop2: Improve display modes handling on RK3588 HDMI0
	eth: fbnic: set IFF_UNICAST_FLT to avoid enabling promiscuous mode when adding unicast addrs
	tools: ynl-gen: don't output external constants
	net/mlx5e: Avoid WARN_ON when configuring MQPRIO with HTB offload enabled
	cpufreq: amd-pstate: Remove unnecessary driver_lock in set_boost
	vxlan: Annotate FDB data races
	ipv4: ip_gre: Fix set but not used warning in ipgre_err() if IPv4-only
	r8169: don't scan PHY addresses > 0
	net: flush_backlog() small changes
	bridge: mdb: Allow replace of a host-joined group
	ice: init flow director before RDMA
	ice: treat dyn_allowed only as suggestion
	rcu: handle quiescent states for PREEMPT_RCU=n, PREEMPT_COUNT=y
	rcu: handle unstable rdp in rcu_read_unlock_strict()
	rcu: fix header guard for rcu_all_qs()
	perf: Avoid the read if the count is already updated
	ice: count combined queues using Rx/Tx count
	drm/xe/relay: Don't use GFP_KERNEL for new transactions
	net/mana: fix warning in the writer of client oob
	scsi: lpfc: Handle duplicate D_IDs in ndlp search-by D_ID routine
	scsi: lpfc: Ignore ndlp rport mismatch in dev_loss_tmo callbk
	scsi: lpfc: Free phba irq in lpfc_sli4_enable_msi() when pci_irq_vector() fails
	scsi: st: Restore some drive settings after reset
	wifi: ath12k: Avoid napi_sync() before napi_enable()
	HID: usbkbd: Fix the bit shift number for LED_KANA
	arm64: zynqmp: add clock-output-names property in clock nodes
	ASoC: codecs: pcm3168a: Allow for 24-bit in provider mode
	ASoC: rt722-sdca: Add some missing readable registers
	irqchip/riscv-aplic: Add support for hart indexes
	dm vdo indexer: prevent unterminated string warning
	dm vdo: use a short static string for thread name prefix
	drm/ast: Find VBIOS mode from regular display size
	bpf: Use kallsyms to find the function name of a struct_ops's stub function
	bpftool: Fix readlink usage in get_fd_type
	firmware: arm_scmi: Relax duplicate name constraint across protocol ids
	perf/amd/ibs: Fix perf_ibs_op.cnt_mask for CurCnt
	perf/amd/ibs: Fix ->config to sample period calculation for OP PMU
	clk: renesas: rzg2l-cpg: Refactor Runtime PM clock validation
	wifi: rtl8xxxu: retry firmware download on error
	wifi: rtw88: Don't use static local variable in rtw8822b_set_tx_power_index_by_rate
	wifi: rtw89: add wiphy_lock() to work that isn't held wiphy_lock() yet
	spi: zynqmp-gqspi: Always acknowledge interrupts
	regulator: ad5398: Add device tree support
	wifi: ath12k: fix ath12k_hal_tx_cmd_ext_desc_setup() info1 override
	accel/qaic: Mask out SR-IOV PCI resources
	drm/xe/pf: Reset GuC VF config when unprovisioning critical resource
	wifi: ath9k: return by of_get_mac_address
	wifi: ath12k: Fetch regdb.bin file from board-2.bin
	wifi: ath12k: Fix end offset bit definition in monitor ring descriptor
	drm: bridge: adv7511: fill stream capabilities
	drm/nouveau: fix the broken marco GSP_MSG_MAX_SIZE
	wifi: ath11k: Use dma_alloc_noncoherent for rx_tid buffer allocation
	drm/xe: Move suballocator init to after display init
	drm/xe: Do not attempt to bootstrap VF in execlists mode
	wifi: rtw89: coex: Separated Wi-Fi connecting event from Wi-Fi scan event
	drm/xe/sa: Always call drm_suballoc_manager_fini()
	drm/xe: Reject BO eviction if BO is bound to current VM
	drm/atomic: clarify the rules around drm_atomic_state->allow_modeset
	drm/buddy: fix issue that force_merge cannot free all roots
	drm/panel-edp: Add Starry 116KHD024006
	drm: Add valid clones check
	ASoC: imx-card: Adjust over allocation of memory in imx_card_parse_of()
	book3s64/radix: Fix compile errors when CONFIG_ARCH_WANT_OPTIMIZE_DAX_VMEMMAP=n
	pinctrl: meson: define the pull up/down resistor value as 60 kOhm
	smb: server: smb2pdu: check return value of xa_store()
	platform/x86/intel: hid: Add Pantherlake support
	platform/x86: asus-wmi: Disable OOBE state after resume from hibernation
	platform/x86: ideapad-laptop: add support for some new buttons
	ASoC: cs42l43: Disable headphone clamps during type detection
	ASoC: Intel: bytcr_rt5640: Add DMI quirk for Acer Aspire SW3-013
	ALSA: hda/realtek: Add quirk for HP Spectre x360 15-df1xxx
	nvme-pci: add quirks for device 126f:1001
	nvme-pci: add quirks for WDC Blue SN550 15b7:5009
	ALSA: usb-audio: Fix duplicated name in MIDI substream names
	nvmet-tcp: don't restore null sk_state_change
	io_uring/fdinfo: annotate racy sq/cq head/tail reads
	cifs: Fix and improve cifs_query_path_info() and cifs_query_file_info()
	cifs: Fix changing times and read-only attr over SMB1 smb_set_file_info() function
	ASoC: intel/sdw_utils: Add volume limit to cs42l43 speakers
	btrfs: compression: adjust cb->compressed_folios allocation type
	btrfs: correct the order of prelim_ref arguments in btrfs__prelim_ref
	btrfs: handle empty eb->folios in num_extent_folios()
	btrfs: avoid NULL pointer dereference if no valid csum tree
	tools: ynl-gen: validate 0 len strings from kernel
	block: only update request sector if needed
	wifi: iwlwifi: add support for Killer on MTL
	x86/Kconfig: make CFI_AUTO_DEFAULT depend on !RUST or Rust >= 1.88
	xenbus: Allow PVH dom0 a non-local xenstore
	drm/amd/display: Call FP Protect Before Mode Programming/Mode Support
	__legitimize_mnt(): check for MNT_SYNC_UMOUNT should be under mount_lock
	soundwire: bus: Fix race on the creation of the IRQ domain
	espintcp: fix skb leaks
	espintcp: remove encap socket caching to avoid reference leak
	xfrm: Fix UDP GRO handling for some corner cases
	dmaengine: idxd: Fix allowing write() from different address spaces
	x86/sev: Fix operator precedence in GHCB_MSR_VMPL_REQ_LEVEL macro
	kernel/fork: only call untrack_pfn_clear() on VMAs duplicated for fork()
	remoteproc: qcom_wcnss: Fix on platforms without fallback regulators
	clk: sunxi-ng: d1: Add missing divider for MMC mod clocks
	xfrm: Sanitize marks before insert
	dmaengine: idxd: Fix ->poll() return value
	dmaengine: fsl-edma: Fix return code for unhandled interrupts
	driver core: Split devres APIs to device/devres.h
	devres: Introduce devm_kmemdup_array()
	ASoC: SOF: Intel: hda: Fix UAF when reloading module
	irqchip/riscv-imsic: Start local sync timer on correct CPU
	perf/x86/intel: Fix segfault with PEBS-via-PT with sample_freq
	Bluetooth: L2CAP: Fix not checking l2cap_chan security level
	Bluetooth: btusb: use skb_pull to avoid unsafe access in QCA dump handling
	ptp: ocp: Limit signal/freq counts in summary output functions
	bridge: netfilter: Fix forwarding of fragmented packets
	ice: fix vf->num_mac count with port representors
	ice: Fix LACP bonds without SRIOV environment
	idpf: fix null-ptr-deref in idpf_features_check
	loop: don't require ->write_iter for writable files in loop_configure
	pinctrl: qcom: switch to devm_register_sys_off_handler()
	net: dwmac-sun8i: Use parsed internal PHY address instead of 1
	net: lan743x: Restore SGMII CTRL register on resume
	io_uring: fix overflow resched cqe reordering
	idpf: fix idpf_vport_splitq_napi_poll()
	sch_hfsc: Fix qlen accounting bug when using peek in hfsc_enqueue()
	octeontx2-pf: Add AF_XDP non-zero copy support
	net/tipc: fix slab-use-after-free Read in tipc_aead_encrypt_done
	octeontx2-af: Set LMT_ENA bit for APR table entries
	octeontx2-af: Fix APR entry mapping based on APR_LMT_CFG
	clk: s2mps11: initialise clk_hw_onecell_data::num before accessing ::hws[] in probe()
	crypto: algif_hash - fix double free in hash_accept
	padata: do not leak refcount in reorder_work
	can: slcan: allow reception of short error messages
	can: bcm: add locking for bcm_op runtime updates
	can: bcm: add missing rcu read protection for procfs content
	ASoC: SOF: ipc4-control: Use SOF_CTRL_CMD_BINARY as numid for bytes_ext
	ASoC: SOF: Intel: hda-bus: Use PIO mode on ACE2+ platforms
	ASoc: SOF: topology: connect DAI to a single DAI link
	ASoC: SOF: ipc4-pcm: Delay reporting is only supported for playback direction
	ALSA: pcm: Fix race of buffer access at PCM OSS layer
	ALSA: hda/realtek: Add quirk for Lenovo Yoga Pro 7 14ASP10
	llc: fix data loss when reading from a socket in llc_ui_recvmsg()
	can: kvaser_pciefd: Continue parsing DMA buf after dropped RX
	can: kvaser_pciefd: Fix echo_skb race
	net: dsa: microchip: linearize skb for tail-tagging switches
	vmxnet3: update MTU after device quiesce
	pmdomain: renesas: rcar: Remove obsolete nullify checks
	pmdomain: core: Fix error checking in genpd_dev_pm_attach_by_id()
	platform/x86: dell-wmi-sysman: Avoid buffer overflow in current_password_store()
	thermal: intel: x86_pkg_temp_thermal: Fix bogus trip temperature
	drm/edid: fixed the bug that hdr metadata was not reset
	smb: client: Fix use-after-free in cifs_fill_dirent
	arm64: dts: marvell: uDPU: define pinctrl state for alarm LEDs
	smb: client: Reset all search buffer pointers when releasing buffer
	Revert "drm/amd: Keep display off while going into S4"
	Input: xpad - add more controllers
	highmem: add folio_test_partial_kmap()
	memcg: always call cond_resched() after fn()
	mm/page_alloc.c: avoid infinite retries caused by cpuset race
	mm: mmap: map MAP_STACK to VM_NOHUGEPAGE only if THP is enabled
	mm: vmalloc: actually use the in-place vrealloc region
	mm: vmalloc: only zero-init on vrealloc shrink
	nilfs2: fix deadlock warnings caused by lock dependency in init_nilfs()
	Bluetooth: btmtksdio: Check function enabled before doing close
	Bluetooth: btmtksdio: Do close if SDIO card removed without close
	Revert "arm64: dts: allwinner: h6: Use RSB for AXP805 PMIC connection"
	ksmbd: fix stream write failure
	platform/x86: think-lmi: Fix attribute name usage for non-compliant items
	spi: use container_of_cont() for to_spi_device()
	spi: spi-fsl-dspi: restrict register range for regmap access
	spi: spi-fsl-dspi: Halt the module after a new message transfer
	spi: spi-fsl-dspi: Reset SR flags before sending a new message
	err.h: move IOMEM_ERR_PTR() to err.h
	gcc-15: make 'unterminated string initialization' just a warning
	gcc-15: disable '-Wunterminated-string-initialization' entirely for now
	Fix mis-uses of 'cc-option' for warning disablement
	kbuild: Properly disable -Wunterminated-string-initialization for clang
	drm/amd/display: Exit idle optimizations before accessing PHY
	bpf: abort verification if env->cur_state->loop_entry != NULL
	serial: sh-sci: Save and restore more registers
	drm/amdkfd: Correct F8_MODE for gfx950
	watchdog: aspeed: fix 64-bit division
	pinctrl: tegra: Fix off by one in tegra_pinctrl_get_group()
	i3c: master: svc: Fix implicit fallthrough in svc_i3c_master_ibi_work()
	x86/mm/init: Handle the special case of device private pages in add_pages(), to not increase max_pfn and trigger dma_addressing_limited() bounce buffers bounce buffers
	drm/gem: Internally test import_attach for imported objects
	Linux 6.12.31

Change-Id: I017795966fb764f9320a6a0df1571d19e5e631fe
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-07-03 07:19:01 +00:00
Greg Kroah-Hartman 108d81d25c Merge cd918ec241 ("orangefs: Do not truncate file size") into android16-6.12-lts
Steps on the way to 6.12.31

Change-Id: Ic4b1ed54cab9844c75f4824bb7ac3f28e37b3eb7
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-06-30 08:35:56 +00:00
Jiande Lu b5e792c206 Bluetooth: btusb: Add new VID/PID 13d3/3630 for MT7925
[ Upstream commit 5bd5c716f7ec3e25d8d3b8a7566e192a26f9c7ce ]

Add VID 13d3 & PID 3630 for MediaTek MT7925 USB Bluetooth chip.

The information in /sys/kernel/debug/usb/devices about the Bluetooth
device is listed as the below.

T:  Bus=07 Lev=01 Prnt=01 Port=10 Cnt=02 Dev#=  2 Spd=480  MxCh= 0
D:  Ver= 2.10 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=13d3 ProdID=3630 Rev= 1.00
S:  Manufacturer=MediaTek Inc.
S:  Product=Wireless_Device
S:  SerialNumber=000000000
C:* #Ifs= 3 Cfg#= 1 Atr=e0 MxPwr=100mA
A:  FirstIf#= 0 IfCount= 3 Cls=e0(wlcon) Sub=01 Prot=01
I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=125us
E:  Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=   0 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=   0 Ivl=1ms
I:  If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=   9 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=   9 Ivl=1ms
I:  If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  17 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  17 Ivl=1ms
I:  If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  25 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  25 Ivl=1ms
I:  If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  33 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  33 Ivl=1ms
I:  If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  49 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  49 Ivl=1ms
I:  If#= 1 Alt= 6 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  63 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  63 Ivl=1ms
I:* If#= 2 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=(none)
E:  Ad=8a(I) Atr=03(Int.) MxPS=  64 Ivl=125us
E:  Ad=0a(O) Atr=03(Int.) MxPS=  64 Ivl=125us
I:  If#= 2 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=(none)
E:  Ad=8a(I) Atr=03(Int.) MxPS= 512 Ivl=125us
E:  Ad=0a(O) Atr=03(Int.) MxPS= 512 Ivl=125us

Signed-off-by: Jiande Lu <jiande.lu@mediatek.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-06-27 11:11:29 +01:00
Liwei Sun 0cc5c7c14f Bluetooth: btusb: Add new VID/PID 13d3/3584 for MT7922
[ Upstream commit 71d9d3522aec301e4a1c4eae4b5e0656fc4a7262 ]

A new variant of MT7922 wireless device has been identified.
The device introduces itself as MEDIATEK MT7922,
so treat it as MediaTek device.
With this patch, btusb driver works as expected:
[    3.151162] Bluetooth: Core ver 2.22
[    3.151185] Bluetooth: HCI device and connection manager initialized
[    3.151189] Bluetooth: HCI socket layer initialized
[    3.151191] Bluetooth: L2CAP socket layer initialized
[    3.151194] Bluetooth: SCO socket layer initialized
[    3.295718] Bluetooth: hci0: HW/SW Version: 0x008a008a, Build Time: 20241106163512
[    4.676634] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    4.676637] Bluetooth: BNEP filters: protocol multicast
[    4.676640] Bluetooth: BNEP socket layer initialized
[    5.560453] Bluetooth: hci0: Device setup in 2320660 usecs
[    5.560457] Bluetooth: hci0: HCI Enhanced Setup Synchronous Connection command is advertised, but not supported.
[    5.619197] Bluetooth: hci0: AOSP extensions version v1.00
[    5.619204] Bluetooth: hci0: AOSP quality report is supported
[    5.619301] Bluetooth: MGMT ver 1.23
[    6.741247] Bluetooth: RFCOMM TTY layer initialized
[    6.741258] Bluetooth: RFCOMM socket layer initialized
[    6.741261] Bluetooth: RFCOMM ver 1.11

lspci output:
04:00.0 Network controller: MEDIATEK Corp. MT7922 802.11ax PCI Express Wireless Network Adapter

USB information:
T:  Bus=01 Lev=01 Prnt=01 Port=04 Cnt=02 Dev#=  3 Spd=480  MxCh= 0
D:  Ver= 2.10 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=13d3 ProdID=3584 Rev= 1.00
S:  Manufacturer=MediaTek Inc.
S:  Product=Wireless_Device
S:  SerialNumber=000000000
C:* #Ifs= 3 Cfg#= 1 Atr=e0 MxPwr=100mA
A:  FirstIf#= 0 IfCount= 3 Cls=e0(wlcon) Sub=01 Prot=01
I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=125us
E:  Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=   0 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=   0 Ivl=1ms
I:  If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=   9 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=   9 Ivl=1ms
I:  If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  17 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  17 Ivl=1ms
I:  If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  25 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  25 Ivl=1ms
I:  If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  33 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  33 Ivl=1ms
I:  If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  49 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  49 Ivl=1ms
I:  If#= 1 Alt= 6 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  63 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  63 Ivl=1ms
I:  If#= 2 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=8a(I) Atr=03(Int.) MxPS=  64 Ivl=125us
E:  Ad=0a(O) Atr=03(Int.) MxPS=  64 Ivl=125us
I:* If#= 2 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=8a(I) Atr=03(Int.) MxPS= 512 Ivl=125us

Signed-off-by: Liwei Sun <sunliweis@126.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-06-27 11:11:28 +01:00
Chandrashekar Devegowda fbf95f446b Bluetooth: btintel_pcie: Reduce driver buffer posting to prevent race condition
[ Upstream commit bf2ffc4d14db29cab781549912d2dc69127f4d3e ]

Modify the driver to post 3 fewer buffers than the maximum rx buffers
(64) allowed for the firmware. This change mitigates a hardware issue
causing a race condition in the firmware, improving stability and data
handling.

Signed-off-by: Chandrashekar Devegowda <chandrashekar.devegowda@intel.com>
Signed-off-by: Kiran K <kiran.k@intel.com>
Fixes: c2b636b3f7 ("Bluetooth: btintel_pcie: Add support for PCIe transport")
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-06-19 15:32:25 +02:00
Chandrashekar Devegowda b104a6f5d5 Bluetooth: btintel_pcie: Increase the tx and rx descriptor count
[ Upstream commit 2dd711102ce69ae41f65d09c012441227d4aa983 ]

This change addresses latency issues observed in HID use cases where
events arrive in bursts. By increasing the Rx descriptor count to 64,
the firmware can handle bursty data more effectively, reducing latency
and preventing buffer overflows.

Signed-off-by: Chandrashekar Devegowda <chandrashekar.devegowda@intel.com>
Signed-off-by: Kiran K <kiran.k@intel.com>
Fixes: c2b636b3f7 ("Bluetooth: btintel_pcie: Add support for PCIe transport")
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-06-19 15:32:24 +02:00
Kiran K a075e10cfb Bluetooth: btintel_pcie: Fix driver not posting maximum rx buffers
[ Upstream commit daabd276985055250528da97e9ce6d277d7009c2 ]

The driver was posting only 6 rx buffers, despite the maximum rx buffers
being defined as 16. Having fewer RX buffers caused firmware exceptions
in HID use cases when events arrived in bursts.

Exception seen on android 6.12 kernel.

E Bluetooth: hci0: Received hw exception interrupt
E Bluetooth: hci0: Received gp1 mailbox interrupt
D Bluetooth: hci0: 00000000: ff 3e 87 80 03 01 01 01 03 01 0c 0d 02 1c 10 0e
D Bluetooth: hci0: 00000010: 01 00 05 14 66 b0 28 b0 c0 b0 28 b0 ac af 28 b0
D Bluetooth: hci0: 00000020: 14 f1 28 b0 00 00 00 00 fa 04 00 00 00 00 40 10
D Bluetooth: hci0: 00000030: 08 00 00 00 7a 7a 7a 7a 47 00 fb a0 10 00 00 00
D Bluetooth: hci0: 00000000: 10 01 0a
E Bluetooth: hci0: ---- Dump of debug registers —
E Bluetooth: hci0: boot stage: 0xe0fb0047
E Bluetooth: hci0: ipc status: 0x00000004
E Bluetooth: hci0: ipc control: 0x00000000
E Bluetooth: hci0: ipc sleep control: 0x00000000
E Bluetooth: hci0: mbox_1: 0x00badbad
E Bluetooth: hci0: mbox_2: 0x0000101c
E Bluetooth: hci0: mbox_3: 0x00000008
E Bluetooth: hci0: mbox_4: 0x7a7a7a7a

Signed-off-by: Chandrashekar Devegowda <chandrashekar.devegowda@intel.com>
Signed-off-by: Kiran K <kiran.k@intel.com>
Fixes: c2b636b3f7 ("Bluetooth: btintel_pcie: Add support for PCIe transport")
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-06-19 15:32:24 +02:00
Kees Cook 9427f6081f Bluetooth: btintel: Check dsbr size from EFI variable
[ Upstream commit 3aa1dc3c9060e335e82e9c182bf3d1db29220b1b ]

Since the size of struct btintel_dsbr is already known, we can just
start there instead of querying the EFI variable size. If the final
result doesn't match what we expect also fail. This fixes a stack buffer
overflow when the EFI variable is larger than struct btintel_dsbr.

Reported-by: zepta <z3ptaa@gmail.com>
Closes: https://lore.kernel.org/all/CAPBS6KoaWV9=dtjTESZiU6KK__OZX0KpDk-=JEH8jCHFLUYv3Q@mail.gmail.com
Fixes: eb9e749c01 ("Bluetooth: btintel: Allow configuring drive strength of BRI")
Signed-off-by: Kees Cook <kees@kernel.org>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-06-19 15:31:53 +02:00
Bartosz Golaszewski e428b7e205 Bluetooth: hci_qca: move the SoC type check to the right place
commit 0fb410c914eb03c7e9d821e26d03bac0a239e5db upstream.

Commit 3d05fc8223 ("Bluetooth: qca: set power_ctrl_enabled on NULL
returned by gpiod_get_optional()") accidentally changed the prevous
behavior where power control would be disabled without the BT_EN GPIO
only on QCA_WCN6750 and QCA_WCN6855 while also getting the error check
wrong. We should treat every IS_ERR() return value from
devm_gpiod_get_optional() as a reason to bail-out while we should only
set power_ctrl_enabled to false on the two models mentioned above. While
at it: use dev_err_probe() to save a LOC.

Cc: stable@vger.kernel.org
Fixes: 3d05fc8223 ("Bluetooth: qca: set power_ctrl_enabled on NULL returned by gpiod_get_optional()")
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Tested-by: Hsin-chen Chuang <chharry@chromium.org>
Reviewed-by: Hsin-chen Chuang <chharry@chromium.org>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-06-10 07:13:00 -04:00
Greg Kroah-Hartman dba4f359fc Merge 6.12.30 into android16-6.12-lts
GKI (arm64) relevant 18 out of 143 changes, affecting 32 files +213/-83
  10d1496f85 fs/xattr.c: fix simple_xattr_list to always include security.* xattrs [1 file, +24/-0]
  bc4c54cbb4 binfmt_elf: Move brk for static PIE even if ASLR disabled [1 file, +47/-24]
  f0d70d8dca cgroup/cpuset: Extend kthread_is_per_cpu() check to all PF_NO_SETAFFINITY tasks [1 file, +4/-2]
  517c11fe4f tracing: probes: Fix a possible race in trace_probe_log APIs [5 files, +27/-3]
  94e7272b63 HID: uclogic: Add NULL check in uclogic_input_configured() [1 file, +4/-3]
  28826a89fd Bluetooth: MGMT: Fix MGMT_OP_ADD_DEVICE invalid device flags [1 file, +6/-3]
  d1365ca80b net_sched: Flush gso_skb list too during ->change() [7 files, +21/-6]
  ddfa034da3 nvme-pci: make nvme_pci_npages_prp() __always_inline [1 file, +1/-1]
  a3c147040b nvme-pci: acquire cq_poll_lock in nvme_poll_irqdisable [1 file, +2/-0]
  c88f4ff535 ALSA: usb-audio: Add sample rate quirk for Audioengine D1 [1 file, +2/-0]
  93152dac0b ALSA: usb-audio: Add sample rate quirk for Microdia JP001 USB Camera [1 file, +2/-0]
  fe1bebd0ed dma-buf: insert memory barrier before updating num_fences [1 file, +3/-2]
  7d353da580 ftrace: Fix preemption accounting for stacktrace trigger command [1 file, +1/-1]
  bffc3038a2 scsi: sd_zbc: block: Respect bio vector limits for REPORT ZONES buffer [3 files, +7/-2]
  20d6e621be ring-buffer: Fix persistent buffer when commit page is the reader page [1 file, +5/-3]
  fe0756daad mm: userfaultfd: correct dirty flags set for both present and swap pte [1 file, +10/-2]
  74953f93f4 mm/page_alloc: fix race condition in unaccepted memory handling [1 file, +0/-23]
  5924b32446 usb: typec: ucsi: displayport: Fix deadlock [3 files, +47/-8]

Changes in 6.12.30
	arm64: dts: rockchip: Assign RT5616 MCLK rate on rk3588-friendlyelec-cm3588
	fs/xattr.c: fix simple_xattr_list to always include security.* xattrs
	drivers/platform/x86/amd: pmf: Check for invalid sideloaded Smart PC Policies
	drivers/platform/x86/amd: pmf: Check for invalid Smart PC Policies
	riscv: dts: sophgo: fix DMA data-width configuration for CV18xx
	binfmt_elf: Move brk for static PIE even if ASLR disabled
	platform/x86/amd/pmc: Declare quirk_spurious_8042 for MECHREVO Wujie 14XA (GX4HRXL)
	platform/x86: asus-wmi: Fix wlan_ctrl_by_user detection
	arm64: dts: imx8mp-var-som: Fix LDO5 shutdown causing SD card timeout
	cgroup/cpuset: Extend kthread_is_per_cpu() check to all PF_NO_SETAFFINITY tasks
	tracing: probes: Fix a possible race in trace_probe_log APIs
	tpm: tis: Double the timeout B to 4s
	uio_hv_generic: Fix sysfs creation path for ring buffer
	KVM: Add member to struct kvm_gfn_range to indicate private/shared
	KVM: x86/mmu: Prevent installing hugepages when mem attributes are changing
	iio: adc: ad7266: Fix potential timestamp alignment issue.
	iio: chemical: pms7003: use aligned_s64 for timestamp
	iio: pressure: mprls0025pa: use aligned_s64 for timestamp
	drm/amd: Add Suspend/Hibernate notification callback support
	Revert "drm/amd: Stop evicting resources on APUs in suspend"
	xhci: dbc: Improve performance by removing delay in transfer event polling.
	xhci: dbc: Avoid event polling busyloop if pending rx transfers are inactive.
	iio: adc: ad7768-1: Fix insufficient alignment of timestamp.
	iio: chemical: sps30: use aligned_s64 for timestamp
	virtio_ring: add a func argument 'recycle_done' to virtqueue_reset()
	virtio_net: ensure netdev_tx_reset_queue is called on bind xsk for tx
	RDMA/rxe: Fix slab-use-after-free Read in rxe_queue_cleanup bug
	HID: thrustmaster: fix memory leak in thrustmaster_interrupts()
	HID: uclogic: Add NULL check in uclogic_input_configured()
	nfs: handle failure of nfs_get_lock_context in unlock path
	spi: loopback-test: Do not split 1024-byte hexdumps
	RDMA/core: Fix "KASAN: slab-use-after-free Read in ib_register_device" problem
	Bluetooth: MGMT: Fix MGMT_OP_ADD_DEVICE invalid device flags
	net_sched: Flush gso_skb list too during ->change()
	tools/net/ynl: ethtool: fix crash when Hardware Clock info is missing
	mctp: no longer rely on net->dev_index_head[]
	net: mctp: Don't access ifa_index when missing
	selftests: ncdevmem: Redirect all non-payload output to stderr
	selftests: ncdevmem: Separate out dmabuf provider
	selftests: ncdevmem: Unify error handling
	selftests: ncdevmem: Make client_ip optional
	selftests: ncdevmem: Switch to AF_INET6
	tests/ncdevmem: Fix double-free of queue array
	net: mctp: Ensure keys maintain only one ref to corresponding dev
	ALSA: seq: Fix delivery of UMP events to group ports
	ALSA: ump: Fix a typo of snd_ump_stream_msg_device_info
	net: cadence: macb: Fix a possible deadlock in macb_halt_tx.
	net: dsa: sja1105: discard incoming frames in BR_STATE_LISTENING
	nvme-pci: make nvme_pci_npages_prp() __always_inline
	nvme-pci: acquire cq_poll_lock in nvme_poll_irqdisable
	ALSA: sh: SND_AICA should depend on SH_DMA_API
	net: dsa: b53: prevent standalone from trying to forward to other ports
	vsock/test: Fix occasional failure in SIOCOUTQ tests
	net/mlx5e: Disable MACsec offload for uplink representor profile
	qlcnic: fix memory leak in qlcnic_sriov_channel_cfg_cmd()
	regulator: max20086: fix invalid memory access
	drm/xe: Save CTX_TIMESTAMP mmio value instead of LRC value
	netlink: specs: tc: fix a couple of attribute names
	netlink: specs: tc: all actions are indexed arrays
	octeontx2-pf: macsec: Fix incorrect max transmit size in TX secy
	net: ethernet: mtk_eth_soc: fix typo for declaration MT7988 ESW capability
	octeontx2-af: Fix CGX Receive counters
	octeontx2-pf: Do not reallocate all ntuple filters
	wifi: mac80211: Set n_channels after allocating struct cfg80211_scan_request
	mlxsw: spectrum_router: Fix use-after-free when deleting GRE net devices
	net/tls: fix kernel panic when alloc_page failed
	tsnep: fix timestamping with a stacked DSA driver
	NFSv4/pnfs: Reset the layout state after a layoutreturn
	dmaengine: Revert "dmaengine: dmatest: Fix dmatest waiting less when interrupted"
	sched_ext: bpf_iter_scx_dsq_new() should always initialize iterator
	udf: Make sure i_lenExtents is uptodate on inode eviction
	HID: bpf: abort dispatch if device destroyed
	LoongArch: Prevent cond_resched() occurring within kernel-fpu
	LoongArch: Move __arch_cpu_idle() to .cpuidle.text section
	LoongArch: Save and restore CSR.CNTC for hibernation
	LoongArch: Fix MAX_REG_OFFSET calculation
	LoongArch: uprobes: Remove user_{en,dis}able_single_step()
	LoongArch: uprobes: Remove redundant code about resume_era
	btrfs: fix discard worker infinite loop after disabling discard
	btrfs: fix folio leak in submit_one_async_extent()
	btrfs: add back warning for mount option commit values exceeding 300
	Revert "drm/amd/display: Hardware cursor changes color when switched to software cursor"
	drm/amdgpu: fix incorrect MALL size for GFX1151
	drm/amdgpu: csa unmap use uninterruptible lock
	drm/amd/display: Correct the reply value when AUX write incomplete
	drm/amd/display: Avoid flooding unnecessary info messages
	MAINTAINERS: Update Alexey Makhalov's email address
	gpio: pca953x: fix IRQ storm on system wake up
	ACPI: PPTT: Fix processor subtable walk
	ALSA: es1968: Add error handling for snd_pcm_hw_constraint_pow2()
	ALSA: usb-audio: Add sample rate quirk for Audioengine D1
	ALSA: usb-audio: Add sample rate quirk for Microdia JP001 USB Camera
	dma-buf: insert memory barrier before updating num_fences
	hv_netvsc: Use vmbus_sendpacket_mpb_desc() to send VMBus messages
	hv_netvsc: Preserve contiguous PFN grouping in the page buffer array
	hv_netvsc: Remove rmsg_pgcnt
	arm64: dts: amlogic: dreambox: fix missing clkc_audio node
	arm64: dts: rockchip: Remove overdrive-mode OPPs from RK3588J SoC dtsi
	Drivers: hv: Allow vmbus_sendpacket_mpb_desc() to create multiple ranges
	Drivers: hv: vmbus: Remove vmbus_sendpacket_pagebuffer()
	kbuild: Disable -Wdefault-const-init-unsafe
	ftrace: Fix preemption accounting for stacktrace trigger command
	ftrace: Fix preemption accounting for stacktrace filter command
	tracing: samples: Initialize trace_array_printk() with the correct function
	phy: tegra: xusb: Use a bitmask for UTMI pad power state tracking
	phy: Fix error handling in tegra_xusb_port_init
	phy: renesas: rcar-gen3-usb2: Fix role detection on unbind/bind
	phy: renesas: rcar-gen3-usb2: Set timing registers only once
	scsi: sd_zbc: block: Respect bio vector limits for REPORT ZONES buffer
	smb: client: fix memory leak during error handling for POSIX mkdir
	spi: tegra114: Use value to check for invalid delays
	tpm: Mask TPM RC in tpm2_start_auth_session()
	wifi: mt76: disable napi on driver removal
	ring-buffer: Fix persistent buffer when commit page is the reader page
	net: qede: Initialize qede_ll_ops with designated initializer
	mm: userfaultfd: correct dirty flags set for both present and swap pte
	dmaengine: ti: k3-udma: Add missing locking
	dmaengine: ti: k3-udma: Use cap_mask directly from dma_device structure instead of a local copy
	dmaengine: idxd: fix memory leak in error handling path of idxd_setup_wqs
	dmaengine: idxd: fix memory leak in error handling path of idxd_setup_engines
	dmaengine: idxd: fix memory leak in error handling path of idxd_setup_groups
	dmaengine: idxd: Add missing cleanup for early error out in idxd_setup_internals
	dmaengine: idxd: Add missing cleanups in cleanup internals
	dmaengine: idxd: Add missing idxd cleanup to fix memory leak in remove call
	dmaengine: idxd: fix memory leak in error handling path of idxd_alloc
	dmaengine: idxd: fix memory leak in error handling path of idxd_pci_probe
	dmaengine: idxd: Refactor remove call with idxd_cleanup() helper
	CIFS: New mount option for cifs.upcall namespace resolution
	drm/xe/gsc: do not flush the GSC worker from the reset path
	mm/page_alloc: fix race condition in unaccepted memory handling
	accel/ivpu: Rename ivpu_log_level to fw_log_level
	accel/ivpu: Reset fw log on cold boot
	accel/ivpu: Refactor functions in ivpu_fw_log.c
	accel/ivpu: Fix fw log printing
	iio: light: opt3001: fix deadlock due to concurrent flag access
	Bluetooth: btnxpuart: Fix kernel panic during FW release
	drm/fbdev-dma: Support struct drm_driver.fbdev_probe
	drm/panel-mipi-dbi: Run DRM default client setup
	drm/tiny: panel-mipi-dbi: Use drm_client_setup_with_fourcc()
	usb: typec: ucsi: displayport: Fix deadlock
	phy: tegra: xusb: remove a stray unlock
	drm/amdgpu: fix pm notifier handling
	Linux 6.12.30

Change-Id: I4fefed85c02f1ed826b7ee014700b80c10300bb5
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-06-05 11:53:12 +00:00
Greg Kroah-Hartman 651f2e4fca Merge 6.12.29 into android16-6.12-lts
GKI (arm64) relevant 44 out of 185 changes, affecting 54 files +634/-365
  b32411f045 dm: add missing unlock on in dm_keyslot_evict() [1 file, +2/-1]
  61e0fc3312 fs/erofs/fileio: call erofs_onlinefolio_split() after bio_add_folio() [1 file, +2/-2]
  14ee85b748 firmware: arm_scmi: Fix timeout checks on polling path [1 file, +8/-5]
  98cd7ed927 sch_htb: make htb_deactivate() idempotent [1 file, +6/-9]
  35be4c0cdf gre: Fix again IPv6 link-local address generation. [1 file, +9/-6]
  c33927f385 can: gw: fix RCU/BH usage in cgw_create_job() [1 file, +90/-59]
  4555c4a13a wifi: mac80211: fix the type of status_code for negotiated TID to Link Mapping [2 files, +7/-7]
  64385c0d02 erofs: ensure the extra temporary copy is valid for shortened bvecs [1 file, +14/-17]
  b37e54259c bpf: Scrub packet on bpf_redirect_peer [1 file, +1/-0]
  bb8f86f40e net: export a helper for adding up queue stats [2 files, +56/-19]
  302a0cd0bb Input: xpad - fix Share button on Xbox One controllers [1 file, +20/-15]
  bf239d3835 Input: xpad - add support for 8BitDo Ultimate 2 Wireless Controller [1 file, +1/-0]
  38bb0170d6 Input: xpad - fix two controller table values [1 file, +2/-2]
  2910019b04 mm: vmalloc: support more granular vrealloc() sizing [2 files, +25/-7]
  6166c3cf40 mm/huge_memory: fix dereferencing invalid pmd migration entry [1 file, +8/-3]
  b543a5a73b mm/userfaultfd: fix uninitialized output field for -EAGAIN race [1 file, +22/-6]
  7f37e31483 io_uring: ensure deferred completions are flushed for multishot [1 file, +8/-0]
  abbc99e898 arm64: cpufeature: Move arm64_use_ng_mappings to the .data section to prevent wrong idmap generation [1 file, +8/-1]
  d66a22f6a4 memblock: Accept allocated memory before use in memblock_double_array() [1 file, +8/-1]
  d63851049f module: ensure that kobject_put() is safe for module type kobjects [1 file, +3/-1]
  75f23e49ad usb: gadget: f_ecm: Add get_status callback [1 file, +7/-0]
  d1c8fa4c6e usb: gadget: Use get_status callback to set remote wakeup capability [1 file, +5/-7]
  3366a19948 usb: typec: tcpm: delay SNK_TRY_WAIT_DEBOUNCE to SRC_TRYWAIT transition [1 file, +1/-1]
  5ad298d6d4 usb: typec: ucsi: displayport: Fix NULL pointer access [1 file, +2/-0]
  afe8849597 types: Complement the aligned types with signed 64-bit one [2 files, +3/-1]
  02a77b3020 loop: Use bdev limit helpers for configuring discard [1 file, +4/-4]
  722f6dece7 loop: Simplify discard granularity calc [1 file, +1/-2]
  0558ce095b loop: Fix ABBA locking race [1 file, +15/-15]
  5e1470b276 loop: refactor queue limits updates [1 file, +20/-16]
  a781ffe410 loop: factor out a loop_assign_backing_file helper [1 file, +10/-10]
  184b147b9f loop: Add sanity check for read/write_iter [1 file, +23/-0]
  19fa2a4830 nvme: unblock ctrl state transition for firmware update [1 file, +2/-1]
  3edac2949e io_uring/sqpoll: Increase task_work submission batch size [1 file, +1/-1]
  cd010271a9 do_umount(): add missing barrier before refcount checks in sync case [1 file, +2/-1]
  2482f7705b io_uring: always arm linked timeouts prior to issue [1 file, +15/-35]
  564d25b1a6 mm: page_alloc: don't steal single pages from biggest buddy [1 file, +34/-46]
  16bae58f73 mm: page_alloc: speed up fallbacks in rmqueue_bulk() [1 file, +80/-33]
  86b37810fa sched/eevdf: Fix se->slice being set to U64_MAX and resulting crash [1 file, +1/-3]
  2a3915e861 arm64: insn: Add support for encoding DSB [2 files, +38/-23]
  ec5bca57af arm64: proton-pack: Expose whether the platform is mitigated by firmware [2 files, +6/-0]
  f2aebb8ec6 arm64: proton-pack: Expose whether the branchy loop k value [2 files, +6/-0]
  38c345fd54 arm64: bpf: Add BHB mitigation to the epilogue for cBPF programs [3 files, +52/-5]
  e5f5100f1c arm64: bpf: Only mitigate cBPF programs loaded by unprivileged users [1 file, +3/-0]
  2176530849 arm64: proton-pack: Add new CPUs 'k' values for branch mitigation [2 files, +3/-0]

Changes in 6.12.29
	dm: add missing unlock on in dm_keyslot_evict()
	fs/erofs/fileio: call erofs_onlinefolio_split() after bio_add_folio()
	Revert "btrfs: canonicalize the device path before adding it"
	arm64: dts: imx8mm-verdin: Link reg_usdhc2_vqmmc to usdhc2
	firmware: arm_scmi: Fix timeout checks on polling path
	can: mcan: m_can_class_unregister(): fix order of unregistration calls
	s390/pci: Fix missing check for zpci_create_device() error return
	wifi: cfg80211: fix out-of-bounds access during multi-link element defragmentation
	vfio/pci: Align huge faults to order
	s390/pci: Fix duplicate pci_dev_put() in disable_slot() when PF has child VFs
	can: mcp251xfd: mcp251xfd_remove(): fix order of unregistration calls
	can: rockchip_canfd: rkcanfd_remove(): fix order of unregistration calls
	ksmbd: prevent rename with empty string
	ksmbd: prevent out-of-bounds stream writes by validating *pos
	ksmbd: Fix UAF in __close_file_table_ids
	openvswitch: Fix unsafe attribute parsing in output_userspace()
	ksmbd: fix memory leak in parse_lease_state()
	s390/entry: Fix last breaking event handling in case of stack corruption
	sch_htb: make htb_deactivate() idempotent
	virtio_net: xsk: bind/unbind xsk for tx
	virtio-net: free xsk_buffs on error in virtnet_xsk_pool_enable()
	gre: Fix again IPv6 link-local address generation.
	net: ethernet: mtk_eth_soc: reset all TX queues on DMA free
	net: ethernet: mtk_eth_soc: do not reset PSE when setting FE
	can: m_can: m_can_class_allocate_dev(): initialize spin lock on device probe
	can: mcp251xfd: fix TDC setting for low data bit rates
	can: gw: fix RCU/BH usage in cgw_create_job()
	wifi: mac80211: fix the type of status_code for negotiated TID to Link Mapping
	ice: Initial support for E825C hardware in ice_adapter
	ice: use DSN instead of PCI BDF for ice_adapter index
	erofs: ensure the extra temporary copy is valid for shortened bvecs
	ipvs: fix uninit-value for saddr in do_output_route4
	netfilter: ipset: fix region locking in hash types
	bpf: Scrub packet on bpf_redirect_peer
	net: dsa: b53: allow leaky reserved multicast
	net: dsa: b53: keep CPU port always tagged again
	net: dsa: b53: fix clearing PVID of a port
	net: dsa: b53: fix flushing old pvid VLAN on pvid change
	net: dsa: b53: fix VLAN ID for untagged vlan on bridge leave
	net: dsa: b53: always rejoin default untagged VLAN on bridge leave
	net: dsa: b53: do not allow to configure VLAN 0
	net: dsa: b53: do not program vlans when vlan filtering is off
	net: dsa: b53: fix toggling vlan_filtering
	net: dsa: b53: fix learning on VLAN unaware bridges
	net: dsa: b53: do not set learning and unicast/multicast on up
	fbnic: Fix initialization of mailbox descriptor rings
	fbnic: Gate AXI read/write enabling on FW mailbox
	fbnic: Actually flush_tx instead of stalling out
	fbnic: Improve responsiveness of fbnic_mbx_poll_tx_ready
	fbnic: Pull fbnic_fw_xmit_cap_msg use out of interrupt context
	fbnic: Do not allow mailbox to toggle to ready outside fbnic_mbx_poll_tx_ready
	net: export a helper for adding up queue stats
	virtio-net: fix total qstat values
	Input: cyttsp5 - ensure minimum reset pulse width
	Input: cyttsp5 - fix power control issue on wakeup
	Input: mtk-pmic-keys - fix possible null pointer dereference
	Input: xpad - fix Share button on Xbox One controllers
	Input: xpad - add support for 8BitDo Ultimate 2 Wireless Controller
	Input: xpad - fix two controller table values
	Input: synaptics - enable InterTouch on Dynabook Portege X30-D
	Input: synaptics - enable InterTouch on Dynabook Portege X30L-G
	Input: synaptics - enable InterTouch on Dell Precision M3800
	Input: synaptics - enable SMBus for HP Elitebook 850 G1
	Input: synaptics - enable InterTouch on TUXEDO InfinityBook Pro 14 v5
	rust: clean Rust 1.88.0's `unnecessary_transmutes` lint
	objtool/rust: add one more `noreturn` Rust function for Rust 1.87.0
	rust: clean Rust 1.88.0's warning about `clippy::disallowed_macros` configuration
	staging: iio: adc: ad7816: Correct conditional logic for store mode
	staging: bcm2835-camera: Initialise dev in v4l2_dev
	staging: axis-fifo: Remove hardware resets for user errors
	staging: axis-fifo: Correct handling of tx_fifo_depth for size validation
	x86/mm: Eliminate window where TLB flushes may be inadvertently skipped
	mm: fix folio_pte_batch() on XEN PV
	mm: vmalloc: support more granular vrealloc() sizing
	mm/huge_memory: fix dereferencing invalid pmd migration entry
	mm/userfaultfd: fix uninitialized output field for -EAGAIN race
	selftests/mm: compaction_test: support platform with huge mount of memory
	selftests/mm: fix a build failure on powerpc
	KVM: SVM: Forcibly leave SMM mode on SHUTDOWN interception
	drm/amd/display: Shift DMUB AUX reply command if necessary
	io_uring: ensure deferred completions are flushed for multishot
	iio: adc: ad7606: fix serial register access
	iio: adc: rockchip: Fix clock initialization sequence
	iio: adis16201: Correct inclinometer channel resolution
	iio: imu: inv_mpu6050: align buffer for timestamp
	iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_fifo
	iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_tagged_fifo
	drm/v3d: Add job to pending list if the reset was skipped
	drm/xe: Add page queue multiplier
	drm/amdgpu/vcn: using separate VCN1_AON_SOC offset
	drm/amd/display: Fix invalid context error in dml helper
	drm/amd/display: more liberal vmin/vmax update for freesync
	drm/amd/display: Fix the checking condition in dmub aux handling
	drm/amd/display: Remove incorrect checking in dmub aux handler
	drm/amd/display: Fix wrong handling for AUX_DEFER case
	drm/amd/display: Copy AUX read reply data whenever length > 0
	drm/amdgpu/hdp4: use memcfg register to post the write for HDP flush
	drm/amdgpu/hdp5.2: use memcfg register to post the write for HDP flush
	drm/amdgpu/hdp5: use memcfg register to post the write for HDP flush
	drm/amdgpu/hdp6: use memcfg register to post the write for HDP flush
	drm/amdgpu/hdp7: use memcfg register to post the write for HDP flush
	usb: uhci-platform: Make the clock really optional
	smb: client: Avoid race in open_cached_dir with lease breaks
	xen: swiotlb: Use swiotlb bouncing if kmalloc allocation demands it
	xenbus: Use kref to track req lifetime
	accel/ivpu: Increase state dump msg timeout
	arm64: cpufeature: Move arm64_use_ng_mappings to the .data section to prevent wrong idmap generation
	clocksource/i8253: Use raw_spinlock_irqsave() in clockevent_i8253_disable()
	memblock: Accept allocated memory before use in memblock_double_array()
	module: ensure that kobject_put() is safe for module type kobjects
	x86/microcode: Consolidate the loader enablement checking
	ocfs2: fix the issue with discontiguous allocation in the global_bitmap
	ocfs2: switch osb->disable_recovery to enum
	ocfs2: implement handshaking with ocfs2 recovery thread
	ocfs2: stop quota recovery before disabling quotas
	usb: dwc3: gadget: Make gadget_wakeup asynchronous
	usb: cdnsp: Fix issue with resuming from L1
	usb: cdnsp: fix L1 resume issue for RTL_REVISION_NEW_LPM version
	usb: gadget: f_ecm: Add get_status callback
	usb: gadget: tegra-xudc: ACK ST_RC after clearing CTRL_RUN
	usb: gadget: Use get_status callback to set remote wakeup capability
	usb: host: tegra: Prevent host controller crash when OTG port is used
	usb: misc: onboard_usb_dev: fix support for Cypress HX3 hubs
	usb: typec: tcpm: delay SNK_TRY_WAIT_DEBOUNCE to SRC_TRYWAIT transition
	usb: typec: ucsi: displayport: Fix NULL pointer access
	USB: usbtmc: use interruptible sleep in usbtmc_read
	usb: usbtmc: Fix erroneous get_stb ioctl error returns
	usb: usbtmc: Fix erroneous wait_srq ioctl return
	usb: usbtmc: Fix erroneous generic_read ioctl return
	iio: accel: adxl367: fix setting odr for activity time update
	iio: temp: maxim-thermocouple: Fix potential lack of DMA safe buffer.
	types: Complement the aligned types with signed 64-bit one
	iio: accel: adxl355: Make timestamp 64-bit aligned using aligned_s64
	iio: adc: dln2: Use aligned_s64 for timestamp
	MIPS: Fix MAX_REG_OFFSET
	riscv: misaligned: Add handling for ZCB instructions
	loop: Use bdev limit helpers for configuring discard
	loop: Simplify discard granularity calc
	loop: Fix ABBA locking race
	loop: refactor queue limits updates
	loop: factor out a loop_assign_backing_file helper
	loop: Add sanity check for read/write_iter
	drm/panel: simple: Update timings for AUO G101EVN010
	nvme: unblock ctrl state transition for firmware update
	riscv: misaligned: factorize trap handling
	riscv: misaligned: enable IRQs while handling misaligned accesses
	drm/xe/tests/mocs: Update xe_force_wake_get() return handling
	drm/xe/tests/mocs: Hold XE_FORCEWAKE_ALL for LNCF regs
	io_uring/sqpoll: Increase task_work submission batch size
	do_umount(): add missing barrier before refcount checks in sync case
	Revert "um: work around sched_yield not yielding in time-travel mode"
	rust: allow Rust 1.87.0's `clippy::ptr_eq` lint
	rust: clean Rust 1.88.0's `clippy::uninlined_format_args` lint
	io_uring: always arm linked timeouts prior to issue
	Bluetooth: btmtk: Remove resetting mt7921 before downloading the fw
	Bluetooth: btmtk: Remove the resetting step before downloading the fw
	mm: page_alloc: don't steal single pages from biggest buddy
	mm: page_alloc: speed up fallbacks in rmqueue_bulk()
	sched/eevdf: Fix se->slice being set to U64_MAX and resulting crash
	arm64: insn: Add support for encoding DSB
	arm64: proton-pack: Expose whether the platform is mitigated by firmware
	arm64: proton-pack: Expose whether the branchy loop k value
	arm64: bpf: Add BHB mitigation to the epilogue for cBPF programs
	arm64: bpf: Only mitigate cBPF programs loaded by unprivileged users
	arm64: proton-pack: Add new CPUs 'k' values for branch mitigation
	x86/bpf: Call branch history clearing sequence on exit
	x86/bpf: Add IBHF call at end of classic BPF
	x86/bhi: Do not set BHI_DIS_S in 32-bit mode
	x86/speculation: Simplify and make CALL_NOSPEC consistent
	x86/speculation: Add a conditional CS prefix to CALL_NOSPEC
	x86/speculation: Remove the extra #ifdef around CALL_NOSPEC
	Documentation: x86/bugs/its: Add ITS documentation
	x86/its: Enumerate Indirect Target Selection (ITS) bug
	x86/its: Add support for ITS-safe indirect thunk
	x86/its: Add support for ITS-safe return thunk
	x86/its: Enable Indirect Target Selection mitigation
	x86/its: Add "vmexit" option to skip mitigation on some CPUs
	x86/its: Add support for RSB stuffing mitigation
	x86/its: Align RETs in BHB clear sequence to avoid thunking
	x86/ibt: Keep IBT disabled during alternative patching
	x86/its: Use dynamic thunks for indirect branches
	selftest/x86/bugs: Add selftests for ITS
	x86/its: Fix build errors when CONFIG_MODULES=n
	x86/its: FineIBT-paranoid vs ITS
	Linux 6.12.29

Change-Id: I00ff9cc212474331d43028ec90a190dcd1dfa697
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-06-05 11:52:13 +00:00
Chris Lu 111a892a23 Bluetooth: btmtksdio: Do close if SDIO card removed without close
commit 0b6d58bc6ea85e57de25c828444928e4a0aa79cb upstream.

To prevent Bluetooth SDIO card from be physically removed suddenly,
driver needs to ensure btmtksdio_close is called before
btmtksdio_remove to disable interrupts and txrx workqueue.

Fixes: 6ac4233afb9a ("Bluetooth: btmtksdio: Prevent enabling interrupts after IRQ handler removal")
Signed-off-by: Chris Lu <chris.lu@mediatek.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-29 11:03:23 +02:00
Chris Lu 3e0dc2b4f6 Bluetooth: btmtksdio: Check function enabled before doing close
commit 07e90048e356a29079fbc011cfc2e1fa1d1c5ac9 upstream.

Check BTMTKSDIO_FUNC_ENABLED flag before doing close to prevent
btmtksdio_close been called twice.

Fixes: 6ac4233afb9a ("Bluetooth: btmtksdio: Prevent enabling interrupts after IRQ handler removal")
Signed-off-by: Chris Lu <chris.lu@mediatek.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-29 11:03:23 +02:00
En-Wei Wu 6a1f9a709a Bluetooth: btusb: use skb_pull to avoid unsafe access in QCA dump handling
[ Upstream commit 4bcb0c7dc25446b99fc7a8fa2a143d69f3314162 ]

Use skb_pull() and skb_pull_data() to safely parse QCA dump packets.

This avoids direct pointer math on skb->data, which could lead to
invalid access if the packet is shorter than expected.

Fixes: 20981ce2d5 ("Bluetooth: btusb: Add WCN6855 devcoredump support")
Signed-off-by: En-Wei Wu <en-wei.wu@canonical.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-05-29 11:03:16 +02:00
Sean Wang 7ec409ee15 Bluetooth: btmtksdio: Prevent enabling interrupts after IRQ handler removal
[ Upstream commit 6ac4233afb9a389a7629b7f812395d1d1eca5a83 ]

Ensure interrupts are not re-enabled when the IRQ handler has already been
removed. This prevents unexpected IRQ handler execution due to stale or
unhandled interrupts.

Modify btmtksdio_txrx_work to check if bdev->func->irq_handler exists
before calling sdio_writel to enable interrupts.

Co-developed-by: Pedro Tsai <pedro.tsai@mediatek.com>
Signed-off-by: Pedro Tsai <pedro.tsai@mediatek.com>
Co-developed-by: Felix Freimann <felix.freimann@mediatek.com>
Signed-off-by: Felix Freimann <felix.freimann@mediatek.com>
Signed-off-by: Sean Wang <sean.wang@mediatek.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-05-29 11:02:07 +02:00
Greg Kroah-Hartman 62cd1edf4d Merge 6.12.28 into android16-6.12-lts
GKI (arm64) relevant 33 out of 166 changes, affecting 52 files +454/-363
  0aaae77be5 ALSA: usb-audio: Add retry on -EPROTO from usb_set_interface() [1 file, +7/-0]
  fdf0ae5e9e ALSA: usb-audio: Add second USB ID for Jabra Evolve 65 headset [1 file, +2/-1]
  38d9ca7405 binder: fix offset calculation in debug log [1 file, +1/-1]
  f1dfc94584 drm/fdinfo: Protect against driver unbind [1 file, +6/-0]
  090c8714ef arm64: errata: Add missing sentinels to Spectre-BHB MIDR arrays [1 file, +2/-0]
  eb9b72e4fe mm/memblock: pass size instead of end to memblock_set_node() [1 file, +1/-1]
  9c4ddea497 mm/memblock: repeat setting reserved region nid if array is doubled [1 file, +10/-0]
  0988dd0263 tracing: Do not take trace_event_sem in print_event_fields() [1 file, +2/-2]
  f451082572 dm-bufio: don't schedule in atomic context [1 file, +8/-1]
  510aea4ef0 dm: always update the array size in realloc_argv on success [1 file, +3/-2]
  2e303d0107 iommu: Fix two issues in iommu_copy_struct_from_user() [1 file, +4/-4]
  573b047229 cpufreq: Avoid using inconsistent policy->min and policy->max [1 file, +25/-7]
  962d88304c cpufreq: Fix setting policy limits when frequency tables are used [4 files, +73/-41]
  1f27a3e93b tracing: Fix oob write in trace_seq_to_buffer() [1 file, +3/-2]
  220395054c ASoC: soc-core: Stop using of_property_read_bool() for non-boolean properties [1 file, +13/-19]
  29a4a29112 ASoC: soc-pcm: Fix hw_params() and DAPM widget sequence [1 file, +4/-1]
  65d3c57061 xsk: Fix race condition in AF_XDP generic RX path [4 files, +6/-6]
  fe81c26d2d Bluetooth: hci_conn: Remove alloc from critical section [1 file, +10/-18]
  eb8b860e87 Bluetooth: hci_conn: Fix not setting conn_timeout for Broadcast Receiver [6 files, +95/-107]
  620810ac1f Bluetooth: hci_conn: Fix not setting timeout for BIG Create Sync [7 files, +88/-109]
  432572d536 Bluetooth: L2CAP: copy RX timestamp to new fragments [1 file, +3/-0]
  6b1355860d scsi: ufs: core: Remove redundant query_complete trace [1 file, +0/-2]
  5ad0b1b554 nvme-pci: fix queue unquiesce check on slot_reset [1 file, +1/-1]
  6effe1c0fa net: ipv6: fix UDPv6 GSO segmentation with NAT [1 file, +60/-1]
  c0dba059b1 net: use sock_gen_put() when sk_state is TCP_TIME_WAIT [2 files, +2/-2]
  e10ec6e32b blk-mq: create correct map for fallback case [1 file, +1/-2]
  dab2a13059 mm, slab: clean up slab->obj_exts always [1 file, +7/-20]
  0a188c0e19 sch_htb: make htb_qlen_notify() idempotent [1 file, +2/-0]
  969d8beaa2 firmware: arm_scmi: Balance device refcount when destroying devices [1 file, +3/-0]
  3b41b5efae kernel: param: rename locate_module_kobject [1 file, +3/-3]
  69113bf740 kernel: globalize lookup_or_create_module_kobject() [2 files, +3/-1]
  e1eea69858 drivers: base: handle module_kobject creation [1 file, +5/-8]
  db62809197 dm: fix copying after src array boundaries [1 file, +1/-1]

Changes in 6.12.28
        Bluetooth: btusb: add Foxconn 0xe0fc for Qualcomm WCN785x
        Bluetooth: btusb: Add one more ID 0x0489:0xe0f3 for Qualcomm WCN785x
        Bluetooth: btusb: Add one more ID 0x13d3:0x3623 for Qualcomm WCN785x
        Bluetooth: btusb: Add ID 0x2c7c:0x0130 for Qualcomm WCN785x
        Bluetooth: btusb: Add new VID/PID for WCN785x
        Bluetooth: btusb: Add 13 USB device IDs for Qualcomm WCN785x
        Revert "rndis_host: Flag RNDIS modems as WWAN devices"
        ALSA: usb-audio: Add retry on -EPROTO from usb_set_interface()
        ALSA: usb-audio: Add second USB ID for Jabra Evolve 65 headset
        binder: fix offset calculation in debug log
        btrfs: adjust subpage bit start based on sectorsize
        btrfs: fix COW handling in run_delalloc_nocow()
        cpufreq: intel_pstate: Unchecked MSR aceess in legacy mode
        drm/fdinfo: Protect against driver unbind
        drm/nouveau: Fix WARN_ON in nouveau_fence_context_kill()
        EDAC/altera: Test the correct error reg offset
        EDAC/altera: Set DDR and SDMMC interrupt mask before registration
        i2c: imx-lpi2c: Fix clock count when probe defers
        arm64: errata: Add missing sentinels to Spectre-BHB MIDR arrays
        parisc: Fix double SIGFPE crash
        perf/x86/intel: Only check the group flag for X86 leader
        perf/x86/intel: KVM: Mask PEBS_ENABLE loaded for guest with vCPU's value.
        amd-xgbe: Fix to ensure dependent features are toggled with RX checksum offload
        irqchip/qcom-mpm: Prevent crash when trying to handle non-wake GPIOs
        mm/memblock: pass size instead of end to memblock_set_node()
        mm/memblock: repeat setting reserved region nid if array is doubled
        mmc: renesas_sdhi: Fix error handling in renesas_sdhi_probe
        spi: tegra114: Don't fail set_cs_timing when delays are zero
        tracing: Do not take trace_event_sem in print_event_fields()
        wifi: brcm80211: fmac: Add error handling for brcmf_usb_dl_writeimage()
        x86/boot/sev: Support memory acceptance in the EFI stub under SVSM
        dm-bufio: don't schedule in atomic context
        dm-integrity: fix a warning on invalid table line
        dm: always update the array size in realloc_argv on success
        drm/amdgpu: Fix offset for HDP remap in nbio v7.11
        drm: Select DRM_KMS_HELPER from DRM_DEBUG_DP_MST_TOPOLOGY_REFS
        iommu/amd: Fix potential buffer overflow in parse_ivrs_acpihid
        iommu/arm-smmu-v3: Fix iommu_device_probe bug due to duplicated stream ids
        iommu/arm-smmu-v3: Fix pgsize_bit for sva domains
        iommu/vt-d: Apply quirk_iommu_igfx for 8086:0044 (QM57/QS57)
        iommu: Fix two issues in iommu_copy_struct_from_user()
        platform/x86/amd: pmc: Require at least 2.5 seconds between HW sleep cycles
        platform/x86/intel-uncore-freq: Fix missing uncore sysfs during CPU hotplug
        ksmbd: fix use-after-free in ksmbd_session_rpc_open
        ksmbd: fix use-after-free in kerberos authentication
        ksmbd: fix use-after-free in session logoff
        smb: client: fix zero length for mkdir POSIX create context
        cpufreq: Avoid using inconsistent policy->min and policy->max
        cpufreq: Fix setting policy limits when frequency tables are used
        tracing: Fix oob write in trace_seq_to_buffer()
        drm/amd/display: Default IPS to RCG_IN_ACTIVE_IPS2_IN_OFF
        ASoC: soc-core: Stop using of_property_read_bool() for non-boolean properties
        ASoC: cs-amp-lib-test: Don't select SND_SOC_CS_AMP_LIB
        ASoC: soc-pcm: Fix hw_params() and DAPM widget sequence
        book3s64/radix : Align section vmemmap start address to PAGE_SIZE
        pinctrl: imx: Return NULL if no group is matched and found
        powerpc/boot: Check for ld-option support
        ASoC: Intel: sof_sdw: Add NULL check in asoc_sdw_rt_dmic_rtd_init()
        ALSA: hda/realtek - Enable speaker for HP platform
        drm/i915/pxp: fix undefined reference to `intel_pxp_gsccs_is_ready_for_sessions'
        wifi: iwlwifi: don't warn if the NIC is gone in resume
        wifi: iwlwifi: fix the check for the SCRATCH register upon resume
        wifi: plfxlc: Remove erroneous assert in plfxlc_mac_release
        powerpc/boot: Fix dash warning
        vxlan: vnifilter: Fix unlocked deletion of default FDB entry
        xsk: Fix race condition in AF_XDP generic RX path
        net/mlx5e: Use custom tunnel header for vxlan gbp
        net/mlx5: E-Switch, Initialize MAC Address for Default GID
        net/mlx5e: TC, Continue the attr process even if encap entry is invalid
        net/mlx5e: Fix lock order in mlx5e_tx_reporter_ptpsq_unhealthy_recover
        net/mlx5: E-switch, Fix error handling for enabling roce
        accel/ivpu: Correct DCT interrupt handling
        ASoC: amd: acp: Fix NULL pointer deref in acp_i2s_set_tdm_slot
        Bluetooth: hci_conn: Remove alloc from critical section
        Bluetooth: hci_conn: Fix not setting conn_timeout for Broadcast Receiver
        Bluetooth: hci_conn: Fix not setting timeout for BIG Create Sync
        Bluetooth: btintel_pcie: Avoid redundant buffer allocation
        Bluetooth: btusb: avoid NULL pointer dereference in skb_dequeue()
        Bluetooth: btintel_pcie: Add additional to checks to clear TX/RX paths
        Bluetooth: L2CAP: copy RX timestamp to new fragments
        net: mscc: ocelot: delete PVID VLAN when readding it as non-PVID
        octeon_ep_vf: Resolve netdevice usage count issue
        bnxt_en: improve TX timestamping FIFO configuration
        rtase: Modify the condition used to detect overflow in rtase_calc_time_mitigation
        net: ethernet: mtk-star-emac: fix spinlock recursion issues on rx/tx poll
        net: ethernet: mtk-star-emac: rearm interrupts in rx_poll only when advised
        net: ethernet: mtk_eth_soc: sync mtk_clks_source_name array
        pds_core: make pdsc_auxbus_dev_del() void
        pds_core: specify auxiliary_device to be created
        pds_core: remove write-after-free of client_id
        net_sched: drr: Fix double list add in class with netem as child qdisc
        net_sched: hfsc: Fix a UAF vulnerability in class with netem as child qdisc
        net_sched: ets: Fix double list add in class with netem as child qdisc
        net_sched: qfq: Fix double list add in class with netem as child qdisc
        ice: Check VF VSI Pointer Value in ice_vc_add_fdir_fltr()
        idpf: fix offloads support for encapsulated packets
        scsi: ufs: core: Remove redundant query_complete trace
        ALSA: ump: Fix buffer overflow at UMP SysEx message conversion
        nvme-pci: fix queue unquiesce check on slot_reset
        drm/tests: shmem: Fix memleak
        drm/mipi-dbi: Fix blanking for non-16 bit formats
        net: dlink: Correct endianness handling of led_mode
        net: mdio: mux-meson-gxl: set reversed bit when using internal phy
        idpf: fix potential memory leak on kcalloc() failure
        idpf: protect shutdown from reset
        igc: fix lock order in igc_ptp_reset
        net: ethernet: mtk_eth_soc: fix SER panic with 4GB+ RAM
        net: dsa: felix: fix broken taprio gate states after clock jump
        net: ipv6: fix UDPv6 GSO segmentation with NAT
        ALSA: hda/realtek: Fix built-mic regression on other ASUS models
        bnxt_en: Fix error handling path in bnxt_init_chip()
        bnxt_en: Fix ethtool selftest output in one of the failure cases
        bnxt_en: Add missing skb_mark_for_recycle() in bnxt_rx_vlan()
        bnxt_en: call pci_alloc_irq_vectors() after bnxt_reserve_rings()
        bnxt_en: Fix coredump logic to free allocated buffer
        bnxt_en: Fix out-of-bound memcpy() during ethtool -w
        bnxt_en: Fix ethtool -d byte order for 32-bit values
        nvme-tcp: fix premature queue removal and I/O failover
        nvme-tcp: select CONFIG_TLS from CONFIG_NVME_TCP_TLS
        nvmet-tcp: select CONFIG_TLS from CONFIG_NVME_TARGET_TCP_TLS
        ASoC: simple-card-utils: Fix pointer check in graph_util_parse_link_direction
        bnxt_en: fix module unload sequence
        net: use sock_gen_put() when sk_state is TCP_TIME_WAIT
        ptp: ocp: Fix NULL dereference in Adva board SMA sysfs operations
        net: lan743x: Fix memleak issue when GSO enabled
        net: fec: ERR007885 Workaround for conventional TX
        octeon_ep: Fix host hang issue during device reboot
        net: hns3: store rx VLAN tag offload state for VF
        net: hns3: fix an interrupt residual problem
        net: hns3: fixed debugfs tm_qset size
        net: hns3: defer calling ptp_clock_register()
        net: vertexcom: mse102x: Fix possible stuck of SPI interrupt
        net: vertexcom: mse102x: Fix LEN_MASK
        net: vertexcom: mse102x: Add range check for CMD_RTS
        net: vertexcom: mse102x: Fix RX error handling
        blk-mq: create correct map for fallback case
        mm, slab: clean up slab->obj_exts always
        bcachefs: Remove incorrect __counted_by annotation
        net: Fix the devmem sock opts and msgs for parisc
        accel/ivpu: Make DB_ID and JOB_ID allocations incremental
        accel/ivpu: Use xa_alloc_cyclic() instead of custom function
        accel/ivpu: Fix a typo
        accel/ivpu: Update VPU FW API headers
        accel/ivpu: Abort all jobs after command queue unregister
        accel/ivpu: Fix locking order in ivpu_job_submit
        accel/ivpu: Add handling of VPU_JSM_STATUS_MVNCI_CONTEXT_VIOLATION_HW
        sch_htb: make htb_qlen_notify() idempotent
        sch_drr: make drr_qlen_notify() idempotent
        sch_hfsc: make hfsc_qlen_notify() idempotent
        sch_qfq: make qfq_qlen_notify() idempotent
        sch_ets: make est_qlen_notify() idempotent
        drm/xe: Ensure fixed_slice_mode gets set after ccs_mode change
        firmware: arm_scmi: Balance device refcount when destroying devices
        firmware: arm_ffa: Skip Rx buffer ownership release if not acquired
        arm64: dts: imx95: Correct the range of PCIe app-reg region
        ARM: dts: opos6ul: add ksz8081 phy properties
        arm64: dts: st: Adjust interrupt-controller for stm32mp25 SoCs
        arm64: dts: st: Use 128kB size for aliased GIC400 register access on stm32mp25 SoCs
        Revert "drm/meson: vclk: fix calculation of 59.94 fractional rates"
        kernel: param: rename locate_module_kobject
        kernel: globalize lookup_or_create_module_kobject()
        drivers: base: handle module_kobject creation
        drm/amd/display: Add scoped mutexes for amdgpu_dm_dhcp
        drm/amd/display: Fix slab-use-after-free in hdcp
        dm: fix copying after src array boundaries
        Linux 6.12.28

Change-Id: I79f3d50a10acfe53f329b4b5a4af502f488c61f3
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-05-27 07:18:43 +00:00
Neeraj Sanjay Kale d22496de50 Bluetooth: btnxpuart: Fix kernel panic during FW release
commit 1f77c05408c96bc0b58ae476a9cadc9e5b9cfd0f upstream.

This fixes a kernel panic seen during release FW in a stress test
scenario where WLAN and BT FW download occurs simultaneously, and due to
a HW bug, chip sends out only 1 bootloader signatures.

When driver receives the bootloader signature, it enters FW download
mode, but since no consequtive bootloader signatures seen, FW file is
not requested.

After 60 seconds, when FW download times out, release_firmware causes a
kernel panic.

[ 2601.949184] Unable to handle kernel paging request at virtual address 0000312e6f006573
[ 2601.992076] user pgtable: 4k pages, 48-bit VAs, pgdp=0000000111802000
[ 2601.992080] [0000312e6f006573] pgd=0000000000000000, p4d=0000000000000000
[ 2601.992087] Internal error: Oops: 0000000096000021 [#1] PREEMPT SMP
[ 2601.992091] Modules linked in: algif_hash algif_skcipher af_alg btnxpuart(O) pciexxx(O) mlan(O) overlay fsl_jr_uio caam_jr caamkeyblob_desc caamhash_desc caamalg_desc crypto_engine authenc libdes crct10dif_ce polyval_ce snd_soc_fsl_easrc snd_soc_fsl_asoc_card imx8_media_dev(C) snd_soc_fsl_micfil polyval_generic snd_soc_fsl_xcvr snd_soc_fsl_sai snd_soc_imx_audmux snd_soc_fsl_asrc snd_soc_imx_card snd_soc_imx_hdmi snd_soc_fsl_aud2htx snd_soc_fsl_utils imx_pcm_dma dw_hdmi_cec flexcan can_dev
[ 2602.001825] CPU: 2 PID: 20060 Comm: hciconfig Tainted: G         C O       6.6.23-lts-next-06236-gb586a521770e #1
[ 2602.010182] Hardware name: NXP i.MX8MPlus EVK board (DT)
[ 2602.010185] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 2602.010191] pc : _raw_spin_lock+0x34/0x68
[ 2602.010201] lr : free_fw_priv+0x20/0xfc
[ 2602.020561] sp : ffff800089363b30
[ 2602.020563] x29: ffff800089363b30 x28: ffff0000d0eb5880 x27: 0000000000000000
[ 2602.020570] x26: 0000000000000000 x25: ffff0000d728b330 x24: 0000000000000000
[ 2602.020577] x23: ffff0000dc856f38
[ 2602.033797] x22: ffff800089363b70 x21: ffff0000dc856000
[ 2602.033802] x20: ff00312e6f006573 x19: ffff0000d0d9ea80 x18: 0000000000000000
[ 2602.033809] x17: 0000000000000000 x16: 0000000000000000 x15: 0000aaaad80dd480
[ 2602.083320] x14: 0000000000000000 x13: 00000000000001b9 x12: 0000000000000002
[ 2602.083326] x11: 0000000000000000 x10: 0000000000000a60 x9 : ffff800089363a30
[ 2602.083333] x8 : ffff0001793d75c0 x7 : ffff0000d6dbc400 x6 : 0000000000000000
[ 2602.083339] x5 : 00000000410fd030 x4 : 0000000000000000 x3 : 0000000000000001
[ 2602.083346] x2 : 0000000000000000 x1 : 0000000000000001 x0 : ff00312e6f006573
[ 2602.083354] Call trace:
[ 2602.083356]  _raw_spin_lock+0x34/0x68
[ 2602.083364]  release_firmware+0x48/0x6c
[ 2602.083370]  nxp_setup+0x3c4/0x540 [btnxpuart]
[ 2602.083383]  hci_dev_open_sync+0xf0/0xa34
[ 2602.083391]  hci_dev_open+0xd8/0x178
[ 2602.083399]  hci_sock_ioctl+0x3b0/0x590
[ 2602.083405]  sock_do_ioctl+0x60/0x118
[ 2602.083413]  sock_ioctl+0x2f4/0x374
[ 2602.091430]  __arm64_sys_ioctl+0xac/0xf0
[ 2602.091437]  invoke_syscall+0x48/0x110
[ 2602.091445]  el0_svc_common.constprop.0+0xc0/0xe0
[ 2602.091452]  do_el0_svc+0x1c/0x28
[ 2602.091457]  el0_svc+0x40/0xe4
[ 2602.091465]  el0t_64_sync_handler+0x120/0x12c
[ 2602.091470]  el0t_64_sync+0x190/0x194

Fixes: e3c4891098 ("Bluetooth: btnxpuart: Handle FW Download Abort scenario")
Fixes: 689ca16e52 ("Bluetooth: NXP: Add protocol support for NXP Bluetooth chipsets")
Signed-off-by: Neeraj Sanjay Kale <neeraj.sanjaykale@nxp.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Bin Lan <bin.lan.cn@windriver.com>
Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-22 14:29:53 +02:00
Greg Kroah-Hartman ee0d567613 Merge 6.12.25 into android16-6.12-lts
GKI (arm64) relevant 33 out of 218 changes, affecting 50 files +373/-248
  5ec9039702 driver core: bus: add irq_get_affinity callback to bus_type [1 file, +3/-0]
  fe2bdefe86 blk-mq: introduce blk_mq_map_hw_queues [2 files, +39/-0]
  6ad0acb56b Bluetooth: hci_event: Fix sending MGMT_EV_DEVICE_FOUND for invalid address [1 file, +3/-2]
  d49798ecd2 Bluetooth: l2cap: Check encryption key size on incoming connection [1 file, +2/-1]
  b02c2ac2f3 ipv6: add exception routes to GC list in rt6_insert_exception [1 file, +1/-0]
  61765e1b41 ethtool: cmis_cdb: use correct rpl size in ethtool_cmis_module_poll() [1 file, +1/-1]
  41e43134dd block: fix resource leak in blk_register_queue() error path [1 file, +2/-0]
  0175902f6e loop: aio inherit the ioprio of original request [1 file, +1/-1]
  78253d44e9 loop: stop using vfs_iter_{read,write} for buffered I/O [1 file, +17/-95]
  28da4dd840 writeback: fix false warning in inode_to_wb() [1 file, +1/-0]
  f2e2926e9e Revert "PCI: Avoid reset when disabled via sysfs" [1 file, +0/-4]
  569bbe2fc7 Bluetooth: l2cap: Process valid commands in too long frame [1 file, +17/-1]
  694521cb3f loop: properly send KOBJ_CHANGED uevent for disk device [1 file, +2/-2]
  c45ba83935 loop: LOOP_SET_FD: send uevents for partitions [1 file, +2/-1]
  4f34d6f979 mm/compaction: fix bug in hugetlb handling pathway [1 file, +3/-3]
  b609a60e31 mm/gup: fix wrongly calculated returned value in fault_in_safe_writeable() [1 file, +2/-2]
  8338e0723f mm: fix filemap_get_folios_contig returning batches of identical folios [1 file, +1/-0]
  029458063e mm: fix apply_to_existing_page_range() [1 file, +2/-2]
  b9e3579213 ovl: don't allow datadir only [1 file, +5/-0]
  8baa747193 slab: ensure slab->obj_exts is clear in a newly allocated slab page [1 file, +10/-0]
  5f878db827 string: Add load_unaligned_zeropad() code path to sized_strscpy() [1 file, +10/-3]
  5683eaf4ee tracing: Fix filter string testing [1 file, +2/-2]
  c3e31d6139 virtiofs: add filesystem context source name check [1 file, +3/-0]
  c1a485c46c cpufreq: Reference count policy in cpufreq_update_limits() [1 file, +8/-0]
  5b34f40cda block: remove rq_list_move [1 file, +0/-17]
  2ad0f19a4e block: add a rq_list type [11 files, +104/-88]
  7e2d224939 block: don't reorder requests in blk_add_rq_to_plug [3 files, +4/-4]
  b906c1ad25 mm/vma: add give_up_on_oom option on modify/merge, use in uffd release [3 files, +53/-7]
  d30b9c5950 bpf: add find_containing_subprog() utility function [1 file, +24/-4]
  1d572c6048 bpf: track changes_pkt_data property for global functions [2 files, +32/-1]
  3846e2bea5 bpf: check changes_pkt_data property for extension programs [2 files, +13/-4]
  f0946dcccb bpf: fix null dereference when computing changes_pkt_data of prog w/o subprogs [1 file, +5/-2]
  f78507c1ef block: make struct rq_list available for !CONFIG_BLOCK [1 file, +1/-1]

Changes in 6.12.25
        scsi: hisi_sas: Enable force phy when SATA disk directly connected
        wifi: at76c50x: fix use after free access in at76_disconnect
        wifi: mac80211: Update skb's control block key in ieee80211_tx_dequeue()
        wifi: mac80211: Purge vif txq in ieee80211_do_stop()
        wifi: wl1251: fix memory leak in wl1251_tx_work
        scsi: iscsi: Fix missing scsi_host_put() in error path
        driver core: bus: add irq_get_affinity callback to bus_type
        blk-mq: introduce blk_mq_map_hw_queues
        scsi: replace blk_mq_pci_map_queues with blk_mq_map_hw_queues
        scsi: smartpqi: Use is_kdump_kernel() to check for kdump
        md/raid10: fix missing discard IO accounting
        md/md-bitmap: fix stats collection for external bitmaps
        ASoC: dwc: always enable/disable i2s irqs
        ASoC: Intel: avs: Fix null-ptr-deref in avs_component_probe()
        crypto: tegra - remove redundant error check on ret
        crypto: tegra - Do not use fixed size buffers
        crypto: tegra - Fix IV usage for AES ECB
        ovl: remove unused forward declaration
        RDMA/usnic: Fix passing zero to PTR_ERR in usnic_ib_pci_probe()
        RDMA/hns: Fix wrong maximum DMA segment size
        ALSA: hda/cirrus_scodec_test: Don't select dependencies
        ALSA: hda: improve bass speaker support for ASUS Zenbook UM5606WA
        ALSA: hda/realtek: Workaround for resume on Dell Venue 11 Pro 7130
        ALSA: hda/realtek - Fixed ASUS platform headset Mic issue
        ASoC: cs42l43: Reset clamp override on jack removal
        RDMA/core: Silence oversized kvmalloc() warning
        Bluetooth: hci_event: Fix sending MGMT_EV_DEVICE_FOUND for invalid address
        Bluetooth: btrtl: Prevent potential NULL dereference
        Bluetooth: l2cap: Check encryption key size on incoming connection
        ipv6: add exception routes to GC list in rt6_insert_exception
        xen: fix multicall debug feature
        Revert "wifi: mac80211: Update skb's control block key in ieee80211_tx_dequeue()"
        igc: fix PTM cycle trigger logic
        igc: increase wait time before retrying PTM
        igc: move ktime snapshot into PTM retry loop
        igc: handle the IGC_PTP_ENABLED flag correctly
        igc: cleanup PTP module if probe fails
        igc: add lock preventing multiple simultaneous PTM transactions
        dt-bindings: soc: fsl: fsl,ls1028a-reset: Fix maintainer entry
        smc: Fix lockdep false-positive for IPPROTO_SMC.
        test suite: use %zu to print size_t
        pds_core: fix memory leak in pdsc_debugfs_add_qcq()
        ethtool: cmis_cdb: use correct rpl size in ethtool_cmis_module_poll()
        net: mctp: Set SOCK_RCU_FREE
        block: fix resource leak in blk_register_queue() error path
        netlink: specs: ovs_vport: align with C codegen capabilities
        net: openvswitch: fix nested key length validation in the set() action
        can: rockchip_canfd: fix broken quirks checks
        net: ngbe: fix memory leak in ngbe_probe() error path
        net: ethernet: ti: am65-cpsw: fix port_np reference counting
        eth: bnxt: fix missing ring index trim on error path
        loop: aio inherit the ioprio of original request
        loop: stop using vfs_iter_{read,write} for buffered I/O
        ata: libata-sata: Save all fields from sense data descriptor
        cxgb4: fix memory leak in cxgb4_init_ethtool_filters() error path
        netlink: specs: rt-link: add an attr layer around alt-ifname
        netlink: specs: rt-link: adjust mctp attribute naming
        net: b53: enable BPDU reception for management port
        net: bridge: switchdev: do not notify new brentries as changed
        net: txgbe: fix memory leak in txgbe_probe() error path
        net: dsa: mv88e6xxx: avoid unregistering devlink regions which were never registered
        net: dsa: mv88e6xxx: fix -ENOENT when deleting VLANs and MST is unsupported
        net: dsa: clean up FDB, MDB, VLAN entries on unbind
        net: dsa: free routing table on probe failure
        net: dsa: avoid refcount warnings when ds->ops->tag_8021q_vlan_del() fails
        ptp: ocp: fix start time alignment in ptp_ocp_signal_set
        net: ti: icss-iep: Add pwidth configuration for perout signal
        net: ti: icss-iep: Add phase offset configuration for perout signal
        net: ti: icss-iep: Fix possible NULL pointer dereference for perout request
        net: ethernet: mtk_eth_soc: reapply mdc divider on reset
        net: ethernet: mtk_eth_soc: correct the max weight of the queue limit for 100Mbps
        net: ethernet: mtk_eth_soc: revise QDMA packet scheduler settings
        riscv: Use kvmalloc_array on relocation_hashtable
        riscv: Properly export reserved regions in /proc/iomem
        riscv: module: Fix out-of-bounds relocation access
        riscv: module: Allocate PLT entries for R_RISCV_PLT32
        kunit: qemu_configs: SH: Respect kunit cmdline
        riscv: KGDB: Do not inline arch_kgdb_breakpoint()
        riscv: KGDB: Remove ".option norvc/.option rvc" for kgdb_compiled_break
        cpufreq/sched: Fix the usage of CPUFREQ_NEED_UPDATE_LIMITS
        objtool/rust: add one more `noreturn` Rust function for Rust 1.86.0
        rust: kasan/kbuild: fix missing flags on first build
        rust: disable `clippy::needless_continue`
        rust: kbuild: use `pound` to support GNU Make < 4.3
        writeback: fix false warning in inode_to_wb()
        Revert "PCI: Avoid reset when disabled via sysfs"
        ASoC: fsl: fsl_qmc_audio: Reset audio data pointers on TRIGGER_START event
        ASoC: codecs:lpass-wsa-macro: Fix vi feedback rate
        ASoC: codecs:lpass-wsa-macro: Fix logic of enabling vi channels
        ASoC: Intel: sof_sdw: Add quirk for Asus Zenbook S16
        ASoC: qcom: Fix sc7280 lpass potential buffer overflow
        asus-laptop: Fix an uninitialized variable
        block: integrity: Do not call set_page_dirty_lock()
        drm/v3d: Fix Indirect Dispatch configuration for V3D 7.1.6 and later
        dma-buf/sw_sync: Decrement refcount on error in sw_sync_ioctl_get_deadline()
        nfs: add missing selections of CONFIG_CRC32
        nfsd: decrease sc_count directly if fail to queue dl_recall
        i2c: atr: Fix wrong include
        ftrace: fix incorrect hash size in register_ftrace_direct()
        drm/msm/a6xx+: Don't let IB_SIZE overflow
        Bluetooth: l2cap: Process valid commands in too long frame
        Bluetooth: vhci: Avoid needless snprintf() calls
        btrfs: correctly escape subvol in btrfs_show_options()
        cpufreq/sched: Explicitly synchronize limits_changed flag handling
        crypto: caam/qi - Fix drv_ctx refcount bug
        hfs/hfsplus: fix slab-out-of-bounds in hfs_bnode_read_key
        i2c: cros-ec-tunnel: defer probe if parent EC is not present
        isofs: Prevent the use of too small fid
        loop: properly send KOBJ_CHANGED uevent for disk device
        loop: LOOP_SET_FD: send uevents for partitions
        mm/compaction: fix bug in hugetlb handling pathway
        mm/gup: fix wrongly calculated returned value in fault_in_safe_writeable()
        mm: fix filemap_get_folios_contig returning batches of identical folios
        mm: fix apply_to_existing_page_range()
        ovl: don't allow datadir only
        ksmbd: Fix dangling pointer in krb_authenticate
        ksmbd: fix use-after-free in smb_break_all_levII_oplock()
        ksmbd: Prevent integer overflow in calculation of deadtime
        ksmbd: fix the warning from __kernel_write_iter
        Revert "smb: client: Fix netns refcount imbalance causing leaks and use-after-free"
        Revert "smb: client: fix TCP timers deadlock after rmmod"
        riscv: Avoid fortify warning in syscall_get_arguments()
        selftests/mm: generate a temporary mountpoint for cgroup filesystem
        slab: ensure slab->obj_exts is clear in a newly allocated slab page
        smb3 client: fix open hardlink on deferred close file error
        string: Add load_unaligned_zeropad() code path to sized_strscpy()
        tracing: Fix filter string testing
        virtiofs: add filesystem context source name check
        x86/microcode/AMD: Extend the SHA check to Zen5, block loading of any unreleased standalone Zen5 microcode patches
        x86/cpu/amd: Fix workaround for erratum 1054
        x86/boot/sev: Avoid shared GHCB page for early memory acceptance
        scsi: megaraid_sas: Block zero-length ATA VPD inquiry
        scsi: ufs: exynos: Ensure consistent phy reference counts
        RDMA/cma: Fix workqueue crash in cma_netevent_work_handler
        RAS/AMD/ATL: Include row[13] bit in row retirement
        RAS/AMD/FMPM: Get masked address
        platform/x86: amd: pmf: Fix STT limits
        perf/x86/intel: Allow to update user space GPRs from PEBS records
        perf/x86/intel/uncore: Fix the scale of IIO free running counters on SNR
        perf/x86/intel/uncore: Fix the scale of IIO free running counters on ICX
        perf/x86/intel/uncore: Fix the scale of IIO free running counters on SPR
        drm/repaper: fix integer overflows in repeat functions
        drm/ast: Fix ast_dp connection status
        drm/msm/dsi: Add check for devm_kstrdup()
        drm/msm/a6xx: Fix stale rpmh votes from GPU
        drm/amdgpu: Prefer shadow rom when available
        drm/amd/display: prevent hang on link training fail
        drm/amd: Handle being compiled without SI or CIK support better
        drm/amd/display: Actually do immediate vblank disable
        drm/amd/display: Increase vblank offdelay for PSR panels
        drm/amd/pm: Prevent division by zero
        drm/amd/pm/powerplay: Prevent division by zero
        drm/amd/pm/smu11: Prevent division by zero
        drm/amd/pm/powerplay/hwmgr/smu7_thermal: Prevent division by zero
        drm/amd/pm/swsmu/smu13/smu_v13_0: Prevent division by zero
        drm/amd/pm/powerplay/hwmgr/vega20_thermal: Prevent division by zero
        drm/amdgpu/mes12: optimize MES pipe FW version fetching
        drm/i915/vrr: Add vrr.vsync_{start, end} in vrr_params_changed
        drm/xe: Use local fence in error path of xe_migrate_clear
        drm/amd/display: Add HP Elitebook 645 to the quirk list for eDP on DP1
        drm/amd/display: Protect FPU in dml2_validate()/dml21_validate()
        drm/amd/display: Protect FPU in dml21_copy()
        drm/amdgpu/mes11: optimize MES pipe FW version fetching
        drm/amdgpu/dma_buf: fix page_link check
        drm/nouveau: prime: fix ttm_bo_delayed_delete oops
        drm/imagination: fix firmware memory leaks
        drm/imagination: take paired job reference
        drm/sti: remove duplicate object names
        drm/xe: Fix an out-of-bounds shift when invalidating TLB
        drm/i915/gvt: fix unterminated-string-initialization warning
        drm/amdgpu: immediately use GTT for new allocations
        drm/amd/display: Do not enable Replay and PSR while VRR is on in amdgpu_dm_commit_planes()
        drm/amd/display: Protect FPU in dml2_init()/dml21_init()
        drm/amd/display: Add HP Probook 445 and 465 to the quirk list for eDP on DP1
        drm/xe/dma_buf: stop relying on placement in unmap
        drm/xe/userptr: fix notifier vs folio deadlock
        drm/xe: Set LRC addresses before guc load
        drm/amdgpu: fix warning of drm_mm_clean
        drm/mgag200: Fix value in <VBLKSTR> register
        arm64/sysreg: Update register fields for ID_AA64MMFR0_EL1
        arm64/sysreg: Add register fields for HDFGRTR2_EL2
        arm64/sysreg: Add register fields for HDFGWTR2_EL2
        arm64/sysreg: Add register fields for HFGITR2_EL2
        arm64/sysreg: Add register fields for HFGRTR2_EL2
        arm64/sysreg: Add register fields for HFGWTR2_EL2
        arm64/boot: Enable EL2 requirements for FEAT_PMUv3p9
        cpufreq: Reference count policy in cpufreq_update_limits()
        scripts: generate_rust_analyzer: Add ffi crate
        kbuild: Add '-fno-builtin-wcslen'
        platform/x86: msi-wmi-platform: Rename "data" variable
        platform/x86: msi-wmi-platform: Workaround a ACPI firmware bug
        md: fix mddev uaf while iterating all_mddevs list
        selftests/bpf: Fix raw_tp null handling test
        misc: pci_endpoint_test: Avoid issue of interrupts remaining after request_irq error
        misc: pci_endpoint_test: Fix 'irq_type' to convey the correct type
        efi/libstub: Bump up EFI_MMAP_NR_SLACK_SLOTS to 32
        LoongArch: Eliminate superfluous get_numa_distances_cnt()
        drm/amd/display: Temporarily disable hostvm on DCN31
        nvmet-fc: Remove unused functions
        block: remove rq_list_move
        block: add a rq_list type
        block: don't reorder requests in blk_add_rq_to_plug
        mm/vma: add give_up_on_oom option on modify/merge, use in uffd release
        Revert "wifi: ath12k: Fix invalid entry fetch in ath12k_dp_mon_srng_process"
        MIPS: dec: Declare which_prom() as static
        MIPS: cevt-ds1287: Add missing ds1287.h include
        MIPS: ds1287: Match ds1287_set_base_clock() function types
        wifi: ath12k: Fix invalid entry fetch in ath12k_dp_mon_srng_process
        bpf: add find_containing_subprog() utility function
        bpf: track changes_pkt_data property for global functions
        selftests/bpf: test for changing packet data from global functions
        bpf: check changes_pkt_data property for extension programs
        selftests/bpf: freplace tests for tracking of changes_packet_data
        selftests/bpf: validate that tail call invalidates packet pointers
        bpf: fix null dereference when computing changes_pkt_data of prog w/o subprogs
        selftests/bpf: extend changes_pkt_data with cases w/o subprograms
        block: make struct rq_list available for !CONFIG_BLOCK
        Linux 6.12.25

Change-Id: Ib99b782fabf924c599a3c66bcac37febef9d422e
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-05-19 11:25:01 +00:00
Hao Qin 12abefb8c8 Bluetooth: btmtk: Remove the resetting step before downloading the fw
commit 33634e2ab7c6369391e0ca4b9b97dc861e33d20e upstream.

Remove the resetting step before downloading the fw, as it may cause
other usb devices to fail to initialise when connected during boot
on kernels 6.11 and newer.

Signed-off-by: Hao Qin <hao.qin@mediatek.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Cc: "Geoffrey D. Bennett" <g@b4.vu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-18 08:24:57 +02:00
Hao Qin c7a9df4ef4 Bluetooth: btmtk: Remove resetting mt7921 before downloading the fw
commit a7208610761ae9b3bc109ddc493eb7c332fca5b2 upstream.

Remove resetting mt7921 before downloading the fw, as it may cause
command timeout when performing the reset.

Signed-off-by: Hao Qin <hao.qin@mediatek.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Cc: "Geoffrey D. Bennett" <g@b4.vu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-18 08:24:57 +02:00
Greg Kroah-Hartman f56453cbd7 Merge 6.12.24 into android16-6.12-lts
GKI (arm64) relevant 98 out of 394 changes, affecting 131 files +1443/-762
  40bc55e4fc cgroup/cpuset: Fix incorrect isolated_cpus update in update_parent_effective_cpumask() [1 file, +3/-3]
  9701dcbf5f cgroup/cpuset: Fix error handling in remote_partition_disable() [1 file, +20/-9]
  2dbd1b1660 cgroup/cpuset: Revert "Allow suppression of sched domain rebuild in update_cpumasks_hier()" [1 file, +14/-25]
  6b145f8b22 cgroup/cpuset: Enforce at most one rebuild_sched_domains_locked() call per operation [1 file, +33/-16]
  1b06f00eda cgroup/cpuset: Further optimize code if CONFIG_CPUSETS_V1 not set [1 file, +19/-20]
  cdb6e724e7 cgroup/cpuset: Fix race between newly created partition and dying one [4 files, +25/-4]
  179ef2f810 gpiolib: of: Fix the choice for Ingenic NAND quirk [1 file, +2/-0]
  cb8372e54f ublk: refactor recovery configuration flag helpers [1 file, +42/-20]
  caa5c8a235 ublk: fix handling recovery & reissue in ublk_abort_queue() [1 file, +26/-4]
  7c5957f790 tipc: fix memory leak in tipc_link_xmit [1 file, +1/-0]
  4d55144b12 codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog() [2 files, +3/-8]
  b2f3c3d57a tc: Ensure we have enough buffer space when sending filter netlink notifications [1 file, +45/-21]
  a065b99605 net: ethtool: Don't call .cleanup_data when prepare_data fails [1 file, +5/-3]
  70449ca406 net_sched: sch_sfq: use a temporary work area for validating configuration [1 file, +44/-12]
  f86293adce net_sched: sch_sfq: move the limit validation [1 file, +6/-4]
  6d98cd6342 net: phy: move phy_link_change() prior to mdio_bus_phy_may_suspend() [1 file, +13/-13]
  a6ed6f8ec8 net: phy: allow MDIO bus PM ops to start/stop state machine for phylink-controlled PHY [1 file, +29/-2]
  cc16f7402a ipv6: Align behavior across nexthops during path selection [1 file, +4/-4]
  c61feda373 perf/core: Add aux_pause, aux_resume, aux_start_paused [4 files, +110/-5]
  7ef5aa081f perf/core: Simplify the perf_event_alloc() error path [2 files, +78/-76]
  fa1827fa96 perf: Fix hang while freeing sigtrap event [2 files, +18/-47]
  52535688c2 fs: consistently deref the files table with rcu_dereference_raw() [1 file, +17/-9]
  67e85cfa95 umount: Allow superblock owners to force umount [1 file, +2/-1]
  1b3ebfb15d perf: arm_pmu: Don't disable counter in armpmu_add() [1 file, +3/-5]
  11ae4fec1f PM: hibernate: Avoid deadlock in hibernate_compressor_param_set() [1 file, +3/-3]
  ead1fc9f93 Flush console log from kernel_power_off() [3 files, +8/-3]
  cb58e90920 arm64: cputype: Add QCOM_CPU_PART_KRYO_3XX_GOLD [1 file, +2/-0]
  3c057a4904 media: uvcvideo: Add quirk for Actions UVC05 [1 file, +9/-0]
  cb1c6cb110 ALSA: usb-audio: Fix CME quirk for UF series keyboards [1 file, +74/-6]
  a6bf0fd322 net: page_pool: don't cast mp param to devmem [1 file, +1/-1]
  c6e50cb8bf f2fs: don't retry IO for corrupted data scenario [1 file, +4/-0]
  de94d0ca9e net: usb: asix_devices: add FiberGecko DeviceID [1 file, +17/-0]
  7204335d19 page_pool: avoid infinite loop to schedule delayed worker [1 file, +7/-1]
  ecc4613316 f2fs: fix to avoid out-of-bounds access in f2fs_truncate_inode_blocks() [1 file, +8/-1]
  5f815757e6 ext4: protect ext4_release_dquot against freezing [1 file, +17/-0]
  aa39d45071 Revert "f2fs: rebuild nat_bits during umount" [3 files, +59/-95]
  eb59cc31b6 ext4: ignore xattrs past end [1 file, +10/-1]
  a8a8076210 cdc_ether|r8152: ThinkPad Hybrid USB-C/A Dock quirk [3 files, +19/-0]
  299d7d27af net: vlan: don't propagate flags on open [1 file, +4/-27]
  40c70ff44b tracing: fix return value in __ftrace_event_enable_disable for TRACE_REG_UNREGISTER [1 file, +3/-1]
  6b7a32fa9b Bluetooth: hci_uart: fix race during initialization [1 file, +2/-1]
  fe6f1f349d Bluetooth: hci_qca: use the power sequencer for wcn6750 [1 file, +1/-1]
  feed98579d Bluetooth: qca: simplify WCN399x NVM loading [1 file, +6/-7]
  035e1bffc0 Bluetooth: Add quirk for broken READ_VOICE_SETTING [3 files, +15/-0]
  09246dfb5c Bluetooth: Add quirk for broken READ_PAGE_SCAN_TYPE [2 files, +10/-1]
  044c1b3528 drm: allow encoder mode_set even when connectors change for crtc [1 file, +1/-1]
  df33b535f0 drm: panel-orientation-quirks: Add support for AYANEO 2S [1 file, +2/-2]
  6fe4ed94ee drm: panel-orientation-quirks: Add quirks for AYA NEO Flip DS and KB [1 file, +18/-0]
  5dd6fdb889 drm: panel-orientation-quirks: Add quirk for AYA NEO Slide [1 file, +6/-0]
  a64e097426 drm: panel-orientation-quirks: Add new quirk for GPD Win 2 [1 file, +6/-0]
  ba5a998f84 drm: panel-orientation-quirks: Add quirk for OneXPlayer Mini (Intel) [1 file, +12/-0]
  f04612890c drm/debugfs: fix printk format for bridge index [1 file, +1/-1]
  b22cb42a5e drm/bridge: panel: forbid initializing a panel with unknown connector type [1 file, +4/-1]
  1c38108a49 drivers: base: devres: Allow to release group on device release [1 file, +7/-0]
  8feefd106a PCI: Enable Configuration RRS SV early [1 file, +5/-3]
  73d2b96250 PCI: Check BAR index for validity [4 files, +57/-10]
  9a6be23eb0 tracing: probe-events: Add comments about entry data storing code [1 file, +28/-0]
  7b9bdd7059 erofs: set error to bio if file-backed IO fails [1 file, +2/-0]
  806908d5d9 bpf: support SKF_NET_OFF and SKF_LL_OFF on skb frags [1 file, +44/-36]
  dd3edffae8 ext4: don't treat fhandle lookup of ea_inode as FS corruption [1 file, +48/-20]
  2ff58c5b26 arm64: cputype: Add MIDR_CORTEX_A76AE [1 file, +2/-0]
  4af2858435 arm64: errata: Add QCOM_KRYO_4XX_GOLD to the spectre_bhb_k24_list [1 file, +1/-0]
  3b0f2526c8 arm64: errata: Assume that unknown CPUs _are_ vulnerable to Spectre BHB [2 files, +102/-102]
  20c105f587 arm64: errata: Add KRYO 2XX/3XX/4XX silver cores to Spectre BHB safe list [1 file, +3/-0]
  c322789613 KVM: arm64: Tear down vGIC on failed vCPU creation [1 file, +5/-1]
  baea1762cd media: v4l2-dv-timings: prevent possible overflow in v4l2_detect_gtf() [1 file, +2/-2]
  0828d6e9ad io_uring/net: fix accept multishot handling [1 file, +2/-0]
  b7c6d081c1 io_uring/net: fix io_req_post_cqe abuse by send bundle [3 files, +6/-2]
  3e0356857e io_uring/kbuf: reject zero sized provided buffers [1 file, +2/-0]
  16d9067f00 ext4: fix off-by-one error in do_split [1 file, +1/-1]
  a1dde7457d f2fs: fix to avoid atomicity corruption of atomic file [2 files, +5/-3]
  e6bba32857 i3c: Add NULL pointer check in i3c_master_queue_ibi() [1 file, +3/-0]
  9eaec071f1 jbd2: remove wrong sb->s_sequence check [1 file, +0/-1]
  eec737e17e arm64: mops: Do not dereference src reg for a set operation [1 file, +2/-2]
  1dd288783d arm64: mm: Correct the update of max_pfn [1 file, +2/-1]
  5f7f6abd92 net: Fix null-ptr-deref by sock_lock_init_class_and_name() and rmmod. [2 files, +43/-2]
  53dc6b00c0 mm/rmap: reject hugetlb folios in folio_make_device_exclusive() [1 file, +1/-1]
  83b6b5061e mm: make page_mapped_in_vma() hugetlb walk aware [1 file, +9/-4]
  6dd8d9440f mm: fix lazy mmu docs and usage [1 file, +8/-6]
  2532df0a9b mm/mremap: correctly handle partial mremap() of VMA starting at 0 [1 file, +5/-5]
  cc98577f91 mm: add missing release barrier on PGDAT_RECLAIM_LOCKED unlock [1 file, +1/-1]
  14936034de mm/userfaultfd: fix release hang over concurrent GUP [1 file, +25/-26]
  65b259e3e0 mm/hwpoison: introduce folio_contain_hwpoisoned_page() helper [3 files, +8/-4]
  9e7c37fadb sctp: detect and prevent references to a freed transport in sendmsg [3 files, +18/-9]
  474b3194c8 tracing: Do not add length to print format in synthetic events [1 file, +0/-1]
  74f01c2ca8 dm-verity: fix prefetch-vs-suspend race [1 file, +8/-0]
  fae0a8796c KVM: Allow building irqbypass.ko as as module when kvm.ko is a module [3 files, +7/-7]
  dc83eccc93 of/irq: Fix device node refcount leakage in API of_irq_parse_one() [1 file, +27/-32]
  3540164c75 of/irq: Fix device node refcount leakage in API of_irq_parse_raw() [1 file, +8/-0]
  29cb94963c of/irq: Fix device node refcount leakages in of_irq_count() [1 file, +3/-1]
  d0f25a9977 of/irq: Fix device node refcount leakage in API irq_of_parse_and_map() [1 file, +5/-1]
  712d84459a of/irq: Fix device node refcount leakages in of_irq_init() [1 file, +3/-0]
  d69ad6e1a5 PCI: Fix reference leak in pci_alloc_child_bus() [1 file, +4/-1]
  9707d0c932 PCI: Fix reference leak in pci_register_host_bridge() [1 file, +7/-2]
  869202291a PCI: Fix wrong length of devres array [1 file, +1/-1]
  92ca7270fe ring-buffer: Use flush_kernel_vmap_range() over flush_dcache_folio() [1 file, +3/-2]
  9ca4fe3574 arm64: errata: Add newer ARM cores to the spectre_bhb_loop_affected() lists [1 file, +14/-1]
  281782d2c6 Bluetooth: hci_uart: Fix another race during initialization [2 files, +15/-6]

Changes in 6.12.24
	ASoC: Intel: adl: add 2xrt1316 audio configuration
	cgroup/cpuset: Fix incorrect isolated_cpus update in update_parent_effective_cpumask()
	cgroup/cpuset: Fix error handling in remote_partition_disable()
	cgroup/cpuset: Revert "Allow suppression of sched domain rebuild in update_cpumasks_hier()"
	cgroup/cpuset: Enforce at most one rebuild_sched_domains_locked() call per operation
	cgroup/cpuset: Further optimize code if CONFIG_CPUSETS_V1 not set
	cgroup/cpuset: Fix race between newly created partition and dying one
	gpiolib: of: Fix the choice for Ingenic NAND quirk
	selftests/futex: futex_waitv wouldblock test should fail
	ublk: refactor recovery configuration flag helpers
	ublk: fix handling recovery & reissue in ublk_abort_queue()
	drm/i915: Disable RPG during live selftest
	x86/acpi: Don't limit CPUs to 1 for Xen PV guests due to disabled ACPI
	drm/xe/hw_engine: define sysfs_ops on all directories
	ata: pata_pxa: Fix potential NULL pointer dereference in pxa_ata_probe()
	objtool: Fix INSN_CONTEXT_SWITCH handling in validate_unret()
	tipc: fix memory leak in tipc_link_xmit
	codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog()
	net: tls: explicitly disallow disconnect
	octeontx2-pf: qos: fix VF root node parent queue index
	tc: Ensure we have enough buffer space when sending filter netlink notifications
	net: ethtool: Don't call .cleanup_data when prepare_data fails
	drm/tests: modeset: Fix drm_display_mode memory leak
	drm/tests: helpers: Create kunit helper to destroy a drm_display_mode
	drm/tests: cmdline: Fix drm_display_mode memory leak
	drm/tests: modes: Fix drm_display_mode memory leak
	drm/tests: probe-helper: Fix drm_display_mode memory leak
	net: libwx: handle page_pool_dev_alloc_pages error
	ata: sata_sx4: Add error handling in pdc20621_i2c_read()
	drm/i915/huc: Fix fence not released on early probe errors
	nvmet-fcloop: swap list_add_tail arguments
	net_sched: sch_sfq: use a temporary work area for validating configuration
	net_sched: sch_sfq: move the limit validation
	smb: client: fix UAF in decryption with multichannel
	net: phy: move phy_link_change() prior to mdio_bus_phy_may_suspend()
	net: phy: allow MDIO bus PM ops to start/stop state machine for phylink-controlled PHY
	ipv6: Align behavior across nexthops during path selection
	net: ppp: Add bound checking for skb data on ppp_sync_txmung
	nft_set_pipapo: fix incorrect avx2 match of 5th field octet
	iommu/exynos: Fix suspend/resume with IDENTITY domain
	iommu/mediatek: Fix NULL pointer deference in mtk_iommu_device_group
	perf/core: Add aux_pause, aux_resume, aux_start_paused
	perf/core: Simplify the perf_event_alloc() error path
	perf: Fix hang while freeing sigtrap event
	fs: consistently deref the files table with rcu_dereference_raw()
	umount: Allow superblock owners to force umount
	pm: cpupower: bench: Prevent NULL dereference on malloc failure
	x86/mm: Clear _PAGE_DIRTY for kernel mappings when we clear _PAGE_RW
	x86/percpu: Disable named address spaces for UBSAN_BOOL with KASAN for GCC < 14.2
	x86/ia32: Leave NULL selector values 0~3 unchanged
	x86/cpu: Don't clear X86_FEATURE_LAHF_LM flag in init_amd_k8() on AMD when running in a virtual machine
	perf: arm_pmu: Don't disable counter in armpmu_add()
	perf/dwc_pcie: fix some unreleased resources
	PM: hibernate: Avoid deadlock in hibernate_compressor_param_set()
	Flush console log from kernel_power_off()
	arm64: cputype: Add QCOM_CPU_PART_KRYO_3XX_GOLD
	xen/mcelog: Add __nonstring annotations for unterminated strings
	zstd: Increase DYNAMIC_BMI2 GCC version cutoff from 4.8 to 11.0 to work around compiler segfault
	platform/chrome: cros_ec_lpc: Match on Framework ACPI device
	ASoC: SOF: topology: Use krealloc_array() to replace krealloc()
	HID: pidff: Convert infinite length from Linux API to PID standard
	HID: pidff: Do not send effect envelope if it's empty
	HID: pidff: Add MISSING_DELAY quirk and its detection
	HID: pidff: Add MISSING_PBO quirk and its detection
	HID: pidff: Add PERMISSIVE_CONTROL quirk
	HID: pidff: Add hid_pidff_init_with_quirks and export as GPL symbol
	HID: pidff: Add FIX_WHEEL_DIRECTION quirk
	HID: Add hid-universal-pidff driver and supported device ids
	HID: pidff: Add PERIODIC_SINE_ONLY quirk
	HID: pidff: Fix null pointer dereference in pidff_find_fields
	ASoC: amd: ps: use macro for ACP6.3 pci revision id
	ALSA: hda: intel: Fix Optimus when GPU has no sound
	ALSA: hda: intel: Add Lenovo IdeaPad Z570 to probe denylist
	ASoC: fsl_audmix: register card device depends on 'dais' property
	media: uvcvideo: Add quirk for Actions UVC05
	media: s5p-mfc: Corrected NV12M/NV21M plane-sizes
	mmc: dw_mmc: add a quirk for accessing 64-bit FIFOs in two halves
	ALSA: usb-audio: Fix CME quirk for UF series keyboards
	ASoC: amd: Add DMI quirk for ACP6X mic support
	ASoC: amd: yc: update quirk data for new Lenovo model
	platform/x86: x86-android-tablets: Add select POWER_SUPPLY to Kconfig
	wifi: ath11k: Fix DMA buffer allocation to resolve SWIOTLB issues
	wifi: ath11k: fix memory leak in ath11k_xxx_remove()
	wifi: ath12k: fix memory leak in ath12k_pci_remove()
	wifi: ath12k: Fix invalid entry fetch in ath12k_dp_mon_srng_process
	ata: libata-core: Add 'external' to the libata.force kernel parameter
	scsi: mpi3mr: Avoid reply queue full condition
	scsi: mpi3mr: Synchronous access b/w reset and tm thread for reply queue
	net: page_pool: don't cast mp param to devmem
	f2fs: don't retry IO for corrupted data scenario
	wifi: mac80211: add strict mode disabling workarounds
	wifi: mac80211: ensure sdata->work is canceled before initialized.
	scsi: target: spc: Fix RSOC parameter data header size
	net: usb: asix_devices: add FiberGecko DeviceID
	page_pool: avoid infinite loop to schedule delayed worker
	can: flexcan: Add quirk to handle separate interrupt lines for mailboxes
	can: flexcan: add NXP S32G2/S32G3 SoC support
	jfs: Fix uninit-value access of imap allocated in the diMount() function
	fs/jfs: cast inactags to s64 to prevent potential overflow
	fs/jfs: Prevent integer overflow in AG size calculation
	jfs: Prevent copying of nlink with value 0 from disk inode
	jfs: add sanity check for agwidth in dbMount
	ata: libata-eh: Do not use ATAPI DMA for a device limited to PIO mode
	net: sfp: add quirk for 2.5G OEM BX SFP
	wifi: ath12k: Fix invalid data access in ath12k_dp_rx_h_undecap_nwifi
	f2fs: fix to avoid out-of-bounds access in f2fs_truncate_inode_blocks()
	net: sfp: add quirk for FS SFP-10GM-T copper SFP+ module
	ahci: add PCI ID for Marvell 88SE9215 SATA Controller
	ext4: protect ext4_release_dquot against freezing
	Revert "f2fs: rebuild nat_bits during umount"
	ext4: ignore xattrs past end
	cdc_ether|r8152: ThinkPad Hybrid USB-C/A Dock quirk
	scsi: st: Fix array overflow in st_setup()
	ahci: Marvell 88SE9215 controllers prefer DMA for ATAPI
	btrfs: harden block_group::bg_list against list_del() races
	wifi: mt76: mt76x2u: add TP-Link TL-WDN6200 ID to device table
	net: vlan: don't propagate flags on open
	tracing: fix return value in __ftrace_event_enable_disable for TRACE_REG_UNREGISTER
	Bluetooth: btintel_pcie: Add device id of Whale Peak
	Bluetooth: hci_uart: fix race during initialization
	Bluetooth: btusb: Add 2 HWIDs for MT7922
	Bluetooth: hci_qca: use the power sequencer for wcn6750
	Bluetooth: qca: simplify WCN399x NVM loading
	Bluetooth: Add quirk for broken READ_VOICE_SETTING
	Bluetooth: Add quirk for broken READ_PAGE_SCAN_TYPE
	drm: allow encoder mode_set even when connectors change for crtc
	drm/xe/bmg: Add new PCI IDs
	drm/xe/vf: Don't try to trigger a full GT reset if VF
	drm/amd/display: Update Cursor request mode to the beginning prefetch always
	drm/amdgpu: Unlocked unmap only clear page table leaves
	drm: panel-orientation-quirks: Add support for AYANEO 2S
	drm: panel-orientation-quirks: Add quirks for AYA NEO Flip DS and KB
	drm: panel-orientation-quirks: Add quirk for AYA NEO Slide
	drm: panel-orientation-quirks: Add new quirk for GPD Win 2
	drm: panel-orientation-quirks: Add quirk for OneXPlayer Mini (Intel)
	drm/debugfs: fix printk format for bridge index
	drm/bridge: panel: forbid initializing a panel with unknown connector type
	drm/amd/display: stop DML2 from removing pipes based on planes
	drivers: base: devres: Allow to release group on device release
	drm/amdkfd: clamp queue size to minimum
	drm/amdkfd: Fix mode1 reset crash issue
	drm/amdkfd: Fix pqm_destroy_queue race with GPU reset
	drm/amdkfd: debugfs hang_hws skip GPU with MES
	drm/xe/xelp: Move Wa_16011163337 from tunings to workarounds
	drm/mediatek: mtk_dpi: Move the input_2p_en bit to platform data
	drm/mediatek: mtk_dpi: Explicitly manage TVD clock in power on/off
	PCI: Add Rockchip Vendor ID
	drm/amdgpu: handle amdgpu_cgs_create_device() errors in amd_powerplay_create()
	PCI: Enable Configuration RRS SV early
	drm/amdgpu: Fix the race condition for draining retry fault
	PCI: Check BAR index for validity
	PCI: vmd: Make vmd_dev::cfg_lock a raw_spinlock_t type
	drm/amdgpu: grab an additional reference on the gang fence v2
	fbdev: omapfb: Add 'plane' value check
	tracing: probe-events: Add comments about entry data storing code
	ktest: Fix Test Failures Due to Missing LOG_FILE Directories
	tpm, tpm_tis: Workaround failed command reception on Infineon devices
	tpm: End any active auth session before shutdown
	pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()
	pwm: rcar: Improve register calculation
	pwm: fsl-ftm: Handle clk_get_rate() returning 0
	erofs: set error to bio if file-backed IO fails
	bpf: support SKF_NET_OFF and SKF_LL_OFF on skb frags
	ext4: don't treat fhandle lookup of ea_inode as FS corruption
	s390/pci: Fix s390_mmio_read/write syscall page fault handling
	HID: pidff: Clamp PERIODIC effect period to device's logical range
	HID: pidff: Stop all effects before enabling actuators
	HID: pidff: Completely rework and fix pidff_reset function
	HID: pidff: Simplify pidff_upload_effect function
	HID: pidff: Define values used in pidff_find_special_fields
	HID: pidff: Rescale time values to match field units
	HID: pidff: Factor out code for setting gain
	HID: pidff: Move all hid-pidff definitions to a dedicated header
	HID: pidff: Simplify pidff_rescale_signed
	HID: pidff: Use macros instead of hardcoded min/max values for shorts
	HID: pidff: Factor out pool report fetch and remove excess declaration
	HID: pidff: Make sure to fetch pool before checking SIMULTANEOUS_MAX
	HID: hid-universal-pidff: Add Asetek wheelbases support
	HID: pidff: Comment and code style update
	HID: pidff: Support device error response from PID_BLOCK_LOAD
	HID: pidff: Remove redundant call to pidff_find_special_keys
	HID: pidff: Rename two functions to align them with naming convention
	HID: pidff: Clamp effect playback LOOP_COUNT value
	HID: pidff: Compute INFINITE value instead of using hardcoded 0xffff
	HID: pidff: Fix 90 degrees direction name North -> East
	HID: pidff: Fix set_device_control()
	auxdisplay: hd44780: Fix an API misuse in hd44780.c
	dt-bindings: media: st,stmipid02: correct lane-polarities maxItems
	media: mediatek: vcodec: Fix a resource leak related to the scp device in FW initialization
	media: mtk-vcodec: venc: avoid -Wenum-compare-conditional warning
	media: uapi: rkisp1-config: Fix typo in extensible params example
	media: mgb4: Fix CMT registers update logic
	media: i2c: adv748x: Fix test pattern selection mask
	media: mgb4: Fix switched CMT frequency range "magic values" sets
	media: intel/ipu6: set the dev_parent of video device to pdev
	media: venus: hfi: add a check to handle OOB in sfr region
	media: venus: hfi: add check to handle incorrect queue size
	media: vim2m: print device name after registering device
	media: siano: Fix error handling in smsdvb_module_init()
	media: rockchip: rga: fix rga offset lookup
	xenfs/xensyms: respect hypervisor's "next" indication
	arm64: cputype: Add MIDR_CORTEX_A76AE
	arm64: errata: Add QCOM_KRYO_4XX_GOLD to the spectre_bhb_k24_list
	arm64: errata: Assume that unknown CPUs _are_ vulnerable to Spectre BHB
	arm64: errata: Add KRYO 2XX/3XX/4XX silver cores to Spectre BHB safe list
	KVM: arm64: Tear down vGIC on failed vCPU creation
	spi: cadence-qspi: Fix probe on AM62A LP SK
	mtd: rawnand: brcmnand: fix PM resume warning
	tpm, tpm_tis: Fix timeout handling when waiting for TPM status
	accel/ivpu: Fix PM related deadlocks in MS IOCTLs
	media: streamzap: prevent processing IR data on URB failure
	media: hi556: Fix memory leak (on error) in hi556_check_hwcfg()
	media: visl: Fix ERANGE error when setting enum controls
	media: platform: stm32: Add check for clk_enable()
	media: imx219: Adjust PLL settings based on the number of MIPI lanes
	media: v4l2-dv-timings: prevent possible overflow in v4l2_detect_gtf()
	Revert "media: imx214: Fix the error handling in imx214_probe()"
	media: i2c: ccs: Set the device's runtime PM status correctly in remove
	media: i2c: ccs: Set the device's runtime PM status correctly in probe
	media: i2c: ov7251: Set enable GPIO low in probe
	media: i2c: ov7251: Introduce 1 ms delay between regulators and en GPIO
	media: nuvoton: Fix reference handling of ece_node
	media: nuvoton: Fix reference handling of ece_pdev
	media: venus: hfi_parser: add check to avoid out of bound access
	media: venus: hfi_parser: refactor hfi packet parsing logic
	media: i2c: imx319: Rectify runtime PM handling probe and remove
	media: i2c: imx219: Rectify runtime PM handling in probe and remove
	media: i2c: imx214: Rectify probe error handling related to runtime PM
	media: chips-media: wave5: Fix gray color on screen
	media: chips-media: wave5: Avoid race condition in the interrupt handler
	media: chips-media: wave5: Fix a hang after seeking
	media: chips-media: wave5: Fix timeout while testing 10bit hevc fluster
	mptcp: sockopt: fix getting IPV6_V6ONLY
	mptcp: sockopt: fix getting freebind & transparent
	mtd: Add check for devm_kcalloc()
	net: dsa: mv88e6xxx: workaround RGMII transmit delay erratum for 6320 family
	net: dsa: mv88e6xxx: fix internal PHYs for 6320 family
	mtd: Replace kcalloc() with devm_kcalloc()
	clocksource/drivers/stm32-lptimer: Use wakeup capable instead of init wakeup
	wifi: mt76: Add check for devm_kstrdup()
	wifi: mac80211: fix integer overflow in hwmp_route_info_get()
	wifi: mt76: mt7925: ensure wow pattern command align fw format
	wifi: mt76: mt7925: fix country count limitation for CLC
	wifi: mt76: mt7925: fix the wrong link_idx when a p2p_device is present
	wifi: mt76: mt7925: fix the wrong simultaneous cap for MLO
	io_uring/net: fix accept multishot handling
	io_uring/net: fix io_req_post_cqe abuse by send bundle
	io_uring/kbuf: reject zero sized provided buffers
	ASoC: codecs: wcd937x: fix a potential memory leak in wcd937x_soc_codec_probe()
	ASoC: q6apm: add q6apm_get_hw_pointer helper
	ASoC: q6apm-dai: schedule all available frames to avoid dsp under-runs
	ASoC: q6apm-dai: make use of q6apm_get_hw_pointer
	ASoC: qdsp6: q6apm-dai: set 10 ms period and buffer alignment.
	ASoC: qdsp6: q6apm-dai: fix capture pipeline overruns.
	ASoC: qdsp6: q6asm-dai: fix q6asm_dai_compr_set_params error path
	ALSA: hda/realtek: Enable Mute LED on HP OMEN 16 Laptop xd000xx
	accel/ivpu: Fix warning in ivpu_ipc_send_receive_internal()
	accel/ivpu: Fix deadlock in ivpu_ms_cleanup()
	bus: mhi: host: Fix race between unprepare and queue_buf
	ext4: fix off-by-one error in do_split
	f2fs: fix to avoid atomicity corruption of atomic file
	vdpa/mlx5: Fix oversized null mkey longer than 32bit
	udf: Fix inode_getblk() return value
	tpm: do not start chip while suspended
	svcrdma: do not unregister device for listeners
	soc: samsung: exynos-chipid: Add NULL pointer check in exynos_chipid_probe()
	smb311 client: fix missing tcon check when mounting with linux/posix extensions
	ima: limit the number of open-writers integrity violations
	ima: limit the number of ToMToU integrity violations
	i3c: master: svc: Use readsb helper for reading MDB
	i3c: Add NULL pointer check in i3c_master_queue_ibi()
	jbd2: remove wrong sb->s_sequence check
	kbuild: exclude .rodata.(cst|str)* when building ranges
	leds: rgb: leds-qcom-lpg: Fix pwm resolution max for Hi-Res PWMs
	leds: rgb: leds-qcom-lpg: Fix calculation of best period Hi-Res PWMs
	mfd: ene-kb3930: Fix a potential NULL pointer dereference
	mailbox: tegra-hsp: Define dimensioning masks in SoC data
	locking/lockdep: Decrease nr_unused_locks if lock unused in zap_class()
	lib: scatterlist: fix sg_split_phys to preserve original scatterlist offsets
	mptcp: fix NULL pointer in can_accept_new_subflow
	mptcp: only inc MPJoinAckHMacFailure for HMAC failures
	mtd: inftlcore: Add error check for inftl_read_oob()
	mtd: rawnand: Add status chack in r852_ready()
	arm64: mops: Do not dereference src reg for a set operation
	arm64: tegra: Remove the Orin NX/Nano suspend key
	arm64: mm: Correct the update of max_pfn
	arm64: dts: mediatek: mt8173: Fix disp-pwm compatible string
	arm64: dts: exynos: gs101: disable pinctrl_gsacore node
	backlight: led_bl: Hold led_access lock when calling led_sysfs_disable()
	btrfs: fix non-empty delayed iputs list on unmount due to compressed write workers
	btrfs: tests: fix chunk map leak after failure to add it to the tree
	btrfs: zoned: fix zone activation with missing devices
	btrfs: zoned: fix zone finishing with missing devices
	iommufd: Fix uninitialized rc in iommufd_access_rw()
	iommu/tegra241-cmdqv: Fix warnings due to dmam_free_coherent()
	iommu/vt-d: Put IRTE back into posted MSI mode if vCPU posting is disabled
	iommu/vt-d: Don't clobber posted vCPU IRTE when host IRQ affinity changes
	iommu/vt-d: Fix possible circular locking dependency
	iommu/vt-d: Wire up irq_ack() to irq_move_irq() for posted MSIs
	sparc/mm: disable preemption in lazy mmu mode
	sparc/mm: avoid calling arch_enter/leave_lazy_mmu() in set_ptes
	net: Fix null-ptr-deref by sock_lock_init_class_and_name() and rmmod.
	mm/damon/ops: have damon_get_folio return folio even for tail pages
	mm/rmap: reject hugetlb folios in folio_make_device_exclusive()
	mm: make page_mapped_in_vma() hugetlb walk aware
	mm: fix lazy mmu docs and usage
	mm/mremap: correctly handle partial mremap() of VMA starting at 0
	mm: add missing release barrier on PGDAT_RECLAIM_LOCKED unlock
	mm/userfaultfd: fix release hang over concurrent GUP
	mm/hwpoison: do not send SIGBUS to processes with recovered clean pages
	mm/hugetlb: move hugetlb_sysctl_init() to the __init section
	mm/hwpoison: introduce folio_contain_hwpoisoned_page() helper
	sctp: detect and prevent references to a freed transport in sendmsg
	x86/xen: fix balloon target initialization for PVH dom0
	tracing: fprobe events: Fix possible UAF on modules
	tracing: Do not add length to print format in synthetic events
	thermal/drivers/rockchip: Add missing rk3328 mapping entry
	CIFS: Propagate min offload along with other parameters from primary to secondary channels.
	cifs: avoid NULL pointer dereference in dbg call
	cifs: fix integer overflow in match_server()
	cifs: Ensure that all non-client-specific reparse points are processed by the server
	clk: renesas: r9a07g043: Fix HP clock source for RZ/Five
	clk: qcom: clk-branch: Fix invert halt status bit check for votable clocks
	clk: qcom: gdsc: Release pm subdomains in reverse add order
	clk: qcom: gdsc: Capture pm_genpd_add_subdomain result code
	clk: qcom: gdsc: Set retain_ff before moving to HW CTRL
	crypto: ccp - Fix check for the primary ASP device
	crypto: ccp - Fix uAPI definitions of PSP errors
	dlm: fix error if inactive rsb is not hashed
	dlm: fix error if active rsb is not hashed
	dm-ebs: fix prefetch-vs-suspend race
	dm-integrity: set ti->error on memory allocation failure
	dm-integrity: fix non-constant-time tag verification
	dm-verity: fix prefetch-vs-suspend race
	dt-bindings: coresight: qcom,coresight-tpda: Fix too many 'reg'
	dt-bindings: coresight: qcom,coresight-tpdm: Fix too many 'reg'
	ftrace: Add cond_resched() to ftrace_graph_set_hash()
	ftrace: Properly merge notrace hashes
	gpio: tegra186: fix resource handling in ACPI probe path
	gpio: zynq: Fix wakeup source leaks on device unbind
	gve: handle overflow when reporting TX consumed descriptors
	KVM: Allow building irqbypass.ko as as module when kvm.ko is a module
	KVM: PPC: Enable CAP_SPAPR_TCE_VFIO on pSeries KVM guests
	KVM: x86: Explicitly zero-initialize on-stack CPUID unions
	KVM: x86: Acquire SRCU in KVM_GET_MP_STATE to protect guest memory accesses
	landlock: Move code to ease future backports
	landlock: Add the errata interface
	landlock: Add erratum for TCP fix
	landlock: Always allow signals between threads of the same process
	landlock: Prepare to add second errata
	selftests/landlock: Split signal_scoping_threads tests
	selftests/landlock: Add a new test for setuid()
	misc: pci_endpoint_test: Fix displaying 'irq_type' after 'request_irq' error
	net: mana: Switch to page pool for jumbo frames
	ntb: use 64-bit arithmetic for the MSI doorbell mask
	of/irq: Fix device node refcount leakage in API of_irq_parse_one()
	of/irq: Fix device node refcount leakage in API of_irq_parse_raw()
	of/irq: Fix device node refcount leakages in of_irq_count()
	of/irq: Fix device node refcount leakage in API irq_of_parse_and_map()
	of/irq: Fix device node refcount leakages in of_irq_init()
	PCI: brcmstb: Fix missing of_node_put() in brcm_pcie_probe()
	PCI: j721e: Fix the value of .linkdown_irq_regfield for J784S4
	PCI: pciehp: Avoid unnecessary device replacement check
	PCI: Fix reference leak in pci_alloc_child_bus()
	PCI: Fix reference leak in pci_register_host_bridge()
	PCI: Fix wrong length of devres array
	phy: freescale: imx8m-pcie: assert phy reset and perst in power off
	pinctrl: qcom: Clear latched interrupt status when changing IRQ type
	pinctrl: samsung: add support for eint_fltcon_offset
	ring-buffer: Use flush_kernel_vmap_range() over flush_dcache_folio()
	s390/pci: Fix zpci_bus_is_isolated_vf() for non-VFs
	s390/virtio_ccw: Don't allocate/assign airqs for non-existing queues
	s390: Fix linker error when -no-pie option is unavailable
	sched_ext: create_dsq: Return -EEXIST on duplicate request
	selftests: mptcp: close fd_in before returning in main_loop
	selftests: mptcp: fix incorrect fd checks in main_loop
	thermal/drivers/mediatek/lvts: Disable monitor mode during suspend
	thermal/drivers/mediatek/lvts: Disable Stage 3 thermal threshold
	arm64: errata: Add newer ARM cores to the spectre_bhb_loop_affected() lists
	iommufd: Make attach_handle generic than fault specific
	iommufd: Fail replace if device has not been attached
	x86/paravirt: Move halt paravirt calls under CONFIG_PARAVIRT
	ACPI: platform-profile: Fix CFI violation when accessing sysfs files
	NFSD: fix decoding in nfs4_xdr_dec_cb_getattr
	NFSD: Fix CB_GETATTR status fix
	nfsd: don't ignore the return code of svc_proc_register()
	x86/e820: Fix handling of subpage regions when calculating nosave ranges in e820__register_nosave_regions()
	libbpf: Prevent compiler warnings/errors
	kbuild: Add '-fno-builtin-wcslen'
	media: mediatek: vcodec: mark vdec_vp9_slice_map_counts_eob_coef noinline
	Bluetooth: hci_uart: Fix another race during initialization
	s390/cpumf: Fix double free on error in cpumf_pmu_event_init()
	HSI: ssi_protocol: Fix use after free vulnerability in ssi_protocol Driver Due to Race Condition
	Linux 6.12.24

Change-Id: I272e8aac67399f2eb57ca25e05cded24172d2d76
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-05-10 12:51:04 +00:00
Kiran K cfe006c8a6 Bluetooth: btintel_pcie: Add additional to checks to clear TX/RX paths
[ Upstream commit 1c7664957e4edb234c69de2db4be1f740d2df564 ]

Due to a hardware issue, there is a possibility that the driver may miss
an MSIx interrupt on the RX/TX data path. Since the TX and RX paths are
independent, when a TX MSIx interrupt occurs, the driver can check the
RX queue for any pending data and process it if present. The same
approach applies to the RX path.

Fixes: c2b636b3f7 ("Bluetooth: btintel_pcie: Add support for PCIe transport")
Signed-off-by: Chandrashekar Devegowda <chandrashekar.devegowda@intel.com>
Signed-off-by: Kiran K <kiran.k@intel.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-05-09 09:50:40 +02:00
En-Wei Wu b70b41591e Bluetooth: btusb: avoid NULL pointer dereference in skb_dequeue()
[ Upstream commit 0317b033abcd1d8dd2798f0e2de5e84543d0bd22 ]

A NULL pointer dereference can occur in skb_dequeue() when processing a
QCA firmware crash dump on WCN7851 (0489:e0f3).

[ 93.672166] Bluetooth: hci0: ACL memdump size(589824)

[ 93.672475] BUG: kernel NULL pointer dereference, address: 0000000000000008
[ 93.672517] Workqueue: hci0 hci_devcd_rx [bluetooth]
[ 93.672598] RIP: 0010:skb_dequeue+0x50/0x80

The issue stems from handle_dump_pkt_qca() returning 0 even when a dump
packet is successfully processed. This is because it incorrectly
forwards the return value of hci_devcd_init() (which returns 0 on
success). As a result, the caller (btusb_recv_acl_qca() or
btusb_recv_evt_qca()) assumes the packet was not handled and passes it
to hci_recv_frame(), leading to premature kfree() of the skb.

Later, hci_devcd_rx() attempts to dequeue the same skb from the dump
queue, resulting in a NULL pointer dereference.

Fix this by:
1. Making handle_dump_pkt_qca() return 0 on success and negative errno
   on failure, consistent with kernel conventions.
2. Splitting dump packet detection into separate functions for ACL
   and event packets for better structure and readability.

This ensures dump packets are properly identified and consumed, avoiding
double handling and preventing NULL pointer access.

Fixes: 20981ce2d5 ("Bluetooth: btusb: Add WCN6855 devcoredump support")
Signed-off-by: En-Wei Wu <en-wei.wu@canonical.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-05-09 09:50:40 +02:00
Kiran K c7bd5c9ba1 Bluetooth: btintel_pcie: Avoid redundant buffer allocation
[ Upstream commit d1af1f02ef8653dea4573e444136c8331189cd59 ]

Reuse the skb buffer provided by the PCIe driver to pass it onto the
stack, instead of copying it to a new skb.

Fixes: c2b636b3f7 ("Bluetooth: btintel_pcie: Add support for PCIe transport")
Signed-off-by: Kiran K <kiran.k@intel.com>
Reviewed-by: Paul Menzel <pmenzel@molgen.mpg.de>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-05-09 09:50:39 +02:00
Zijun Hu 351378ae7b Bluetooth: btusb: Add 13 USB device IDs for Qualcomm WCN785x
[ Upstream commit 2dd1c1eee3e496fcc16971be4db5bb792a36025c ]

Add 13 USB device IDs for Qualcomm WCN785x, and these IDs are
extracted from Windows driver inf file for various types of
WoS (Windows on Snapdragon) laptop.

Signed-off-by: Zijun Hu <quic_zijuhu@quicinc.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Alexander Tsoy <alexander@tsoy.me>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-09 09:50:29 +02:00
Dorian Cruveiller 78945de256 Bluetooth: btusb: Add new VID/PID for WCN785x
[ Upstream commit c7629ccfa175e16bb44a60c469214e1a6051f63d ]

Add VID 0489 & PID e10d for Qualcomm WCN785x USB Bluetooth chip.

The information in /sys/kernel/debug/usb/devices about the Bluetooth
device is listed as the below.

T:  Bus=01 Lev=01 Prnt=01 Port=03 Cnt=03 Dev#=  4 Spd=12   MxCh= 0
D:  Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=0489 ProdID=e10d Rev= 0.01
C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=1ms
E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=   0 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=   0 Ivl=1ms
I:  If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=   9 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=   9 Ivl=1ms
I:  If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  17 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  17 Ivl=1ms
I:  If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  25 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  25 Ivl=1ms
I:  If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  33 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  33 Ivl=1ms
I:  If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  49 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  49 Ivl=1ms
I:  If#= 1 Alt= 6 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  63 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  63 Ivl=1ms
I:  If#= 1 Alt= 7 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  65 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  65 Ivl=1ms

Signed-off-by: Dorian Cruveiller <doriancruveiller@gmail.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Alexander Tsoy <alexander@tsoy.me>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-09 09:50:29 +02:00
Mark Dietzer 5ab19c342f Bluetooth: btusb: Add ID 0x2c7c:0x0130 for Qualcomm WCN785x
[ Upstream commit a6587d7ed2cd8341f8a92112ac772f2c44f09824 ]

Adds a new entry with VID 0x2c7c and PID 0x0130 to the btusb quirks table as it uses a Qualcomm WCN785x chipset

The device information from /sys/kernel/debug/usb/devices is provided below:
T:  Bus=01 Lev=01 Prnt=01 Port=04 Cnt=05 Dev#=  7 Spd=12   MxCh= 0
D:  Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=2c7c ProdID=0130 Rev= 0.01
C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=1ms
E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=   0 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=   0 Ivl=1ms
I:  If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=   9 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=   9 Ivl=1ms
I:  If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  17 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  17 Ivl=1ms
I:  If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  25 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  25 Ivl=1ms
I:  If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  33 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  33 Ivl=1ms
I:  If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  49 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  49 Ivl=1ms
I:  If#= 1 Alt= 6 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  63 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  63 Ivl=1ms
I:  If#= 1 Alt= 7 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  65 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  65 Ivl=1ms

Signed-off-by: Mark Dietzer <git@doridian.net>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Alexander Tsoy <alexander@tsoy.me>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-09 09:50:28 +02:00
Zijun Hu c6e1913e76 Bluetooth: btusb: Add one more ID 0x13d3:0x3623 for Qualcomm WCN785x
[ Upstream commit e69bcffce21c649a23645b20eb527b3d1ce6fc49 ]

Add one more part with ID (0x13d3, 0x3623) to usb_device_id table for
Qualcomm WCN785x, and its device info from /sys/kernel/debug/usb/devices
is shown below:

T:  Bus=01 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#=  2 Spd=12   MxCh= 0
D:  Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=13d3 ProdID=3623 Rev= 0.01
C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=1ms
E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=   0 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=   0 Ivl=1ms
I:  If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=   9 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=   9 Ivl=1ms
I:  If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  17 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  17 Ivl=1ms
I:  If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  25 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  25 Ivl=1ms
I:  If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  33 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  33 Ivl=1ms
I:  If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  49 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  49 Ivl=1ms
I:  If#= 1 Alt= 6 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  63 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  63 Ivl=1ms
I:  If#= 1 Alt= 7 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  65 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  65 Ivl=1ms

Signed-off-by: Zijun Hu <quic_zijuhu@quicinc.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Alexander Tsoy <alexander@tsoy.me>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-09 09:50:28 +02:00
Zijun Hu 8ee592df65 Bluetooth: btusb: Add one more ID 0x0489:0xe0f3 for Qualcomm WCN785x
[ Upstream commit 45f745dd1ac880ce299c0f92b874cda090ddade6 ]

Add one more part with ID (0x0489, 0xe0f3) to usb_device_id table for
Qualcomm WCN785x, and its device info from /sys/kernel/debug/usb/devices
is shown below:

T:  Bus=01 Lev=01 Prnt=01 Port=13 Cnt=03 Dev#=  4 Spd=12   MxCh= 0
D:  Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=0489 ProdID=e0f3 Rev= 0.01
C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=1ms
E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=   0 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=   0 Ivl=1ms
I:  If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=   9 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=   9 Ivl=1ms
I:  If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  17 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  17 Ivl=1ms
I:  If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  25 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  25 Ivl=1ms
I:  If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  33 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  33 Ivl=1ms
I:  If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  49 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  49 Ivl=1ms
I:  If#= 1 Alt= 6 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  63 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  63 Ivl=1ms
I:  If#= 1 Alt= 7 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  65 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  65 Ivl=1ms

Signed-off-by: Zijun Hu <quic_zijuhu@quicinc.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Alexander Tsoy <alexander@tsoy.me>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-09 09:50:28 +02:00
Aaron Ma a9bfc823d0 Bluetooth: btusb: add Foxconn 0xe0fc for Qualcomm WCN785x
[ Upstream commit add1b1656f909c41aa0186fe75e7a42e2c0d2188 ]

Firmwares are already in upstream.

kernel boot log as following:
Bluetooth: hci0: using rampatch file: qca/rampatch_usb_00190200.bin
Bluetooth: hci0: QCA: patch rome 0x190200 build 0x5656, firmware rome 0x190200 build 0x43fb
Bluetooth: hci0: using NVM file: qca/nvm_usb_00190200.bin

Paired BT headphone, output is good.

T:  Bus=01 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#=  4 Spd=12   MxCh= 0
D:  Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=0489 ProdID=e0fc Rev= 0.01
C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=1ms
E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=   0 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=   0 Ivl=1ms
I:  If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=   9 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=   9 Ivl=1ms
I:  If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  17 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  17 Ivl=1ms
I:  If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  25 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  25 Ivl=1ms
I:  If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  33 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  33 Ivl=1ms
I:  If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  49 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  49 Ivl=1ms
I:  If#= 1 Alt= 6 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  63 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  63 Ivl=1ms
I:  If#= 1 Alt= 7 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=83(I) Atr=01(Isoc) MxPS=  65 Ivl=1ms
E:  Ad=03(O) Atr=01(Isoc) MxPS=  65 Ivl=1ms

Signed-off-by: Aaron Ma <aaron.ma@canonical.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Alexander Tsoy <alexander@tsoy.me>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-09 09:50:28 +02:00
Greg Kroah-Hartman 4e0cc11458 Merge 43e5e2879d ("s390/pci: Fix s390_mmio_read/write syscall page fault handling") into android16-6.12-lts
Steps on the way to 6.12.24

Change-Id: I58c86d986ce4fe886830aec5c9132aba22d7a86b
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-05-09 05:41:46 +00:00
Hsin-chen Chuang b5babbd250 FROMGIT: Revert "Bluetooth: btusb: Configure altsetting for HCI_USER_CHANNEL"
This reverts commit 75ddcd5ad40ecd9fbc9f5a7a2ed0e1e74921db3c.

This patch doesn't work quite well - It's observed that with this patch
HFP is flaky on most of the existing USB Bluetooth controllers: Intel
chips sometimes send out no packet for Transparent codec; MTK chips may
generate SCO data with a wrong handle for CVSD codec; RTK could split
the data with a wrong packet size for Transparent codec; ... etc.

Cc: chromeos-bluetooth-upstreaming@chromium.org
Signed-off-by: Hsin-chen Chuang <chharry@chromium.org>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>

Bug: 387425332
(cherry picked from commit 3947fa6173679f5f690b17931af823e0912ba612
 https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git master)
Change-Id: Ied5121d78efbcacadb31e712f61e8284823b1f8c
Signed-off-by: Hsin-chen Chuang <chharry@google.com>
2025-04-30 13:43:33 +00:00
Hsin-chen Chuang 912521fc4e FROMGIT: Bluetooth: btusb: Add HCI Drv commands for configuring altsetting
Although commit 75ddcd5ad40e ("Bluetooth: btusb: Configure altsetting
for HCI_USER_CHANNEL") has enabled the HCI_USER_CHANNEL user to send out
SCO data through USB Bluetooth chips, it's observed that with the patch
HFP is flaky on most of the existing USB Bluetooth controllers: Intel
chips sometimes send out no packet for Transparent codec; MTK chips may
generate SCO data with a wrong handle for CVSD codec; RTK could split
the data with a wrong packet size for Transparent codec; ... etc.

To address the issue above one needs to reset the altsetting back to
zero when there is no active SCO connection, which is the same as the
BlueZ behavior, and another benefit is the bus doesn't need to reserve
bandwidth when no SCO connection.

This patch adds "Supported Altsettings" and "Switch Altsetting" commands
that allow the user space program to configure the altsetting freely.

This patch is tested on ChromeOS devices. The USB Bluetooth models
(CVSD, TRANS alt3, and TRANS alt6) could pass the stress HFP test narrow
band speech and wide band speech.

Cc: chromeos-bluetooth-upstreaming@chromium.org
Fixes: b16b327edb4d ("Bluetooth: btusb: add sysfs attribute to control USB alt setting")
Signed-off-by: Hsin-chen Chuang <chharry@chromium.org>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>

Bug: 387425332
(cherry picked from commit f647a851f3d7092b67ce78504a57ac64541fe775
 https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git master)
Change-Id: Ia45e733826c8b954c5b371972952265d63bcb319
Signed-off-by: Hsin-chen Chuang <chharry@google.com>
2025-04-30 13:43:33 +00:00
Hsin-chen Chuang 99db8bf902 FROMGIT: Bluetooth: Introduce HCI Driver protocol
Although commit 75ddcd5ad40e ("Bluetooth: btusb: Configure altsetting
for HCI_USER_CHANNEL") has enabled the HCI_USER_CHANNEL user to send out
SCO data through USB Bluetooth chips, it's observed that with the patch
HFP is flaky on most of the existing USB Bluetooth controllers: Intel
chips sometimes send out no packet for Transparent codec; MTK chips may
generate SCO data with a wrong handle for CVSD codec; RTK could split
the data with a wrong packet size for Transparent codec; ... etc.

To address the issue above one needs to reset the altsetting back to
zero when there is no active SCO connection, which is the same as the
BlueZ behavior, and another benefit is the bus doesn't need to reserve
bandwidth when no SCO connection.

This patch adds the infrastructure that allow the user space program to
talk to Bluetooth drivers directly:
- Define the new packet type HCI_DRV_PKT which is specifically used for
  communication between the user space program and the Bluetooth drviers
- hci_send_frame intercepts the packets and invokes drivers' HCI Drv
  callbacks (so far only defined for btusb)
- 2 kinds of events to user space: Command Status and Command Complete,
  the former simply returns the status while the later may contain
  additional response data.

Cc: chromeos-bluetooth-upstreaming@chromium.org
Fixes: b16b327edb4d ("Bluetooth: btusb: add sysfs attribute to control USB alt setting")
Signed-off-by: Hsin-chen Chuang <chharry@chromium.org>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>

Bug: 387425332
(cherry picked from commit 4a740b78ddf3ce6894779f4526007ad24fbc049a
 https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git master)
Change-Id: I226c67c4230cf6d0f324c2d8c00327ae875283c7
Signed-off-by: Hsin-chen Chuang <chharry@google.com>
2025-04-30 13:43:33 +00:00
Kees Cook b62b1406bb Bluetooth: vhci: Avoid needless snprintf() calls
commit 875db86e1ec75fe633f1e85ed2f92c731cdbf760 upstream.

Avoid double-copying of string literals. Use a "const char *" for each
string instead of copying from .rodata into stack and then into the skb.
We can go directly from .rodata to the skb.

This also works around a Clang bug (that has since been fixed[1]).

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202401250927.1poZERd6-lkp@intel.com/
Fixes: ab4e4380d4 ("Bluetooth: Add vhci devcoredump support")
Link: https://github.com/llvm/llvm-project/commit/ea2e66aa8b6e363b89df66dc44275a0d7ecd70ce [1]
Cc: stable@vger.kernel.org
Signed-off-by: Kees Cook <kees@kernel.org>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
Reviewed-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-04-25 10:47:51 +02:00
Dan Carpenter aaf356f872 Bluetooth: btrtl: Prevent potential NULL dereference
[ Upstream commit 324dddea321078a6eeb535c2bff5257be74c9799 ]

The btrtl_initialize() function checks that rtl_load_file() either
had an error or it loaded a zero length file.  However, if it loaded
a zero length file then the error code is not set correctly.  It
results in an error pointer vs NULL bug, followed by a NULL pointer
dereference.  This was detected by Smatch:

drivers/bluetooth/btrtl.c:592 btrtl_initialize() warn: passing zero to 'ERR_PTR'

Fixes: 26503ad25d ("Bluetooth: btrtl: split the device initialization into smaller parts")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-04-25 10:47:41 +02:00
Arseniy Krasnov 281782d2c6 Bluetooth: hci_uart: Fix another race during initialization
commit 5df5dafc171b90d0b8d51547a82657cd5a1986c7 upstream.

Do not set 'HCI_UART_PROTO_READY' before call 'hci_uart_register_dev()'.
Possible race is when someone calls 'hci_tty_uart_close()' after this bit
is set, but 'hci_uart_register_dev()' wasn't done. This leads to access
to uninitialized fields. To fix it let's set this bit after device was
registered (as before patch c411c62cc133) and to fix previous problem let's
add one more bit in addition to 'HCI_UART_PROTO_READY' which allows to
perform power up without original bit set (pls see commit c411c62cc133).

Crash backtrace from syzbot report:

RIP: 0010:skb_queue_empty_lockless include/linux/skbuff.h:1887 [inline]
RIP: 0010:skb_queue_purge_reason+0x6d/0x140 net/core/skbuff.c:3936

Call Trace:
 <TASK>
 skb_queue_purge include/linux/skbuff.h:3364 [inline]
 mrvl_close+0x2f/0x90 drivers/bluetooth/hci_mrvl.c:100
 hci_uart_tty_close+0xb6/0x120 drivers/bluetooth/hci_ldisc.c:557
 tty_ldisc_close drivers/tty/tty_ldisc.c:455 [inline]
 tty_ldisc_kill+0x66/0xc0 drivers/tty/tty_ldisc.c:613
 tty_ldisc_release+0xc9/0x120 drivers/tty/tty_ldisc.c:781
 tty_release_struct+0x10/0x80 drivers/tty/tty_io.c:1690
 tty_release+0x4ef/0x640 drivers/tty/tty_io.c:1861
 __fput+0x86/0x2a0 fs/file_table.c:450
 task_work_run+0x82/0xb0 kernel/task_work.c:239
 resume_user_mode_work include/linux/resume_user_mode.h:50 [inline]
 exit_to_user_mode_loop kernel/entry/common.c:114 [inline]
 exit_to_user_mode_prepare include/linux/entry-common.h:329 [inline]
 __syscall_exit_to_user_mode_work kernel/entry/common.c:207 [inline]
 syscall_exit_to_user_mode+0xa3/0x1b0 kernel/entry/common.c:218
 do_syscall_64+0x9a/0x190 arch/x86/entry/common.c:89
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

Signed-off-by: Arseniy Krasnov <avkrasnov@salutedevices.com>
Reported-by: syzbot+683f8cb11b94b1824c77@syzkaller.appspotmail.com
Tested-by: syzbot+683f8cb11b94b1824c77@syzkaller.appspotmail.com
Closes: https://lore.kernel.org/linux-bluetooth/d159c57f-8490-4c26-79da-6ad3612c4a14@salutedevices.com/
Fixes: 366ceff495f9 ("Bluetooth: hci_uart: fix race during initialization")
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-04-20 10:16:02 +02:00
Dmitry Baryshkov feed98579d Bluetooth: qca: simplify WCN399x NVM loading
[ Upstream commit 1cc41b5092e3aa511454ec882c525af311bee631 ]

The WCN399x code has two separate cases for loading the NVM data. In
preparation to adding support for WCN3950, which also requires similar
quirk, split the "variant" to be specified explicitly and merge two
snprintfs into a single one.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-04-20 10:15:22 +02:00
Janaki Ramaiah Thota fe6f1f349d Bluetooth: hci_qca: use the power sequencer for wcn6750
[ Upstream commit 852cfdc7a5a5af54358325c1e0f490cc178d9664 ]

Older boards are having entry "enable-gpios" in dts, we can safely assume
latest boards which are supporting PMU node enrty will support power
sequencer.

Signed-off-by: Janaki Ramaiah Thota <quic_janathot@quicinc.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-04-20 10:15:22 +02:00
Jiande Lu a4d49212e3 Bluetooth: btusb: Add 2 HWIDs for MT7922
[ Upstream commit a88643b7e48506777e175e80c902c727ddd90851 ]

Add below HWIDs for MediaTek MT7922 USB Bluetooth chip.
VID 0x0489, PID 0xe152
VID 0x0489, PID 0xe153

Patch has been tested successfully and controller is recognized
device pair successfully.

MT7922 module bring up message as below.
Bluetooth: Core ver 2.22
Bluetooth: HCI device and connection manager initialized
Bluetooth: HCI socket layer initialized
Bluetooth: L2CAP socket layer initialized
Bluetooth: SCO socket layer initialized
Bluetooth: hci0: HW/SW Version: 0x008a008a, Build Time: 20241106163512
Bluetooth: hci0: Device setup in 2284925 usecs
Bluetooth: hci0: HCI Enhanced Setup Synchronous Connection command is advertised, but not supported.
Bluetooth: hci0: AOSP extensions version v1.00
Bluetooth: BNEP (Ethernet Emulation) ver 1.3
Bluetooth: BNEP filters: protocol multicast
Bluetooth: BNEP socket layer initialized
Bluetooth: MGMT ver 1.22
Bluetooth: RFCOMM TTY layer initialized
Bluetooth: RFCOMM socket layer initialized
Bluetooth: RFCOMM ver 1.11

Signed-off-by: Jiande Lu <jiande.lu@mediatek.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-04-20 10:15:22 +02:00
Arseniy Krasnov 6b7a32fa9b Bluetooth: hci_uart: fix race during initialization
[ Upstream commit 366ceff495f902182d42b6f41525c2474caf3f9a ]

'hci_register_dev()' calls power up function, which is executed by
kworker - 'hci_power_on()'. This function does access to bluetooth chip
using callbacks from 'hci_ldisc.c', for example 'hci_uart_send_frame()'.
Now 'hci_uart_send_frame()' checks 'HCI_UART_PROTO_READY' bit set, and
if not - it fails. Problem is that 'HCI_UART_PROTO_READY' is set after
'hci_register_dev()', and there is tiny chance that 'hci_power_on()' will
be executed before setting this bit. In that case HCI init logic fails.

Patch moves setting of 'HCI_UART_PROTO_READY' before calling function
'hci_uart_register_dev()'.

Signed-off-by: Arseniy Krasnov <avkrasnov@salutedevices.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-04-20 10:15:21 +02:00
Kiran K 082ae971a1 Bluetooth: btintel_pcie: Add device id of Whale Peak
[ Upstream commit 6b8c05e52d66e4fe4ab1df4c6e15f339ecd9aa51 ]

Add device of Whale Peak.

Output of sudo lspci -v  -s 00:14.7:

00:14.7 Bluetooth: Intel Corporation Device e476
        Subsystem: Intel Corporation Device 0011
        Flags: bus master, fast devsel, latency 0, IRQ 16, IOMMU group 11
        Memory at 11011c30000 (64-bit, non-prefetchable) [size=16K]
        Capabilities: [c8] Power Management version 3
        Capabilities: [d0] MSI: Enable- Count=1/1 Maskable- 64bit+
        Capabilities: [40] Express Root Complex Integrated Endpoint, MSI 00
        Capabilities: [80] MSI-X: Enable+ Count=32 Masked-
        Capabilities: [100] Latency Tolerance Reporting
        Kernel driver in use: btintel_pcie
        Kernel modules: btintel_pcie

Signed-off-by: Kiran K <kiran.k@intel.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-04-20 10:15:21 +02:00
Greg Kroah-Hartman b3fb80bdc6 Merge 6.12.19 into android16-6.12
GKI (arm64) relevant 48 out of 271 changes, affecting 92 files +576/-223
  5b414ed3bb Revert "of: reserved-memory: Fix using wrong number of cells to get property 'alignment'" [1 file, +2/-2]
  48a934fc47 Revert "mm/page_alloc.c: don't show protection in zone's ->lowmem_reserve[] for empty zone" [1 file, +1/-2]
  88310caff6 Bluetooth: Add check for mgmt_alloc_skb() in mgmt_remote_name() [1 file, +2/-0]
  7841180342 Bluetooth: Add check for mgmt_alloc_skb() in mgmt_device_connected() [1 file, +3/-0]
  2d448dbd47 userfaultfd: do not block on locking a large folio with raised refcount [1 file, +16/-1]
  f57e89c1cb block: fix conversion of GPT partition name to 7-bit [1 file, +1/-1]
  9426f38372 mm/page_alloc: fix uninitialized variable [1 file, +1/-0]
  79636d2981 mm: abort vma_modify() on merge out of memory failure [1 file, +8/-4]
  605f53f13b mm: don't skip arch_sync_kernel_mappings() in error paths [2 files, +6/-4]
  9ed33c7bac mm: fix finish_fault() handling for large folios [1 file, +10/-5]
  576a2f4c43 hwpoison, memory_hotplug: lock folio before unmap hwpoisoned folio [1 file, +4/-1]
  2e66d69941 mm: memory-hotplug: check folio ref count first in do_migrate_range [1 file, +7/-13]
  3c63fb6ef7 nvme-pci: use sgls for all user requests if possible [2 files, +13/-4]
  9dedafd86e nvme-ioctl: fix leaked requests on mapping error [1 file, +8/-4]
  084819b0d8 net: gso: fix ownership in __udp_gso_segment [1 file, +6/-2]
  1688acf477 perf/core: Fix pmus_lock vs. pmus_srcu ordering [1 file, +2/-2]
  a899adf706 HID: hid-steam: Fix use-after-free when detaching device [1 file, +1/-1]
  8aa8a40c76 ppp: Fix KMSAN uninit-value warning with bpf [1 file, +19/-9]
  b71cd95764 ethtool: linkstate: migrate linkstate functions to support multi-PHY setups [1 file, +15/-8]
  9c1d09cdbc net: ethtool: plumb PHY stats to PHY drivers [7 files, +167/-2]
  639c703529 net: ethtool: netlink: Allow NULL nlattrs when getting a phy_device [9 files, +19/-18]
  30e8aee778 vlan: enforce underlying device type [1 file, +2/-1]
  5d609f0d2f exfat: fix just enough dentries but allocate a new cluster to dir [1 file, +1/-1]
  c897b8ec46 exfat: fix soft lockup in exfat_clear_bitmap [3 files, +16/-7]
  611015122d exfat: short-circuit zero-byte writes in exfat_file_write_iter [1 file, +1/-1]
  2b484789e9 net-timestamp: support TCP GSO case for a few missing flags [1 file, +7/-4]
  b08e290324 ublk: set_params: properly check if parameters can be applied [1 file, +5/-2]
  b5741e4b9e sched/fair: Fix potential memory corruption in child_cfs_rq_on_list [1 file, +4/-2]
  39c2b2767e xhci: Restrict USB4 tunnel detection for USB3 devices to Intel hosts [1 file, +8/-0]
  4ea3319f3e usb: hub: lack of clearing xHC resources [1 file, +33/-0]
  0cab185c73 usb: quirks: Add DELAY_INIT and NO_LPM for Prolific Mass Storage Card Reader [1 file, +4/-0]
  079a3e52f3 usb: typec: ucsi: Fix NULL pointer access [1 file, +7/-6]
  840afbea3f usb: gadget: u_ether: Set is_suspend flag if remote wakeup fails [1 file, +2/-2]
  ced69d88eb usb: dwc3: Set SUSPENDENABLE soon after phy init [3 files, +45/-30]
  35db1f1829 usb: dwc3: gadget: Prevent irq storm when TH re-executes [2 files, +13/-13]
  b387312527 usb: typec: ucsi: increase timeout for PPM reset operations [1 file, +1/-1]
  4bf6c57a89 usb: gadget: Set self-powered based on MaxPower and bmAttributes [1 file, +11/-5]
  dcd7ffdefb usb: gadget: Fix setting self-powered state on suspend [1 file, +2/-1]
  395011ee82 usb: gadget: Check bmAttributes only if configuration is valid [1 file, +1/-1]
  012b98cdb5 acpi: typec: ucsi: Introduce a ->poll_cci method [7 files, +25/-12]
  d7015bb3c5 xhci: pci: Fix indentation in the PCI device ID definitions [1 file, +4/-4]
  ea39f99864 usb: xhci: Enable the TRB overfetch quirk on VIA VL805 [3 files, +10/-5]
  4e8df56636 char: misc: deallocate static minor in error path [1 file, +1/-1]
  b50e18791f drivers: core: fix device leak in __fw_devlink_relax_cycles() [1 file, +1/-0]
  a684bad77e mm: hugetlb: Add huge page size param to huge_ptep_get_and_clear() [16 files, +46/-28]
  6ad9643aa5 fs/netfs/read_pgpriv2: skip folio queues without `marks3` [1 file, +3/-2]
  5bc6e5b10f fs/netfs/read_collect: fix crash due to uninitialized `prev` variable [1 file, +11/-10]
  86b7ebddab uprobes: Fix race in uprobe_free_utask [1 file, +1/-1]

Changes in 6.12.19
        x86/amd_nb: Use rdmsr_safe() in amd_get_mmconfig_range()
        rust: block: fix formatting in GenDisk doc
        drm/i915/dsi: convert to struct intel_display
        drm/i915/dsi: Use TRANS_DDI_FUNC_CTL's own port width macro
        gpio: vf610: use generic device_get_match_data()
        gpio: vf610: add locking to gpio direction functions
        cifs: Remove symlink member from cifs_open_info_data union
        smb311: failure to open files of length 1040 when mounting with SMB3.1.1 POSIX extensions
        btrfs: fix data overwriting bug during buffered write when block size < page size
        x86/microcode/AMD: Add some forgotten models to the SHA check
        loongarch: Use ASM_REACHABLE
        rust: workqueue: remove unneeded ``#[allow(clippy::new_ret_no_self)]`
        rust: sort global Rust flags
        rust: types: avoid repetition in `{As,From}Bytes` impls
        rust: enable `clippy::undocumented_unsafe_blocks` lint
        rust: enable `clippy::unnecessary_safety_comment` lint
        rust: enable `clippy::unnecessary_safety_doc` lint
        rust: enable `clippy::ignored_unit_patterns` lint
        rust: enable `rustdoc::unescaped_backticks` lint
        rust: init: remove unneeded `#[allow(clippy::disallowed_names)]`
        rust: sync: remove unneeded `#[allow(clippy::non_send_fields_in_send_ty)]`
        rust: introduce `.clippy.toml`
        rust: replace `clippy::dbg_macro` with `disallowed_macros`
        rust: provide proper code documentation titles
        rust: enable Clippy's `check-private-items`
        Documentation: rust: add coding guidelines on lints
        rust: start using the `#[expect(...)]` attribute
        Documentation: rust: discuss `#[expect(...)]` in the guidelines
        rust: error: make conversion functions public
        rust: error: optimize error type to use nonzero
        rust: alloc: add `Allocator` trait
        rust: alloc: separate `aligned_size` from `krealloc_aligned`
        rust: alloc: rename `KernelAllocator` to `Kmalloc`
        rust: alloc: implement `ReallocFunc`
        rust: alloc: make `allocator` module public
        rust: alloc: implement `Allocator` for `Kmalloc`
        rust: alloc: add module `allocator_test`
        rust: alloc: implement `Vmalloc` allocator
        rust: alloc: implement `KVmalloc` allocator
        rust: alloc: add __GFP_NOWARN to `Flags`
        rust: alloc: implement kernel `Box`
        rust: treewide: switch to our kernel `Box` type
        rust: alloc: remove extension of std's `Box`
        rust: alloc: add `Box` to prelude
        rust: alloc: introduce `ArrayLayout`
        rust: alloc: implement kernel `Vec` type
        rust: alloc: implement `IntoIterator` for `Vec`
        rust: alloc: implement `collect` for `IntoIter`
        rust: treewide: switch to the kernel `Vec` type
        rust: alloc: remove `VecExt` extension
        rust: alloc: add `Vec` to prelude
        rust: error: use `core::alloc::LayoutError`
        rust: error: check for config `test` in `Error::name`
        rust: alloc: implement `contains` for `Flags`
        rust: alloc: implement `Cmalloc` in module allocator_test
        rust: str: test: replace `alloc::format`
        rust: alloc: update module comment of alloc.rs
        kbuild: rust: remove the `alloc` crate and `GlobalAlloc`
        MAINTAINERS: add entry for the Rust `alloc` module
        drm/panic: avoid reimplementing Iterator::find
        drm/panic: remove unnecessary borrow in alignment_pattern
        drm/panic: prefer eliding lifetimes
        drm/panic: remove redundant field when assigning value
        drm/panic: correctly indent continuation of line in list item
        drm/panic: allow verbose boolean for clarity
        drm/panic: allow verbose version check
        rust: kbuild: expand rusttest target for macros
        rust: fix size_t in bindgen prototypes of C builtins
        rust: map `__kernel_size_t` and friends also to usize/isize
        rust: use custom FFI integer types
        rust: alloc: Fix `ArrayLayout` allocations
        Revert "of: reserved-memory: Fix using wrong number of cells to get property 'alignment'"
        tracing: tprobe-events: Fix a memory leak when tprobe with $retval
        tracing: tprobe-events: Reject invalid tracepoint name
        stmmac: loongson: Pass correct arg to PCI function
        LoongArch: Convert unreachable() to BUG()
        LoongArch: Use polling play_dead() when resuming from hibernation
        LoongArch: Set max_pfn with the PFN of the last page
        LoongArch: KVM: Add interrupt checking for AVEC
        LoongArch: KVM: Reload guest CSR registers after sleep
        LoongArch: KVM: Fix GPA size issue about VM
        HID: appleir: Fix potential NULL dereference at raw event handle
        ksmbd: fix type confusion via race condition when using ipc_msg_send_request
        ksmbd: fix out-of-bounds in parse_sec_desc()
        ksmbd: fix use-after-free in smb2_lock
        ksmbd: fix bug on trap in smb2_lock
        gpio: rcar: Use raw_spinlock to protect register access
        gpio: aggregator: protect driver attr handlers against module unload
        ALSA: seq: Avoid module auto-load handling at event delivery
        ALSA: hda: intel: Add Dell ALC3271 to power_save denylist
        ALSA: hda/realtek - add supported Mic Mute LED for Lenovo platform
        ALSA: hda/realtek: update ALC222 depop optimize
        btrfs: fix a leaked chunk map issue in read_one_chunk()
        hwmon: (peci/dimmtemp) Do not provide fake thresholds data
        drm/amd/display: Fix null check for pipe_ctx->plane_state in resource_build_scaling_params
        drm/amdkfd: Fix NULL Pointer Dereference in KFD queue
        drm/amd/pm: always allow ih interrupt from fw
        drm/imagination: avoid deadlock on fence release
        drm/imagination: Hold drm_gem_gpuva lock for unmap
        drm/imagination: only init job done fences once
        drm/radeon: Fix rs400_gpu_init for ATI mobility radeon Xpress 200M
        Revert "mm/page_alloc.c: don't show protection in zone's ->lowmem_reserve[] for empty zone"
        Revert "selftests/mm: remove local __NR_* definitions"
        platform/x86: thinkpad_acpi: Add battery quirk for ThinkPad X131e
        x86/boot: Sanitize boot params before parsing command line
        x86/cacheinfo: Validate CPUID leaf 0x2 EDX output
        x86/cpu: Validate CPUID leaf 0x2 EDX output
        x86/cpu: Properly parse CPUID leaf 0x2 TLB descriptor 0x63
        drm/xe: Add staging tree for VM binds
        drm/xe/hmm: Style- and include fixes
        drm/xe/hmm: Don't dereference struct page pointers without notifier lock
        drm/xe/vm: Fix a misplaced #endif
        drm/xe/vm: Validate userptr during gpu vma prefetching
        mptcp: fix 'scheduling while atomic' in mptcp_pm_nl_append_new_local_addr
        drm/xe: Fix GT "for each engine" workarounds
        drm/xe: Fix fault mode invalidation with unbind
        drm/xe/userptr: properly setup pfn_flags_mask
        drm/xe/userptr: Unmap userptrs in the mmu notifier
        Bluetooth: Add check for mgmt_alloc_skb() in mgmt_remote_name()
        Bluetooth: Add check for mgmt_alloc_skb() in mgmt_device_connected()
        wifi: cfg80211: regulatory: improve invalid hints checking
        wifi: nl80211: reject cooked mode if it is set along with other flags
        selftests/damon/damos_quota_goal: handle minimum quota that cannot be further reduced
        selftests/damon/damos_quota: make real expectation of quota exceeds
        selftests/damon/damon_nr_regions: set ops update for merge results check to 100ms
        selftests/damon/damon_nr_regions: sort collected regiosn before checking with min/max boundaries
        rapidio: add check for rio_add_net() in rio_scan_alloc_net()
        rapidio: fix an API misues when rio_add_net() fails
        dma: kmsan: export kmsan_handle_dma() for modules
        s390/traps: Fix test_monitor_call() inline assembly
        NFS: fix nfs_release_folio() to not deadlock via kcompactd writeback
        userfaultfd: do not block on locking a large folio with raised refcount
        block: fix conversion of GPT partition name to 7-bit
        mm/page_alloc: fix uninitialized variable
        mm: abort vma_modify() on merge out of memory failure
        mm: memory-failure: update ttu flag inside unmap_poisoned_folio
        mm: don't skip arch_sync_kernel_mappings() in error paths
        mm: fix finish_fault() handling for large folios
        hwpoison, memory_hotplug: lock folio before unmap hwpoisoned folio
        mm: memory-hotplug: check folio ref count first in do_migrate_range
        wifi: iwlwifi: mvm: clean up ROC on failure
        wifi: iwlwifi: mvm: don't try to talk to a dead firmware
        wifi: iwlwifi: limit printed string from FW file
        wifi: iwlwifi: Free pages allocated when failing to build A-MSDU
        wifi: iwlwifi: Fix A-MSDU TSO preparation
        HID: google: fix unused variable warning under !CONFIG_ACPI
        HID: intel-ish-hid: Fix use-after-free issue in hid_ishtp_cl_remove()
        HID: intel-ish-hid: Fix use-after-free issue in ishtp_hid_remove()
        coredump: Only sort VMAs when core_sort_vma sysctl is set
        nvme-pci: add support for sgl metadata
        nvme-pci: use sgls for all user requests if possible
        nvme-ioctl: fix leaked requests on mapping error
        wifi: mac80211: Support parsing EPCS ML element
        wifi: mac80211: fix MLE non-inheritance parsing
        wifi: mac80211: fix vendor-specific inheritance
        drm/fbdev-helper: Move color-mode lookup into 4CC format helper
        drm/fbdev: Add memory-agnostic fbdev client
        drm: Add client-agnostic setup helper
        drm/fbdev-ttm: Support struct drm_driver.fbdev_probe
        drm/nouveau: Run DRM default client setup
        drm/nouveau: select FW caching
        bluetooth: btusb: Initialize .owner field of force_poll_sync_fops
        nvme-tcp: add basic support for the C2HTermReq PDU
        nvme-tcp: fix potential memory corruption in nvme_tcp_recv_pdu()
        nvmet-tcp: Fix a possible sporadic response drops in weakly ordered arch
        ALSA: hda/realtek: Remove (revert) duplicate Ally X config
        net: gso: fix ownership in __udp_gso_segment
        caif_virtio: fix wrong pointer check in cfv_probe()
        perf/core: Fix pmus_lock vs. pmus_srcu ordering
        hwmon: (pmbus) Initialise page count in pmbus_identify()
        hwmon: (ntc_thermistor) Fix the ncpXXxh103 sensor table
        hwmon: (ad7314) Validate leading zero bits and return error
        tracing: probe-events: Remove unused MAX_ARG_BUF_LEN macro
        drm/imagination: Fix timestamps in firmware traces
        ALSA: usx2y: validate nrpacks module parameter on probe
        llc: do not use skb_get() before dev_queue_xmit()
        hwmon: fix a NULL vs IS_ERR_OR_NULL() check in xgene_hwmon_probe()
        drm/sched: Fix preprocessor guard
        be2net: fix sleeping while atomic bugs in be_ndo_bridge_getlink
        net: hns3: make sure ptp clock is unregister and freed if hclge_ptp_get_cycle returns an error
        drm/i915/color: Extract intel_color_modeset()
        drm/i915: Plumb 'dsb' all way to the plane hooks
        drm/xe: Remove double pageflip
        HID: hid-steam: Fix use-after-free when detaching device
        net: ipa: Fix v4.7 resource group names
        net: ipa: Fix QSB data for v4.7
        net: ipa: Enable checksum for IPA_ENDPOINT_AP_MODEM_{RX,TX} for v4.7
        ppp: Fix KMSAN uninit-value warning with bpf
        ethtool: linkstate: migrate linkstate functions to support multi-PHY setups
        net: ethtool: plumb PHY stats to PHY drivers
        net: ethtool: netlink: Allow NULL nlattrs when getting a phy_device
        vlan: enforce underlying device type
        x86/sgx: Fix size overflows in sgx_encl_create()
        exfat: fix just enough dentries but allocate a new cluster to dir
        exfat: fix soft lockup in exfat_clear_bitmap
        exfat: short-circuit zero-byte writes in exfat_file_write_iter
        net-timestamp: support TCP GSO case for a few missing flags
        ublk: set_params: properly check if parameters can be applied
        sched/fair: Fix potential memory corruption in child_cfs_rq_on_list
        nvme-tcp: fix signedness bug in nvme_tcp_init_connection()
        net: dsa: mt7530: Fix traffic flooding for MMIO devices
        mctp i3c: handle NULL header address
        net: ipv6: fix dst ref loop in ila lwtunnel
        net: ipv6: fix missing dst ref drop in ila lwtunnel
        gpio: rcar: Fix missing of_node_put() call
        Revert "drivers/card_reader/rtsx_usb: Restore interrupt based detection"
        usb: renesas_usbhs: Call clk_put()
        xhci: Restrict USB4 tunnel detection for USB3 devices to Intel hosts
        usb: renesas_usbhs: Use devm_usb_get_phy()
        usb: hub: lack of clearing xHC resources
        usb: quirks: Add DELAY_INIT and NO_LPM for Prolific Mass Storage Card Reader
        usb: typec: ucsi: Fix NULL pointer access
        usb: renesas_usbhs: Flush the notify_hotplug_work
        usb: gadget: u_ether: Set is_suspend flag if remote wakeup fails
        usb: atm: cxacru: fix a flaw in existing endpoint checks
        usb: dwc3: Set SUSPENDENABLE soon after phy init
        usb: dwc3: gadget: Prevent irq storm when TH re-executes
        usb: typec: ucsi: increase timeout for PPM reset operations
        usb: typec: tcpci_rt1711h: Unmask alert interrupts to fix functionality
        usb: gadget: Set self-powered based on MaxPower and bmAttributes
        usb: gadget: Fix setting self-powered state on suspend
        usb: gadget: Check bmAttributes only if configuration is valid
        kbuild: userprogs: use correct lld when linking through clang
        acpi: typec: ucsi: Introduce a ->poll_cci method
        rust: finish using custom FFI integer types
        rust: map `long` to `isize` and `char` to `u8`
        xhci: pci: Fix indentation in the PCI device ID definitions
        usb: xhci: Enable the TRB overfetch quirk on VIA VL805
        KVM: SVM: Set RFLAGS.IF=1 in C code, to get VMRUN out of the STI shadow
        KVM: SVM: Save host DR masks on CPUs with DebugSwap
        KVM: SVM: Drop DEBUGCTL[5:2] from guest's effective value
        KVM: SVM: Suppress DEBUGCTL.BTF on AMD
        KVM: x86: Snapshot the host's DEBUGCTL in common x86
        KVM: SVM: Manually context switch DEBUGCTL if LBR virtualization is disabled
        KVM: x86: Snapshot the host's DEBUGCTL after disabling IRQs
        KVM: x86: Explicitly zero EAX and EBX when PERFMON_V2 isn't supported by KVM
        cdx: Fix possible UAF error in driver_override_show()
        mei: me: add panther lake P DID
        mei: vsc: Use "wakeuphostint" when getting the host wakeup GPIO
        intel_th: pci: Add Arrow Lake support
        intel_th: pci: Add Panther Lake-H support
        intel_th: pci: Add Panther Lake-P/U support
        char: misc: deallocate static minor in error path
        drivers: core: fix device leak in __fw_devlink_relax_cycles()
        slimbus: messaging: Free transaction ID in delayed interrupt scenario
        bus: mhi: host: pci_generic: Use pci_try_reset_function() to avoid deadlock
        eeprom: digsy_mtc: Make GPIO lookup table match the device
        drivers: virt: acrn: hsm: Use kzalloc to avoid info leak in pmcmd_ioctl
        iio: filter: admv8818: Force initialization of SDO
        iio: light: apds9306: fix max_scale_nano values
        iio: dac: ad3552r: clear reset status flag
        iio: adc: ad7192: fix channel select
        iio: adc: at91-sama5d2_adc: fix sama7g5 realbits value
        mm: hugetlb: Add huge page size param to huge_ptep_get_and_clear()
        arm64: hugetlb: Fix huge_ptep_get_and_clear() for non-present ptes
        fs/netfs/read_pgpriv2: skip folio queues without `marks3`
        fs/netfs/read_collect: fix crash due to uninitialized `prev` variable
        kbuild: hdrcheck: fix cross build with clang
        ALSA: hda: realtek: fix incorrect IS_REACHABLE() usage
        nvme-tcp: Fix a C2HTermReq error message
        docs: rust: remove spurious item in `expect` list
        Revert "KVM: e500: always restore irqs"
        Revert "KVM: PPC: e500: Use __kvm_faultin_pfn() to handle page faults"
        Revert "KVM: PPC: e500: Mark "struct page" pfn accessed before dropping mmu_lock"
        Revert "KVM: PPC: e500: Mark "struct page" dirty in kvmppc_e500_shadow_map()"
        KVM: e500: always restore irqs
        uprobes: Fix race in uprobe_free_utask
        selftests/bpf: Clean up open-coded gettid syscall invocations
        x86/mm: Don't disable PCID when INVLPG has been fixed by microcode
        wifi: iwlwifi: pcie: Fix TSO preparation
        Linux 6.12.19

Change-Id: Ia0c2b2c6a95b53a66e21505ed6ba756c6b0a2388
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-04-17 03:02:04 -07:00
Hsin-chen Chuang 54f0112376 FROMGIT: Bluetooth: btusb: Configure altsetting for HCI_USER_CHANNEL
Automatically configure the altsetting for HCI_USER_CHANNEL when a SCO
is connected.

The motivation is to enable the HCI_USER_CHANNEL user to send out SCO
data through USB Bluetooth chips, which is mainly used for bidirectional
audio transfer (voice call). This was not capable because:

- Per Bluetooth Core Spec v5, Vol 4, Part B, 2.1, the corresponding
  alternate setting should be set based on the air mode in order to
  transfer SCO data, but
- The Linux Bluetooth HCI_USER_CHANNEL exposes the Bluetooth Host
  Controller Interface to the user space, which is something above the
  USB layer. The user space is not able to configure the USB alt while
  keeping the channel open.

This patch intercepts the HCI_EV_SYNC_CONN_COMPLETE packets in btusb,
extracts the air mode, and configures the alt setting in btusb.

This patch is tested on ChromeOS devices. The USB Bluetooth models
(CVSD, TRANS alt3 and alt6) could work without a customized kernel.

Fixes: b16b327edb4d ("Bluetooth: btusb: add sysfs attribute to control USB alt setting")
Signed-off-by: Hsin-chen Chuang <chharry@chromium.org>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>

Bug: 387425332
(cherry picked from commit c01c0d443bcdd49f8179c47aa83943cc64ad9bf9
 https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git master)
Change-Id: I54302b837357b5ee9853262462f46f0f5798ed62
Signed-off-by: Hsin-chen Chuang <chharry@google.com>
2025-03-18 21:42:24 -07:00
Hsin-chen Chuang 959520b027 FROMGIT: Bluetooth: Always allow SCO packets for user channel
The SCO packets from Bluetooth raw socket are now rejected because
hci_conn_num is left 0. This patch allows such the usecase to enable
the userspace SCO support.

Fixes: b16b327edb4d ("Bluetooth: btusb: add sysfs attribute to control USB alt setting")
Signed-off-by: Hsin-chen Chuang <chharry@chromium.org>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>

Bug: 387425332
(cherry picked from commit 980d6e2904dfc053df685bd200adeca5aaa13dca
 https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git master)
Change-Id: I808eda628aecdcb6c07263e09901b0ee7e24d6a9
Signed-off-by: Hsin-chen Chuang <chharry@google.com>
2025-03-18 21:42:24 -07:00
Salah Triki d7f35ebb58 bluetooth: btusb: Initialize .owner field of force_poll_sync_fops
[ Upstream commit cbf85b9cb80bec6345ffe0368dfff98386f4714f ]

Initialize .owner field of force_poll_sync_fops to THIS_MODULE in order to
prevent btusb from being unloaded while its operations are in use.

Fixes: 800fe5ec30 ("Bluetooth: btusb: Add support for queuing during polling interval")
Signed-off-by: Salah Triki <salah.triki@gmail.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-03-13 13:02:03 +01:00