Commit Graph

6726 Commits

Author SHA1 Message Date
Greg Kroah-Hartman
c747c01851 This is the 6.1.11 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmPkywAACgkQONu9yGCS
 aT42Kw/9FFrdwv29yND651dPIglYKgO0Oz27/LFNGqst1A/G1ITzfs/94NSRr+9j
 uvwmBLbC+n/OXYavliBVWlPaYUCLqoFSfR+q953yz/UT0803E8BUvQ8NN8O7lsg7
 hfbWJaASxt5puy2pBFypeWM+OXoVOvUBj3VhbgtUwwcYLPuYafj9rCAytdIIf5fr
 RKWBLfx7As4OJ+Hb3KNkolTkFDTfV5+zqCAc9Ko474d1bpRnF15UdQN8Kkinr2+O
 YNGTvDT8jR8eAk/9PiCNrG7DEMSKaczP8n/ap6PikD/KnK7ShtCLwZztLnmu65g1
 vZG+cnEda8FuY3Ms03UrHhKqzMzBY/vslzBNMBTNmDsr+b7ilhffAYXPKS8s7xrg
 bJjmfzfITFAjXrml25enVO0V9RtTxv6E07U7SnDrLsvE2KBFZfUR/3Xl70bVBb0S
 db60kmEoq3XHHtoVySOHlfihVHSy02V9dlFcLOYMQsDHsGVsRXOR87g6d7+rJS3h
 hYWz5YxMLJUr2qn2836DPBnX9Ix0VjDx+X2fB4bNYzKc1dMlgzbpYrhk9LEOUDsx
 emJuqZskjkLby9Bw36N3eHW3fKPOFrwpYwPWYJHdWx1mmFSNdV6MdfEtZXpuEkFJ
 iFyJPeeODGadoiznnXTaBFfhozRj+B6FXrY6pkF+WMoSt8ZlZpM=
 =vu7j
 -----END PGP SIGNATURE-----

Merge 6.1.11 into android14-6.1

Changes in 6.1.11
	firewire: fix memory leak for payload of request subaction to IEC 61883-1 FCP region
	bus: sunxi-rsb: Fix error handling in sunxi_rsb_init()
	arm64: dts: imx8m-venice: Remove incorrect 'uart-has-rtscts'
	arm64: dts: freescale: imx8dxl: fix sc_pwrkey's property name linux,keycode
	ASoC: amd: acp-es8336: Drop reference count of ACPI device after use
	ASoC: Intel: bytcht_es8316: Drop reference count of ACPI device after use
	ASoC: Intel: bytcr_rt5651: Drop reference count of ACPI device after use
	ASoC: Intel: bytcr_rt5640: Drop reference count of ACPI device after use
	ASoC: Intel: bytcr_wm5102: Drop reference count of ACPI device after use
	ASoC: Intel: sof_es8336: Drop reference count of ACPI device after use
	ASoC: Intel: avs: Implement PCI shutdown
	bpf: Fix off-by-one error in bpf_mem_cache_idx()
	bpf: Fix a possible task gone issue with bpf_send_signal[_thread]() helpers
	ALSA: hda/via: Avoid potential array out-of-bound in add_secret_dac_path()
	bpf: Fix to preserve reg parent/live fields when copying range info
	selftests/filesystems: grant executable permission to run_fat_tests.sh
	ASoC: SOF: ipc4-mtrace: prevent underflow in sof_ipc4_priority_mask_dfs_write()
	bpf: Add missing btf_put to register_btf_id_dtor_kfuncs
	media: v4l2-ctrls-api.c: move ctrl->is_new = 1 to the correct line
	bpf, sockmap: Check for any of tcp_bpf_prots when cloning a listener
	arm64: dts: imx8mm: Fix pad control for UART1_DTE_RX
	arm64: dts: imx8mm-verdin: Do not power down eth-phy
	drm/vc4: hdmi: make CEC adapter name unique
	drm/ssd130x: Init display before the SSD130X_DISPLAY_ON command
	scsi: Revert "scsi: core: map PQ=1, PDT=other values to SCSI_SCAN_TARGET_PRESENT"
	bpf: Fix the kernel crash caused by bpf_setsockopt().
	ALSA: memalloc: Workaround for Xen PV
	vhost/net: Clear the pending messages when the backend is removed
	copy_oldmem_kernel() - WRITE is "data source", not destination
	WRITE is "data source", not destination...
	READ is "data destination", not source...
	zcore: WRITE is "data source", not destination...
	memcpy_real(): WRITE is "data source", not destination...
	fix iov_iter_bvec() "direction" argument
	fix 'direction' argument of iov_iter_{init,bvec}()
	fix "direction" argument of iov_iter_kvec()
	use less confusing names for iov_iter direction initializers
	vhost-scsi: unbreak any layout for response
	ice: Prevent set_channel from changing queues while RDMA active
	qede: execute xdp_do_flush() before napi_complete_done()
	virtio-net: execute xdp_do_flush() before napi_complete_done()
	dpaa_eth: execute xdp_do_flush() before napi_complete_done()
	dpaa2-eth: execute xdp_do_flush() before napi_complete_done()
	skb: Do mix page pool and page referenced frags in GRO
	sfc: correctly advertise tunneled IPv6 segmentation
	net: phy: dp83822: Fix null pointer access on DP83825/DP83826 devices
	net: wwan: t7xx: Fix Runtime PM initialization
	block, bfq: replace 0/1 with false/true in bic apis
	block, bfq: fix uaf for bfqq in bic_set_bfqq()
	netrom: Fix use-after-free caused by accept on already connected socket
	fscache: Use wait_on_bit() to wait for the freeing of relinquished volume
	platform/x86/amd/pmf: update to auto-mode limits only after AMT event
	platform/x86/amd/pmf: Add helper routine to update SPS thermals
	platform/x86/amd/pmf: Fix to update SPS default pprof thermals
	platform/x86/amd/pmf: Add helper routine to check pprof is balanced
	platform/x86/amd/pmf: Fix to update SPS thermals when power supply change
	platform/x86/amd/pmf: Ensure mutexes are initialized before use
	platform/x86: thinkpad_acpi: Fix thinklight LED brightness returning 255
	drm/i915/guc: Fix locking when searching for a hung request
	drm/i915: Fix request ref counting during error capture & debugfs dump
	drm/i915: Fix up locking around dumping requests lists
	drm/i915/adlp: Fix typo for reference clock
	net/tls: tls_is_tx_ready() checked list_entry
	ALSA: firewire-motu: fix unreleased lock warning in hwdep device
	netfilter: br_netfilter: disable sabotage_in hook after first suppression
	block: ublk: extending queue_size to fix overflow
	kunit: fix kunit_test_init_section_suites(...)
	squashfs: harden sanity check in squashfs_read_xattr_id_table
	maple_tree: should get pivots boundary by type
	sctp: do not check hb_timer.expires when resetting hb_timer
	net: phy: meson-gxl: Add generic dummy stubs for MMD register access
	drm/panel: boe-tv101wum-nl6: Ensure DSI writes succeed during disable
	ip/ip6_gre: Fix changing addr gen mode not generating IPv6 link local address
	ip/ip6_gre: Fix non-point-to-point tunnel not generating IPv6 link local address
	riscv: kprobe: Fixup kernel panic when probing an illegal position
	igc: return an error if the mac type is unknown in igc_ptp_systim_to_hwtstamp()
	octeontx2-af: Fix devlink unregister
	can: j1939: fix errant WARN_ON_ONCE in j1939_session_deactivate
	can: raw: fix CAN FD frame transmissions over CAN XL devices
	can: mcp251xfd: mcp251xfd_ring_set_ringparam(): assign missing tx_obj_num_coalesce_irq
	ata: libata: Fix sata_down_spd_limit() when no link speed is reported
	selftests: net: udpgso_bench_rx: Fix 'used uninitialized' compiler warning
	selftests: net: udpgso_bench_rx/tx: Stop when wrong CLI args are provided
	selftests: net: udpgso_bench: Fix racing bug between the rx/tx programs
	selftests: net: udpgso_bench_tx: Cater for pending datagrams zerocopy benchmarking
	virtio-net: Keep stop() to follow mirror sequence of open()
	net: openvswitch: fix flow memory leak in ovs_flow_cmd_new
	efi: fix potential NULL deref in efi_mem_reserve_persistent
	rtc: sunplus: fix format string for printing resource
	certs: Fix build error when PKCS#11 URI contains semicolon
	kbuild: modinst: Fix build error when CONFIG_MODULE_SIG_KEY is a PKCS#11 URI
	i2c: designware-pci: Add new PCI IDs for AMD NAVI GPU
	i2c: mxs: suppress probe-deferral error message
	scsi: target: core: Fix warning on RT kernels
	x86/aperfmperf: Erase stale arch_freq_scale values when disabling frequency invariance readings
	perf/x86/intel: Add Emerald Rapids
	perf/x86/intel/cstate: Add Emerald Rapids
	scsi: iscsi_tcp: Fix UAF during logout when accessing the shost ipaddress
	scsi: iscsi_tcp: Fix UAF during login when accessing the shost ipaddress
	i2c: rk3x: fix a bunch of kernel-doc warnings
	Revert "gfs2: stop using generic_writepages in gfs2_ail1_start_one"
	x86/build: Move '-mindirect-branch-cs-prefix' out of GCC-only block
	platform/x86: dell-wmi: Add a keymap for KEY_MUTE in type 0x0010 table
	platform/x86: hp-wmi: Handle Omen Key event
	platform/x86: gigabyte-wmi: add support for B450M DS3H WIFI-CF
	platform/x86/amd: pmc: Disable IRQ1 wakeup for RN/CZN
	net/x25: Fix to not accept on connected socket
	drm/amd/display: Fix timing not changning when freesync video is enabled
	bcache: Silence memcpy() run-time false positive warnings
	iio: adc: stm32-dfsdm: fill module aliases
	usb: dwc3: qcom: enable vbus override when in OTG dr-mode
	usb: gadget: f_fs: Fix unbalanced spinlock in __ffs_ep0_queue_wait
	vc_screen: move load of struct vc_data pointer in vcs_read() to avoid UAF
	fbcon: Check font dimension limits
	cgroup/cpuset: Fix wrong check in update_parent_subparts_cpumask()
	hv_netvsc: Fix missed pagebuf entries in netvsc_dma_map/unmap()
	ARM: dts: imx7d-smegw01: Fix USB host over-current polarity
	net: qrtr: free memory on error path in radix_tree_insert()
	can: isotp: split tx timer into transmission and timeout
	can: isotp: handle wait_event_interruptible() return values
	watchdog: diag288_wdt: do not use stack buffers for hardware data
	watchdog: diag288_wdt: fix __diag288() inline assembly
	ALSA: hda/realtek: Add Acer Predator PH315-54
	ALSA: hda/realtek: fix mute/micmute LEDs, speaker don't work for a HP platform
	ASoC: codecs: wsa883x: correct playback min/max rates
	ASoC: SOF: sof-audio: unprepare when swidget->use_count > 0
	ASoC: SOF: sof-audio: skip prepare/unprepare if swidget is NULL
	ASoC: SOF: keep prepare/unprepare widgets in sink path
	efi: Accept version 2 of memory attributes table
	rtc: efi: Enable SET/GET WAKEUP services as optional
	iio: hid: fix the retval in accel_3d_capture_sample
	iio: hid: fix the retval in gyro_3d_capture_sample
	iio: adc: xilinx-ams: fix devm_krealloc() return value check
	iio: adc: berlin2-adc: Add missing of_node_put() in error path
	iio: imx8qxp-adc: fix irq flood when call imx8qxp_adc_read_raw()
	iio:adc:twl6030: Enable measurements of VUSB, VBAT and others
	iio: light: cm32181: Fix PM support on system with 2 I2C resources
	iio: imu: fxos8700: fix ACCEL measurement range selection
	iio: imu: fxos8700: fix incomplete ACCEL and MAGN channels readback
	iio: imu: fxos8700: fix IMU data bits returned to user space
	iio: imu: fxos8700: fix map label of channel type to MAGN sensor
	iio: imu: fxos8700: fix swapped ACCEL and MAGN channels readback
	iio: imu: fxos8700: fix incorrect ODR mode readback
	iio: imu: fxos8700: fix failed initialization ODR mode assignment
	iio: imu: fxos8700: remove definition FXOS8700_CTRL_ODR_MIN
	iio: imu: fxos8700: fix MAGN sensor scale and unit
	nvmem: brcm_nvram: Add check for kzalloc
	nvmem: sunxi_sid: Always use 32-bit MMIO reads
	nvmem: qcom-spmi-sdam: fix module autoloading
	parisc: Fix return code of pdc_iodc_print()
	parisc: Replace hardcoded value with PRIV_USER constant in ptrace.c
	parisc: Wire up PTRACE_GETREGS/PTRACE_SETREGS for compat case
	riscv: disable generation of unwind tables
	Revert "mm: kmemleak: alloc gray object for reserved region with direct map"
	mm: multi-gen LRU: fix crash during cgroup migration
	mm: hugetlb: proc: check for hugetlb shared PMD in /proc/PID/smaps
	mm: memcg: fix NULL pointer in mem_cgroup_track_foreign_dirty_slowpath()
	usb: gadget: f_uac2: Fix incorrect increment of bNumEndpoints
	usb: typec: ucsi: Don't attempt to resume the ports before they exist
	usb: gadget: udc: do not clear gadget driver.bus
	kernel/irq/irqdomain.c: fix memory leak with using debugfs_lookup()
	HV: hv_balloon: fix memory leak with using debugfs_lookup()
	x86/debug: Fix stack recursion caused by wrongly ordered DR7 accesses
	fpga: m10bmc-sec: Fix probe rollback
	fpga: stratix10-soc: Fix return value check in s10_ops_write_init()
	mm/uffd: fix pte marker when fork() without fork event
	mm/swapfile: add cond_resched() in get_swap_pages()
	mm/khugepaged: fix ->anon_vma race
	mm, mremap: fix mremap() expanding for vma's with vm_ops->close()
	mm/MADV_COLLAPSE: catch !none !huge !bad pmd lookups
	highmem: round down the address passed to kunmap_flush_on_unmap()
	ia64: fix build error due to switch case label appearing next to declaration
	Squashfs: fix handling and sanity checking of xattr_ids count
	maple_tree: fix mas_empty_area_rev() lower bound validation
	migrate: hugetlb: check for hugetlb shared PMD in node migration
	dma-buf: actually set signaling bit for private stub fences
	serial: stm32: Merge hard IRQ and threaded IRQ handling into single IRQ handler
	drm/i915: Avoid potential vm use-after-free
	drm/i915: Fix potential bit_17 double-free
	drm/amd: Fix initialization for nbio 4.3.0
	drm/amd/pm: drop unneeded dpm features disablement for SMU 13.0.4/11
	drm/amdgpu: update wave data type to 3 for gfx11
	nvmem: core: initialise nvmem->id early
	nvmem: core: remove nvmem_config wp_gpio
	nvmem: core: fix cleanup after dev_set_name()
	nvmem: core: fix registration vs use race
	nvmem: core: fix device node refcounting
	nvmem: core: fix cell removal on error
	nvmem: core: fix return value
	phy: qcom-qmp-combo: fix runtime suspend
	serial: 8250_dma: Fix DMA Rx completion race
	serial: 8250_dma: Fix DMA Rx rearm race
	platform/x86/amd: pmc: add CONFIG_SERIO dependency
	ASoC: SOF: sof-audio: prepare_widgets: Check swidget for NULL on sink failure
	iio:adc:twl6030: Enable measurement of VAC
	powerpc/64s/radix: Fix crash with unaligned relocated kernel
	powerpc/64s: Fix local irq disable when PMIs are disabled
	powerpc/imc-pmu: Revert nest_init_lock to being a mutex
	fs/ntfs3: Validate attribute data and valid sizes
	ovl: Use "buf" flexible array for memcpy() destination
	f2fs: initialize locks earlier in f2fs_fill_super()
	fbdev: smscufx: fix error handling code in ufx_usb_probe
	f2fs: fix to do sanity check on i_extra_isize in is_alive()
	wifi: brcmfmac: Check the count value of channel spec to prevent out-of-bounds reads
	gfs2: Cosmetic gfs2_dinode_{in,out} cleanup
	gfs2: Always check inode size of inline inodes
	bpf: Skip invalid kfunc call in backtrack_insn
	Linux 6.1.11

Change-Id: I69722bc9711b91f2fca18de59746ada373f64c5e
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-02-09 13:29:55 +00:00
Yu Kuai
cb1876fc33 block, bfq: fix uaf for bfqq in bic_set_bfqq()
[ Upstream commit b600de2d7d3a16f9007fad1bdae82a3951a26af2 ]

After commit 64dc8c732f5c ("block, bfq: fix possible uaf for 'bfqq->bic'"),
bic->bfqq will be accessed in bic_set_bfqq(), however, in some context
bic->bfqq will be freed, and bic_set_bfqq() is called with the freed
bic->bfqq.

Fix the problem by always freeing bfqq after bic_set_bfqq().

Fixes: 64dc8c732f5c ("block, bfq: fix possible uaf for 'bfqq->bic'")
Reported-and-tested-by: Shinichiro Kawasaki <shinichiro.kawasaki@wdc.com>
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20230130014136.591038-1-yukuai1@huaweicloud.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-09 11:28:06 +01:00
Yu Kuai
b2e181cf9e block, bfq: replace 0/1 with false/true in bic apis
[ Upstream commit 337366e02b370d2800110fbc99940f6ddddcbdfa ]

Just to make the code a litter cleaner, there are no functional changes.

Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20221214033155.3455754-3-yukuai1@huaweicloud.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Stable-dep-of: b600de2d7d3a ("block, bfq: fix uaf for bfqq in bic_set_bfqq()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-09 11:28:05 +01:00
Greg Kroah-Hartman
be71152643 This is the 6.1.10 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmPgpwAACgkQONu9yGCS
 aT7EZhAAmhKEM2VUV115LmojNeeP26BKwVNsVWZbqc6IEi8xK2KMJQrlhFNOz8iG
 i1Poa5poCO2ZELEUwPTUkcw5X7mMxd9ik9L0lfFmvcXNsf5FWd1+KQzMMCMy6fY1
 aI3jW+7wZGT60ABnc6dZUU9v74Rh7ULlokFr3Os6qJXAD+uXLKEkf0mpgXN86jvN
 Kahl21UVzddHna7+HJXOBxx+LJbD0K7yMhKwGVC5uiV2Dt0BATvn6vFqEsZBchEB
 gunfiLc1TT8Tye04WHpHgeMtqedpdZqAxdMeAMSyt1ZMSMmHgYxHhma1oRsA3YNF
 UGhEwsI0Jz3lWtUQNem5o9fYfSn2H2g4lkNU6BnlPBRFno0xuaJ/vgJIbhnZ9g+b
 toLiLHkAP8AAgacOQ11HV+RVcNWFdIThVzqEqG7MEENy7gXtFAPIOBwF+CvLWX/k
 RoYUFfffm803Sxl2/SUBp8uI5YArVSZ5oGdFWk3ogegdBQ4cC1TIGTO8ppE0CZpL
 6PL59tVwMdymm6zDEEZUfILygflCsvLCsEcAF69kaRhRMzKaJf9WYx81IoZ9atFu
 Ck3U2jl2b7acEI0kdRlmFgpSyc79yV26osoVst2QsEfKUs3eVQ759rgjt4tvq9qP
 CUlUbieluvuF+W559hAJPr2XvXFOhsvYn5RUYC0+E3ahdMdYagA=
 =itLu
 -----END PGP SIGNATURE-----

Merge 6.1.10 into android14-6.1

Changes in 6.1.10
	ARM: dts: imx: Fix pca9547 i2c-mux node name
	ARM: dts: vf610: Fix pca9548 i2c-mux node names
	arm64: dts: freescale: Fix pca954x i2c-mux node names
	arm64: dts: imx8mq-thor96: fix no-mmc property for SDHCI
	firmware: arm_scmi: Clear stale xfer->hdr.status
	bpf: Skip task with pid=1 in send_signal_common()
	erofs/zmap.c: Fix incorrect offset calculation
	mac80211: Fix MLO address translation for multiple bss case
	arm64: dts: msm8994-angler: fix the memory map
	ARM: omap1: fix building gpio15xx
	kselftest: Fix error message for unconfigured LLVM builds
	erofs: clean up parsing of fscache related options
	blk-cgroup: fix missing pd_online_fn() while activating policy
	LoongArch: Get frame info in unwind_start() when regs is not available
	ACPI: video: Add backlight=native DMI quirk for Acer Aspire 4810T
	block: fix hctx checks for batch allocation
	s390: workaround invalid gcc-11 out of bounds read warning
	HID: uclogic: Add support for XP-PEN Deco 01 V2
	HID: playstation: sanity check DualSense calibration data.
	dmaengine: imx-sdma: Fix a possible memory leak in sdma_transfer_init
	gpiolib: acpi: Allow ignoring wake capability on pins that aren't in _AEI
	cifs: fix return of uninitialized rc in dfs_cache_update_tgthint()
	nvme-apple: only reset the controller when RTKit is running
	gpiolib: acpi: Add a ignore wakeup quirk for Clevo NL5xRU
	gpiolib-acpi: Don't set GPIOs for wakeup in S3 mode
	net: fix NULL pointer in skb_segment_list
	rust: print: avoid evaluating arguments in `pr_*` macros in `unsafe` blocks
	net: mctp: purge receive queues on sk destruction
	Linux 6.1.10

Change-Id: I38cb1a3d3f619094d9a248c59bccbe4a56c6d70e
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-02-06 10:42:24 +00:00
Pavel Begunkov
6f13860bba block: fix hctx checks for batch allocation
[ Upstream commit 7746564793978fe2f43b18a302b22dca0ad3a0e8 ]

When there are no read queues read requests will be assigned a
default queue on allocation. However, blk_mq_get_cached_request() is not
prepared for that and will fail all attempts to grab read requests from
the cache. Worst case it doubles the number of requests allocated,
roughly half of which will be returned by blk_mq_free_plug_rqs().

It only affects batched allocations and so is io_uring specific.
For reference, QD8 t/io_uring benchmark improves by 20-35%.

Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/80d4511011d7d4751b4cf6375c4e38f237d935e3.1673955390.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:33 +01:00
Yu Kuai
a4a1af9fa0 blk-cgroup: fix missing pd_online_fn() while activating policy
[ Upstream commit e3ff8887e7db757360f97634e0d6f4b8e27a8c46 ]

If the policy defines pd_online_fn(), it should be called after
pd_init_fn(), like blkg_create().

Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Acked-by: Tejun Heo <tj@kernel.org>
Link: https://lore.kernel.org/r/20230103112833.2013432-1-yukuai1@huaweicloud.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:32 +01:00
Greg Kroah-Hartman
ee921ef7b4 Merge 6.1.8 into android14-6.1
Changes in 6.1.8
	dma-buf: fix dma_buf_export init order v2
	btrfs: fix trace event name typo for FLUSH_DELAYED_REFS
	wifi: iwlwifi: fw: skip PPAG for JF
	pNFS/filelayout: Fix coalescing test for single DS
	selftests/bpf: check null propagation only neither reg is PTR_TO_BTF_ID
	net: ethernet: marvell: octeontx2: Fix uninitialized variable warning
	tools/virtio: initialize spinlocks in vring_test.c
	vdpa/mlx5: Return error on vlan ctrl commands if not supported
	vdpa/mlx5: Avoid using reslock in event_handler
	vdpa/mlx5: Avoid overwriting CVQ iotlb
	virtio_pci: modify ENOENT to EINVAL
	vduse: Validate vq_num in vduse_validate_config()
	vdpa_sim_net: should not drop the multicast/broadcast packet
	net/ethtool/ioctl: return -EOPNOTSUPP if we have no phy stats
	r8169: move rtl_wol_enable_rx() and rtl_prepare_power_down()
	r8169: fix dmar pte write access is not set error
	bpf: keep a reference to the mm, in case the task is dead.
	RDMA/srp: Move large values to a new enum for gcc13
	selftests: net: fix cmsg_so_mark.sh test hang
	btrfs: always report error in run_one_delayed_ref()
	x86/asm: Fix an assembler warning with current binutils
	f2fs: let's avoid panic if extent_tree is not created
	perf/x86/rapl: Treat Tigerlake like Icelake
	cifs: fix race in assemble_neg_contexts()
	memblock tests: Fix compilation error.
	perf/x86/rapl: Add support for Intel Meteor Lake
	perf/x86/rapl: Add support for Intel Emerald Rapids
	of: fdt: Honor CONFIG_CMDLINE* even without /chosen node, take 2
	fbdev: omapfb: avoid stack overflow warning
	Bluetooth: hci_sync: Fix use HCI_OP_LE_READ_BUFFER_SIZE_V2
	Bluetooth: hci_qca: Fix driver shutdown on closed serdev
	wifi: brcmfmac: fix regression for Broadcom PCIe wifi devices
	wifi: mac80211: fix MLO + AP_VLAN check
	wifi: mac80211: reset multiple BSSID options in stop_ap()
	wifi: mac80211: sdata can be NULL during AMPDU start
	wifi: mac80211: fix initialization of rx->link and rx->link_sta
	nommu: fix memory leak in do_mmap() error path
	nommu: fix do_munmap() error path
	nommu: fix split_vma() map_count error
	proc: fix PIE proc-empty-vm, proc-pid-vm tests
	Add exception protection processing for vd in axi_chan_handle_err function
	LoongArch: Add HWCAP_LOONGARCH_CPUCFG to elf_hwcap
	zonefs: Detect append writes at invalid locations
	nilfs2: fix general protection fault in nilfs_btree_insert()
	mm/shmem: restore SHMEM_HUGE_DENY precedence over MADV_COLLAPSE
	hugetlb: unshare some PMDs when splitting VMAs
	mm/khugepaged: fix collapse_pte_mapped_thp() to allow anon_vma
	serial: stm32: Merge hard IRQ and threaded IRQ handling into single IRQ handler
	Revert "serial: stm32: Merge hard IRQ and threaded IRQ handling into single IRQ handler"
	xhci-pci: set the dma max_seg_size
	usb: xhci: Check endpoint is valid before dereferencing it
	xhci: Fix null pointer dereference when host dies
	xhci: Add update_hub_device override for PCI xHCI hosts
	xhci: Add a flag to disable USB3 lpm on a xhci root port level.
	usb: acpi: add helper to check port lpm capability using acpi _DSM
	xhci: Detect lpm incapable xHC USB3 roothub ports from ACPI tables
	prlimit: do_prlimit needs to have a speculation check
	USB: serial: option: add Quectel EM05-G (GR) modem
	USB: serial: option: add Quectel EM05-G (CS) modem
	USB: serial: option: add Quectel EM05-G (RS) modem
	USB: serial: option: add Quectel EC200U modem
	USB: serial: option: add Quectel EM05CN (SG) modem
	USB: serial: option: add Quectel EM05CN modem
	staging: vchiq_arm: fix enum vchiq_status return types
	USB: misc: iowarrior: fix up header size for USB_DEVICE_ID_CODEMERCS_IOW100
	usb: misc: onboard_hub: Invert driver registration order
	usb: misc: onboard_hub: Move 'attach' work to the driver
	misc: fastrpc: Fix use-after-free and race in fastrpc_map_find
	misc: fastrpc: Don't remove map on creater_process and device_release
	misc: fastrpc: Fix use-after-free race condition for maps
	usb: core: hub: disable autosuspend for TI TUSB8041
	comedi: adv_pci1760: Fix PWM instruction handling
	ACPI: PRM: Check whether EFI runtime is available
	mmc: sunxi-mmc: Fix clock refcount imbalance during unbind
	mmc: sdhci-esdhc-imx: correct the tuning start tap and step setting
	mm/hugetlb: fix PTE marker handling in hugetlb_change_protection()
	mm/hugetlb: fix uffd-wp handling for migration entries in hugetlb_change_protection()
	mm/hugetlb: pre-allocate pgtable pages for uffd wr-protects
	mm/userfaultfd: enable writenotify while userfaultfd-wp is enabled for a VMA
	mm/MADV_COLLAPSE: don't expand collapse when vm_end is past requested end
	btrfs: add extra error messages to cover non-ENOMEM errors from device_add_list()
	btrfs: fix missing error handling when logging directory items
	btrfs: fix directory logging due to race with concurrent index key deletion
	btrfs: add missing setup of log for full commit at add_conflicting_inode()
	btrfs: do not abort transaction on failure to write log tree when syncing log
	btrfs: do not abort transaction on failure to update log root
	btrfs: qgroup: do not warn on record without old_roots populated
	btrfs: fix invalid leaf access due to inline extent during lseek
	btrfs: fix race between quota rescan and disable leading to NULL pointer deref
	cifs: do not include page data when checking signature
	thunderbolt: Disable XDomain lane 1 only in software connection manager
	thunderbolt: Use correct function to calculate maximum USB3 link rate
	thunderbolt: Do not report errors if on-board retimers are found
	thunderbolt: Do not call PM runtime functions in tb_retimer_scan()
	riscv: dts: sifive: fu740: fix size of pcie 32bit memory
	bpf: restore the ebpf program ID for BPF_AUDIT_UNLOAD and PERF_BPF_EVENT_PROG_UNLOAD
	tty: serial: qcom-geni-serial: fix slab-out-of-bounds on RX FIFO buffer
	tty: fix possible null-ptr-defer in spk_ttyio_release
	pktcdvd: check for NULL returna fter calling bio_split_to_limits()
	io_uring/poll: don't reissue in case of poll race on multishot request
	mptcp: explicitly specify sock family at subflow creation time
	mptcp: netlink: respect v4/v6-only sockets
	selftests: mptcp: userspace: validate v4-v6 subflows mix
	USB: gadgetfs: Fix race between mounting and unmounting
	USB: serial: cp210x: add SCALANCE LPE-9000 device id
	usb: cdns3: remove fetched trb from cache before dequeuing
	usb: host: ehci-fsl: Fix module alias
	usb: musb: fix error return code in omap2430_probe()
	usb: typec: tcpm: Fix altmode re-registration causes sysfs create fail
	usb: typec: altmodes/displayport: Add pin assignment helper
	usb: typec: altmodes/displayport: Fix pin assignment calculation
	usb: gadget: g_webcam: Send color matching descriptor per frame
	USB: gadget: Add ID numbers to configfs-gadget driver names
	usb: gadget: f_ncm: fix potential NULL ptr deref in ncm_bitrate()
	usb-storage: apply IGNORE_UAS only for HIKSEMI MD202 on RTL9210
	arm64: dts: imx8mp: correct usb clocks
	dt-bindings: phy: g12a-usb2-phy: fix compatible string documentation
	dt-bindings: phy: g12a-usb3-pcie-phy: fix compatible string documentation
	serial: pch_uart: Pass correct sg to dma_unmap_sg()
	dmaengine: lgm: Move DT parsing after initialization
	dmaengine: tegra210-adma: fix global intr clear
	dmaengine: idxd: Let probe fail when workqueue cannot be enabled
	dmaengine: idxd: Prevent use after free on completion memory
	dmaengine: idxd: Do not call DMX TX callbacks during workqueue disable
	serial: amba-pl011: fix high priority character transmission in rs486 mode
	serial: atmel: fix incorrect baudrate setup
	serial: exar: Add support for Sealevel 7xxxC serial cards
	gsmi: fix null-deref in gsmi_get_variable
	mei: bus: fix unlink on bus in error path
	mei: me: add meteor lake point M DID
	VMCI: Use threaded irqs instead of tasklets
	ARM: dts: qcom: apq8084-ifc6540: fix overriding SDHCI
	ARM: omap1: fix !ARCH_OMAP1_ANY link failures
	drm/amdgpu: fix amdgpu_job_free_resources v2
	drm/amdgpu: allow multipipe policy on ASICs with one MEC
	drm/amdgpu: Correct the power calcultion for Renior/Cezanne.
	drm/i915: re-disable RC6p on Sandy Bridge
	drm/i915/display: Check source height is > 0
	drm/i915: Allow switching away via vga-switcheroo if uninitialized
	drm/i915: Remove unused variable
	drm/amd/display: Fix set scaling doesn's work
	drm/amd/display: Calculate output_color_space after pixel encoding adjustment
	drm/amd/display: Fix COLOR_SPACE_YCBCR2020_TYPE matrix
	drm/amd/display: disable S/G display on DCN 3.1.5
	drm/amd/display: disable S/G display on DCN 3.1.4
	cifs: reduce roundtrips on create/qinfo requests
	fs/ntfs3: Fix attr_punch_hole() null pointer derenference
	arm64: efi: Execute runtime services from a dedicated stack
	efi: rt-wrapper: Add missing include
	panic: Separate sysctl logic from CONFIG_SMP
	exit: Put an upper limit on how often we can oops
	exit: Expose "oops_count" to sysfs
	exit: Allow oops_limit to be disabled
	panic: Consolidate open-coded panic_on_warn checks
	panic: Introduce warn_limit
	panic: Expose "warn_count" to sysfs
	docs: Fix path paste-o for /sys/kernel/warn_count
	exit: Use READ_ONCE() for all oops/warn limit reads
	x86/fpu: Use _Alignof to avoid undefined behavior in TYPE_ALIGN
	drm/amdgpu/discovery: enable soc21 common for GC 11.0.4
	drm/amdgpu/discovery: enable gmc v11 for GC 11.0.4
	drm/amdgpu/discovery: enable gfx v11 for GC 11.0.4
	drm/amdgpu/discovery: enable mes support for GC v11.0.4
	drm/amdgpu: set GC 11.0.4 family
	drm/amdgpu/discovery: set the APU flag for GC 11.0.4
	drm/amdgpu: add gfx support for GC 11.0.4
	drm/amdgpu: add gmc v11 support for GC 11.0.4
	drm/amdgpu/discovery: add PSP IP v13.0.11 support
	drm/amdgpu/pm: enable swsmu for SMU IP v13.0.11
	drm/amdgpu: add smu 13 support for smu 13.0.11
	drm/amdgpu/pm: add GFXOFF control IP version check for SMU IP v13.0.11
	drm/amdgpu/soc21: add mode2 asic reset for SMU IP v13.0.11
	drm/amdgpu/pm: use the specific mailbox registers only for SMU IP v13.0.4
	drm/amdgpu/discovery: enable nbio support for NBIO v7.7.1
	drm/amdgpu: enable PSP IP v13.0.11 support
	drm/amdgpu: enable GFX IP v11.0.4 CG support
	drm/amdgpu: enable GFX Power Gating for GC IP v11.0.4
	drm/amdgpu: enable GFX Clock Gating control for GC IP v11.0.4
	drm/amdgpu: add tmz support for GC 11.0.1
	drm/amdgpu: add tmz support for GC IP v11.0.4
	drm/amdgpu: correct MEC number for gfx11 APUs
	octeontx2-pf: Avoid use of GFP_KERNEL in atomic context
	net/ulp: use consistent error code when blocking ULP
	octeontx2-pf: Fix the use of GFP_KERNEL in atomic context on rt
	net/mlx5: fix missing mutex_unlock in mlx5_fw_fatal_reporter_err_work()
	block: mq-deadline: Rename deadline_is_seq_writes()
	Revert "wifi: mac80211: fix memory leak in ieee80211_if_add()"
	soc: qcom: apr: Make qcom,protection-domain optional again
	Linux 6.1.8

Change-Id: I35d5b5a1ed4822eddb2fc8b29b323b36f7d11926
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-01-26 12:13:04 +00:00
Damien Le Moal
fa6357de7c block: mq-deadline: Rename deadline_is_seq_writes()
commit 3692fec8bb476e8583e559ff5783a6adef306cf2 upstream.

Rename deadline_is_seq_writes() to deadline_is_seq_write() (remove the
"s" plural) to more correctly reflect the fact that this function tests
a single request, not multiple requests.

Fixes: 015d02f48537 ("block: mq-deadline: Do not break sequential write streams to zoned HDDs")
Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Link: https://lore.kernel.org/r/20221126025550.967914-2-damien.lemoal@opensource.wdc.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-01-24 07:24:44 +01:00
Greg Kroah-Hartman
a85fdd8dcf This is the 6.1.7 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmPH0OcACgkQONu9yGCS
 aT4CvA//aNaXbZpRlZZI9uR40B9X3ROao6UGFKAbJYTcaTNQZIAybuLY4/VKYhS3
 3YNXPJghsge7rUKz2AsmksHhwRmU8pOUJOtAqL6HB0UVSpYNNo6KVbwgxFZgAFhw
 XGkXO+h3y8BJjwiVUpmTj+HlmXVDcaVMEItMu4C9X2Z7wV2QLgKUbbq2kUlEX9DX
 BfxWgd0tORsZFMVLy2JXahrRtH72TgfD8g3K+jHFfEsk9ySOaN58Mf736hSSNY0A
 9jHyTWiwFRqC2nYtSvE/BQmEae8gEQp/wDZR8Qwu2Q51MtIh1Z1xCqMGN+1Fmrow
 8q38lPJIoXeQbKKCmBcTJrXz5dqjjnDANl2oucQvKuhvfAMfvC9+w42kGBulTKaE
 Ul9aqSKsyaFP6BzHJ8BIjFMhE5pXxsAKCRNsGSfxvEf1MrFuqaC+5yUdzVJyAPEQ
 AHgPRKnpu5jIZKNqPYDbcj3WF2SRZqHboPVZV3pROtkh8KKMAYS4dGwi+CpCBdLD
 GWCNqtLGDOJW196WThLWkrxT1xU4/x2zmiBb6ua138W9WpQnytLv7HicBXf7XnWt
 LmNqs2ADs7/hGd521wA9mT2mHkS+KZpxrV9d3IYhEdf4xExbZdfhOQCvU9RcYZDO
 ln01DCEY6mzrQA56s72hojj80sjauB2+ytDfuWIGJ6lnkfB2g+Q=
 =hRZq
 -----END PGP SIGNATURE-----

Merge 6.1.7 into android14-6.1

Changes in 6.1.7
	netfilter: nft_payload: incorrect arithmetics when fetching VLAN header bits
	Revert "ALSA: usb-audio: Drop superfluous interface setup at parsing"
	ALSA: control-led: use strscpy in set_led_id()
	ALSA: usb-audio: Always initialize fixed_rate in snd_usb_find_implicit_fb_sync_format()
	ALSA: hda/realtek - Turn on power early
	ALSA: hda/realtek: Enable mute/micmute LEDs on HP Spectre x360 13-aw0xxx
	KVM: x86: Do not return host topology information from KVM_GET_SUPPORTED_CPUID
	KVM: arm64: Fix S1PTW handling on RO memslots
	efi: fix userspace infinite retry read efivars after EFI runtime services page fault
	efi: tpm: Avoid READ_ONCE() for accessing the event log
	docs: Fix the docs build with Sphinx 6.0
	io_uring/poll: add hash if ready poll request can't complete inline
	arm64: mte: Fix double-freeing of the temporary tag storage during coredump
	arm64: mte: Avoid the racy walk of the vma list during core dump
	arm64: cmpxchg_double*: hazard against entire exchange variable
	ACPI: Fix selecting wrong ACPI fwnode for the iGPU on some Dell laptops
	net: stmmac: add aux timestamps fifo clearance wait
	perf auxtrace: Fix address filter duplicate symbol selection
	s390/kexec: fix ipl report address for kdump
	brcmfmac: Prefer DT board type over DMI board type
	ASoC: qcom: lpass-cpu: Fix fallback SD line index handling
	elfcore: Add a cprm parameter to elf_core_extra_{phdrs,data_size}
	cpufreq: amd-pstate: fix kernel hang issue while amd-pstate unregistering
	s390/cpum_sf: add READ_ONCE() semantics to compare and swap loops
	s390/percpu: add READ_ONCE() to arch_this_cpu_to_op_simple()
	drm/virtio: Fix GEM handle creation UAF
	drm/amd/pm/smu13: BACO is supported when it's in BACO state
	drm: Optimize drm buddy top-down allocation method
	drm/i915/gt: Reset twice
	drm/i915: Reserve enough fence slot for i915_vma_unbind_async
	drm/i915: Fix potential context UAFs
	drm/amd: Delay removal of the firmware framebuffer
	drm/amdgpu: Fixed bug on error when unloading amdgpu
	drm/amd/pm: correct the reference clock for fan speed(rpm) calculation
	drm/amd/pm: add the missing mapping for PPT feature on SMU13.0.0 and 13.0.7
	drm/amd/display: move remaining FPU code to dml folder
	Revert "drm/amdgpu: Revert "drm/amdgpu: getting fan speed pwm for vega10 properly""
	cifs: Fix uninitialized memory read for smb311 posix symlink create
	cifs: fix file info setting in cifs_query_path_info()
	cifs: fix file info setting in cifs_open_file()
	cifs: do not query ifaces on smb1 mounts
	cifs: fix double free on failed kerberos auth
	io_uring/fdinfo: include locked hash table in fdinfo output
	ASoC: rt9120: Make dev PM runtime bind AsoC component PM
	ACPI: video: Allow selecting NVidia-WMI-EC or Apple GMUX backlight from the cmdline
	platform/x86: dell-privacy: Only register SW_CAMERA_LENS_COVER if present
	platform/surface: aggregator: Ignore command messages not intended for us
	platform/x86: int3472/discrete: Ensure the clk/power enable pins are in output mode
	platform/x86: thinkpad_acpi: Fix profile mode display in AMT mode
	platform/x86: asus-wmi: Don't load fan curves without fan
	platform/x86: dell-privacy: Fix SW_CAMERA_LENS_COVER reporting
	dt-bindings: msm: dsi-controller-main: Fix operating-points-v2 constraint
	drm/msm: another fix for the headless Adreno GPU
	firmware/psci: Fix MEM_PROTECT_RANGE function numbers
	firmware/psci: Don't register with debugfs if PSCI isn't available
	drm/msm/adreno: Make adreno quirks not overwrite each other
	arm64/signal: Always allocate SVE signal frames on SME only systems
	dt-bindings: msm: dsi-controller-main: Fix power-domain constraint
	dt-bindings: msm: dsi-controller-main: Fix description of core clock
	arm64/signal: Always accept SVE signal frames on SME only systems
	arm64/mm: add pud_user_exec() check in pud_user_accessible_page()
	dt-bindings: msm: dsi-phy-28nm: Add missing qcom, dsi-phy-regulator-ldo-mode
	arm64: ptrace: Use ARM64_SME to guard the SME register enumerations
	arm64/mm: fix incorrect file_map_count for invalid pmd
	platform/x86: ideapad-laptop: Add Legion 5 15ARH05 DMI id to set_fn_lock_led_list[]
	drm/msm/dp: do not complete dp_aux_cmd_fifo_tx() if irq is not for aux transfer
	dt-bindings: msm/dsi: Don't require vdds-supply on 10nm PHY
	dt-bindings: msm/dsi: Don't require vcca-supply on 14nm PHY
	platform/x86: sony-laptop: Don't turn off 0x153 keyboard backlight during probe
	ixgbe: fix pci device refcount leak
	ipv6: raw: Deduct extension header length in rawv6_push_pending_frames
	iavf/iavf_main: actually log ->src mask when talking about it
	drm/i915/gt: Cleanup partial engine discovery failures
	usb: ulpi: defer ulpi_register on ulpi_read_id timeout
	drm/amd/pm: enable mode1 reset on smu_v13_0_10
	drm/amd/pm: Enable bad memory page/channel recording support for smu v13_0_0
	drm/amd/pm: enable GPO dynamic control support for SMU13.0.0
	drm/amd/pm: enable GPO dynamic control support for SMU13.0.7
	drm/amdgpu: add soc21 common ip block support for GC 11.0.4
	drm/amdgpu: Enable pg/cg flags on GC11_0_4 for VCN
	drm/amdgpu: enable VCN DPG for GC IP v11.0.4
	mm: Always release pages to the buddy allocator in memblock_free_late().
	iommu/iova: Fix alloc iova overflows issue
	iommu/arm-smmu-v3: Don't unregister on shutdown
	iommu/mediatek-v1: Fix an error handling path in mtk_iommu_v1_probe()
	iommu/arm-smmu: Don't unregister on shutdown
	iommu/arm-smmu: Report IOMMU_CAP_CACHE_COHERENCY even betterer
	sched/core: Fix use-after-free bug in dup_user_cpus_ptr()
	netfilter: ipset: Fix overflow before widen in the bitmap_ip_create() function.
	selftests: netfilter: fix transaction test script timeout handling
	powerpc/imc-pmu: Fix use of mutex in IRQs disabled section
	x86/boot: Avoid using Intel mnemonics in AT&T syntax asm
	EDAC/device: Fix period calculation in edac_device_reset_delay_period()
	x86/pat: Fix pat_x_mtrr_type() for MTRR disabled case
	x86/resctrl: Fix task CLOSID/RMID update race
	x86/resctrl: Fix event counts regression in reused RMIDs
	regulator: da9211: Use irq handler when ready
	scsi: storvsc: Fix swiotlb bounce buffer leak in confidential VM
	scsi: mpi3mr: Refer CONFIG_SCSI_MPI3MR in Makefile
	scsi: ufs: core: WLUN suspend SSU/enter hibern8 fail recovery
	ASoC: Intel: fix sof-nau8825 link failure
	ASoC: Intel: sof_nau8825: support rt1015p speaker amplifier
	ASoC: Intel: sof-nau8825: fix module alias overflow
	drm/msm/dpu: Fix some kernel-doc comments
	drm/msm/dpu: Fix memory leak in msm_mdss_parse_data_bus_icc_path
	ASoC: wm8904: fix wrong outputs volume after power reactivation
	mtd: parsers: scpart: fix __udivdi3 undefined on mips
	mtd: cfi: allow building spi-intel standalone
	ALSA: usb-audio: Make sure to stop endpoints before closing EPs
	ALSA: usb-audio: Relax hw constraints for implicit fb sync
	stmmac: dwmac-mediatek: remove the dwmac_fix_mac_speed
	tipc: fix unexpected link reset due to discovery messages
	NFSD: Pass the target nfsd_file to nfsd_commit()
	NFSD: Revert "NFSD: NFSv4 CLOSE should release an nfsd_file immediately"
	NFSD: Add an NFSD_FILE_GC flag to enable nfsd_file garbage collection
	nfsd: remove the pages_flushed statistic from filecache
	nfsd: reorganize filecache.c
	NFSD: Add an nfsd_file_fsync tracepoint
	nfsd: rework refcounting in filecache
	nfsd: fix handling of cached open files in nfsd4_open codepath
	octeontx2-af: Fix LMAC config in cgx_lmac_rx_tx_enable
	sched/core: Fix arch_scale_freq_tick() on tickless systems
	hvc/xen: lock console list traversal
	nfc: pn533: Wait for out_urb's completion in pn533_usb_send_frame()
	gro: avoid checking for a failed search
	gro: take care of DODGY packets
	af_unix: selftest: Fix the size of the parameter to connect()
	ASoC: qcom: Fix building APQ8016 machine driver without SOUNDWIRE
	tools/nolibc: restore mips branch ordering in the _start block
	tools/nolibc: fix the O_* fcntl/open macro definitions for riscv
	drm/amdgpu: Fix potential NULL dereference
	ice: Fix potential memory leak in ice_gnss_tty_write()
	ice: Add check for kzalloc
	drm/vmwgfx: Write the driver id registers
	drm/vmwgfx: Refactor resource manager's hashtable to use linux/hashtable implementation.
	drm/vmwgfx: Remove ttm object hashtable
	drm/vmwgfx: Refactor resource validation hashtable to use linux/hashtable implementation.
	drm/vmwgfx: Refactor ttm reference object hashtable to use linux/hashtable.
	drm/vmwgfx: Remove vmwgfx_hashtab
	drm/vmwgfx: Remove rcu locks from user resources
	net/sched: act_mpls: Fix warning during failed attribute validation
	Revert "r8169: disable detection of chip version 36"
	net/mlx5: check attr pointer validity before dereferencing it
	net/mlx5e: TC, Keep mod hdr actions after mod hdr alloc
	net/mlx5: Fix command stats access after free
	net/mlx5e: Verify dev is present for fix features ndo
	net/mlx5e: IPoIB, Block queue count configuration when sub interfaces are present
	net/mlx5e: IPoIB, Block PKEY interfaces with less rx queues than parent
	net/mlx5e: IPoIB, Fix child PKEY interface stats on rx path
	net/mlx5: Fix ptp max frequency adjustment range
	net/mlx5e: Don't support encap rules with gbp option
	net/mlx5e: Fix macsec ssci attribute handling in offload path
	net/mlx5e: Fix macsec possible null dereference when updating MAC security entity (SecY)
	selftests/net: l2_tos_ttl_inherit.sh: Set IPv6 addresses with "nodad".
	selftests/net: l2_tos_ttl_inherit.sh: Run tests in their own netns.
	selftests/net: l2_tos_ttl_inherit.sh: Ensure environment cleanup on failure.
	octeontx2-pf: Fix resource leakage in VF driver unbind
	perf build: Properly guard libbpf includes
	perf kmem: Support legacy tracepoints
	perf kmem: Support field "node" in evsel__process_alloc_event() coping with recent tracepoint restructuring
	igc: Fix PPS delta between two synchronized end-points
	net: lan966x: check for ptp to be enabled in lan966x_ptp_deinit()
	net: hns3: fix wrong use of rss size during VF rss config
	bnxt: make sure we return pages to the pool
	platform/surface: aggregator: Add missing call to ssam_request_sync_free()
	platform/x86/amd: Fix refcount leak in amd_pmc_probe
	ALSA: usb-audio: Fix possible NULL pointer dereference in snd_usb_pcm_has_fixed_rate()
	efi: fix NULL-deref in init error path
	io_uring: lock overflowing for IOPOLL
	io_uring/poll: attempt request issue after racy poll wakeup
	drm/i915: Fix CFI violations in gt_sysfs
	io_uring/io-wq: free worker if task_work creation is canceled
	io_uring/io-wq: only free worker if it was allocated for creation
	block: handle bio_split_to_limits() NULL return
	Revert "usb: ulpi: defer ulpi_register on ulpi_read_id timeout"
	pinctrl: amd: Add dynamic debugging for active GPIOs
	Linux 6.1.7

Change-Id: Ib9cf1bfac2998d354fca458302541e706284d07a
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-01-18 18:51:26 +00:00
Greg Kroah-Hartman
47a0453b99 This is the 6.1.5 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmO/6qcACgkQONu9yGCS
 aT5/dhAAmz5tf0T/IJNrfhFeMt9L7vq3grmisuDUTbTGb/1Nd8C+2h8K7PCZDaI7
 vzR8Py5jA9pZtjxYmV+rp/6Z3Vofme8kz4b8KEu2FumsXRqW0LHsH0B+GKzbHR5S
 rOjhE7xSTkuF1agqlSMoJ97c3r81ejU7U27yWg9cvaBo/NgUJfNvZjvlhH6zU6pF
 BaMHRsxak1RkOHI3aZa3ZGM3ky6Uu8jfNSuxWyKkOWzxsZkju6JPqiWxS/LNdIxp
 MZbnq5c5qnVHBwFjwbOM2MLplEGwt5seibHKxbSRI4FGXdaAQKG8VJnMgk9kCKmf
 eJST8/jFn4gdP2TufP61xzipNGHfGIl95Ha8t6j8KAQp0kjwisu4YE9pa/dvtmVZ
 wReikI7iuNK5nQAwtmLHOZLAa8lcGNFhJQrpwXaNwGKgL5Un1eMQZRBYnY0ia7jI
 8lKkT3fPrOXPynjjuBbIij/VF7pU7AC00u29PQQ3TTwzzgN7K2ilo9Bg7AxVj6Kr
 gPxvcDFV2OLk0OdEMWNckR5lZqyrJS1B12iL7F3gdoWbgYLlaRmsuRwz8S9yr4F+
 UNECCzn4ZRIdxCwe3qER9beh9BAr43vXXEOksGhblAMm5UNNNdUhuWsK5sYHXOQW
 VAjJDXZ/MHZFh9btXzNr4Af1VW1fuJ2HXZs/qLBFXjIEtzNXdtg=
 =ons5
 -----END PGP SIGNATURE-----

Merge 6.1.5 into android14-6.1

Changes in 6.1.5
	ARM: renumber bits related to _TIF_WORK_MASK
	btrfs: replace strncpy() with strscpy()
	cifs: fix interface count calculation during refresh
	cifs: refcount only the selected iface during interface update
	usb: dwc3: gadget: Ignore End Transfer delay on teardown
	btrfs: fix off-by-one in delalloc search during lseek
	btrfs: fix compat_ro checks against remount
	perf probe: Use dwarf_attr_integrate as generic DWARF attr accessor
	perf probe: Fix to get the DW_AT_decl_file and DW_AT_call_file as unsinged data
	phy: qcom-qmp-combo: fix broken power on
	btrfs: fix an error handling path in btrfs_defrag_leaves()
	SUNRPC: ensure the matching upcall is in-flight upon downcall
	wifi: ath9k: use proper statements in conditionals
	bpf: pull before calling skb_postpull_rcsum()
	drm/panfrost: Fix GEM handle creation ref-counting
	netfilter: nf_tables: consolidate set description
	netfilter: nf_tables: add function to create set stateful expressions
	netfilter: nf_tables: perform type checking for existing sets
	ice: xsk: do not use xdp_return_frame() on tx_buf->raw_buf
	net: vrf: determine the dst using the original ifindex for multicast
	vmxnet3: correctly report csum_level for encapsulated packet
	mptcp: fix deadlock in fastopen error path
	mptcp: fix lockdep false positive
	netfilter: nf_tables: honor set timeout and garbage collection updates
	bonding: fix lockdep splat in bond_miimon_commit()
	net: lan966x: Fix configuration of the PCS
	veth: Fix race with AF_XDP exposing old or uninitialized descriptors
	nfsd: shut down the NFSv4 state objects before the filecache
	net: hns3: add interrupts re-initialization while doing VF FLR
	net: hns3: fix miss L3E checking for rx packet
	net: hns3: fix VF promisc mode not update when mac table full
	net: sched: fix memory leak in tcindex_set_parms
	qlcnic: prevent ->dcb use-after-free on qlcnic_dcb_enable() failure
	net: dsa: mv88e6xxx: depend on PTP conditionally
	nfc: Fix potential resource leaks
	bnxt_en: Simplify bnxt_xdp_buff_init()
	bnxt_en: Fix XDP RX path
	bnxt_en: Fix first buffer size calculations for XDP multi-buffer
	bnxt_en: Fix HDS and jumbo thresholds for RX packets
	vdpa/mlx5: Fix rule forwarding VLAN to TIR
	vdpa/mlx5: Fix wrong mac address deletion
	vdpa_sim: fix possible memory leak in vdpasim_net_init() and vdpasim_blk_init()
	vhost/vsock: Fix error handling in vhost_vsock_init()
	vringh: fix range used in iotlb_translate()
	vhost: fix range used in translate_desc()
	vhost-vdpa: fix an iotlb memory leak
	vdpa_sim: fix vringh initialization in vdpasim_queue_ready()
	virtio-crypto: fix memory leak in virtio_crypto_alg_skcipher_close_session()
	vdpa/vp_vdpa: fix kfree a wrong pointer in vp_vdpa_remove
	vdpasim: fix memory leak when freeing IOTLBs
	net/mlx5: E-Switch, properly handle ingress tagged packets on VST
	net/mlx5: Add forgotten cleanup calls into mlx5_init_once() error path
	net/mlx5: Fix io_eq_size and event_eq_size params validation
	net/mlx5: Avoid recovery in probe flows
	net/mlx5: Fix RoCE setting at HCA level
	net/mlx5e: IPoIB, Don't allow CQE compression to be turned on by default
	net/mlx5e: Fix RX reporter for XSK RQs
	net/mlx5e: CT: Fix ct debugfs folder name
	net/mlx5e: Always clear dest encap in neigh-update-del
	net/mlx5e: Fix hw mtu initializing at XDP SQ allocation
	net/mlx5e: Set geneve_tlv_option_0_exist when matching on geneve option
	net/mlx5: Lag, fix failure to cancel delayed bond work
	bpf: Always use maximal size for copy_array()
	tcp: Add TIME_WAIT sockets in bhash2.
	net: hns3: refine the handling for VF heartbeat
	net: amd-xgbe: add missed tasklet_kill
	net: ena: Fix toeplitz initial hash value
	net: ena: Don't register memory info on XDP exchange
	net: ena: Account for the number of processed bytes in XDP
	net: ena: Use bitmask to indicate packet redirection
	net: ena: Fix rx_copybreak value update
	net: ena: Set default value for RX interrupt moderation
	net: ena: Update NUMA TPH hint register upon NUMA node update
	net: phy: xgmiitorgmii: Fix refcount leak in xgmiitorgmii_probe
	gpio: pca953x: avoid to use uninitialized value pinctrl
	RDMA/mlx5: Fix mlx5_ib_get_hw_stats when used for device
	RDMA/mlx5: Fix validation of max_rd_atomic caps for DC
	selftests: net: fix cleanup_v6() for arp_ndisc_evict_nocarrier
	selftests: net: return non-zero for failures reported in arp_ndisc_evict_nocarrier
	drm/meson: Reduce the FIFO lines held when AFBC is not used
	filelock: new helper: vfs_inode_has_locks
	ceph: switch to vfs_inode_has_locks() to fix file lock bug
	gpio: sifive: Fix refcount leak in sifive_gpio_probe
	net: sched: atm: dont intepret cls results when asked to drop
	net: sched: cbq: dont intepret cls results when asked to drop
	vxlan: Fix memory leaks in error path
	net: sparx5: Fix reading of the MAC address
	netfilter: ipset: fix hash:net,port,net hang with /0 subnet
	netfilter: ipset: Rework long task execution when adding/deleting entries
	drm/virtio: Fix memory leak in virtio_gpu_object_create()
	perf tools: Fix resources leak in perf_data__open_dir()
	drm/imx: ipuv3-plane: Fix overlay plane width
	fs/ntfs3: don't hold ni_lock when calling truncate_setsize()
	drivers/net/bonding/bond_3ad: return when there's no aggregator
	octeontx2-pf: Fix lmtst ID used in aura free
	usb: rndis_host: Secure rndis_query check against int overflow
	perf lock contention: Fix core dump related to not finding the "__sched_text_end" symbol on s/390
	perf stat: Fix handling of unsupported cgroup events when using BPF counters
	perf stat: Fix handling of --for-each-cgroup with --bpf-counters to match non BPF mode
	drm/i915: unpin on error in intel_vgpu_shadow_mm_pin()
	drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
	ublk: honor IO_URING_F_NONBLOCK for handling control command
	qed: allow sleep in qed_mcp_trace_dump()
	net/ulp: prevent ULP without clone op from entering the LISTEN status
	caif: fix memory leak in cfctrl_linkup_request()
	udf: Fix extension of the last extent in the file
	usb: dwc3: xilinx: include linux/gpio/consumer.h
	hfs/hfsplus: avoid WARN_ON() for sanity check, use proper error handling
	ASoC: SOF: Revert: "core: unregister clients and machine drivers in .shutdown"
	9p/client: fix data race on req->status
	ASoC: Intel: bytcr_rt5640: Add quirk for the Advantech MICA-071 tablet
	ASoC: SOF: mediatek: initialize panic_info to zero
	drm/amdgpu: Fix size validation for non-exclusive domains (v4)
	drm/amdkfd: Fix kfd_process_device_init_vm error handling
	drm/amdkfd: Fix double release compute pasid
	io_uring/cancel: re-grab ctx mutex after finishing wait
	nvme: fix multipath crash caused by flush request when blktrace is enabled
	ACPI: video: Allow GPU drivers to report no panels
	drm/amd/display: Report to ACPI video if no panels were found
	ACPI: video: Don't enable fallback path for creating ACPI backlight by default
	io_uring: check for valid register opcode earlier
	kunit: alloc_string_stream_fragment error handling bug fix
	nvmet: use NVME_CMD_EFFECTS_CSUPP instead of open coding it
	nvme: also return I/O command effects from nvme_command_effects
	ASoC: SOF: Intel: pci-tgl: unblock S5 entry if DMA stop has failed"
	x86/kexec: Fix double-free of elf header buffer
	x86/bugs: Flush IBP in ib_prctl_set()
	nfsd: fix handling of readdir in v4root vs. mount upcall timeout
	fbdev: matroxfb: G200eW: Increase max memory from 1 MB to 16 MB
	bpf: Fix panic due to wrong pageattr of im->image
	Revert "drm/amd/display: Enable Freesync Video Mode by default"
	Revert "net: dsa: qca8k: cache lo and hi for mdio write"
	net: dsa: qca8k: fix wrong length value for mgmt eth packet
	net: dsa: tag_qca: fix wrong MGMT_DATA2 size
	block: don't allow splitting of a REQ_NOWAIT bio
	io_uring: pin context while queueing deferred tw
	io_uring: fix CQ waiting timeout handling
	tpm: Allow system suspend to continue when TPM suspend fails
	vhost_vdpa: fix the crash in unmap a large memory
	thermal: int340x: Add missing attribute for data rate base
	riscv: uaccess: fix type of 0 variable on error in get_user()
	riscv, kprobes: Stricter c.jr/c.jalr decoding
	of/fdt: run soc memory setup when early_init_dt_scan_memory fails
	drm/plane-helper: Add the missing declaration of drm_atomic_state
	drm/amdkfd: Fix kernel warning during topology setup
	drm/i915/gvt: fix gvt debugfs destroy
	drm/i915/gvt: fix vgpu debugfs clean in remove
	virtio-blk: use a helper to handle request queuing errors
	virtio_blk: Fix signedness bug in virtblk_prep_rq()
	drm/amd/display: Add check for DET fetch latency hiding for dcn32
	drm/amd/display: Uninitialized variables causing 4k60 UCLK to stay at DPM1 and not DPM0
	btrfs: handle case when repair happens with dev-replace
	ksmbd: fix infinite loop in ksmbd_conn_handler_loop()
	ksmbd: send proper error response in smb2_tree_connect()
	ksmbd: check nt_len to be at least CIFS_ENCPWD_SIZE in ksmbd_decode_ntlmssp_auth_blob
	drm/i915/dsi: add support for ICL+ native MIPI GPIO sequence
	drm/i915/dsi: fix MIPI_BKLT_EN_1 native GPIO index
	efi: random: combine bootloader provided RNG seed with RNG protocol output
	wifi: ath11k: Send PME message during wakeup from D3cold
	Linux 6.1.5

Change-Id: I8db9e71d31b830cb2686aed0f69e35ce52c70ee7
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-01-18 18:49:33 +00:00
Greg Kroah-Hartman
66746d4cf7 This is the 6.1.4 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmO5RX4ACgkQONu9yGCS
 aT7NFRAAlqi2Wwx1NZU3HE9nr/fgdGFDlEJbKXP9jiwIjiIx5mAPaysb9uhOG5qj
 11uG/S3+xsb5ryhSpCR5I0rPnymK/XWDQtfYlKMuB+bLr+w03BBYzZX5v+YihUmw
 mWa32+xiei1KzIjxMGVFciiSYoMxWR5smqe559LPiabB3dcRfRPSHQDJCOWE5T2y
 2Tlts/gUpfqMh+MPNQOYgB0TZmUhzin9XW4AcDqLsyupKRLKEusDVIA5QfznuCyN
 UFjTem9h+4qPSZOgzdmSX9QljYL8Jqh4gwXUcl4/EUoObPN/tTbjCYZkuyOT4r3F
 FsN/w6+32C/TjQSBg50d4yT4TFC4bjnc3VCb2dI+6WazLqAjS7RrkoqTl37K/rwC
 Gb3FmjwQNNx/iNq5kM5NvuJgLWuLAVZBn+WxWBk1hqE5f8l0l5/NgxdHfSwjMvJL
 toqXT98yoSTMMGaQ8QA4MLh9Gx2CYC0JeyaWnFavMOBs9Oxy+SbNyoUKo0Wn8kHh
 z/6/Pdk6Qd3PKv9pXsrTpWAPzQs5w23+XbZ2pJw+K5yVKvmNQJEhSJ9fzFRksldW
 ykDMzVmZ0kswcNuJgQFUi4QTu17p3FA4UJG1xvJNCKPsgelLe8153TFDds0yXfu1
 IwqZiHpwBF1tyGHYEBdqmivj77eWtNsWMSZHHDN9jJ9sNxS+kSM=
 =CeYO
 -----END PGP SIGNATURE-----

Merge 6.1.4 into android14-6.1

Changes in 6.1.4
	drm/amdgpu: skip MES for S0ix as well since it's part of GFX
	drm/amdgpu: skip mes self test after s0i3 resume for MES IP v11.0
	media: stv0288: use explicitly signed char
	cxl/region: Fix memdev reuse check
	arm64: dts: qcom: sc8280xp: fix UFS DMA coherency
	arm64: Prohibit instrumentation on arch_stack_walk()
	soc: qcom: Select REMAP_MMIO for LLCC driver
	soc: qcom: Select REMAP_MMIO for ICC_BWMON driver
	kest.pl: Fix grub2 menu handling for rebooting
	ktest.pl minconfig: Unset configs instead of just removing them
	jbd2: use the correct print format
	perf/x86/intel/uncore: Disable I/O stacks to PMU mapping on ICX-D
	perf/x86/intel/uncore: Clear attr_update properly
	arm64: dts: qcom: sdm845-db845c: correct SPI2 pins drive strength
	arm64: dts: qcom: sc8280xp: fix UFS reference clocks
	mmc: sdhci-sprd: Disable CLK_AUTO when the clock is less than 400K
	phy: qcom-qmp-combo: fix out-of-bounds clock access
	drm/amd/pm: update SMU13.0.0 reported maximum shader clock
	drm/amd/pm: correct SMU13.0.0 pstate profiling clock settings
	btrfs: fix uninitialized parent in insert_state
	btrfs: fix extent map use-after-free when handling missing device in read_one_chunk
	btrfs: fix resolving backrefs for inline extent followed by prealloc
	ARM: ux500: do not directly dereference __iomem
	arm64: dts: qcom: sdm850-samsung-w737: correct I2C12 pins drive strength
	random: use rejection sampling for uniform bounded random integers
	x86/fpu/xstate: Fix XSTATE_WARN_ON() to emit relevant diagnostics
	arm64: dts: qcom: sdm850-lenovo-yoga-c630: correct I2C12 pins drive strength
	cxl/region: Fix missing probe failure
	EDAC/mc_sysfs: Increase legacy channel support to 12
	selftests: Use optional USERCFLAGS and USERLDFLAGS
	x86/MCE/AMD: Clear DFR errors found in THR handler
	random: add helpers for random numbers with given floor or range
	PM/devfreq: governor: Add a private governor_data for governor
	cpufreq: Init completion before kobject_init_and_add()
	ext2: unbugger ext2_empty_dir()
	media: s5p-mfc: Fix to handle reference queue during finishing
	media: s5p-mfc: Clear workbit to handle error condition
	media: s5p-mfc: Fix in register read and write for H264
	bpf: Resolve fext program type when checking map compatibility
	ALSA: patch_realtek: Fix Dell Inspiron Plus 16
	ALSA: hda/realtek: Apply dual codec fixup for Dell Latitude laptops
	platform/x86: thinkpad_acpi: Fix max_brightness of thinklight
	platform/x86: ideapad-laptop: Revert "check for touchpad support in _CFG"
	platform/x86: ideapad-laptop: Add new _CFG bit numbers for future use
	platform/x86: ideapad-laptop: support for more special keys in WMI
	ACPI: video: Simplify __acpi_video_get_backlight_type()
	ACPI: video: Prefer native over vendor
	platform/x86: ideapad-laptop: Refactor ideapad_sync_touchpad_state()
	platform/x86: ideapad-laptop: Do not send KEY_TOUCHPAD* events on probe / resume
	platform/x86: ideapad-laptop: Only toggle ps2 aux port on/off on select models
	platform/x86: ideapad-laptop: Send KEY_TOUCHPAD_TOGGLE on some models
	platform/x86: ideapad-laptop: Stop writing VPCCMD_W_TOUCHPAD at probe time
	platform/x86: intel-uncore-freq: add Emerald Rapids support
	ALSA: hda/cirrus: Add extra 10 ms delay to allow PLL settle and lock.
	platform/x86: x86-android-tablets: Add Medion Lifetab S10346 data
	platform/x86: x86-android-tablets: Add Lenovo Yoga Tab 3 (YT3-X90F) charger + fuel-gauge data
	platform/x86: x86-android-tablets: Add Advantech MICA-071 extra button
	HID: Ignore HP Envy x360 eu0009nv stylus battery
	ALSA: usb-audio: Add new quirk FIXED_RATE for JBL Quantum810 Wireless
	fs: dlm: fix sock release if listen fails
	fs: dlm: retry accept() until -EAGAIN or error returns
	mptcp: netlink: fix some error return code
	mptcp: remove MPTCP 'ifdef' in TCP SYN cookies
	mptcp: dedicated request sock for subflow in v6
	mptcp: use proper req destructor for IPv6
	dm cache: Fix ABBA deadlock between shrink_slab and dm_cache_metadata_abort
	dm thin: Fix ABBA deadlock between shrink_slab and dm_pool_abort_metadata
	dm thin: Use last transaction's pmd->root when commit failed
	dm thin: resume even if in FAIL mode
	dm thin: Fix UAF in run_timer_softirq()
	dm integrity: Fix UAF in dm_integrity_dtr()
	dm clone: Fix UAF in clone_dtr()
	dm cache: Fix UAF in destroy()
	dm cache: set needs_check flag after aborting metadata
	ata: ahci: fix enum constants for gcc-13
	PCI/DOE: Fix maximum data object length miscalculation
	tracing/hist: Fix out-of-bound write on 'action_data.var_ref_idx'
	perf/core: Call LSM hook after copying perf_event_attr
	xtensa: add __umulsidi3 helper
	of/kexec: Fix reading 32-bit "linux,initrd-{start,end}" values
	ima: Fix hash dependency to correct algorithm
	KVM: VMX: Resume guest immediately when injecting #GP on ECREATE
	KVM: nVMX: Inject #GP, not #UD, if "generic" VMXON CR0/CR4 check fails
	KVM: x86: fix APICv/x2AVIC disabled when vm reboot by itself
	KVM: nVMX: Properly expose ENABLE_USR_WAIT_PAUSE control to L1
	x86/microcode/intel: Do not retry microcode reloading on the APs
	ftrace/x86: Add back ftrace_expected for ftrace bug reports
	x86/kprobes: Fix kprobes instruction boudary check with CONFIG_RETHUNK
	x86/kprobes: Fix optprobe optimization check with CONFIG_RETHUNK
	tracing: Fix race where eprobes can be called before the event
	powerpc/ftrace: fix syscall tracing on PPC64_ELF_ABI_V1
	tracing: Fix complicated dependency of CONFIG_TRACER_MAX_TRACE
	tracing/hist: Fix wrong return value in parse_action_params()
	tracing/probes: Handle system names with hyphens
	tracing: Fix issue of missing one synthetic field
	tracing: Fix infinite loop in tracing_read_pipe on overflowed print_trace_line
	staging: media: tegra-video: fix chan->mipi value on error
	staging: media: tegra-video: fix device_node use after free
	arm64: dts: mediatek: mt8195-demo: fix the memory size of node secmon
	ARM: 9256/1: NWFPE: avoid compiler-generated __aeabi_uldivmod
	media: dvb-core: Fix double free in dvb_register_device()
	media: dvb-core: Fix UAF due to refcount races at releasing
	cifs: fix confusing debug message
	cifs: fix missing display of three mount options
	cifs: set correct tcon status after initial tree connect
	cifs: set correct ipc status after initial tree connect
	cifs: set correct status of tcon ipc when reconnecting
	ravb: Fix "failed to switch device to config mode" message during unbind
	rtc: ds1347: fix value written to century register
	drm/amdgpu: fix mmhub register base coding error
	block: mq-deadline: Fix dd_finish_request() for zoned devices
	block: mq-deadline: Do not break sequential write streams to zoned HDDs
	md/bitmap: Fix bitmap chunk size overflow issues
	efi: Add iMac Pro 2017 to uefi skip cert quirk
	wifi: wilc1000: sdio: fix module autoloading
	ASoC: jz4740-i2s: Handle independent FIFO flush bits
	ipu3-imgu: Fix NULL pointer dereference in imgu_subdev_set_selection()
	ipmi: fix long wait in unload when IPMI disconnect
	mtd: spi-nor: Check for zero erase size in spi_nor_find_best_erase_type()
	ima: Fix a potential NULL pointer access in ima_restore_measurement_list
	ipmi: fix use after free in _ipmi_destroy_user()
	mtd: spi-nor: gigadevice: gd25q256: replace gd25q256_default_init with gd25q256_post_bfpt
	ima: Fix memory leak in __ima_inode_hash()
	um: virt-pci: Avoid GCC non-NULL warning
	crypto: ccree,hisilicon - Fix dependencies to correct algorithm
	PCI: Fix pci_device_is_present() for VFs by checking PF
	PCI/sysfs: Fix double free in error path
	RISC-V: kexec: Fix memory leak of fdt buffer
	riscv: Fixup compile error with !MMU
	RISC-V: kexec: Fix memory leak of elf header buffer
	riscv: stacktrace: Fixup ftrace_graph_ret_addr retp argument
	riscv: mm: notify remote harts about mmu cache updates
	crypto: n2 - add missing hash statesize
	crypto: ccp - Add support for TEE for PCI ID 0x14CA
	driver core: Fix bus_type.match() error handling in __driver_attach()
	bus: mhi: host: Fix race between channel preparation and M0 event
	phy: qcom-qmp-combo: fix sdm845 reset
	phy: qcom-qmp-combo: fix sc8180x reset
	iommu/amd: Fix ivrs_acpihid cmdline parsing code
	iommu/amd: Fix ill-formed ivrs_ioapic, ivrs_hpet and ivrs_acpihid options
	test_kprobes: Fix implicit declaration error of test_kprobes
	hugetlb: really allocate vma lock for all sharable vmas
	remoteproc: imx_dsp_rproc: Add mutex protection for workqueue
	remoteproc: core: Do pm_relax when in RPROC_OFFLINE state
	remoteproc: imx_rproc: Correct i.MX93 DRAM mapping
	parisc: led: Fix potential null-ptr-deref in start_task()
	parisc: Drop locking in pdc console code
	parisc: Fix locking in pdc_iodc_print() firmware call
	parisc: Add missing FORCE prerequisites in Makefile
	parisc: Drop duplicate kgdb_pdc console
	parisc: Drop PMD_SHIFT from calculation in pgtable.h
	device_cgroup: Roll back to original exceptions after copy failure
	drm/connector: send hotplug uevent on connector cleanup
	drm/vmwgfx: Validate the box size for the snooped cursor
	drm/mgag200: Fix PLL setup for G200_SE_A rev >=4
	drm/etnaviv: move idle mapping reaping into separate function
	drm/i915/dsi: fix VBT send packet port selection for dual link DSI
	drm/ingenic: Fix missing platform_driver_unregister() call in ingenic_drm_init()
	drm/etnaviv: reap idle mapping if it doesn't match the softpin address
	ext4: silence the warning when evicting inode with dioread_nolock
	ext4: add inode table check in __ext4_get_inode_loc to aovid possible infinite loop
	ext4: remove trailing newline from ext4_msg() message
	ext4: correct inconsistent error msg in nojournal mode
	fs: ext4: initialize fsdata in pagecache_write()
	ext4: fix use-after-free in ext4_orphan_cleanup
	ext4: fix undefined behavior in bit shift for ext4_check_flag_values
	ext4: add EXT4_IGET_BAD flag to prevent unexpected bad inode
	ext4: add helper to check quota inums
	ext4: fix bug_on in __es_tree_search caused by bad quota inode
	ext4: fix reserved cluster accounting in __es_remove_extent()
	ext4: journal_path mount options should follow links
	ext4: check and assert if marking an no_delete evicting inode dirty
	ext4: fix bug_on in __es_tree_search caused by bad boot loader inode
	ext4: don't allow journal inode to have encrypt flag
	ext4: disable fast-commit of encrypted dir operations
	ext4: fix leaking uninitialized memory in fast-commit journal
	ext4: don't set up encryption key during jbd2 transaction
	ext4: add missing validation of fast-commit record lengths
	ext4: fix unaligned memory access in ext4_fc_reserve_space()
	ext4: fix off-by-one errors in fast-commit block filling
	ext4: fix uninititialized value in 'ext4_evict_inode'
	ext4: init quota for 'old.inode' in 'ext4_rename'
	ext4: don't fail GETFSUUID when the caller provides a long buffer
	ext4: fix delayed allocation bug in ext4_clu_mapped for bigalloc + inline
	ext4: fix corruption when online resizing a 1K bigalloc fs
	ext4: fix error code return to user-space in ext4_get_branch()
	ext4: fix bad checksum after online resize
	ext4: dont return EINVAL from GETFSUUID when reporting UUID length
	ext4: fix corrupt backup group descriptors after online resize
	ext4: avoid BUG_ON when creating xattrs
	ext4: fix deadlock due to mbcache entry corruption
	ext4: fix kernel BUG in 'ext4_write_inline_data_end()'
	ext4: fix inode leak in ext4_xattr_inode_create() on an error path
	ext4: initialize quota before expanding inode in setproject ioctl
	ext4: avoid unaccounted block allocation when expanding inode
	ext4: allocate extended attribute value in vmalloc area
	drm/i915/ttm: consider CCS for backup objects
	drm/amd/display: Add DCN314 display SG Support
	drm/amdgpu: handle polaris10/11 overlap asics (v2)
	drm/amdgpu: make display pinning more flexible (v2)
	drm/i915: improve the catch-all evict to handle lock contention
	drm/i915/migrate: Account for the reserved_space
	drm/amd/pm: add missing SMU13.0.0 mm_dpm feature mapping
	drm/amd/pm: add missing SMU13.0.7 mm_dpm feature mapping
	drm/amd/pm: bump SMU13.0.0 driver_if header to version 0x34
	drm/amd/pm: correct the fan speed retrieving in PWM for some SMU13 asics
	Linux 6.1.4

Change-Id: I79c26bc73b1275fab4e9984d2a32a8b915bbfa1c
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-01-18 18:49:08 +00:00
Greg Kroah-Hartman
9a38b58eee This is the 6.1.3 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmO1VPMACgkQONu9yGCS
 aT43Og//RoOLMIYeZo3Hj6hJWv12bYOOwKDqORV1E7up5pA564nzgZ18z9ftxR36
 gjjATO4vM+6CYnkmtAZxbw6DZMgmqz4aYqR0nsjMFibV2iLPAb/zK23Kp1afaLbs
 rQjD0LwOlCH2YdIoFfcOONCoLeimy51woOXATlngmDEz0+6du4OznvRvIROzBEpX
 lcJZh5XcAIgGZa4VKapkLHXc01kdBRrn5D3M8S2gHxgM8MAcOmt7nKDUxuviX1zP
 JquY6vSVMhK2dCYgLr+dMdwHAe4LGX5M+T0hbLIw8IFjo9R//Efq0+chZY+4vdnx
 HD/9U5Sg0E/XtbcwvdU1Uu0k0kXG1g4pA09fOL0ph7GJeZntSQPMNunPyL9S8XKF
 g7nsM1dd3j0Gak99TTCQPxCjqa2jS5BDMZyT7iOHvXURmhOpjgVHcL/nZx5m2irG
 uFzCbwqZYZrmyfMqz8r6fIWt5x3lKpjd6QvBxc0xlCX6WzItmpADZl8ZnHFHxjPd
 pgFKZKaWAK8aAOYSdsKpx1t0VFO7z/5T0y6IH9WTzdmnjOQeyVuJ511u9leuo6Oy
 tNo+WZx+pevXs7phr1IMQ6sM0O+BotQaN21RP2mwxNNut/Cx3T+PStPnx0u03Be3
 0lE+OBcqv3bUYKHj4mB7HdY+RB5ECHKBe+IOeXAox5gA/SbSwzs=
 =FalZ
 -----END PGP SIGNATURE-----

Merge 6.1.3 into android14-6.1

Changes in 6.1.3
	eventpoll: add EPOLL_URING_WAKE poll wakeup flag
	eventfd: provide a eventfd_signal_mask() helper
	io_uring: pass in EPOLL_URING_WAKE for eventfd signaling and wakeups
	nvme-pci: fix doorbell buffer value endianness
	nvme-pci: fix mempool alloc size
	nvme-pci: fix page size checks
	ACPI: resource: do IRQ override on XMG Core 15
	ACPI: resource: do IRQ override on Lenovo 14ALC7
	ACPI: resource: Add Asus ExpertBook B2502 to Asus quirks
	ACPI: video: Fix Apple GMUX backlight detection
	block, bfq: fix uaf for bfqq in bfq_exit_icq_bfqq
	ata: ahci: Fix PCS quirk application for suspend
	nvme: fix the NVME_CMD_EFFECTS_CSE_MASK definition
	nvmet: don't defer passthrough commands with trivial effects to the workqueue
	fs/ntfs3: Validate BOOT record_size
	fs/ntfs3: Add overflow check for attribute size
	fs/ntfs3: Validate data run offset
	fs/ntfs3: Add null pointer check to attr_load_runs_vcn
	fs/ntfs3: Fix memory leak on ntfs_fill_super() error path
	fs/ntfs3: Add null pointer check for inode operations
	fs/ntfs3: Validate attribute name offset
	fs/ntfs3: Validate buffer length while parsing index
	fs/ntfs3: Validate resident attribute name
	fs/ntfs3: Fix slab-out-of-bounds read in run_unpack
	soundwire: dmi-quirks: add quirk variant for LAPBC710 NUC15
	phy: sun4i-usb: Introduce port2 SIDDQ quirk
	phy: sun4i-usb: Add support for the H616 USB PHY
	fs/ntfs3: Validate index root when initialize NTFS security
	fs/ntfs3: Use __GFP_NOWARN allocation at wnd_init()
	fs/ntfs3: Use __GFP_NOWARN allocation at ntfs_fill_super()
	fs/ntfs3: Delete duplicate condition in ntfs_read_mft()
	fs/ntfs3: Fix slab-out-of-bounds in r_page
	objtool: Fix SEGFAULT
	iommu/mediatek: Fix crash on isr after kexec()
	powerpc/rtas: avoid device tree lookups in rtas_os_term()
	powerpc/rtas: avoid scheduling in rtas_os_term()
	rtc: msc313: Fix function prototype mismatch in msc313_rtc_probe()
	NFSD: fix use-after-free in __nfs42_ssc_open()
	kprobes: kretprobe events missing on 2-core KVM guest
	HID: multitouch: fix Asus ExpertBook P2 P2451FA trackpoint
	HID: plantronics: Additional PIDs for double volume key presses quirk
	futex: Fix futex_waitv() hrtimer debug object leak on kcalloc error
	rtmutex: Add acquire semantics for rtmutex lock acquisition slow path
	mm, mremap: fix mremap() expanding vma with addr inside vma
	mm/mempolicy: fix memory leak in set_mempolicy_home_node system call
	kmsan: export kmsan_handle_urb
	kmsan: include linux/vmalloc.h
	pstore: Properly assign mem_type property
	pstore/zone: Use GFP_ATOMIC to allocate zone buffer
	hfsplus: fix bug causing custom uid and gid being unable to be assigned with mount
	ACPI: x86: s2idle: Force AMD GUID/_REV 2 on HP Elitebook 865
	ACPI: x86: s2idle: Stop using AMD specific codepath for Rembrandt+
	binfmt: Fix error return code in load_elf_fdpic_binary()
	ovl: Use ovl mounter's fsuid and fsgid in ovl_link()
	ovl: update ->f_iocb_flags when ovl_change_flags() modifies ->f_flags
	ALSA: line6: correct midi status byte when receiving data from podxt
	ALSA: line6: fix stack overflow in line6_midi_transmit
	ALSA: hda/hdmi: Static PCM mapping again with AMD HDMI codecs
	pnode: terminate at peers of source
	mfd: mt6360: Add bounds checking in Regmap read/write call-backs
	md: fix a crash in mempool_free
	mm, compaction: fix fast_isolate_around() to stay within boundaries
	f2fs: should put a page when checking the summary info
	f2fs: allow to read node block after shutdown
	block: Do not reread partition table on exclusively open device
	mmc: vub300: fix warning - do not call blocking ops when !TASK_RUNNING
	tpm: acpi: Call acpi_put_table() to fix memory leak
	tpm: tpm_crb: Add the missed acpi_put_table() to fix memory leak
	tpm: tpm_tis: Add the missed acpi_put_table() to fix memory leak
	SUNRPC: Don't leak netobj memory when gss_read_proxy_verf() fails
	kcsan: Instrument memcpy/memset/memmove with newer Clang
	Linux 6.1.3

Change-Id: I3ac637177b476ff43ad964c687327a7cbb62d017
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-01-18 18:46:54 +00:00
Greg Kroah-Hartman
2712923303 This is the 6.1.2 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmOwLA8ACgkQONu9yGCS
 aT6RYxAAhsnIlIBCtaca7Uio9TZdluV7Fzn3c9+QogVisrwVMTtP1iHX43ofFC89
 BCmiQOS9fForddjNP0vkqjZlshMYYSCDPX0s0mK6R4UoNPVg8oehZ9vJfOiR3MMX
 C3fApQQhYf5Bx/rC50i58ChdAw/Dqj0WNBZX/ZWod4B2JKUq7ORk7GjnorfuJxuP
 xO2K6KdpajZufkxtTyKtwqK8FG3dkZP9YF6MqFIvTfQ8qkLnQsrL3moFGU9giSH5
 swRCFH/QII+kumKS2bir87QHz0CmvtSa3Ob4DyKiJMkNN8tspE7nOMkds4usCov6
 +yM84sWp03j2RKFyadctAMKwdH16IGU0kdgqlhb9OmzGNRvX6/l5q4+QzqzPJHHQ
 F+v/PEJoKz3K6CK2ai8DPXoTUMgDDCaYDHg139Tv2Dj/ulDg9xzJ+CS6WBMQxMoU
 xO1OWhpLMDKT8soPogGY13yOsSbhPY6ef3+//eRczxLf8bg3qzoKo362PjqHVxlq
 IY01Ul+MB3M4NdFuFNMKM2/DBHn9qBeoZdQxnQ/vpxhBbpP2hIyEflyfsUQOmUYU
 lWBcnxbSLxf87CmJ3f1VSsms6kbgnxYJyNBgkXiU3WHFfcRZqoU/R+SFu2THRMPt
 ugor1zCHNxBBIdDEMRDWJvDTt34vRsT51Xbig+hH5BVdiKQzQ3k=
 =MYDV
 -----END PGP SIGNATURE-----

Merge 6.1.2 into android14-6.1

Changes in 6.1.2
	MIPS: DTS: CI20: fix reset line polarity of the ethernet controller
	usb: musb: remove extra check in musb_gadget_vbus_draw
	arm64: dts: renesas: r8a779g0: Fix HSCIF0 "brg_int" clock
	arm64: dts: qcom: ipq6018-cp01-c1: use BLSPI1 pins
	arm64: dts: qcom: sm8250-sony-xperia-edo: fix touchscreen bias-disable
	arm64: dts: qcom: sdm845-xiaomi-polaris: fix codec pin conf name
	arm64: dts: qcom: msm8996: Add MSM8996 Pro support
	arm64: dts: qcom: msm8996: fix supported-hw in cpufreq OPP tables
	arm64: dts: qcom: msm8996: fix GPU OPP table
	ARM: dts: qcom: apq8064: fix coresight compatible
	arm64: dts: qcom: sdm630: fix UART1 pin bias
	arm64: dts: qcom: sdm845-cheza: fix AP suspend pin bias
	arm64: dts: qcom: msm8916: Drop MSS fallback compatible
	arm64: dts: fsd: fix drive strength macros as per FSD HW UM
	arm64: dts: fsd: fix drive strength values as per FSD HW UM
	memory: renesas-rpc-if: Clear HS bit during hardware initialization
	objtool, kcsan: Add volatile read/write instrumentation to whitelist
	ARM: dts: stm32: Drop stm32mp15xc.dtsi from Avenger96
	ARM: dts: stm32: Fix AV96 WLAN regulator gpio property
	drivers: soc: ti: knav_qmss_queue: Mark knav_acc_firmwares as static
	firmware: ti_sci: Fix polled mode during system suspend
	riscv: dts: microchip: fix memory node unit address for icicle
	arm64: dts: qcom: pm660: Use unique ADC5_VCOIN address in node name
	arm64: dts: qcom: sm8250: correct LPASS pin pull down
	arm64: dts: qcom: sc7180-trogdor-homestar: fully configure secondary I2S pins
	soc: qcom: llcc: make irq truly optional
	arm64: dts: qcom: sm8150: fix UFS PHY registers
	arm64: dts: qcom: sm8250: fix UFS PHY registers
	arm64: dts: qcom: sm8350: fix UFS PHY registers
	arm64: dts: qcom: sm8450: fix UFS PHY registers
	arm64: dts: qcom: msm8996: fix sound card reset line polarity
	arm64: dts: qcom: sm8250-mtp: fix reset line polarity
	arm64: dts: qcom: sc7280: fix codec reset line polarity for CRD 3.0/3.1
	arm64: dts: qcom: sc7280: fix codec reset line polarity for CRD 1.0/2.0
	arm64: dts: qcom: sm8250: drop bogus DP PHY clock
	arm64: dts: qcom: sm6350: drop bogus DP PHY clock
	soc: qcom: apr: Add check for idr_alloc and of_property_read_string_index
	arm64: dts: qcom: pm6350: Include header for KEY_POWER
	arm64: dts: qcom: sm6125: fix SDHCI CQE reg names
	arm64: dts: renesas: r8a779f0: Fix HSCIF "brg_int" clock
	arm64: dts: renesas: r8a779f0: Fix SCIF "brg_int" clock
	arm64: dts: renesas: r9a09g011: Fix unit address format error
	arm64: dts: renesas: r9a09g011: Fix I2C SoC specific strings
	dt-bindings: pwm: fix microchip corePWM's pwm-cells
	soc: sifive: ccache: fix missing iounmap() in error path in sifive_ccache_init()
	soc: sifive: ccache: fix missing free_irq() in error path in sifive_ccache_init()
	soc: sifive: ccache: fix missing of_node_put() in sifive_ccache_init()
	arm64: dts: mt7986: fix trng node name
	soc/tegra: cbb: Use correct master_id mask for CBB NOC in Tegra194
	soc/tegra: cbb: Update slave maps for Tegra234
	soc/tegra: cbb: Add checks for potential out of bound errors
	soc/tegra: cbb: Check firewall before enabling error reporting
	arm64: dts: qcom: sc7280: Mark all Qualcomm reference boards as LTE
	arm: dts: spear600: Fix clcd interrupt
	riscv: dts: microchip: fix the icicle's #pwm-cells
	soc: ti: knav_qmss_queue: Fix PM disable depth imbalance in knav_queue_probe
	soc: ti: smartreflex: Fix PM disable depth imbalance in omap_sr_probe
	arm64: mm: kfence: only handle translation faults
	perf: arm_dsu: Fix hotplug callback leak in dsu_pmu_init()
	drivers: perf: marvell_cn10k: Fix hotplug callback leak in tad_pmu_init()
	perf/arm_dmc620: Fix hotplug callback leak in dmc620_pmu_init()
	perf/smmuv3: Fix hotplug callback leak in arm_smmu_pmu_init()
	arm64: dts: ti: k3-am65-main: Drop dma-coherent in crypto node
	arm64: dts: ti: k3-j721e-main: Drop dma-coherent in crypto node
	arm64: dts: ti: k3-j7200-mcu-wakeup: Drop dma-coherent in crypto node
	arm64: dts: ti: k3-j721s2: Fix the interrupt ranges property for main & wkup gpio intr
	riscv: dts: microchip: remove pcie node from the sev kit
	ARM: dts: nuvoton: Remove bogus unit addresses from fixed-partition nodes
	arm64: dts: mediatek: mt8195: Fix CPUs capacity-dmips-mhz
	arm64: dts: mt7896a: Fix unit_address_vs_reg warning for oscillator
	arm64: dts: mt6779: Fix devicetree build warnings
	arm64: dts: mt2712e: Fix unit_address_vs_reg warning for oscillators
	arm64: dts: mt2712e: Fix unit address for pinctrl node
	arm64: dts: mt2712-evb: Fix vproc fixed regulators unit names
	arm64: dts: mt2712-evb: Fix usb vbus regulators unit names
	arm64: dts: mediatek: pumpkin-common: Fix devicetree warnings
	arm64: dts: mediatek: mt6797: Fix 26M oscillator unit name
	arm64: tegra: Fix Prefetchable aperture ranges of Tegra234 PCIe controllers
	arm64: tegra: Fix non-prefetchable aperture of PCIe C3 controller
	arm64: dts: mt7986: move wed_pcie node
	ARM: dts: dove: Fix assigned-addresses for every PCIe Root Port
	ARM: dts: armada-370: Fix assigned-addresses for every PCIe Root Port
	ARM: dts: armada-xp: Fix assigned-addresses for every PCIe Root Port
	ARM: dts: armada-375: Fix assigned-addresses for every PCIe Root Port
	ARM: dts: armada-38x: Fix assigned-addresses for every PCIe Root Port
	ARM: dts: armada-39x: Fix assigned-addresses for every PCIe Root Port
	ARM: dts: turris-omnia: Add ethernet aliases
	ARM: dts: turris-omnia: Add switch port 6 node
	arm64: dts: armada-3720-turris-mox: Add missing interrupt for RTC
	soc: apple: sart: Stop casting function pointer signatures
	soc: apple: rtkit: Stop casting function pointer signatures
	drivers/perf: hisi: Fix some event id for hisi-pcie-pmu
	seccomp: Move copy_seccomp() to no failure path.
	pstore/ram: Fix error return code in ramoops_probe()
	ARM: mmp: fix timer_read delay
	pstore: Avoid kcore oops by vmap()ing with VM_IOREMAP
	arch: arm64: apple: t8103: Use standard "iommu" node name
	tpm: tis_i2c: Fix sanity check interrupt enable mask
	tpm: Add flag to use default cancellation policy
	tpm/tpm_ftpm_tee: Fix error handling in ftpm_mod_init()
	tpm/tpm_crb: Fix error message in __crb_relinquish_locality()
	ovl: remove privs in ovl_copyfile()
	ovl: remove privs in ovl_fallocate()
	sched/uclamp: Fix relationship between uclamp and migration margin
	sched/uclamp: Make task_fits_capacity() use util_fits_cpu()
	sched/uclamp: Fix fits_capacity() check in feec()
	sched/uclamp: Make select_idle_capacity() use util_fits_cpu()
	sched/uclamp: Make asym_fits_capacity() use util_fits_cpu()
	sched/uclamp: Make cpu_overutilized() use util_fits_cpu()
	sched/uclamp: Cater for uclamp in find_energy_efficient_cpu()'s early exit condition
	cpuidle: dt: Return the correct numbers of parsed idle states
	alpha: fix TIF_NOTIFY_SIGNAL handling
	alpha: fix syscall entry in !AUDUT_SYSCALL case
	sched/psi: Fix possible missing or delayed pending event
	x86/sgx: Reduce delay and interference of enclave release
	PM: hibernate: Fix mistake in kerneldoc comment
	fs: don't audit the capability check in simple_xattr_list()
	cpufreq: qcom-hw: Fix memory leak in qcom_cpufreq_hw_read_lut()
	x86/split_lock: Add sysctl to control the misery mode
	ACPI: irq: Fix some kernel-doc issues
	selftests/ftrace: event_triggers: wait longer for test_event_enable
	perf: Fix possible memleak in pmu_dev_alloc()
	lib/debugobjects: fix stat count and optimize debug_objects_mem_init
	platform/x86: huawei-wmi: fix return value calculation
	timerqueue: Use rb_entry_safe() in timerqueue_getnext()
	proc: fixup uptime selftest
	lib/fonts: fix undefined behavior in bit shift for get_default_font
	ocfs2: fix memory leak in ocfs2_stack_glue_init()
	selftests: cgroup: fix unsigned comparison with less than zero
	cpufreq: qcom-hw: Fix the frequency returned by cpufreq_driver->get()
	MIPS: vpe-mt: fix possible memory leak while module exiting
	MIPS: vpe-cmp: fix possible memory leak while module exiting
	selftests/efivarfs: Add checking of the test return value
	PNP: fix name memory leak in pnp_alloc_dev()
	mailbox: pcc: Reset pcc_chan_count to zero in case of PCC probe failure
	ACPI: pfr_telemetry: use ACPI_FREE() to free acpi_object
	ACPI: pfr_update: use ACPI_FREE() to free acpi_object
	perf/x86/intel/uncore: Fix reference count leak in sad_cfg_iio_topology()
	perf/x86/intel/uncore: Fix reference count leak in hswep_has_limit_sbox()
	perf/x86/intel/uncore: Fix reference count leak in snr_uncore_mmio_map()
	perf/x86/intel/uncore: Fix reference count leak in __uncore_imc_init_box()
	platform/chrome: cros_usbpd_notify: Fix error handling in cros_usbpd_notify_init()
	thermal: core: fix some possible name leaks in error paths
	irqchip/loongson-pch-pic: Fix translate callback for DT path
	irqchip: gic-pm: Use pm_runtime_resume_and_get() in gic_probe()
	irqchip/wpcm450: Fix memory leak in wpcm450_aic_of_init()
	irqchip/loongson-liointc: Fix improper error handling in liointc_init()
	EDAC/i10nm: fix refcount leak in pci_get_dev_wrapper()
	NFSD: Finish converting the NFSv2 GETACL result encoder
	NFSD: Finish converting the NFSv3 GETACL result encoder
	nfsd: don't call nfsd_file_put from client states seqfile display
	genirq/irqdesc: Don't try to remove non-existing sysfs files
	cpufreq: amd_freq_sensitivity: Add missing pci_dev_put()
	libfs: add DEFINE_SIMPLE_ATTRIBUTE_SIGNED for signed value
	lib/notifier-error-inject: fix error when writing -errno to debugfs file
	debugfs: fix error when writing negative value to atomic_t debugfs file
	ocfs2: fix memory leak in ocfs2_mount_volume()
	rapidio: fix possible name leaks when rio_add_device() fails
	rapidio: rio: fix possible name leak in rio_register_mport()
	clocksource/drivers/sh_cmt: Access registers according to spec
	futex: Resend potentially swallowed owner death notification
	cpu/hotplug: Make target_store() a nop when target == state
	cpu/hotplug: Do not bail-out in DYING/STARTING sections
	clocksource/drivers/timer-ti-dm: Fix warning for omap_timer_match
	clocksource/drivers/timer-ti-dm: Fix missing clk_disable_unprepare in dmtimer_systimer_init_clock()
	ACPICA: Fix use-after-free in acpi_ut_copy_ipackage_to_ipackage()
	uprobes/x86: Allow to probe a NOP instruction with 0x66 prefix
	x86/xen: Fix memory leak in xen_smp_intr_init{_pv}()
	x86/xen: Fix memory leak in xen_init_lock_cpu()
	xen/privcmd: Fix a possible warning in privcmd_ioctl_mmap_resource()
	PM: runtime: Do not call __rpm_callback() from rpm_idle()
	erofs: check the uniqueness of fsid in shared domain in advance
	erofs: Fix pcluster memleak when its block address is zero
	erofs: fix missing unmap if z_erofs_get_extent_compressedlen() fails
	erofs: validate the extent length for uncompressed pclusters
	platform/chrome: cros_ec_typec: zero out stale pointers
	platform/x86: mxm-wmi: fix memleak in mxm_wmi_call_mx[ds|mx]()
	platform/x86: intel_scu_ipc: fix possible name leak in __intel_scu_ipc_register()
	MIPS: BCM63xx: Add check for NULL for clk in clk_enable
	MIPS: OCTEON: warn only once if deprecated link status is being used
	lockd: set other missing fields when unlocking files
	nfsd: return error if nfs4_setacl fails
	NFSD: pass range end to vfs_fsync_range() instead of count
	fs: sysv: Fix sysv_nblocks() returns wrong value
	rapidio: fix possible UAF when kfifo_alloc() fails
	eventfd: change int to __u64 in eventfd_signal() ifndef CONFIG_EVENTFD
	relay: fix type mismatch when allocating memory in relay_create_buf()
	hfs: Fix OOB Write in hfs_asc2mac
	rapidio: devices: fix missing put_device in mport_cdev_open
	ipc: fix memory leak in init_mqueue_fs()
	platform/mellanox: mlxbf-pmc: Fix event typo
	selftests/bpf: Add missing bpf_iter_vma_offset__destroy call
	wifi: fix multi-link element subelement iteration
	wifi: mac80211: mlme: fix null-ptr deref on failed assoc
	wifi: mac80211: check link ID in auth/assoc continuation
	wifi: mac80211: fix ifdef symbol name
	drm/atomic-helper: Don't allocate new plane state in CRTC check
	wifi: ath9k: hif_usb: fix memory leak of urbs in ath9k_hif_usb_dealloc_tx_urbs()
	wifi: ath9k: hif_usb: Fix use-after-free in ath9k_hif_usb_reg_in_cb()
	wifi: rtl8xxxu: Fix reading the vendor of combo chips
	wifi: ath11k: fix firmware assert during bandwidth change for peer sta
	drm/bridge: adv7533: remove dynamic lane switching from adv7533 bridge
	libbpf: Fix use-after-free in btf_dump_name_dups
	libbpf: Fix memory leak in parse_usdt_arg()
	selftests/bpf: Fix memory leak caused by not destroying skeleton
	selftest/bpf: Fix memory leak in kprobe_multi_test
	selftests/bpf: Fix error failure of case test_xdp_adjust_tail_grow
	selftest/bpf: Fix error usage of ASSERT_OK in xdp_adjust_tail.c
	libbpf: Use elf_getshdrnum() instead of e_shnum
	libbpf: Deal with section with no data gracefully
	libbpf: Fix null-pointer dereference in find_prog_by_sec_insn()
	drm: lcdif: Switch to limited range for RGB to YUV conversion
	ata: libata: fix NCQ autosense logic
	pinctrl: ocelot: add missing destroy_workqueue() in error path in ocelot_pinctrl_probe()
	ASoC: Intel: avs: Fix DMA mask assignment
	ASoC: Intel: avs: Fix potential RX buffer overflow
	ipmi: kcs: Poll OBF briefly to reduce OBE latency
	drm/amdgpu: Revert "drm/amdgpu: getting fan speed pwm for vega10 properly"
	drm/amdgpu/powerplay/psm: Fix memory leak in power state init
	net: ethernet: adi: adin1110: Fix SPI transfers
	samples/bpf: Fix map iteration in xdp1_user
	samples/bpf: Fix MAC address swapping in xdp2_kern
	selftests/bpf: fix missing BPF object files
	drm/bridge: it6505: Initialize AUX channel in it6505_i2c_probe
	Input: iqs7222 - protect against undefined slider size
	media: v4l2-ctrls: Fix off-by-one error in integer menu control check
	media: coda: jpeg: Add check for kmalloc
	media: amphion: reset instance if it's aborted before codec header parsed
	media: adv748x: afe: Select input port when initializing AFE
	media: v4l2-ioctl.c: Unify YCbCr/YUV terms in format descriptions
	media: cedrus: hevc: Fix offset adjustments
	media: mediatek: vcodec: fix h264 cavlc bitstream fail
	drm/i915/guc: Limit scheduling properties to avoid overflow
	drm/i915: Fix compute pre-emption w/a to apply to compute engines
	media: i2c: hi846: Fix memory leak in hi846_parse_dt()
	media: i2c: ad5820: Fix error path
	venus: pm_helpers: Fix error check in vcodec_domains_get()
	soreuseport: Fix socket selection for SO_INCOMING_CPU.
	media: i2c: ov5648: Free V4L2 fwnode data on unbind
	media: exynos4-is: don't rely on the v4l2_async_subdev internals
	libbpf: Btf dedup identical struct test needs check for nested structs/arrays
	can: kvaser_usb: kvaser_usb_leaf: Get capabilities from device
	can: kvaser_usb: kvaser_usb_leaf: Rename {leaf,usbcan}_cmd_error_event to {leaf,usbcan}_cmd_can_error_event
	can: kvaser_usb: kvaser_usb_leaf: Handle CMD_ERROR_EVENT
	can: kvaser_usb_leaf: Set Warning state even without bus errors
	can: kvaser_usb_leaf: Fix improved state not being reported
	can: kvaser_usb_leaf: Fix wrong CAN state after stopping
	can: kvaser_usb_leaf: Fix bogus restart events
	can: kvaser_usb: Add struct kvaser_usb_busparams
	can: kvaser_usb: Compare requested bittiming parameters with actual parameters in do_set_{,data}_bittiming
	clk: renesas: r8a779f0: Fix SD0H clock name
	clk: renesas: r8a779a0: Fix SD0H clock name
	ASoC: dt-bindings: rt5682: Set sound-dai-cells to 1
	drm/i915/guc: Add error-capture init warnings when needed
	drm/i915/guc: Fix GuC error capture sizing estimation and reporting
	dw9768: Enable low-power probe on ACPI
	drm/amd/display: wait for vblank during pipe programming
	drm/rockchip: lvds: fix PM usage counter unbalance in poweron
	drm/i915: Handle all GTs on driver (un)load paths
	drm/i915: Refactor ttm ghost obj detection
	drm/i915: Encapsulate lmem rpm stuff in intel_runtime_pm
	drm/i915/dgfx: Grab wakeref at i915_ttm_unmap_virtual
	clk: renesas: r9a06g032: Repair grave increment error
	drm: lcdif: change burst size to 256B
	drm/panel/panel-sitronix-st7701: Fix RTNI calculation
	spi: Update reference to struct spi_controller
	drm/panel/panel-sitronix-st7701: Remove panel on DSI attach failure
	drm/ttm: fix undefined behavior in bit shift for TTM_TT_FLAG_PRIV_POPULATED
	drm/msm/mdp5: stop overriding drvdata
	ima: Handle -ESTALE returned by ima_filter_rule_match()
	drm/msm/hdmi: use devres helper for runtime PM management
	bpf: Clobber stack slot when writing over spilled PTR_TO_BTF_ID
	bpf: Fix slot type check in check_stack_write_var_off
	drm/msm/dpu1: Account for DSC's bits_per_pixel having 4 fractional bits
	drm/msm/dsi: Remove useless math in DSC calculations
	drm/msm/dsi: Remove repeated calculation of slice_per_intf
	drm/msm/dsi: Use DIV_ROUND_UP instead of conditional increment on modulo
	drm/msm/dsi: Reuse earlier computed dsc->slice_chunk_size
	drm/msm/dsi: Appropriately set dsc->mux_word_size based on bpc
	drm/msm/dsi: Migrate to drm_dsc_compute_rc_parameters()
	drm/msm/dsi: Account for DSC's bits_per_pixel having 4 fractional bits
	drm/msm/dsi: Disallow 8 BPC DSC configuration for alternative BPC values
	drm/msm/dsi: Prevent signed BPG offsets from bleeding into adjacent bits
	media: platform: mtk-mdp3: fix error handling in mdp_cmdq_send()
	media: platform: mtk-mdp3: fix error handling about components clock_on
	media: platform: mtk-mdp3: fix error handling in mdp_probe()
	media: rkvdec: Add required padding
	media: vivid: fix compose size exceed boundary
	media: platform: exynos4-is: fix return value check in fimc_md_probe()
	bpf: propagate precision in ALU/ALU64 operations
	bpf: propagate precision across all frames, not just the last one
	clk: qcom: gcc-ipq806x: use parent_data for the last remaining entry
	clk: qcom: dispcc-sm6350: Add CLK_OPS_PARENT_ENABLE to pixel&byte src
	clk: qcom: gcc-sm8250: Use retention mode for USB GDSCs
	mtd: Fix device name leak when register device failed in add_mtd_device()
	mtd: core: fix possible resource leak in init_mtd()
	Input: joystick - fix Kconfig warning for JOYSTICK_ADC
	wifi: rsi: Fix handling of 802.3 EAPOL frames sent via control port
	media: camss: Clean up received buffers on failed start of streaming
	media: camss: Do not attach an already attached power domain on MSM8916 platform
	clk: renesas: r8a779f0: Fix HSCIF parent clocks
	clk: renesas: r8a779f0: Fix SCIF parent clocks
	virt/sev-guest: Add a MODULE_ALIAS
	net, proc: Provide PROC_FS=n fallback for proc_create_net_single_write()
	rxrpc: Fix ack.bufferSize to be 0 when generating an ack
	drm: lcdif: Set and enable FIFO Panic threshold
	wifi: rtw89: use u32_encode_bits() to fill MAC quota value
	drm: rcar-du: Drop leftovers dependencies from Kconfig
	regmap-irq: Use the new num_config_regs property in regmap_add_irq_chip_fwnode
	drbd: use blk_queue_max_discard_sectors helper
	bfq: fix waker_bfqq inconsistency crash
	drm/radeon: Add the missed acpi_put_table() to fix memory leak
	dt-bindings: pinctrl: update uart/mmc bindings for MT7986 SoC
	pinctrl: mediatek: fix the pinconf register offset of some pins
	wifi: iwlwifi: mei: make sure ownership confirmed message is sent
	wifi: iwlwifi: mei: don't send SAP commands if AMT is disabled
	wifi: iwlwifi: mei: fix tx DHCP packet for devices with new Tx API
	wifi: iwlwifi: mei: avoid blocking sap messages handling due to rtnl lock
	wifi: iwlwifi: mei: fix potential NULL-ptr deref after clone
	module: Fix NULL vs IS_ERR checking for module_get_next_page
	ASoC: codecs: wsa883x: Use proper shutdown GPIO polarity
	ASoC: codecs: wsa883x: use correct header file
	selftests/bpf: Fix xdp_synproxy compilation failure in 32-bit arch
	selftests/bpf: Fix incorrect ASSERT in the tcp_hdr_options test
	drm/mediatek: Modify dpi power on/off sequence.
	ASoC: pxa: fix null-pointer dereference in filter()
	nvmet: only allocate a single slab for bvecs
	regulator: core: fix unbalanced of node refcount in regulator_dev_lookup()
	amdgpu/pm: prevent array underflow in vega20_odn_edit_dpm_table()
	nvme: return err on nvme_init_non_mdts_limits fail
	wifi: rtw89: Fix some error handling path in rtw89_core_sta_assoc()
	regulator: qcom-rpmh: Fix PMR735a S3 regulator spec
	drm/fourcc: Fix vsub/hsub for Q410 and Q401
	ALSA: memalloc: Allocate more contiguous pages for fallback case
	integrity: Fix memory leakage in keyring allocation error path
	ima: Fix misuse of dereference of pointer in template_desc_init_fields()
	block: clear ->slave_dir when dropping the main slave_dir reference
	dm: cleanup open_table_device
	dm: cleanup close_table_device
	dm: make sure create and remove dm device won't race with open and close table
	dm: track per-add_disk holder relations in DM
	selftests/bpf: fix memory leak of lsm_cgroup
	wifi: ath10k: Fix return value in ath10k_pci_init()
	drm/msm/a6xx: Fix speed-bin detection vs probe-defer
	mtd: lpddr2_nvm: Fix possible null-ptr-deref
	Input: elants_i2c - properly handle the reset GPIO when power is off
	ASoC: amd: acp: Fix possible UAF in acp_dma_open
	net: ethernet: mtk_eth_soc: do not overwrite mtu configuration running reset routine
	media: amphion: add lock around vdec_g_fmt
	media: amphion: apply vb2_queue_error instead of setting manually
	media: vidtv: Fix use-after-free in vidtv_bridge_dvb_init()
	media: solo6x10: fix possible memory leak in solo_sysfs_init()
	media: platform: exynos4-is: Fix error handling in fimc_md_init()
	media: amphion: Fix error handling in vpu_driver_init()
	media: videobuf-dma-contig: use dma_mmap_coherent
	net: ethernet: mtk_eth_soc: fix RSTCTRL_PPE{0,1} definitions
	udp: Clean up some functions.
	net: Return errno in sk->sk_prot->get_port().
	mtd: spi-nor: hide jedec_id sysfs attribute if not present
	mtd: spi-nor: Fix the number of bytes for the dummy cycles
	clk: imx93: correct the flexspi1 clock setting
	bpf: Pin the start cgroup in cgroup_iter_seq_init()
	HID: i2c: let RMI devices decide what constitutes wakeup event
	clk: imx93: unmap anatop base in error handling path
	clk: imx93: correct enet clock
	bpf: Move skb->len == 0 checks into __bpf_redirect
	HID: hid-sensor-custom: set fixed size for custom attributes
	clk: imx: imxrt1050: fix IMXRT1050_CLK_LCDIF_APB offsets
	pinctrl: k210: call of_node_put()
	wifi: rtw89: fix physts IE page check
	ASoC: Intel: Skylake: Fix Kconfig dependency
	ASoC: Intel: avs: Lock substream before snd_pcm_stop()
	ALSA: pcm: fix undefined behavior in bit shift for SNDRV_PCM_RATE_KNOT
	ALSA: seq: fix undefined behavior in bit shift for SNDRV_SEQ_FILTER_USE_EVENT
	regulator: core: use kfree_const() to free space conditionally
	clk: rockchip: Fix memory leak in rockchip_clk_register_pll()
	drm/amdgpu: fix pci device refcount leak
	drm/i915/guc: make default_lists const data
	selftests/bpf: Make sure zero-len skbs aren't redirectable
	selftests/bpf: Mount debugfs in setns_by_fd
	bonding: fix link recovery in mode 2 when updelay is nonzero
	clk: microchip: check for null return of devm_kzalloc()
	mtd: core: Fix refcount error in del_mtd_device()
	mtd: maps: pxa2xx-flash: fix memory leak in probe
	drbd: remove call to memset before free device/resource/connection
	drbd: destroy workqueue when drbd device was freed
	ASoC: qcom: Add checks for devm_kcalloc
	ASoC: qcom: cleanup and fix dependency of QCOM_COMMON
	ASoC: mediatek: mt8186: Correct I2S shared clocks
	media: vimc: Fix wrong function called when vimc_init() fails
	media: imon: fix a race condition in send_packet()
	media: imx: imx7-media-csi: Clear BIT_MIPI_DOUBLE_CMPNT for <16b formats
	media: mt9p031: Drop bogus v4l2_subdev_get_try_crop() call from mt9p031_init_cfg()
	clk: imx8mn: rename vpu_pll to m7_alt_pll
	clk: imx: replace osc_hdmi with dummy
	clk: imx: rename video_pll1 to video_pll
	clk: imx8mn: fix imx8mn_sai2_sels clocks list
	clk: imx8mn: fix imx8mn_enet_phy_sels clocks list
	pinctrl: pinconf-generic: add missing of_node_put()
	media: dvb-core: Fix ignored return value in dvb_register_frontend()
	media: dvb-usb: az6027: fix null-ptr-deref in az6027_i2c_xfer()
	x86/boot: Skip realmode init code when running as Xen PV guest
	media: sun6i-mipi-csi2: Require both pads to be connected for streaming
	media: sun8i-a83t-mipi-csi2: Require both pads to be connected for streaming
	media: sun6i-mipi-csi2: Register async subdev with no sensor attached
	media: sun8i-a83t-mipi-csi2: Register async subdev with no sensor attached
	media: amphion: try to wakeup vpu core to avoid failure
	media: amphion: cancel vpu before release instance
	media: amphion: lock and check m2m_ctx in event handler
	media: mediatek: vcodec: Fix getting NULL pointer for dst buffer
	media: mediatek: vcodec: Fix h264 set lat buffer error
	media: mediatek: vcodec: Setting lat buf to lat_list when lat decode error
	media: mediatek: vcodec: Core thread depends on core_list
	media: s5p-mfc: Add variant data for MFC v7 hardware for Exynos 3250 SoC
	drm/tegra: Add missing clk_disable_unprepare() in tegra_dc_probe()
	ASoC: dt-bindings: wcd9335: fix reset line polarity in example
	ASoC: mediatek: mtk-btcvsd: Add checks for write and read of mtk_btcvsd_snd
	drm/msm/mdp5: fix reading hw revision on db410c platform
	NFSv4.2: Clear FATTR4_WORD2_SECURITY_LABEL when done decoding
	NFSv4.2: Always decode the security label
	NFSv4.2: Fix a memory stomp in decode_attr_security_label
	NFSv4.2: Fix initialisation of struct nfs4_label
	NFSv4: Fix a credential leak in _nfs4_discover_trunking()
	NFSv4: Fix a deadlock between nfs4_open_recover_helper() and delegreturn
	NFS: Fix an Oops in nfs_d_automount()
	ALSA: asihpi: fix missing pci_disable_device()
	wifi: plfxlc: fix potential memory leak in __lf_x_usb_enable_rx()
	wifi: rtl8xxxu: Fix use after rcu_read_unlock in rtl8xxxu_bss_info_changed
	wifi: iwlwifi: mvm: fix double free on tx path.
	ASoC: mediatek: mt8173: Enable IRQ when pdata is ready
	clk: mediatek: fix dependency of MT7986 ADC clocks
	drm/amd/pm/smu11: BACO is supported when it's in BACO state
	amdgpu/nv.c: Corrected typo in the video capabilities resolution
	drm/radeon: Fix PCI device refcount leak in radeon_atrm_get_bios()
	drm/amdgpu: Fix PCI device refcount leak in amdgpu_atrm_get_bios()
	drm/amdkfd: Fix memory leakage
	drm/i915/bios: fix a memory leak in generate_lfp_data_ptrs
	ASoC: pcm512x: Fix PM disable depth imbalance in pcm512x_probe
	clk: visconti: Fix memory leak in visconti_register_pll()
	netfilter: conntrack: set icmpv6 redirects as RELATED
	Input: wistron_btns - disable on UML
	bpf, sockmap: Fix repeated calls to sock_put() when msg has more_data
	bpf, sockmap: Fix missing BPF_F_INGRESS flag when using apply_bytes
	bpf, sockmap: Fix data loss caused by using apply_bytes on ingress redirect
	bonding: uninitialized variable in bond_miimon_inspect()
	spi: spidev: mask SPI_CS_HIGH in SPI_IOC_RD_MODE
	wifi: nl80211: Add checks for nla_nest_start() in nl80211_send_iface()
	wifi: mac80211: fix memory leak in ieee80211_if_add()
	wifi: mac80211: fix maybe-unused warning
	wifi: cfg80211: Fix not unregister reg_pdev when load_builtin_regdb_keys() fails
	wifi: mt76: mt7921: fix antenna signal are way off in monitor mode
	wifi: mt76: mt7915: fix mt7915_mac_set_timing()
	wifi: mt76: mt7915: fix reporting of TX AGGR histogram
	wifi: mt76: mt7921: fix reporting of TX AGGR histogram
	wifi: mt76: mt7915: rework eeprom tx paths and streams init
	wifi: mt76: mt7915: Fix chainmask calculation on mt7915 DBDC
	wifi: mt76: mt7921: fix wrong power after multiple SAR set
	wifi: mt76: fix coverity overrun-call in mt76_get_txpower()
	wifi: mt76: mt7921: Add missing __packed annotation of struct mt7921_clc
	wifi: mt76: do not send firmware FW_FEATURE_NON_DL region
	mt76: mt7915: Fix PCI device refcount leak in mt7915_pci_init_hif2()
	regulator: core: fix module refcount leak in set_supply()
	clk: qcom: lpass-sc7280: Fix pm_runtime usage
	clk: qcom: lpass-sc7180: Fix pm_runtime usage
	clk: qcom: clk-krait: fix wrong div2 functions
	Revert "net: hsr: use hlist_head instead of list_head for mac addresses"
	hsr: Add a rcu-read lock to hsr_forward_skb().
	hsr: Avoid double remove of a node.
	hsr: Disable netpoll.
	hsr: Synchronize sending frames to have always incremented outgoing seq nr.
	hsr: Synchronize sequence number updates.
	configfs: fix possible memory leak in configfs_create_dir()
	regulator: core: fix resource leak in regulator_register()
	hwmon: (jc42) Convert register access and caching to regmap/regcache
	hwmon: (jc42) Restore the min/max/critical temperatures on resume
	bpf: Add dummy type reference to nf_conn___init to fix type deduplication
	bpf, sockmap: fix race in sock_map_free()
	ALSA: pcm: Set missing stop_operating flag at undoing trigger start
	media: saa7164: fix missing pci_disable_device()
	media: ov5640: set correct default link frequency
	ALSA: mts64: fix possible null-ptr-defer in snd_mts64_interrupt
	pinctrl: thunderbay: fix possible memory leak in thunderbay_build_functions()
	xprtrdma: Fix regbuf data not freed in rpcrdma_req_create()
	SUNRPC: Fix missing release socket in rpc_sockname()
	NFSv4.2: Set the correct size scratch buffer for decoding READ_PLUS
	NFS: Allow very small rsize & wsize again
	NFSv4.x: Fail client initialisation if state manager thread can't run
	riscv, bpf: Emit fixed-length instructions for BPF_PSEUDO_FUNC
	bpftool: Fix memory leak in do_build_table_cb
	hwmon: (emc2305) fix unable to probe emc2301/2/3
	hwmon: (emc2305) fix pwm never being able to set lower
	mmc: alcor: fix return value check of mmc_add_host()
	mmc: moxart: fix return value check of mmc_add_host()
	mmc: mxcmmc: fix return value check of mmc_add_host()
	mmc: pxamci: fix return value check of mmc_add_host()
	mmc: rtsx_pci: fix return value check of mmc_add_host()
	mmc: rtsx_usb_sdmmc: fix return value check of mmc_add_host()
	mmc: toshsd: fix return value check of mmc_add_host()
	mmc: vub300: fix return value check of mmc_add_host()
	mmc: wmt-sdmmc: fix return value check of mmc_add_host()
	mmc: litex_mmc: ensure `host->irq == 0` if polling
	mmc: atmel-mci: fix return value check of mmc_add_host()
	mmc: omap_hsmmc: fix return value check of mmc_add_host()
	mmc: meson-gx: fix return value check of mmc_add_host()
	mmc: via-sdmmc: fix return value check of mmc_add_host()
	mmc: wbsd: fix return value check of mmc_add_host()
	mmc: mmci: fix return value check of mmc_add_host()
	mmc: renesas_sdhi: alway populate SCC pointer
	memstick/ms_block: Add check for alloc_ordered_workqueue
	mmc: core: Normalize the error handling branch in sd_read_ext_regs()
	nvme: pass nr_maps explicitly to nvme_alloc_io_tag_set
	regulator: qcom-labibb: Fix missing of_node_put() in qcom_labibb_regulator_probe()
	media: c8sectpfe: Add of_node_put() when breaking out of loop
	media: coda: Add check for dcoda_iram_alloc
	media: coda: Add check for kmalloc
	media: staging: stkwebcam: Restore MEDIA_{USB,CAMERA}_SUPPORT dependencies
	clk: samsung: Fix memory leak in _samsung_clk_register_pll()
	spi: spi-gpio: Don't set MOSI as an input if not 3WIRE mode
	wifi: rtl8xxxu: Add __packed to struct rtl8723bu_c2h
	wifi: rtl8xxxu: Fix the channel width reporting
	wifi: brcmfmac: Fix error return code in brcmf_sdio_download_firmware()
	blktrace: Fix output non-blktrace event when blk_classic option enabled
	bpf: Do not zero-extend kfunc return values
	clk: socfpga: Fix memory leak in socfpga_gate_init()
	net: vmw_vsock: vmci: Check memcpy_from_msg()
	net: defxx: Fix missing err handling in dfx_init()
	net: stmmac: selftests: fix potential memleak in stmmac_test_arpoffload()
	net: stmmac: fix possible memory leak in stmmac_dvr_probe()
	drivers: net: qlcnic: Fix potential memory leak in qlcnic_sriov_init()
	ipvs: use u64_stats_t for the per-cpu counters
	of: overlay: fix null pointer dereferencing in find_dup_cset_node_entry() and find_dup_cset_prop()
	ethernet: s2io: don't call dev_kfree_skb() under spin_lock_irqsave()
	net: farsync: Fix kmemleak when rmmods farsync
	net/tunnel: wait until all sk_user_data reader finish before releasing the sock
	net: apple: mace: don't call dev_kfree_skb() under spin_lock_irqsave()
	net: apple: bmac: don't call dev_kfree_skb() under spin_lock_irqsave()
	net: emaclite: don't call dev_kfree_skb() under spin_lock_irqsave()
	net: ethernet: dnet: don't call dev_kfree_skb() under spin_lock_irqsave()
	hamradio: don't call dev_kfree_skb() under spin_lock_irqsave()
	net: amd: lance: don't call dev_kfree_skb() under spin_lock_irqsave()
	net: setsockopt: fix IPV6_UNICAST_IF option for connected sockets
	af_unix: call proto_unregister() in the error path in af_unix_init()
	net: amd-xgbe: Fix logic around active and passive cables
	net: amd-xgbe: Check only the minimum speed for active/passive cables
	can: tcan4x5x: Remove invalid write in clear_interrupts
	can: m_can: Call the RAM init directly from m_can_chip_config
	can: tcan4x5x: Fix use of register error status mask
	net: ethernet: ti: am65-cpsw: Fix PM runtime leakage in am65_cpsw_nuss_ndo_slave_open()
	net: lan9303: Fix read error execution path
	ntb_netdev: Use dev_kfree_skb_any() in interrupt context
	sctp: sysctl: make extra pointers netns aware
	Bluetooth: hci_core: fix error handling in hci_register_dev()
	Bluetooth: MGMT: Fix error report for ADD_EXT_ADV_PARAMS
	Bluetooth: Fix EALREADY and ELOOP cases in bt_status()
	Bluetooth: hci_conn: Fix crash on hci_create_cis_sync
	Bluetooth: btintel: Fix missing free skb in btintel_setup_combined()
	Bluetooth: btusb: don't call kfree_skb() under spin_lock_irqsave()
	Bluetooth: hci_qca: don't call kfree_skb() under spin_lock_irqsave()
	Bluetooth: hci_ll: don't call kfree_skb() under spin_lock_irqsave()
	Bluetooth: hci_h5: don't call kfree_skb() under spin_lock_irqsave()
	Bluetooth: hci_bcsp: don't call kfree_skb() under spin_lock_irqsave()
	Bluetooth: hci_core: don't call kfree_skb() under spin_lock_irqsave()
	Bluetooth: RFCOMM: don't call kfree_skb() under spin_lock_irqsave()
	octeontx2-af: cn10k: mcs: Fix a resource leak in the probe and remove functions
	stmmac: fix potential division by 0
	i40e: Fix the inability to attach XDP program on downed interface
	net: dsa: tag_8021q: avoid leaking ctx on dsa_tag_8021q_register() error path
	apparmor: fix a memleak in multi_transaction_new()
	apparmor: fix lockdep warning when removing a namespace
	apparmor: Fix abi check to include v8 abi
	apparmor: Fix regression in stacking due to label flags
	crypto: hisilicon/qm - fix incorrect parameters usage
	crypto: hisilicon/qm - re-enable communicate interrupt before notifying PF
	crypto: sun8i-ss - use dma_addr instead u32
	crypto: nitrox - avoid double free on error path in nitrox_sriov_init()
	crypto: tcrypt - fix return value for multiple subtests
	scsi: core: Fix a race between scsi_done() and scsi_timeout()
	apparmor: Use pointer to struct aa_label for lbs_cred
	PCI: dwc: Fix n_fts[] array overrun
	RDMA/core: Fix order of nldev_exit call
	PCI: pci-epf-test: Register notifier if only core_init_notifier is enabled
	f2fs: Fix the race condition of resize flag between resizefs
	crypto: rockchip - do not do custom power management
	crypto: rockchip - do not store mode globally
	crypto: rockchip - add fallback for cipher
	crypto: rockchip - add fallback for ahash
	crypto: rockchip - better handle cipher key
	crypto: rockchip - remove non-aligned handling
	crypto: rockchip - rework by using crypto_engine
	apparmor: Fix memleak in alloc_ns()
	fortify: Do not cast to "unsigned char"
	f2fs: fix to invalidate dcc->f2fs_issue_discard in error path
	f2fs: fix gc mode when gc_urgent_high_remaining is 1
	f2fs: fix normal discard process
	f2fs: allow to set compression for inlined file
	f2fs: fix the assign logic of iocb
	f2fs: fix to destroy sbi->post_read_wq in error path of f2fs_fill_super()
	RDMA/irdma: Report the correct link speed
	scsi: qla2xxx: Fix set-but-not-used variable warnings
	RDMA/siw: Fix immediate work request flush to completion queue
	IB/mad: Don't call to function that might sleep while in atomic context
	PCI: vmd: Disable MSI remapping after suspend
	PCI: imx6: Initialize PHY before deasserting core reset
	f2fs: fix to avoid accessing uninitialized spinlock
	RDMA/restrack: Release MR restrack when delete
	RDMA/core: Make sure "ib_port" is valid when access sysfs node
	RDMA/nldev: Return "-EAGAIN" if the cm_id isn't from expected port
	RDMA/siw: Set defined status for work completion with undefined status
	RDMA/irdma: Fix inline for multiple SGE's
	RDMA/irdma: Fix RQ completion opcode
	RDMA/irdma: Do not request 2-level PBLEs for CQ alloc
	scsi: scsi_debug: Fix a warning in resp_write_scat()
	crypto: ccree - Remove debugfs when platform_driver_register failed
	crypto: cryptd - Use request context instead of stack for sub-request
	crypto: hisilicon/qm - add missing pci_dev_put() in q_num_set()
	RDMA/rxe: Fix mr->map double free
	RDMA/hns: Fix ext_sge num error when post send
	RDMA/hns: Fix incorrect sge nums calculation
	PCI: Check for alloc failure in pci_request_irq()
	RDMA/hfi: Decrease PCI device reference count in error path
	crypto: ccree - Make cc_debugfs_global_fini() available for module init function
	RDMA/irdma: Initialize net_type before checking it
	RDMA/hns: fix memory leak in hns_roce_alloc_mr()
	RDMA/rxe: Fix NULL-ptr-deref in rxe_qp_do_cleanup() when socket create failed
	dt-bindings: imx6q-pcie: Fix clock names for imx6sx and imx8mq
	dt-bindings: visconti-pcie: Fix interrupts array max constraints
	PCI: endpoint: pci-epf-vntb: Fix call pci_epc_mem_free_addr() in error path
	scsi: hpsa: Fix possible memory leak in hpsa_init_one()
	crypto: tcrypt - Fix multibuffer skcipher speed test mem leak
	padata: Always leave BHs disabled when running ->parallel()
	padata: Fix list iterator in padata_do_serial()
	crypto: x86/aegis128 - fix possible crash with CFI enabled
	crypto: x86/aria - fix crash with CFI enabled
	crypto: x86/sha1 - fix possible crash with CFI enabled
	crypto: x86/sha256 - fix possible crash with CFI enabled
	crypto: x86/sha512 - fix possible crash with CFI enabled
	crypto: x86/sm3 - fix possible crash with CFI enabled
	crypto: x86/sm4 - fix crash with CFI enabled
	crypto: arm64/sm3 - add NEON assembly implementation
	crypto: arm64/sm3 - fix possible crash with CFI enabled
	crypto: hisilicon/qm - fix 'QM_XEQ_DEPTH_CAP' mask value
	scsi: mpt3sas: Fix possible resource leaks in mpt3sas_transport_port_add()
	scsi: hpsa: Fix error handling in hpsa_add_sas_host()
	scsi: hpsa: Fix possible memory leak in hpsa_add_sas_device()
	scsi: efct: Fix possible memleak in efct_device_init()
	scsi: scsi_debug: Fix a warning in resp_verify()
	scsi: scsi_debug: Fix a warning in resp_report_zones()
	scsi: fcoe: Fix possible name leak when device_register() fails
	scsi: scsi_debug: Fix possible name leak in sdebug_add_host_helper()
	scsi: ipr: Fix WARNING in ipr_init()
	scsi: fcoe: Fix transport not deattached when fcoe_if_init() fails
	scsi: snic: Fix possible UAF in snic_tgt_create()
	scsi: ufs: core: Fix the polling implementation
	RDMA/nldev: Add checks for nla_nest_start() in fill_stat_counter_qps()
	f2fs: set zstd compress level correctly
	f2fs: fix to enable compress for newly created file if extension matches
	f2fs: avoid victim selection from previous victim section
	RDMA/nldev: Fix failure to send large messages
	crypto: qat - fix error return code in adf_probe
	crypto: amlogic - Remove kcalloc without check
	crypto: omap-sham - Use pm_runtime_resume_and_get() in omap_sham_probe()
	riscv/mm: add arch hook arch_clear_hugepage_flags
	RDMA: Disable IB HW for UML
	RDMA/hfi1: Fix error return code in parse_platform_config()
	RDMA/srp: Fix error return code in srp_parse_options()
	PCI: vmd: Fix secondary bus reset for Intel bridges
	orangefs: Fix sysfs not cleanup when dev init failed
	RDMA/hns: Fix the gid problem caused by free mr
	RDMA/hns: Fix AH attr queried by query_qp
	RDMA/hns: Fix PBL page MTR find
	RDMA/hns: Fix page size cap from firmware
	RDMA/hns: Fix error code of CMD
	RDMA/hns: Fix XRC caps on HIP08
	RISC-V: Fix unannoted hardirqs-on in return to userspace slow-path
	RISC-V: Fix MEMREMAP_WB for systems with Svpbmt
	riscv: Fix crash during early errata patching
	crypto: img-hash - Fix variable dereferenced before check 'hdev->req'
	hwrng: amd - Fix PCI device refcount leak
	hwrng: geode - Fix PCI device refcount leak
	IB/IPoIB: Fix queue count inconsistency for PKEY child interfaces
	RISC-V: Align the shadow stack
	f2fs: fix iostat parameter for discard
	riscv: Fix P4D_SHIFT definition for 3-level page table mode
	drivers: dio: fix possible memory leak in dio_init()
	serial: tegra: Read DMA status before terminating
	serial: 8250_bcm7271: Fix error handling in brcmuart_init()
	drivers: staging: r8188eu: Fix sleep-in-atomic-context bug in rtw_join_timeout_handler
	class: fix possible memory leak in __class_register()
	vfio: platform: Do not pass return buffer to ACPI _RST method
	vfio/iova_bitmap: Fix PAGE_SIZE unaligned bitmaps
	uio: uio_dmem_genirq: Fix missing unlock in irq configuration
	uio: uio_dmem_genirq: Fix deadlock between irq config and handling
	usb: fotg210-udc: Fix ages old endianness issues
	interconnect: qcom: sc7180: fix dropped const of qcom_icc_bcm
	staging: vme_user: Fix possible UAF in tsi148_dma_list_add
	usb: typec: Check for ops->exit instead of ops->enter in altmode_exit
	usb: typec: tcpci: fix of node refcount leak in tcpci_register_port()
	usb: typec: tipd: Cleanup resources if devm_tps6598_psy_register fails
	usb: typec: tipd: Fix spurious fwnode_handle_put in error path
	usb: typec: tipd: Fix typec_unregister_port error paths
	usb: musb: omap2430: Fix probe regression for missing resources
	extcon: usbc-tusb320: Update state on probe even if no IRQ pending
	USB: gadget: Fix use-after-free during usb config switch
	serial: amba-pl011: avoid SBSA UART accessing DMACR register
	serial: pl011: Do not clear RX FIFO & RX interrupt in unthrottle.
	serial: stm32: move dma_request_chan() before clk_prepare_enable()
	serial: pch: Fix PCI device refcount leak in pch_request_dma()
	serial: altera_uart: fix locking in polling mode
	serial: sunsab: Fix error handling in sunsab_init()
	habanalabs: fix return value check in hl_fw_get_sec_attest_data()
	test_firmware: fix memory leak in test_firmware_init()
	misc: ocxl: fix possible name leak in ocxl_file_register_afu()
	ocxl: fix pci device refcount leak when calling get_function_0()
	misc: tifm: fix possible memory leak in tifm_7xx1_switch_media()
	misc: sgi-gru: fix use-after-free error in gru_set_context_option, gru_fault and gru_handle_user_call_os
	firmware: raspberrypi: fix possible memory leak in rpi_firmware_probe()
	cxl: fix possible null-ptr-deref in cxl_guest_init_afu|adapter()
	cxl: fix possible null-ptr-deref in cxl_pci_init_afu|adapter()
	iio: temperature: ltc2983: make bulk write buffer DMA-safe
	iio: adis: add '__adis_enable_irq()' implementation
	counter: stm32-lptimer-cnt: fix the check on arr and cmp registers update
	coresight: trbe: remove cpuhp instance node before remove cpuhp state
	coresight: cti: Fix null pointer error on CTI init before ETM
	tracing/user_events: Fix call print_fmt leak
	usb: roles: fix of node refcount leak in usb_role_switch_is_parent()
	usb: core: hcd: Fix return value check in usb_hcd_setup_local_mem()
	usb: gadget: f_hid: fix f_hidg lifetime vs cdev
	usb: gadget: f_hid: fix refcount leak on error path
	drivers: mcb: fix resource leak in mcb_probe()
	mcb: mcb-parse: fix error handing in chameleon_parse_gdd()
	chardev: fix error handling in cdev_device_add()
	vfio/iova_bitmap: refactor iova_bitmap_set() to better handle page boundaries
	i2c: pxa-pci: fix missing pci_disable_device() on error in ce4100_i2c_probe
	staging: rtl8192u: Fix use after free in ieee80211_rx()
	staging: rtl8192e: Fix potential use-after-free in rtllib_rx_Monitor()
	vme: Fix error not catched in fake_init()
	gpiolib: cdev: fix NULL-pointer dereferences
	gpiolib: protect the GPIO device against being dropped while in use by user-space
	i2c: mux: reg: check return value after calling platform_get_resource()
	i2c: ismt: Fix an out-of-bounds bug in ismt_access()
	usb: storage: Add check for kcalloc
	usb: typec: wusb3801: fix fwnode refcount leak in wusb3801_probe()
	tracing/hist: Fix issue of losting command info in error_log
	ksmbd: Fix resource leak in ksmbd_session_rpc_open()
	samples: vfio-mdev: Fix missing pci_disable_device() in mdpy_fb_probe()
	thermal/drivers/imx8mm_thermal: Validate temperature range
	thermal/drivers/k3_j72xx_bandgap: Fix the debug print message
	thermal/of: Fix memory leak on thermal_of_zone_register() failure
	thermal/drivers/qcom/temp-alarm: Fix inaccurate warning for gen2
	thermal/drivers/qcom/lmh: Fix irq handler return value
	fbdev: ssd1307fb: Drop optional dependency
	fbdev: pm2fb: fix missing pci_disable_device()
	fbdev: via: Fix error in via_core_init()
	fbdev: vermilion: decrease reference count in error path
	fbdev: ep93xx-fb: Add missing clk_disable_unprepare in ep93xxfb_probe()
	fbdev: geode: don't build on UML
	fbdev: uvesafb: don't build on UML
	fbdev: uvesafb: Fixes an error handling path in uvesafb_probe()
	led: qcom-lpg: Fix sleeping in atomic
	perf tools: Fix "kernel lock contention analysis" test by not printing warnings in quiet mode
	perf stat: Use evsel__is_hybrid() more
	perf stat: Move common code in print_metric_headers()
	HSI: omap_ssi_core: fix unbalanced pm_runtime_disable()
	HSI: omap_ssi_core: fix possible memory leak in ssi_probe()
	power: supply: fix residue sysfs file in error handle route of __power_supply_register()
	watchdog: iTCO_wdt: Set NO_REBOOT if the watchdog is not already running
	perf trace: Return error if a system call doesn't exist
	perf trace: Use macro RAW_SYSCALL_ARGS_NUM to replace number
	perf trace: Handle failure when trace point folder is missed
	perf symbol: correction while adjusting symbol
	power: supply: z2_battery: Fix possible memleak in z2_batt_probe()
	power: supply: cw2015: Fix potential null-ptr-deref in cw_bat_probe()
	HSI: omap_ssi_core: Fix error handling in ssi_init()
	power: supply: ab8500: Fix error handling in ab8500_charger_init()
	power: supply: Fix refcount leak in rk817_charger_probe
	power: supply: bq25890: Factor out regulator registration code
	power: supply: bq25890: Convert to i2c's .probe_new()
	power: supply: bq25890: Ensure pump_express_work is cancelled on remove
	perf branch: Fix interpretation of branch records
	power: supply: fix null pointer dereferencing in power_supply_get_battery_info
	gfs2: Partially revert gfs2_inode_lookup change
	leds: is31fl319x: Fix setting current limit for is31fl319{0,1,3}
	perf off_cpu: Fix a typo in BTF tracepoint name, it should be 'btf_trace_sched_switch'
	ftrace: Allow WITH_ARGS flavour of graph tracer with shadow call stack
	perf stat: Do not delay the workload with --delay
	RDMA/siw: Fix pointer cast warning
	fs/ntfs3: Avoid UBSAN error on true_sectors_per_clst()
	fs/ntfs3: Harden against integer overflows
	phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on
	phy: qcom-qmp-pcie: drop bogus register update
	dmaengine: idxd: Make max batch size attributes in sysfs invisible for Intel IAA
	dmaengine: apple-admac: Allocate cache SRAM to channels
	remoteproc: core: Auto select rproc-virtio device id
	phy: qcom-qmp-pcie: drop power-down delay config
	phy: qcom-qmp-pcie: replace power-down delay
	phy: qcom-qmp-pcie: fix sc8180x initialisation
	phy: qcom-qmp-pcie: fix ipq8074-gen3 initialisation
	phy: qcom-qmp-pcie: fix ipq6018 initialisation
	phy: qcom-qmp-usb: clean up power-down handling
	phy: qcom-qmp-usb: drop sc8280xp power-down delay
	phy: qcom-qmp-usb: drop power-down delay config
	phy: qcom-qmp-usb: clean up status polling
	phy: qcom-qmp-usb: drop start and pwrdn-ctrl abstraction
	phy: qcom-qmp-usb: correct registers layout for IPQ8074 USB3 PHY
	iommu/s390: Fix duplicate domain attachments
	iommu/sun50i: Fix reset release
	iommu/sun50i: Consider all fault sources for reset
	iommu/sun50i: Fix R/W permission check
	iommu/sun50i: Fix flush size
	iommu/sun50i: Implement .iotlb_sync_map
	iommu/rockchip: fix permission bits in page table entries v2
	dmaengine: idxd: Make read buffer sysfs attributes invisible for Intel IAA
	phy: qcom-qmp-usb: fix sc8280xp PCS_USB offset
	phy: usb: s2 WoL wakeup_count not incremented for USB->Eth devices
	phy: usb: Use slow clock for wake enabled suspend
	phy: usb: Fix clock imbalance for suspend/resume
	include/uapi/linux/swab: Fix potentially missing __always_inline
	pwm: tegra: Improve required rate calculation
	pwm: tegra: Ensure the clock rate is not less than needed
	phy: qcom-qmp-pcie: split register tables into common and extra parts
	phy: qcom-qmp-pcie: split pcs_misc init cfg for ipq8074 pcs table
	phy: qcom-qmp-pcie: support separate tables for EP mode
	phy: qcom-qmp-pcie: Support SM8450 PCIe1 PHY in EP mode
	phy: qcom-qmp-pcie: Fix high latency with 4x2 PHY when ASPM is enabled
	phy: qcom-qmp-pcie: Fix sm8450_qmp_gen4x2_pcie_pcs_tbl[] register names
	fs/ntfs3: Fix slab-out-of-bounds read in ntfs_trim_fs
	dmaengine: idxd: Fix crc_val field for completion record
	rtc: rzn1: Check return value in rzn1_rtc_probe
	rtc: class: Fix potential memleak in devm_rtc_allocate_device()
	rtc: pcf2127: Convert to .probe_new()
	rtc: cmos: Call cmos_wake_setup() from cmos_do_probe()
	rtc: cmos: Call rtc_wake_setup() from cmos_do_probe()
	rtc: cmos: Eliminate forward declarations of some functions
	rtc: cmos: Rename ACPI-related functions
	rtc: cmos: Disable ACPI RTC event on removal
	rtc: snvs: Allow a time difference on clock register read
	rtc: pcf85063: Fix reading alarm
	iommu/mediatek: Check return value after calling platform_get_resource()
	iommu: Avoid races around device probe
	iommu/amd: Fix pci device refcount leak in ppr_notifier()
	iommu/fsl_pamu: Fix resource leak in fsl_pamu_probe()
	macintosh: fix possible memory leak in macio_add_one_device()
	macintosh/macio-adb: check the return value of ioremap()
	powerpc/52xx: Fix a resource leak in an error handling path
	cxl: Fix refcount leak in cxl_calc_capp_routing
	powerpc/xmon: Fix -Wswitch-unreachable warning in bpt_cmds
	powerpc/xive: add missing iounmap() in error path in xive_spapr_populate_irq_data()
	powerpc/pseries: fix the object owners enum value in plpks driver
	powerpc/pseries: Fix the H_CALL error code in PLPKS driver
	powerpc/pseries: Return -EIO instead of -EINTR for H_ABORTED error
	powerpc/pseries: fix plpks_read_var() code for different consumers
	kprobes: Fix check for probe enabled in kill_kprobe()
	powerpc: dts: turris1x.dts: Add channel labels for temperature sensor
	powerpc/perf: callchain validate kernel stack pointer bounds
	powerpc/83xx/mpc832x_rdb: call platform_device_put() in error case in of_fsl_spi_probe()
	powerpc/hv-gpci: Fix hv_gpci event list
	selftests/powerpc: Fix resource leaks
	iommu/mediatek: Add platform_device_put for recovering the device refcnt
	iommu/mediatek: Use component_match_add
	iommu/mediatek: Add error path for loop of mm_dts_parse
	iommu/mediatek: Validate number of phandles associated with "mediatek,larbs"
	iommu/sun50i: Remove IOMMU_DOMAIN_IDENTITY
	pwm: sifive: Call pwm_sifive_update_clock() while mutex is held
	pwm: mtk-disp: Fix the parameters calculated by the enabled flag of disp_pwm
	pwm: mediatek: always use bus clock for PWM on MT7622
	RISC-V: KVM: Fix reg_val check in kvm_riscv_vcpu_set_reg_config()
	remoteproc: sysmon: fix memory leak in qcom_add_sysmon_subdev()
	remoteproc: qcom: q6v5: Fix potential null-ptr-deref in q6v5_wcss_init_mmio()
	remoteproc: qcom_q6v5_pas: disable wakeup on probe fail or remove
	remoteproc: qcom_q6v5_pas: detach power domains on remove
	remoteproc: qcom_q6v5_pas: Fix missing of_node_put() in adsp_alloc_memory_region()
	remoteproc: qcom: q6v5: Fix missing clk_disable_unprepare() in q6v5_wcss_qcs404_power_on()
	powerpc/pseries/eeh: use correct API for error log size
	dt-bindings: mfd: qcom,spmi-pmic: Drop PWM reg dependency
	mfd: axp20x: Do not sleep in the power off handler
	mfd: bd957x: Fix Kconfig dependency on REGMAP_IRQ
	mfd: qcom_rpm: Fix an error handling path in qcom_rpm_probe()
	mfd: pm8008: Fix return value check in pm8008_probe()
	netfilter: flowtable: really fix NAT IPv6 offload
	rtc: st-lpc: Add missing clk_disable_unprepare in st_rtc_probe()
	rtc: pic32: Move devm_rtc_allocate_device earlier in pic32_rtc_probe()
	rtc: pcf85063: fix pcf85063_clkout_control
	iommu/mediatek: Fix forever loop in error handling
	nfsd: under NFSv4.1, fix double svc_xprt_put on rpc_create failure
	net: macsec: fix net device access prior to holding a lock
	bonding: add missed __rcu annotation for curr_active_slave
	bonding: do failover when high prio link up
	mISDN: hfcsusb: don't call dev_kfree_skb/kfree_skb() under spin_lock_irqsave()
	mISDN: hfcpci: don't call dev_kfree_skb/kfree_skb() under spin_lock_irqsave()
	mISDN: hfcmulti: don't call dev_kfree_skb/kfree_skb() under spin_lock_irqsave()
	block, bfq: fix possible uaf for 'bfqq->bic'
	selftests/bpf: Select CONFIG_FUNCTION_ERROR_INJECTION
	bpf: prevent leak of lsm program after failed attach
	media: v4l2-ctrls-api.c: add back dropped ctrl->is_new = 1
	net: enetc: avoid buffer leaks on xdp_do_redirect() failure
	nfc: pn533: Clear nfc_target before being used
	unix: Fix race in SOCK_SEQPACKET's unix_dgram_sendmsg()
	r6040: Fix kmemleak in probe and remove
	net: dsa: mv88e6xxx: avoid reg_lock deadlock in mv88e6xxx_setup_port()
	igc: Enhance Qbv scheduling by using first flag bit
	igc: Use strict cycles for Qbv scheduling
	igc: Add checking for basetime less than zero
	igc: allow BaseTime 0 enrollment for Qbv
	igc: recalculate Qbv end_time by considering cycle time
	igc: Set Qbv start_time and end_time to end_time if not being configured in GCL
	rtc: mxc_v2: Add missing clk_disable_unprepare()
	devlink: hold region lock when flushing snapshots
	selftests: devlink: fix the fd redirect in dummy_reporter_test
	openvswitch: Fix flow lookup to use unmasked key
	soc: mediatek: pm-domains: Fix the power glitch issue
	arm64: dts: mt8183: Fix Mali GPU clock
	devlink: protect devlink dump by the instance lock
	skbuff: Account for tail adjustment during pull operations
	mailbox: mpfs: read the system controller's status
	mailbox: arm_mhuv2: Fix return value check in mhuv2_probe()
	mailbox: zynq-ipi: fix error handling while device_register() fails
	net_sched: reject TCF_EM_SIMPLE case for complex ematch module
	rxrpc: Fix missing unlock in rxrpc_do_sendmsg()
	myri10ge: Fix an error handling path in myri10ge_probe()
	net: stream: purge sk_error_queue in sk_stream_kill_queues()
	mctp: serial: Fix starting value for frame check sequence
	cifs: don't leak -ENOMEM in smb2_open_file()
	net: dsa: microchip: remove IRQF_TRIGGER_FALLING in request_threaded_irq
	mctp: Remove device type check at unregister
	HID: amd_sfh: Add missing check for dma_alloc_coherent
	net: fec: check the return value of build_skb()
	rcu: Fix __this_cpu_read() lockdep warning in rcu_force_quiescent_state()
	arm64: make is_ttbrX_addr() noinstr-safe
	ARM: dts: aspeed: rainier,everest: Move reserved memory regions
	video: hyperv_fb: Avoid taking busy spinlock on panic path
	x86/hyperv: Remove unregister syscore call from Hyper-V cleanup
	binfmt_misc: fix shift-out-of-bounds in check_special_flags
	arm64: dts: qcom: sm8450: disable SDHCI SDR104/SDR50 on all boards
	arm64: dts: qcom: sm6350: Add apps_smmu with streamID to SDHCI 1/2 nodes
	fs: jfs: fix shift-out-of-bounds in dbAllocAG
	udf: Avoid double brelse() in udf_rename()
	jfs: Fix fortify moan in symlink
	fs: jfs: fix shift-out-of-bounds in dbDiscardAG
	ACPI: processor: idle: Check acpi_fetch_acpi_dev() return value
	ACPI: EC: Add quirk for the HP Pavilion Gaming 15-cx0041ur
	ACPICA: Fix error code path in acpi_ds_call_control_method()
	thermal/core: Ensure that thermal device is registered in thermal_zone_get_temp
	ACPI: video: Change GIGABYTE GB-BXBT-2807 quirk to force_none
	ACPI: video: Change Sony Vaio VPCEH3U1E quirk to force_native
	ACPI: video: Add force_vendor quirk for Sony Vaio PCG-FRV35
	ACPI: video: Add force_native quirk for Sony Vaio VPCY11S1E
	nilfs2: fix shift-out-of-bounds/overflow in nilfs_sb2_bad_offset()
	nilfs2: fix shift-out-of-bounds due to too large exponent of block size
	acct: fix potential integer overflow in encode_comp_t()
	x86/apic: Handle no CONFIG_X86_X2APIC on systems with x2APIC enabled by BIOS
	ACPI: x86: Add skip i2c clients quirk for Lenovo Yoga Tab 3 Pro (YT3-X90F)
	btrfs: do not panic if we can't allocate a prealloc extent state
	ACPI: x86: Add skip i2c clients quirk for Medion Lifetab S10346
	hfs: fix OOB Read in __hfs_brec_find
	drm/etnaviv: add missing quirks for GC300
	media: imx-jpeg: Disable useless interrupt to avoid kernel panic
	brcmfmac: return error when getting invalid max_flowrings from dongle
	wifi: ath9k: verify the expected usb_endpoints are present
	wifi: ar5523: Fix use-after-free on ar5523_cmd() timed out
	ASoC: codecs: rt298: Add quirk for KBL-R RVP platform
	ASoC: Intel: avs: Add quirk for KBL-R RVP platform
	ipmi: fix memleak when unload ipmi driver
	wifi: ath10k: Delay the unmapping of the buffer
	openvswitch: Use kmalloc_size_roundup() to match ksize() usage
	bnx2: Use kmalloc_size_roundup() to match ksize() usage
	drm/amd/display: skip commit minimal transition state
	drm/amd/display: prevent memory leak
	drm/edid: add a quirk for two LG monitors to get them to work on 10bpc
	Revert "drm/amd/display: Limit max DSC target bpp for specific monitors"
	drm/rockchip: use pm_runtime_resume_and_get() instead of pm_runtime_get_sync()
	blk-mq: avoid double ->queue_rq() because of early timeout
	HID: apple: fix key translations where multiple quirks attempt to translate the same key
	HID: apple: enable APPLE_ISO_TILDE_QUIRK for the keyboards of Macs with the T2 chip
	wifi: ath11k: Fix qmi_msg_handler data structure initialization
	qed (gcc13): use u16 for fid to be big enough
	drm/meson: Fix return type of meson_encoder_cvbs_mode_valid()
	bpf: make sure skb->len != 0 when redirecting to a tunneling device
	net: ethernet: ti: Fix return type of netcp_ndo_start_xmit()
	hamradio: baycom_epp: Fix return type of baycom_send_packet()
	wifi: brcmfmac: Fix potential shift-out-of-bounds in brcmf_fw_alloc_request()
	wifi: brcmfmac: Fix potential NULL pointer dereference in 'brcmf_c_preinit_dcmds()'
	HID: input: do not query XP-PEN Deco LW battery
	HID: uclogic: Add support for XP-PEN Deco LW
	igb: Do not free q_vector unless new one was allocated
	drm/amdgpu: Fix type of second parameter in trans_msg() callback
	drm/amdgpu: Fix type of second parameter in odn_edit_dpm_table() callback
	s390/ctcm: Fix return type of ctc{mp,}m_tx()
	s390/netiucv: Fix return type of netiucv_tx()
	s390/lcs: Fix return type of lcs_start_xmit()
	drm/amd/display: Use min transition for SubVP into MPO
	drm/amd/display: Disable DRR actions during state commit
	drm/msm: Use drm_mode_copy()
	drm/rockchip: Use drm_mode_copy()
	drm/sti: Use drm_mode_copy()
	drm/mediatek: Fix return type of mtk_hdmi_bridge_mode_valid()
	drivers/md/md-bitmap: check the return value of md_bitmap_get_counter()
	md/raid0, raid10: Don't set discard sectors for request queue
	md/raid1: stop mdx_raid1 thread when raid1 array run failed
	drm/amd/display: Workaround to increase phantom pipe vactive in pipesplit
	drm/amd/display: fix array index out of bound error in bios parser
	nvme-auth: don't override ctrl keys before validation
	net: add atomic_long_t to net_device_stats fields
	ipv6/sit: use DEV_STATS_INC() to avoid data-races
	mrp: introduce active flags to prevent UAF when applicant uninit
	net: ethernet: mtk_eth_soc: drop packets to WDMA if the ring is full
	bpf/verifier: Use kmalloc_size_roundup() to match ksize() usage
	ppp: associate skb with a device at tx
	drm/amd/display: Fix display corruption w/ VSR enable
	bpf: Fix a BTF_ID_LIST bug with CONFIG_DEBUG_INFO_BTF not set
	bpf: Prevent decl_tag from being referenced in func_proto arg
	ethtool: avoiding integer overflow in ethtool_phys_id()
	media: dvb-frontends: fix leak of memory fw
	media: dvbdev: adopts refcnt to avoid UAF
	media: dvb-usb: fix memory leak in dvb_usb_adapter_init()
	media: mediatek: vcodec: Can't set dst buffer to done when lat decode error
	blk-mq: fix possible memleak when register 'hctx' failed
	ALSA: usb-audio: Add quirk for Tascam Model 12
	drm/amdgpu: Fix potential double free and null pointer dereference
	drm/amd/display: Use the largest vready_offset in pipe group
	drm/amd/display: Fix DTBCLK disable requests and SRC_SEL programming
	ASoC: amd: yc: Add Xiaomi Redmi Book Pro 14 2022 into DMI table
	libbpf: Avoid enum forward-declarations in public API in C++ mode
	regulator: core: fix use_count leakage when handling boot-on
	wifi: mt76: do not run mt76u_status_worker if the device is not running
	hwmon: (nct6775) add ASUS CROSSHAIR VIII/TUF/ProArt B550M
	selftests/bpf: Fix conflicts with built-in functions in bpf_iter_ksym
	nfs: fix possible null-ptr-deref when parsing param
	mmc: f-sdh30: Add quirks for broken timeout clock capability
	mmc: renesas_sdhi: add quirk for broken register layout
	mmc: renesas_sdhi: better reset from HS400 mode
	mmc: sdhci-tegra: Issue CMD and DAT resets together
	media: si470x: Fix use-after-free in si470x_int_in_callback()
	clk: st: Fix memory leak in st_of_quadfs_setup()
	regulator: core: Use different devices for resource allocation and DT lookup
	ice: synchronize the misc IRQ when tearing down Tx tracker
	Bluetooth: hci_bcm: Add CYW4373A0 support
	Bluetooth: Add quirk to disable extended scanning
	Bluetooth: Add quirk to disable MWS Transport Configuration
	regulator: core: Fix resolve supply lookup issue
	crypto: hisilicon/hpre - fix resource leak in remove process
	scsi: lpfc: Fix hard lockup when reading the rx_monitor from debugfs
	scsi: ufs: Reduce the START STOP UNIT timeout
	crypto: hisilicon/qm - increase the memory of local variables
	Revert "PCI: Clear PCI_STATUS when setting up device"
	scsi: elx: libefc: Fix second parameter type in state callbacks
	hugetlbfs: fix null-ptr-deref in hugetlbfs_parse_param()
	scsi: smartpqi: Add new controller PCI IDs
	scsi: smartpqi: Correct device removal for multi-actuator devices
	drm/fsl-dcu: Fix return type of fsl_dcu_drm_connector_mode_valid()
	drm/sti: Fix return type of sti_{dvo,hda,hdmi}_connector_mode_valid()
	scsi: target: iscsi: Fix a race condition between login_work and the login thread
	orangefs: Fix kmemleak in orangefs_prepare_debugfs_help_string()
	orangefs: Fix kmemleak in orangefs_sysfs_init()
	orangefs: Fix kmemleak in orangefs_{kernel,client}_debug_init()
	hwmon: (jc42) Fix missing unlock on error in jc42_write()
	ASoC: sof_es8336: fix possible use-after-free in sof_es8336_remove()
	ASoC: Intel: Skylake: Fix driver hang during shutdown
	ASoC: mediatek: mt8173-rt5650-rt5514: fix refcount leak in mt8173_rt5650_rt5514_dev_probe()
	ASoC: audio-graph-card: fix refcount leak of cpu_ep in __graph_for_each_link()
	ASoC: rockchip: pdm: Add missing clk_disable_unprepare() in rockchip_pdm_runtime_resume()
	ASoC: mediatek: mt8183: fix refcount leak in mt8183_mt6358_ts3a227_max98357_dev_probe()
	ALSA: hda/hdmi: fix i915 silent stream programming flow
	ALSA: hda/hdmi: set default audio parameters for KAE silent-stream
	ALSA: hda/hdmi: fix stream-id config keep-alive for rt suspend
	ASoC: wm8994: Fix potential deadlock
	ASoC: rockchip: spdif: Add missing clk_disable_unprepare() in rk_spdif_runtime_resume()
	ASoC: rt5670: Remove unbalanced pm_runtime_put()
	drm/i915/display: Don't disable DDI/Transcoder when setting phy test pattern
	LoadPin: Ignore the "contents" argument of the LSM hooks
	lkdtm: cfi: Make PAC test work with GCC 7 and 8
	pstore: Switch pmsg_lock to an rt_mutex to avoid priority inversion
	drm/amd/pm: avoid large variable on kernel stack
	perf debug: Set debug_peo_args and redirect_to_stderr variable to correct values in perf_quiet_option()
	perf tools: Make quiet mode consistent between tools
	perf probe: Check -v and -q options in the right place
	MIPS: ralink: mt7621: avoid to init common ralink reset controller
	perf test: Fix "all PMU test" to skip parametrized events
	afs: Fix lost servers_outstanding count
	cfi: Fix CFI failure with KASAN
	pstore: Make sure CONFIG_PSTORE_PMSG selects CONFIG_RT_MUTEXES
	ima: Simplify ima_lsm_copy_rule
	Input: iqs7222 - drop unused device node references
	Input: iqs7222 - report malformed properties
	Input: iqs7222 - add support for IQS7222A v1.13+
	dt-bindings: input: iqs7222: Reduce 'linux,code' to optional
	dt-bindings: input: iqs7222: Correct minimum slider size
	dt-bindings: input: iqs7222: Add support for IQS7222A v1.13+
	ALSA: usb-audio: Workaround for XRUN at prepare
	ALSA: usb-audio: add the quirk for KT0206 device
	ALSA: hda/realtek: Add quirk for Lenovo TianYi510Pro-14IOB
	ALSA: hda/hdmi: Add HP Device 0x8711 to force connect list
	HID: logitech-hidpp: Guard FF init code against non-USB devices
	usb: cdnsp: fix lack of ZLP for ep0
	usb: xhci-mtk: fix leakage of shared hcd when fail to set wakeup irq
	arm64: dts: qcom: sm6350: fix USB-DP PHY registers
	arm64: dts: qcom: sm8250: fix USB-DP PHY registers
	dt-bindings: clocks: imx8mp: Add ID for usb suspend clock
	clk: imx: imx8mp: add shared clk gate for usb suspend clk
	usb: dwc3: Fix race between dwc3_set_mode and __dwc3_set_mode
	usb: dwc3: core: defer probe on ulpi_read_id timeout
	usb: dwc3: qcom: Fix memory leak in dwc3_qcom_interconnect_init
	xhci: Prevent infinite loop in transaction errors recovery for streams
	HID: wacom: Ensure bootloader PID is usable in hidraw mode
	HID: mcp2221: don't connect hidraw
	loop: Fix the max_loop commandline argument treatment when it is set to 0
	9p: set req refcount to zero to avoid uninitialized usage
	security: Restrict CONFIG_ZERO_CALL_USED_REGS to gcc or clang > 15.0.6
	reiserfs: Add missing calls to reiserfs_security_free()
	iio: fix memory leak in iio_device_register_eventset()
	iio: adc: ad_sigma_delta: do not use internal iio_dev lock
	iio: adc128s052: add proper .data members in adc128_of_match table
	iio: addac: ad74413r: fix integer promotion bug in ad74413_get_input_current_offset()
	regulator: core: fix deadlock on regulator enable
	spi: fsl_spi: Don't change speed while chipselect is active
	floppy: Fix memory leak in do_floppy_init()
	gcov: add support for checksum field
	test_maple_tree: add test for mas_spanning_rebalance() on insufficient data
	maple_tree: fix mas_spanning_rebalance() on insufficient data
	fbdev: fbcon: release buffer when fbcon_do_set_font() failed
	ovl: fix use inode directly in rcu-walk mode
	btrfs: do not BUG_ON() on ENOMEM when dropping extent items for a range
	mm/gup: disallow FOLL_FORCE|FOLL_WRITE on hugetlb mappings
	scsi: qla2xxx: Fix crash when I/O abort times out
	blk-iolatency: Fix memory leak on add_disk() failures
	io_uring/net: introduce IORING_SEND_ZC_REPORT_USAGE flag
	io_uring: add completion locking for iopoll
	io_uring: dont remove file from msg_ring reqs
	io_uring: improve io_double_lock_ctx fail handling
	io_uring/net: ensure compat import handlers clear free_iov
	io_uring/net: fix cleanup after recycle
	io_uring: protect cq_timeouts with timeout_lock
	io_uring: remove iopoll spinlock
	net: stmmac: fix errno when create_singlethread_workqueue() fails
	media: dvbdev: fix build warning due to comments
	media: dvbdev: fix refcnt bug
	drm/amd/display: revert Disable DRR actions during state commit
	mfd: qcom_rpm: Use devm_of_platform_populate() to simplify code
	pwm: tegra: Fix 32 bit build
	Linux 6.1.2

Change-Id: I8f7c080f3b8288ed319fc0e25aaefb7ad5cd6b84
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-01-18 18:44:34 +00:00
Jens Axboe
73a630b359 block: handle bio_split_to_limits() NULL return
commit 613b14884b8595e20b9fac4126bf627313827fbe upstream.

This can't happen right now, but in preparation for allowing
bio_split_to_limits() returning NULL if it ended the bio, check for it
in all the callers.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-01-18 11:58:33 +01:00
Eric Biggers
4dea3c22ab ANDROID: fscrypt, blk-crypto: drop HW-wrapped key compatibility check
In the updated HW-wrapped key code in the android14 kernels, HW-wrapped
keys are only allowed on a multi-block-device filesystem if they have a
compatible HW-wrapped keys implementation.  While in principle this is a
good thing to check, my implementation of it, which simply checks
whether the block devices have the same crypto profiles, doesn't work
when device-mapper is being used.

To actually do that check correctly, I think we'd need to add a
HW-wrapped keys implementation name or ID to the crypto capabilities.

That being said, in Android the HW-wrapped keys implementation is a
global thing anyway.  So in the interest of not overcomplicating things,
for now let's just drop these extra checks that are causing problems.

Bug: 160883801
Bug: 265180564
Fixes: 2fd53f8098 ("ANDROID: fscrypt: add support for hardware-wrapped keys")
Fixes: 139dbaa221 ("ANDROID: update "block: add basic hardware-wrapped key support" to v7")
Change-Id: Ia49d62cc2c56447fb898f19bf67df1a38af379f8
Signed-off-by: Eric Biggers <ebiggers@google.com>
2023-01-13 01:04:24 +00:00
Jens Axboe
6d47e0f6a5 block: don't allow splitting of a REQ_NOWAIT bio
commit 9cea62b2cbabff8ed46f2df17778b624ad9dd25a upstream.

If we split a bio marked with REQ_NOWAIT, then we can trigger spurious
EAGAIN if constituent parts of that split bio end up failing request
allocations. Parts will complete just fine, but just a single failure
in one of the chained bios will yield an EAGAIN final result for the
parent bio.

Return EAGAIN early if we end up needing to split such a bio, which
allows for saner recovery handling.

Cc: stable@vger.kernel.org # 5.15+
Link: https://github.com/axboe/liburing/issues/766
Reported-by: Michael Kelley <mikelley@microsoft.com>
Reviewed-by: Keith Busch <kbusch@kernel.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-01-12 12:02:47 +01:00
Damien Le Moal
ab87d6f26e block: mq-deadline: Do not break sequential write streams to zoned HDDs
commit 015d02f48537cf2d1a65eeac50717566f9db6eec upstream.

mq-deadline ensures an in order dispatching of write requests to zoned
block devices using a per zone lock (a bit). This implies that for any
purely sequential write workload, the drive is exercised most of the
time at a maximum queue depth of one.

However, when such sequential write workload crosses a zone boundary
(when sequentially writing multiple contiguous zones), zone write
locking may prevent the last write to one zone to be issued (as the
previous write is still being executed) but allow the first write to the
following zone to be issued (as that zone is not yet being writen and
not locked). This result in an out of order delivery of the sequential
write commands to the device every time a zone boundary is crossed.

While such behavior does not break the sequential write constraint of
zoned block devices (and does not generate any write error), some zoned
hard-disks react badly to seeing these out of order writes, resulting in
lower write throughput.

This problem can be addressed by always dispatching the first request
of a stream of sequential write requests, regardless of the zones
targeted by these sequential writes. To do so, the function
deadline_skip_seq_writes() is introduced and used in
deadline_next_request() to select the next write command to issue if the
target device is an HDD (blk_queue_nonrot() being false).
deadline_fifo_request() is modified using the new
deadline_earlier_request() and deadline_is_seq_write() helpers to ignore
requests in the fifo list that have a preceding request in lba order
that is sequential.

With this fix, a sequential write workload executed with the following
fio command:

fio  --name=seq-write --filename=/dev/sda --zonemode=zbd --direct=1 \
     --size=68719476736  --ioengine=libaio --iodepth=32 --rw=write \
     --bs=65536

results in an increase from 225 MB/s to 250 MB/s of the write throughput
of an SMR HDD (11% increase).

Cc: <stable@vger.kernel.org>
Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Link: https://lore.kernel.org/r/20221124021208.242541-3-damien.lemoal@opensource.wdc.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-01-07 11:11:51 +01:00
Damien Le Moal
b0544dd860 block: mq-deadline: Fix dd_finish_request() for zoned devices
commit 2820e5d0820ac4daedff1272616a53d9c7682fd2 upstream.

dd_finish_request() tests if the per prio fifo_list is not empty to
determine if request dispatching must be restarted for handling blocked
write requests to zoned devices with a call to
blk_mq_sched_mark_restart_hctx(). While simple, this implementation has
2 problems:

1) Only the priority level of the completed request is considered.
   However, writes to a zone may be blocked due to other writes to the
   same zone using a different priority level. While this is unlikely to
   happen in practice, as writing a zone with different IO priorirites
   does not make sense, nothing in the code prevents this from
   happening.
2) The use of list_empty() is dangerous as dd_finish_request() does not
   take dd->lock and may run concurrently with the insert and dispatch
   code.

Fix these 2 problems by testing the write fifo list of all priority
levels using the new helper dd_has_write_work(), and by testing each
fifo list using list_empty_careful().

Fixes: c807ab520f ("block/mq-deadline: Add I/O priority support")
Cc: <stable@vger.kernel.org>
Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Link: https://lore.kernel.org/r/20221124021208.242541-2-damien.lemoal@opensource.wdc.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-01-07 11:11:51 +01:00
Jaegeuk Kim
34d1cfdc4a Merge remote-tracking branch 'aosp/upstream-f2fs-stable-linux-6.1.y' into android14-6.1
* aosp/upstream-f2fs-stable-linux-6.1.y:
  f2fs: let's avoid panic if extent_tree is not created
  f2fs: should use a temp extent_info for lookup
  f2fs: don't mix to use union values in extent_info
  f2fs: initialize extent_cache parameter
  f2fs: fix to avoid NULL pointer dereference in f2fs_issue_flush()
  fscrypt: add additional documentation for SM4 support
  fscrypt: remove unused Speck definitions
  fscrypt: Add SM4 XTS/CTS symmetric algorithm support
  blk-crypto: Add support for SM4-XTS blk crypto mode
  blk-crypto: pass a gendisk to blk_crypto_sysfs_{,un}register
  fscrypt: add comment for fscrypt_valid_enc_modes_v1()
  blk-crypto: Add a missing include directive
  blk-crypto: move internal only declarations to blk-crypto-internal.h
  blk-crypto: add a blk_crypto_config_supported_natively helper
  blk-crypto: don't use struct request_queue for public interfaces
  fscrypt: pass super_block to fscrypt_put_master_key_activeref()

Bug: 256243893
Signed-off-by: Jaegeuk Kim <jaegeuk@google.com>
Change-Id: I367525066c097ee6ebeb4cf59d7a1c4b23b65c8a
2023-01-04 13:16:02 -08:00
Jan Kara
a35b4bcb43 block: Do not reread partition table on exclusively open device
commit 36369f46e91785688a5f39d7a5590e3f07981316 upstream.

Since commit 10c70d95c0 ("block: remove the bd_openers checks in
blk_drop_partitions") we allow rereading of partition table although
there are users of the block device. This has an undesirable consequence
that e.g. if sda and sdb are assembled to a RAID1 device md0 with
partitions, BLKRRPART ioctl on sda will rescan partition table and
create sda1 device. This partition device under a raid device confuses
some programs (such as libstorage-ng used for initial partitioning for
distribution installation) leading to failures.

Fix the problem refusing to rescan partitions if there is another user
that has the block device exclusively open.

Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/all/20221130135344.2ul4cyfstfs3znxg@quack3
Fixes: 10c70d95c0 ("block: remove the bd_openers checks in blk_drop_partitions")
Signed-off-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20221130175653.24299-1-jack@suse.cz
[axboe: fold in followup fix]
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-01-04 11:29:01 +01:00
Yu Kuai
1ed959fef5 block, bfq: fix uaf for bfqq in bfq_exit_icq_bfqq
[ Upstream commit 246cf66e300b76099b5dbd3fdd39e9a5dbc53f02 ]

Commit 64dc8c732f5c ("block, bfq: fix possible uaf for 'bfqq->bic'")
will access 'bic->bfqq' in bic_set_bfqq(), however, bfq_exit_icq_bfqq()
can free bfqq first, and then call bic_set_bfqq(), which will cause uaf.

Fix the problem by moving bfq_exit_bfqq() behind bic_set_bfqq().

Fixes: 64dc8c732f5c ("block, bfq: fix possible uaf for 'bfqq->bic'")
Reported-by: Yi Zhang <yi.zhang@redhat.com>
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Link: https://lore.kernel.org/r/20221226030605.1437081-1-yukuai1@huaweicloud.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-01-04 11:28:51 +01:00
Eric Biggers
139dbaa221 ANDROID: update "block: add basic hardware-wrapped key support" to v7
The hardware-wrapped key support in this branch is based on my patch
"[RFC PATCH v3 1/3] block: add basic hardware-wrapped key support"
(https://lore.kernel.org/all/20211021181608.54127-2-ebiggers@kernel.org).
I've since made several updates to that patch and it is now at v7.

This commit brings in the updates from v3 to v7.  The main change is
making blk_crypto_derive_sw_secret() operate on a struct block_device,
and adding blk_crypto_hw_wrapped_keys_compatible().  This aligns with
changes upstream in v6.1 and v6.2 that removed block-layer internal
structures from the API that blk-crypto exposes to upper layers.
There's also a slight change in prototype for ->derive_sw_secret, so a
couple out-of-tree drivers will need to be updated, but people
maintaining out-of-tree drivers know what they are dealing with anyway.

Bug: 160883801
Link: https://lore.kernel.org/r/20221216203636.81491-2-ebiggers@kernel.org
Change-Id: I0f285c11c2764064cd4a9d6eac0089099a9601ed
Signed-off-by: Eric Biggers <ebiggers@google.com>
2023-01-04 01:24:37 +00:00
Bart Van Assche
3ec40c5b27 UPSTREAM: blk-crypto: Add a missing include directive
Allow the compiler to verify consistency of function declarations and
function definitions. This patch fixes the following sparse errors:

block/blk-crypto-profile.c:241:14: error: no previous prototype for ‘blk_crypto_get_keyslot’ [-Werror=missing-prototypes]
  241 | blk_status_t blk_crypto_get_keyslot(struct blk_crypto_profile *profile,
      |              ^~~~~~~~~~~~~~~~~~~~~~
block/blk-crypto-profile.c:318:6: error: no previous prototype for ‘blk_crypto_put_keyslot’ [-Werror=missing-prototypes]
  318 | void blk_crypto_put_keyslot(struct blk_crypto_keyslot *slot)
      |      ^~~~~~~~~~~~~~~~~~~~~~
block/blk-crypto-profile.c:344:6: error: no previous prototype for ‘__blk_crypto_cfg_supported’ [-Werror=missing-prototypes]
  344 | bool __blk_crypto_cfg_supported(struct blk_crypto_profile *profile,
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
block/blk-crypto-profile.c:373:5: error: no previous prototype for ‘__blk_crypto_evict_key’ [-Werror=missing-prototypes]
  373 | int __blk_crypto_evict_key(struct blk_crypto_profile *profile,
      |     ^~~~~~~~~~~~~~~~~~~~~~

Cc: Eric Biggers <ebiggers@google.com>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Link: https://lore.kernel.org/r/20221123172923.434339-1-bvanassche@acm.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>

(cherry picked from commit 85168d416e5d3184b77dbec8fee75c9439894afa)
Change-Id: I797a99bc00c114dc86e74e1d5b1f7866f7e64a10
Signed-off-by: Eric Biggers <ebiggers@google.com>
2023-01-04 01:24:37 +00:00
Christoph Hellwig
fb321781a5 UPSTREAM: blk-crypto: move internal only declarations to blk-crypto-internal.h
blk_crypto_get_keyslot, blk_crypto_put_keyslot, __blk_crypto_evict_key
and __blk_crypto_cfg_supported are only used internally by the
blk-crypto code, so move the out of blk-crypto-profile.h, which is
included by drivers that supply blk-crypto functionality.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Eric Biggers <ebiggers@google.com>
Link: https://lore.kernel.org/r/20221114042944.1009870-4-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>

(cherry picked from commit 3569788c08235c6f3e9e6ca724b2df44787ff487)
Change-Id: I80b07a1c3b6e6f41ffe48adbdb27a3ca4480ff75
Signed-off-by: Eric Biggers <ebiggers@google.com>
2023-01-04 01:24:37 +00:00
Christoph Hellwig
121484d910 BACKPORT: blk-crypto: add a blk_crypto_config_supported_natively helper
Add a blk_crypto_config_supported_natively helper that wraps
__blk_crypto_cfg_supported to retrieve the crypto_profile from the
request queue.  With this fscrypt can stop including
blk-crypto-profile.h and rely on the public consumer interface in
blk-crypto.h.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Eric Biggers <ebiggers@google.com>
Link: https://lore.kernel.org/r/20221114042944.1009870-3-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>

(cherry picked from commit 6715c98b6cf003f26b1b2f655393134e9d999a05)
(resolved conflict in blk_crypto_config_supported())
Change-Id: I40c4ab6bd9a108661c40c837227b6aed64685ae7
Signed-off-by: Eric Biggers <ebiggers@google.com>
2023-01-04 01:24:37 +00:00
Christoph Hellwig
66d68a50db BACKPORT: blk-crypto: don't use struct request_queue for public interfaces
Switch all public blk-crypto interfaces to use struct block_device
arguments to specify the device they operate on instead of th
request_queue, which is a block layer implementation detail.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Eric Biggers <ebiggers@google.com>
Link: https://lore.kernel.org/r/20221114042944.1009870-2-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>

(cherry picked from commit fce3caea0f241f5d34855c82c399d5e0e2d91f07)
(resolved conflict in blk_crypto_config_supported())
Change-Id: Ifde7cf1c8a2a5ddfb2fde4e5fb118269a3bfcdb0
Signed-off-by: Eric Biggers <ebiggers@google.com>
2023-01-04 01:24:37 +00:00
Tejun Heo
215f9437dd blk-iolatency: Fix memory leak on add_disk() failures
commit 813e693023ba10da9e75067780f8378465bf27cc upstream.

When a gendisk is successfully initialized but add_disk() fails such as when
a loop device has invalid number of minor device numbers specified,
blkcg_init_disk() is called during init and then blkcg_exit_disk() during
error handling. Unfortunately, iolatency gets initialized in the former but
doesn't get cleaned up in the latter.

This is because, in non-error cases, the cleanup is performed by
del_gendisk() calling rq_qos_exit(), the assumption being that rq_qos
policies, iolatency being one of them, can only be activated once the disk
is fully registered and visible. That assumption is true for wbt and iocost,
but not so for iolatency as it gets initialized before add_disk() is called.

It is desirable to lazy-init rq_qos policies because they are optional
features and add to hot path overhead once initialized - each IO has to walk
all the registered rq_qos policies. So, we want to switch iolatency to lazy
init too. However, that's a bigger change. As a fix for the immediate
problem, let's just add an extra call to rq_qos_exit() in blkcg_exit_disk().
This is safe because duplicate calls to rq_qos_exit() become noop's.

Signed-off-by: Tejun Heo <tj@kernel.org>
Reported-by: darklight2357@icloud.com
Cc: Josef Bacik <josef@toxicpanda.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Fixes: d706751215 ("block: introduce blk-iolatency io controller")
Cc: stable@vger.kernel.org # v4.19+
Reviewed-by: Christoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/Y5TQ5gm3O4HXrXR3@slm.duckdns.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-12-31 13:33:11 +01:00
Ye Bin
33e8a3f618 blk-mq: fix possible memleak when register 'hctx' failed
[ Upstream commit 4b7a21c57b14fbcd0e1729150189e5933f5088e9 ]

There's issue as follows when do fault injection test:
unreferenced object 0xffff888132a9f400 (size 512):
  comm "insmod", pid 308021, jiffies 4324277909 (age 509.733s)
  hex dump (first 32 bytes):
    00 00 00 00 00 00 00 00 08 f4 a9 32 81 88 ff ff  ...........2....
    08 f4 a9 32 81 88 ff ff 00 00 00 00 00 00 00 00  ...2............
  backtrace:
    [<00000000e8952bb4>] kmalloc_node_trace+0x22/0xa0
    [<00000000f9980e0f>] blk_mq_alloc_and_init_hctx+0x3f1/0x7e0
    [<000000002e719efa>] blk_mq_realloc_hw_ctxs+0x1e6/0x230
    [<000000004f1fda40>] blk_mq_init_allocated_queue+0x27e/0x910
    [<00000000287123ec>] __blk_mq_alloc_disk+0x67/0xf0
    [<00000000a2a34657>] 0xffffffffa2ad310f
    [<00000000b173f718>] 0xffffffffa2af824a
    [<0000000095a1dabb>] do_one_initcall+0x87/0x2a0
    [<00000000f32fdf93>] do_init_module+0xdf/0x320
    [<00000000cbe8541e>] load_module+0x3006/0x3390
    [<0000000069ed1bdb>] __do_sys_finit_module+0x113/0x1b0
    [<00000000a1a29ae8>] do_syscall_64+0x35/0x80
    [<000000009cd878b0>] entry_SYSCALL_64_after_hwframe+0x46/0xb0

Fault injection context as follows:
 kobject_add
 blk_mq_register_hctx
 blk_mq_sysfs_register
 blk_register_queue
 device_add_disk
 null_add_dev.part.0 [null_blk]

As 'blk_mq_register_hctx' may already add some objects when failed halfway,
but there isn't do fallback, caller don't know which objects add failed.
To solve above issue just do fallback when add objects failed halfway in
'blk_mq_register_hctx'.

Signed-off-by: Ye Bin <yebin10@huawei.com>
Reviewed-by: Ming Lei <ming.lei@redhat.com>
Link: https://lore.kernel.org/r/20221117022940.873959-1-yebin@huaweicloud.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-12-31 13:33:03 +01:00
David Jeffery
8b3d6b029a blk-mq: avoid double ->queue_rq() because of early timeout
[ Upstream commit 82c229476b8f6afd7e09bc4dc77d89dc19ff7688 ]

David Jeffery found one double ->queue_rq() issue, so far it can
be triggered in VM use case because of long vmexit latency or preempt
latency of vCPU pthread or long page fault in vCPU pthread, then block
IO req could be timed out before queuing the request to hardware but after
calling blk_mq_start_request() during ->queue_rq(), then timeout handler
may handle it by requeue, then double ->queue_rq() is caused, and kernel
panic.

So far, it is driver's responsibility to cover the race between timeout
and completion, so it seems supposed to be solved in driver in theory,
given driver has enough knowledge.

But it is really one common problem, lots of driver could have similar
issue, and could be hard to fix all affected drivers, even it isn't easy
for driver to handle the race. So David suggests this patch by draining
in-progress ->queue_rq() for solving this issue.

Cc: Stefan Hajnoczi <stefanha@redhat.com>
Cc: Keith Busch <kbusch@kernel.org>
Cc: virtualization@lists.linux-foundation.org
Cc: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: David Jeffery <djeffery@redhat.com>
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Link: https://lore.kernel.org/r/20221026051957.358818-1-ming.lei@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-12-31 13:32:59 +01:00
Yu Kuai
761564d93c block, bfq: fix possible uaf for 'bfqq->bic'
[ Upstream commit 64dc8c732f5c2b406cc752e6aaa1bd5471159cab ]

Our test report a uaf for 'bfqq->bic' in 5.10:

==================================================================
BUG: KASAN: use-after-free in bfq_select_queue+0x378/0xa30

CPU: 6 PID: 2318352 Comm: fsstress Kdump: loaded Not tainted 5.10.0-60.18.0.50.h602.kasan.eulerosv2r11.x86_64 #1
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.12.1-0-ga5cab58-20220320_160524-szxrtosci10000 04/01/2014
Call Trace:
 bfq_select_queue+0x378/0xa30
 bfq_dispatch_request+0xe8/0x130
 blk_mq_do_dispatch_sched+0x62/0xb0
 __blk_mq_sched_dispatch_requests+0x215/0x2a0
 blk_mq_sched_dispatch_requests+0x8f/0xd0
 __blk_mq_run_hw_queue+0x98/0x180
 __blk_mq_delay_run_hw_queue+0x22b/0x240
 blk_mq_run_hw_queue+0xe3/0x190
 blk_mq_sched_insert_requests+0x107/0x200
 blk_mq_flush_plug_list+0x26e/0x3c0
 blk_finish_plug+0x63/0x90
 __iomap_dio_rw+0x7b5/0x910
 iomap_dio_rw+0x36/0x80
 ext4_dio_read_iter+0x146/0x190 [ext4]
 ext4_file_read_iter+0x1e2/0x230 [ext4]
 new_sync_read+0x29f/0x400
 vfs_read+0x24e/0x2d0
 ksys_read+0xd5/0x1b0
 do_syscall_64+0x33/0x40
 entry_SYSCALL_64_after_hwframe+0x61/0xc6

Commit 3bc5e683c6 ("bfq: Split shared queues on move between cgroups")
changes that move process to a new cgroup will allocate a new bfqq to
use, however, the old bfqq and new bfqq can point to the same bic:

1) Initial state, two process with io in the same cgroup.

Process 1       Process 2
 (BIC1)          (BIC2)
  |  Λ            |  Λ
  |  |            |  |
  V  |            V  |
  bfqq1           bfqq2

2) bfqq1 is merged to bfqq2.

Process 1       Process 2
 (BIC1)          (BIC2)
  |               |
   \-------------\|
                  V
  bfqq1           bfqq2(coop)

3) Process 1 exit, then issue new io(denoce IOA) from Process 2.

 (BIC2)
  |  Λ
  |  |
  V  |
  bfqq2(coop)

4) Before IOA is completed, move Process 2 to another cgroup and issue io.

Process 2
 (BIC2)
   Λ
   |\--------------\
   |                V
  bfqq2           bfqq3

Now that BIC2 points to bfqq3, while bfqq2 and bfqq3 both point to BIC2.
If all the requests are completed, and Process 2 exit, BIC2 will be
freed while there is no guarantee that bfqq2 will be freed before BIC2.

Fix the problem by clearing bfqq->bic while bfqq is detached from bic.

Fixes: 3bc5e683c6 ("bfq: Split shared queues on move between cgroups")
Suggested-by: Jan Kara <jack@suse.cz>
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20221214030430.3304151-1-yukuai1@huaweicloud.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-12-31 13:32:53 +01:00
Christoph Hellwig
475bdd7544 block: clear ->slave_dir when dropping the main slave_dir reference
[ Upstream commit d90db3b1c8676bc88b4309c5a571333de2263b8e ]

Zero out the pointer to ->slave_dir so that the holder code doesn't
incorrectly treat the object as alive when add_disk failed or after
del_gendisk was called.

Fixes: 89f871af1b ("dm: delay registering the gendisk")
Reported-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Reviewed-by: Mike Snitzer <snitzer@kernel.org>
Link: https://lore.kernel.org/r/20221115141054.1051801-2-yukuai1@huaweicloud.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-12-31 13:32:12 +01:00
Khazhismel Kumykov
0544ea57f9 bfq: fix waker_bfqq inconsistency crash
[ Upstream commit a1795c2ccb1e4c49220d2a0d381540024d71647c ]

This fixes crashes in bfq_add_bfqq_busy due to waker_bfqq being NULL,
but woken_list_node still being hashed. This would happen when
bfq_init_rq() expects a brand new allocated queue to be returned from
bfq_get_bfqq_handle_split() and unconditionally updates waker_bfqq
without resetting woken_list_node. Since we can always return oom_bfqq
when attempting to allocate, we cannot assume waker_bfqq starts as NULL.

Avoid setting woken_bfqq for oom_bfqq entirely, as it's not useful.

Crashes would have a stacktrace like:
[160595.656560]  bfq_add_bfqq_busy+0x110/0x1ec
[160595.661142]  bfq_add_request+0x6bc/0x980
[160595.666602]  bfq_insert_request+0x8ec/0x1240
[160595.671762]  bfq_insert_requests+0x58/0x9c
[160595.676420]  blk_mq_sched_insert_request+0x11c/0x198
[160595.682107]  blk_mq_submit_bio+0x270/0x62c
[160595.686759]  __submit_bio_noacct_mq+0xec/0x178
[160595.691926]  submit_bio+0x120/0x184
[160595.695990]  ext4_mpage_readpages+0x77c/0x7c8
[160595.701026]  ext4_readpage+0x60/0xb0
[160595.705158]  filemap_read_page+0x54/0x114
[160595.711961]  filemap_fault+0x228/0x5f4
[160595.716272]  do_read_fault+0xe0/0x1f0
[160595.720487]  do_fault+0x40/0x1c8

Tested by injecting random failures into bfq_get_queue, crashes go away
completely.

Fixes: 8ef3fc3a04 ("block, bfq: make shared queues inherit wakers")
Signed-off-by: Khazhismel Kumykov <khazhy@google.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20221108181030.1611703-1-khazhy@google.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-12-31 13:32:10 +01:00
Tianjia Zhang
034c75ce0e blk-crypto: Add support for SM4-XTS blk crypto mode
SM4 is a symmetric cipher algorithm widely used in China. The SM4-XTS
variant is used to encrypt length-preserving data. This is the
mandatory algorithm in some special scenarios.

Add support for the algorithm to block inline encryption. This is needed
for the inlinecrypt mount option to be supported via
blk-crypto-fallback, as it is for the other fscrypt modes.

Signed-off-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
Signed-off-by: Eric Biggers <ebiggers@google.com>
Link: https://lore.kernel.org/r/20221201125819.36932-2-tianjia.zhang@linux.alibaba.com
2022-12-22 10:49:16 -08:00
Christoph Hellwig
0953e23b2a blk-crypto: pass a gendisk to blk_crypto_sysfs_{,un}register
Prepare for changes to the block layer sysfs handling by passing the
readily available gendisk to blk_crypto_sysfs_{,un}register.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Eric Biggers <ebiggers@google.com>
Link: https://lore.kernel.org/r/20221114042637.1009333-2-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-12-22 10:48:11 -08:00
Bart Van Assche
e389a67860 blk-crypto: Add a missing include directive
Allow the compiler to verify consistency of function declarations and
function definitions. This patch fixes the following sparse errors:

block/blk-crypto-profile.c:241:14: error: no previous prototype for ‘blk_crypto_get_keyslot’ [-Werror=missing-prototypes]
  241 | blk_status_t blk_crypto_get_keyslot(struct blk_crypto_profile *profile,
      |              ^~~~~~~~~~~~~~~~~~~~~~
block/blk-crypto-profile.c:318:6: error: no previous prototype for ‘blk_crypto_put_keyslot’ [-Werror=missing-prototypes]
  318 | void blk_crypto_put_keyslot(struct blk_crypto_keyslot *slot)
      |      ^~~~~~~~~~~~~~~~~~~~~~
block/blk-crypto-profile.c:344:6: error: no previous prototype for ‘__blk_crypto_cfg_supported’ [-Werror=missing-prototypes]
  344 | bool __blk_crypto_cfg_supported(struct blk_crypto_profile *profile,
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
block/blk-crypto-profile.c:373:5: error: no previous prototype for ‘__blk_crypto_evict_key’ [-Werror=missing-prototypes]
  373 | int __blk_crypto_evict_key(struct blk_crypto_profile *profile,
      |     ^~~~~~~~~~~~~~~~~~~~~~

Cc: Eric Biggers <ebiggers@google.com>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Link: https://lore.kernel.org/r/20221123172923.434339-1-bvanassche@acm.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-12-22 10:48:04 -08:00
Christoph Hellwig
9d624c603f blk-crypto: move internal only declarations to blk-crypto-internal.h
blk_crypto_get_keyslot, blk_crypto_put_keyslot, __blk_crypto_evict_key
and __blk_crypto_cfg_supported are only used internally by the
blk-crypto code, so move the out of blk-crypto-profile.h, which is
included by drivers that supply blk-crypto functionality.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Eric Biggers <ebiggers@google.com>
Link: https://lore.kernel.org/r/20221114042944.1009870-4-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-12-22 10:48:04 -08:00
Christoph Hellwig
bc46a95e09 blk-crypto: add a blk_crypto_config_supported_natively helper
Add a blk_crypto_config_supported_natively helper that wraps
__blk_crypto_cfg_supported to retrieve the crypto_profile from the
request queue.  With this fscrypt can stop including
blk-crypto-profile.h and rely on the public consumer interface in
blk-crypto.h.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Eric Biggers <ebiggers@google.com>
Link: https://lore.kernel.org/r/20221114042944.1009870-3-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-12-22 10:48:04 -08:00
Christoph Hellwig
8a2a580636 blk-crypto: don't use struct request_queue for public interfaces
Switch all public blk-crypto interfaces to use struct block_device
arguments to specify the device they operate on instead of th
request_queue, which is a block layer implementation detail.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Eric Biggers <ebiggers@google.com>
Link: https://lore.kernel.org/r/20221114042944.1009870-2-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-12-22 10:48:04 -08:00
Greg Kroah-Hartman
e00ac7661f Linux 6.1-rc7
-----BEGIN PGP SIGNATURE-----
 
 iQFSBAABCAA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAmOD10QeHHRvcnZhbGRz
 QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiGGz4H+wZRlo4Bd7/zKaYZ
 Zy40ylCfnsMsm2dD+fPdYsr1Izxh3PQ7ithk21TL1PWSXLGcHZzJCjF2cN//z02S
 0IZE59Zc5vsLUPvnTZHdHBD4p+pKe5dk3dUP2AlanoxptumXpdZtLBs74R0yv6Fa
 Js1+2qxOQqC/BuWjW2SoJJzvcpMEtIXPCpizdkme95aGw+TfzuRw3Nn+lgJ0TTIr
 1N98IbTz+7bqj9PvrFuVgbkMyJHwquVFc/r/vq6Yv+B6Mn/N1CrKW2VPxW299F3Z
 kvvjosSilrzzQsG7MYQWES6q6JdAQD0VOZDRI11WhwXbKsQobZ6hjgK1wOmInasS
 fTsOVmA=
 =PkFi
 -----END PGP SIGNATURE-----

Merge 6.1-rc7 into android-mainline

Linux 6.1-rc7

Change-Id: I5273a4225425a0f7f770c0e361df67d1abdcd5f6
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2022-11-28 16:47:55 +00:00
Linus Torvalds
990f320031 block-6.1-2022-11-25
-----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCAAuFiEEwPw5LcreJtl1+l5K99NY+ylx4KYFAmOBLEoQHGF4Ym9lQGtl
 cm5lbC5kawAKCRD301j7KXHgponRD/90Nx2W6P8iN21w3ZtzhtYiG9WVBhUtQqhK
 IFCUuaq7Meh8Iz6dpoOhEBHZ3alxZRptYLVVKMGUxkOUjzJPKljermvcb/If288G
 5yaRrBtwkL+opZuDTwTiDFrUFGAY8+Uk/cmse8iqLkmQ+eJxmpr28tTrkOEToinS
 D8JEnXG0YTRNe7o52wBC0rD2zJURHidAqyHuKdXP9DnPntSKfWQNZHK6kWwiJ20W
 UQDgk3sycbmv8WXQ2nsDvrGf1s9FeQzS+gu5gWiA1sbQ5yhBvnGpT/U9E8WOeCZR
 wszfWlsjOfv6N095o6plNeVo3Ti/QgliGiJvuBhkEhU6M9kOCEKzTh0W5DNyDpyo
 DVB4/FmSyBKf1Aif9eo3gUqBdaaKaNn5b2vmgwuY/P5ALjanrL8izsnzdMfxOyRf
 wNFgiYlD3VOksWxHUnPLx9nMtM9uDjkdE8IeRr/4bfP46qxSOpC1dZWvu6Ot1vPr
 bfYo0QM+wUis4tfdxW9MIIi8oDAV0jbPN3zC2/c1end0KfZzlBiRh/1aernWweAj
 NgVJC+9GhzR0RV0T74vH1JY5Xa5PF3VREbNeCYhzLPH/QtI/dCNIVhAv13p06+6x
 zkeyMKUo8oLNl7WJRDb5WU/k2gr1msbwxvS/IdE1PuopqTefU9zdDlP/bYab0xla
 E6DHJ2aHlw==
 =41zr
 -----END PGP SIGNATURE-----

Merge tag 'block-6.1-2022-11-25' of git://git.kernel.dk/linux

Pull block fixes from Jens Axboe:

 - A few fixes for s390 sads (Stefan, Colin)

 - Ensure that ublk doesn't reorder requests, as that can be problematic
   on devices that need specific ordering (Ming)

 - Fix a queue reference leak in disk allocation handling (Christoph)

* tag 'block-6.1-2022-11-25' of git://git.kernel.dk/linux:
  ublk_drv: don't forward io commands in reserve order
  s390/dasd: fix possible buffer overflow in copy_pair_show
  s390/dasd: fix no record found for raw_track_access
  s390/dasd: increase printing of debug data payload
  s390/dasd: Fix spelling mistake "Ivalid" -> "Invalid"
  blk-mq: fix queue reference leak on blk_mq_alloc_disk_for_queue failure
2022-11-25 17:50:57 -08:00
Christoph Hellwig
22c17e279a blk-mq: fix queue reference leak on blk_mq_alloc_disk_for_queue failure
Drop the request queue reference just acquired when __alloc_disk_node
failed.

Fixes: 6f8191fdf4 ("block: simplify disk shutdown")
Reported-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Link: https://lore.kernel.org/r/20221122072753.426077-1-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-11-22 15:58:08 -07:00
Greg Kroah-Hartman
b3913d3040 Linux 6.1-rc6
-----BEGIN PGP SIGNATURE-----
 
 iQFSBAABCAA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAmN6wAgeHHRvcnZhbGRz
 QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiG0EYH/3/RO90NbrFItraN
 Lzr+d3VdbGjTu8xd1M+PRTmwh3zxLpB+Jwqr0T0A2gzL9B/D+AUPUJdrCVbv9DqS
 FLJAVqoeV20dNBAHSffOOLPsgCZ+Eu+LzlNN7Iqde0e8cyZICFMNktitui84Xm/i
 1NgFVgz9OZ6+aieYvUj3FrFq0p8GTIaC/oybDZrxYKcO8ZzKVMJ11swRw10wwq0g
 qOOECvV3w7wlQ8upQZkzFxItKFc7EexZI6R4elXeGSJJ9Hlc092dv/zsKB9dwV+k
 WcwkJrZRoezYXzgGBFxUcQtzi+ethjrPjuJuM1rYLUSIcfIW/0lkaSLgRoBu8D+I
 1GfXkXs=
 =gt6P
 -----END PGP SIGNATURE-----

Merge tag 'v6.1-rc6' into android-mainline

Linux 6.1-rc6

Change-Id: I10c6bd08e5ef137c4f97b2ad85565627d4139939
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2022-11-21 08:39:18 +00:00
Linus Torvalds
f4408c3dfc block-6.1-2022-11-18
-----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCAAuFiEEwPw5LcreJtl1+l5K99NY+ylx4KYFAmN38ZUQHGF4Ym9lQGtl
 cm5lbC5kawAKCRD301j7KXHgpgXxD/9tUSFUKIVGIn4pmNILfY3XV45HOi1w44yR
 zCxCELupcBeT+YixmaJcT8sunrrg2fLPOXMrDJk1cG/izXHzkjAQsHZvERfqC7hC
 f5onH+2MyGm3qBwxV0iGqITJgTwQGInVJijT4f9UZd/8ultymyZR2nOdIdIydHCF
 qzlOjq6hgIuGKHhFgOqRUg/OAkx510ZEEilUDcZ6XVV+zL7ccN6J9+eNTI3c58wT
 7jvxZC4u6QGKteGvVniE3WXgk3QdFiQRORvV09g+PkbG/vPjAIZ5tJFb9PdIOebD
 3guDiNUasgz2vnDetMK+yk4LcedcRfWnqgn+Vm8C26j5Fxs13eDx5kMDteVy7CYh
 3bokOATHohoZZ9qTApgQUswTfGJfBdoy0nUTPuffxPdKDyUPteIxFCADcnyDHnDG
 d/+PjU3FKF31o2HcUfvYp7OMO0VZP0hJSWps8znoVXKxb+LH9qKkYzHVlfni5kkS
 k9XqqD1Ki98Erb346YqgvQjCkz+CUd5DxtGyh9Oh2+oS2qHP6WjdKo1QPFmWD5dp
 EyXGSqGoZrIPtnKohLUN9EiVXanRQWJr3L0gw2CYXpmwfSKfMC3CQraEC1jOc01l
 TfsLJGbl3L5XpLzxoBwDu44cqp+VvbalergdcmsDTLDFHhONY2g5LJh6C9/EDdnQ
 Cde1uHikGw==
 =sOGG
 -----END PGP SIGNATURE-----

Merge tag 'block-6.1-2022-11-18' of git://git.kernel.dk/linux

Pull block fixes from Jens Axboe:

 - NVMe pull request via Christoph:
      - Two more bogus nid quirks (Bean Huo, Tiago Dias Ferreira)
      - Memory leak fix in nvmet (Sagi Grimberg)

 - Regression fix for block cgroups pinning the wrong blkcg, causing
   leaks of cgroups and blkcgs (Chris)

 - UAF fix for drbd setup error handling (Dan)

 - Fix DMA alignment propagation in DM (Keith)

* tag 'block-6.1-2022-11-18' of git://git.kernel.dk/linux:
  dm-log-writes: set dma_alignment limit in io_hints
  dm-integrity: set dma_alignment limit in io_hints
  block: make blk_set_default_limits() private
  dm-crypt: provide dma_alignment limit in io_hints
  block: make dma_alignment a stacking queue_limit
  nvmet: fix a memory leak in nvmet_auth_set_key
  nvme-pci: add NVME_QUIRK_BOGUS_NID for Netac NV7000
  drbd: use after free in drbd_create_device()
  nvme-pci: add NVME_QUIRK_BOGUS_NID for Micron Nitro
  blk-cgroup: properly pin the parent in blkcg_css_online
2022-11-18 13:59:45 -08:00
Keith Busch
b3228254bb block: make blk_set_default_limits() private
There are no external users of this function.

Signed-off-by: Keith Busch <kbusch@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/20221110184501.2451620-4-kbusch@meta.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-11-16 15:58:11 -07:00
Keith Busch
c964d62f5c block: make dma_alignment a stacking queue_limit
Device mappers had always been getting the default 511 dma mask, but
the underlying device might have a larger alignment requirement. Since
this value is used to determine alloweable direct-io alignment, this
needs to be a stackable limit.

Signed-off-by: Keith Busch <kbusch@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/20221110184501.2451620-2-kbusch@meta.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-11-16 15:58:11 -07:00
Chris Mason
d7dbd43f4a blk-cgroup: properly pin the parent in blkcg_css_online
blkcg_css_online is supposed to pin the blkcg of the parent, but
397c9f46ee refactored things and along the way, changed it to pin the
css instead.  This results in extra pins, and we end up leaking blkcgs
and cgroups.

Fixes: 397c9f46ee ("blk-cgroup: move blkcg_{pin,unpin}_online out of line")
Signed-off-by: Chris Mason <clm@fb.com>
Spotted-by: Rik van Riel <riel@surriel.com>
Cc: <stable@vger.kernel.org> # v5.19+
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Link: https://lore.kernel.org/r/20221114181930.2093706-1-clm@fb.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-11-14 12:13:19 -07:00
Greg Kroah-Hartman
07650916af Linux 6.1-rc5
-----BEGIN PGP SIGNATURE-----
 
 iQFSBAABCAA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAmNxXdgeHHRvcnZhbGRz
 QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiGMrgH/1r/vCrDtoaSlKh3
 DQsm6QUI9AMpdKR9TjmNeQg2sNfI0g6TjbqQ2VWK+mNL8TTVv0hrQZF0aUEezM58
 9TJqtZVRN5NJ6dTNAeZFoW52QxcOQ6YQ6yTzp+UWw30sXgkJRups1iH8GTSlJ0VN
 fCsM6caQGI7QRyjnbf+A0fGET/jhe+hlnAtDzbDjE35HFRN1qCnRyvsIVpWipY+i
 HBnApc2cYCni/AnAF1Oh8Ci1DoooavGZG7LBzHiwFw/4AbjaRVCv0e8XEGPFmX+t
 QZxYkBl4PQH+jU3HD2QGJgxLf3g+Nfcpof4igMVutDTttnkWzrXnwfphjeWp+jq5
 vCh4V8Y=
 =Y0d5
 -----END PGP SIGNATURE-----

Merge tag 'v6.1-rc5' into android-mainline

Linux 6.1-rc5

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I2e20ae0b2f604942c1dfe0ee8170081fdd1efee6
2022-11-14 10:45:38 +01:00
Linus Torvalds
b0b6e2c9d3 block-6.1-2022-11-11
-----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCAAuFiEEwPw5LcreJtl1+l5K99NY+ylx4KYFAmNuaacQHGF4Ym9lQGtl
 cm5lbC5kawAKCRD301j7KXHgpiHOD/wMxAiJcZfhTUakXuJnOOdNqgOzIkTOw1u9
 BHS23p8FwwaESevpTOEiGHh9DVRGBzDJknwsAf/YoHV5CA3BvhlW8I2zHp8ybzWD
 Mq9LLK/waifYo0/5eWdEG2b4cH1kXeK9n377RWi+LstL+C7X/+0w6Q0wBTV5SxNF
 mWHfhnomtTz1A0qcxgSkyIuJOoUQ5iH9LZvoOze+kIiJf0S7C2/oKfBKuXO8iPxI
 wt76qMlb1+uNTuTLVHpZDbF11df7wYSrTZIfYBH5hYZ5KefM3cHUSgedoBbOb3Gy
 2TdctzWyjxBhUKeeZxkWgV3kJ3ha0hQ5lRxvy8R9uYs8NMxfhe2lfoyJmU1NtEvm
 xNIs1sRRYQ8BpnVOdwPRPVqmpGCauGj9I7W8KEOEzvGdUFN1TIpEucIfRL3mg88w
 8/4JCDi10PNRpyc1G1bb/vqXF11iX2YI8Fr9M+R9oW8V28qdMFBob5MK+TTCBGDL
 2lQHx0wCZMK3dUiLLv0mqFPcrK9v1mxpBBwpPGkzGf/FvmB00aV1n02Bo8prCD/d
 tY/aghHviDPkpaR0MJ4+MHllloZR+gbcxYfGbpdDUrN8ZVYRMIzi8NrwwPb98zqB
 d6CX8BPevi3/azjORf/I/v7egTSTRhH/JHBw7derANhPd7OSWLQfjhIHDhZoYs/q
 wsuIlnJOyA==
 =lEq0
 -----END PGP SIGNATURE-----

Merge tag 'block-6.1-2022-11-11' of git://git.kernel.dk/linux

Pull block fixes from Jens Axboe:

 - NVMe pull request via Christoph:
        - Quiet user passthrough command errors (Keith Busch)
        - Fix memory leak in nvmet_subsys_attr_model_store_locked
        - Fix a memory leak in nvmet-auth (Sagi Grimberg)

 - Fix a potential NULL point deref in bfq (Yu)

 - Allocate command/response buffers separately for DMA for sed-opal,
   rather than rely on embedded alignment (Serge)

* tag 'block-6.1-2022-11-11' of git://git.kernel.dk/linux:
  nvmet: fix a memory leak
  nvmet: fix memory leak in nvmet_subsys_attr_model_store_locked
  nvme: quiet user passthrough command errors
  block: sed-opal: kmalloc the cmd/resp buffers
  block, bfq: fix null pointer dereference in bfq_bio_bfqg()
2022-11-11 14:08:30 -08:00
Serge Semin
f829230dd5 block: sed-opal: kmalloc the cmd/resp buffers
In accordance with [1] the DMA-able memory buffers must be
cacheline-aligned otherwise the cache writing-back and invalidation
performed during the mapping may cause the adjacent data being lost. It's
specifically required for the DMA-noncoherent platforms [2]. Seeing the
opal_dev.{cmd,resp} buffers are implicitly used for DMAs in the NVME and
SCSI/SD drivers in framework of the nvme_sec_submit() and sd_sec_submit()
methods respectively they must be cacheline-aligned to prevent the denoted
problem. One of the option to guarantee that is to kmalloc the buffers
[2]. Let's explicitly allocate them then instead of embedding into the
opal_dev structure instance.

Note this fix was inspired by the commit c94b7f9bab ("nvme-hwmon:
kmalloc the NVME SMART log buffer").

[1] Documentation/core-api/dma-api.rst
[2] Documentation/core-api/dma-api-howto.rst

Fixes: 455a7b238c ("block: Add Sed-opal library")
Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/20221107203944.31686-1-Sergey.Semin@baikalelectronics.ru
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-11-08 07:14:35 -07:00
Yu Kuai
f02be9002c block, bfq: fix null pointer dereference in bfq_bio_bfqg()
Out test found a following problem in kernel 5.10, and the same problem
should exist in mainline:

BUG: kernel NULL pointer dereference, address: 0000000000000094
PGD 0 P4D 0
Oops: 0000 [#1] SMP
CPU: 7 PID: 155 Comm: kworker/7:1 Not tainted 5.10.0-01932-g19e0ace2ca1d-dirty 4
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS ?-20190727_073836-b4
Workqueue: kthrotld blk_throtl_dispatch_work_fn
RIP: 0010:bfq_bio_bfqg+0x52/0xc0
Code: 94 00 00 00 00 75 2e 48 8b 40 30 48 83 05 35 06 c8 0b 01 48 85 c0 74 3d 4b
RSP: 0018:ffffc90001a1fba0 EFLAGS: 00010002
RAX: ffff888100d60400 RBX: ffff8881132e7000 RCX: 0000000000000000
RDX: 0000000000000017 RSI: ffff888103580a18 RDI: ffff888103580a18
RBP: ffff8881132e7000 R08: 0000000000000000 R09: ffffc90001a1fe10
R10: 0000000000000a20 R11: 0000000000034320 R12: 0000000000000000
R13: ffff888103580a18 R14: ffff888114447000 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff88881fdc0000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000094 CR3: 0000000100cdb000 CR4: 00000000000006e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 bfq_bic_update_cgroup+0x3c/0x350
 ? ioc_create_icq+0x42/0x270
 bfq_init_rq+0xfd/0x1060
 bfq_insert_requests+0x20f/0x1cc0
 ? ioc_create_icq+0x122/0x270
 blk_mq_sched_insert_requests+0x86/0x1d0
 blk_mq_flush_plug_list+0x193/0x2a0
 blk_flush_plug_list+0x127/0x170
 blk_finish_plug+0x31/0x50
 blk_throtl_dispatch_work_fn+0x151/0x190
 process_one_work+0x27c/0x5f0
 worker_thread+0x28b/0x6b0
 ? rescuer_thread+0x590/0x590
 kthread+0x153/0x1b0
 ? kthread_flush_work+0x170/0x170
 ret_from_fork+0x1f/0x30
Modules linked in:
CR2: 0000000000000094
---[ end trace e2e59ac014314547 ]---
RIP: 0010:bfq_bio_bfqg+0x52/0xc0
Code: 94 00 00 00 00 75 2e 48 8b 40 30 48 83 05 35 06 c8 0b 01 48 85 c0 74 3d 4b
RSP: 0018:ffffc90001a1fba0 EFLAGS: 00010002
RAX: ffff888100d60400 RBX: ffff8881132e7000 RCX: 0000000000000000
RDX: 0000000000000017 RSI: ffff888103580a18 RDI: ffff888103580a18
RBP: ffff8881132e7000 R08: 0000000000000000 R09: ffffc90001a1fe10
R10: 0000000000000a20 R11: 0000000000034320 R12: 0000000000000000
R13: ffff888103580a18 R14: ffff888114447000 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff88881fdc0000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000094 CR3: 0000000100cdb000 CR4: 00000000000006e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400

Root cause is quite complex:

1) use bfq elevator for the test device.
2) create a cgroup CG
3) config blk throtl in CG

   blkg_conf_prep
    blkg_create

4) create a thread T1 and issue async io in CG:

   bio_init
    bio_associate_blkg
   ...
   submit_bio
    submit_bio_noacct
     blk_throtl_bio -> io is throttled
     // io submit is done

5) switch elevator:

   bfq_exit_queue
    blkcg_deactivate_policy
     list_for_each_entry(blkg, &q->blkg_list, q_node)
      blkg->pd[] = NULL
      // bfq policy is removed

5) thread t1 exist, then remove the cgroup CG:

   blkcg_unpin_online
    blkcg_destroy_blkgs
     blkg_destroy
      list_del_init(&blkg->q_node)
      // blkg is removed from queue list

6) switch elevator back to bfq

 bfq_init_queue
  bfq_create_group_hierarchy
   blkcg_activate_policy
    list_for_each_entry_reverse(blkg, &q->blkg_list)
     // blkg is removed from list, hence bfq policy is still NULL

7) throttled io is dispatched to bfq:

 bfq_insert_requests
  bfq_init_rq
   bfq_bic_update_cgroup
    bfq_bio_bfqg
     bfqg = blkg_to_bfqg(blkg)
     // bfqg is NULL because bfq policy is NULL

The problem is only possible in bfq because only bfq can be deactivated and
activated while queue is online, while others can only be deactivated while
the device is removed.

Fix the problem in bfq by checking if blkg is online before calling
blkg_to_bfqg().

Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20221108103434.2853269-1-yukuai1@huaweicloud.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-11-08 07:13:25 -07:00