Commit Graph

6872 Commits

Author SHA1 Message Date
Greg Kroah-Hartman 3e7bedcc0e Merge 5.10.198 into android12-5.10-lts
Changes in 5.10.198
	NFS: Use the correct commit info in nfs_join_page_group()
	NFS/pNFS: Report EINVAL errors from connect() to the server
	SUNRPC: Mark the cred for revalidation if the server rejects it
	tracing: Increase trace array ref count on enable and filter files
	ata: ahci: Drop pointless VPRINTK() calls and convert the remaining ones
	ata: libahci: clear pending interrupt status
	ext4: remove the 'group' parameter of ext4_trim_extent
	ext4: add new helper interface ext4_try_to_trim_range()
	ext4: scope ret locally in ext4_try_to_trim_range()
	ext4: change s_last_trim_minblks type to unsigned long
	ext4: mark group as trimmed only if it was fully scanned
	ext4: replace the traditional ternary conditional operator with with max()/min()
	ext4: move setting of trimmed bit into ext4_try_to_trim_range()
	ext4: do not let fstrim block system suspend
	tracing: Have event inject files inc the trace array ref count
	netfilter: nf_tables: integrate pipapo into commit protocol
	netfilter: nf_tables: don't skip expired elements during walk
	netfilter: nf_tables: GC transaction API to avoid race with control plane
	netfilter: nf_tables: adapt set backend to use GC transaction API
	netfilter: nft_set_hash: mark set element as dead when deleting from packet path
	netfilter: nf_tables: remove busy mark and gc batch API
	netfilter: nf_tables: don't fail inserts if duplicate has expired
	netfilter: nf_tables: fix GC transaction races with netns and netlink event exit path
	netfilter: nf_tables: GC transaction race with netns dismantle
	netfilter: nf_tables: GC transaction race with abort path
	netfilter: nf_tables: use correct lock to protect gc_list
	netfilter: nf_tables: defer gc run if previous batch is still pending
	netfilter: nft_set_rbtree: skip sync GC for new elements in this transaction
	netfilter: nft_set_rbtree: use read spinlock to avoid datapath contention
	netfilter: nft_set_pipapo: stop GC iteration if GC transaction allocation fails
	netfilter: nft_set_hash: try later when GC hits EAGAIN on iteration
	netfilter: nf_tables: fix memleak when more than 255 elements expired
	ASoC: meson: spdifin: start hw on dai probe
	netfilter: nf_tables: disallow element removal on anonymous sets
	bpf: Avoid deadlock when using queue and stack maps from NMI
	selftests/tls: Add {} to avoid static checker warning
	selftests: tls: swap the TX and RX sockets in some tests
	ASoC: imx-audmix: Fix return error with devm_clk_get()
	i40e: Fix VF VLAN offloading when port VLAN is configured
	ipv4: fix null-deref in ipv4_link_failure
	powerpc/perf/hv-24x7: Update domain value check
	dccp: fix dccp_v4_err()/dccp_v6_err() again
	platform/x86: intel_scu_ipc: Check status after timeout in busy_loop()
	platform/x86: intel_scu_ipc: Check status upon timeout in ipc_wait_for_interrupt()
	platform/x86: intel_scu_ipc: Don't override scu in intel_scu_ipc_dev_simple_command()
	platform/x86: intel_scu_ipc: Fail IPC send if still busy
	x86/srso: Fix srso_show_state() side effect
	x86/srso: Fix SBPB enablement for spec_rstack_overflow=off
	net: hns3: only enable unicast promisc when mac table full
	net: hns3: add 5ms delay before clear firmware reset irq source
	net: bridge: use DEV_STATS_INC()
	team: fix null-ptr-deref when team device type is changed
	netfilter: ipset: Fix race between IPSET_CMD_CREATE and IPSET_CMD_SWAP
	seqlock: avoid -Wshadow warnings
	seqlock: Rename __seqprop() users
	seqlock: Prefix internal seqcount_t-only macros with a "do_"
	locking/seqlock: Do the lockdep annotation before locking in do_write_seqcount_begin_nested()
	bnxt_en: Flush XDP for bnxt_poll_nitroa0()'s NAPI
	net: rds: Fix possible NULL-pointer dereference
	gpio: tb10x: Fix an error handling path in tb10x_gpio_probe()
	i2c: mux: demux-pinctrl: check the return value of devm_kstrdup()
	netfilter: nf_tables: unregister flowtable hooks on netns exit
	netfilter: nf_tables: double hook unregistration in netns path
	Input: i8042 - rename i8042-x86ia64io.h to i8042-acpipnpio.h
	Input: i8042 - add quirk for TUXEDO Gemini 17 Gen1/Clevo PD70PN
	mmc: renesas_sdhi: probe into TMIO after SCC parameters have been setup
	mmc: renesas_sdhi: populate SCC pointer at the proper place
	mmc: tmio: support custom irq masks
	mmc: renesas_sdhi: register irqs before registering controller
	media: venus: core: Add io base variables for each block
	media: venus: hfi,pm,firmware: Convert to block relative addressing
	media: venus: hfi: Define additional 6xx registers
	media: venus: core: Add differentiator IS_V6(core)
	media: venus: hfi: Add a 6xx boot logic
	media: venus: hfi_venus: Write to VIDC_CTRL_INIT after unmasking interrupts
	netfilter: use actual socket sk for REJECT action
	netfilter: nft_exthdr: Support SCTP chunks
	netfilter: nf_tables: add and use nft_sk helper
	netfilter: nf_tables: add and use nft_thoff helper
	netfilter: nft_exthdr: break evaluation if setting TCP option fails
	netfilter: exthdr: add support for tcp option removal
	netfilter: nft_exthdr: Fix non-linear header modification
	ata: libata: Rename link flag ATA_LFLAG_NO_DB_DELAY
	ata: ahci: Add support for AMD A85 FCH (Hudson D4)
	ata: ahci: Rename board_ahci_mobile
	ata: ahci: Add Elkhart Lake AHCI controller
	btrfs: reset destination buffer when read_extent_buffer() gets invalid range
	MIPS: Alchemy: only build mmc support helpers if au1xmmc is enabled
	bus: ti-sysc: Use fsleep() instead of usleep_range() in sysc_reset()
	bus: ti-sysc: Fix missing AM35xx SoC matching
	clk: tegra: fix error return case for recalc_rate
	ARM: dts: omap: correct indentation
	ARM: dts: ti: omap: Fix bandgap thermal cells addressing for omap3/4
	ARM: dts: motorola-mapphone: Configure lower temperature passive cooling
	ARM: dts: motorola-mapphone: Add 1.2GHz OPP
	ARM: dts: motorola-mapphone: Drop second ti,wlcore compatible value
	ARM: dts: am335x: Guardian: Update beeper label
	ARM: dts: Unify pwm-omap-dmtimer node names
	ARM: dts: ti: omap: motorola-mapphone: Fix abe_clkctrl warning on boot
	bus: ti-sysc: Fix SYSC_QUIRK_SWSUP_SIDLE_ACT handling for uart wake-up
	power: supply: ucs1002: fix error code in ucs1002_get_property()
	xtensa: add default definition for XCHAL_HAVE_DIV32
	xtensa: iss/network: make functions static
	xtensa: boot: don't add include-dirs
	xtensa: boot/lib: fix function prototypes
	gpio: pmic-eic-sprd: Add can_sleep flag for PMIC EIC chip
	i2c: npcm7xx: Fix callback completion ordering
	dma-debug: don't call __dma_entry_alloc_check_leak() under free_entries_lock
	parisc: sba: Fix compile warning wrt list of SBA devices
	parisc: iosapic.c: Fix sparse warnings
	parisc: drivers: Fix sparse warning
	parisc: irq: Make irq_stack_union static to avoid sparse warning
	scsi: qedf: Add synchronization between I/O completions and abort
	selftests/ftrace: Correctly enable event in instance-event.tc
	ring-buffer: Avoid softlockup in ring_buffer_resize()
	selftests: fix dependency checker script
	ring-buffer: Do not attempt to read past "commit"
	platform/mellanox: mlxbf-bootctl: add NET dependency into Kconfig
	scsi: pm80xx: Use phy-specific SAS address when sending PHY_START command
	scsi: pm80xx: Avoid leaking tags when processing OPC_INB_SET_CONTROLLER_CONFIG command
	ata: libata-eh: do not clear ATA_PFLAG_EH_PENDING in ata_eh_reset()
	spi: nxp-fspi: reset the FLSHxCR1 registers
	bpf: Clarify error expectations from bpf_clone_redirect
	media: vb2: frame_vector.c: replace WARN_ONCE with a comment
	powerpc/watchpoints: Disable preemption in thread_change_pc()
	ncsi: Propagate carrier gain/loss events to the NCSI controller
	fbdev/sh7760fb: Depend on FB=y
	perf build: Define YYNOMEM as YYNOABORT for bison < 3.81
	sched/cpuacct: Fix user/system in shown cpuacct.usage*
	sched/cpuacct: Fix charge percpu cpuusage
	sched/cpuacct: Optimize away RCU read lock
	cgroup: Fix suspicious rcu_dereference_check() usage warning
	ACPI: Check StorageD3Enable _DSD property in ACPI code
	nvme-pci: factor the iod mempool creation into a helper
	nvme-pci: factor out a nvme_pci_alloc_dev helper
	nvme-pci: do not set the NUMA node of device if it has none
	watchdog: iTCO_wdt: No need to stop the timer in probe
	watchdog: iTCO_wdt: Set NO_REBOOT if the watchdog is not already running
	netfilter: nft_exthdr: Search chunks in SCTP packets only
	netfilter: nft_exthdr: Fix for unsafe packet data read
	nvme-pci: always return an ERR_PTR from nvme_pci_alloc_dev
	smack: Record transmuting in smk_transmuted
	smack: Retrieve transmuting information in smack_inode_getsecurity()
	Smack:- Use overlay inode label in smack_inode_copy_up()
	Revert "tty: n_gsm: fix UAF in gsm_cleanup_mux"
	serial: 8250_port: Check IRQ data before use
	nilfs2: fix potential use after free in nilfs_gccache_submit_read_data()
	netfilter: nf_tables: disallow rule removal from chain binding
	ALSA: hda: Disable power save for solving pop issue on Lenovo ThinkCentre M70q
	ata: libata-scsi: ignore reserved bits for REPORT SUPPORTED OPERATION CODES
	i2c: i801: unregister tco_pdev in i801_probe() error path
	Revert "SUNRPC dont update timeout value on connection reset"
	proc: nommu: /proc/<pid>/maps: release mmap read lock
	ring-buffer: Update "shortest_full" in polling
	btrfs: properly report 0 avail for very full file systems
	bpf: Fix BTF_ID symbol generation collision
	bpf: Fix BTF_ID symbol generation collision in tools/
	net: thunderbolt: Fix TCPv6 GSO checksum calculation
	ata: libata-core: Fix ata_port_request_pm() locking
	ata: libata-core: Fix port and device removal
	ata: libata-core: Do not register PM operations for SAS ports
	ata: libata-sata: increase PMP SRST timeout to 10s
	fs: binfmt_elf_efpic: fix personality for ELF-FDPIC
	spi: spi-zynqmp-gqspi: Fix runtime PM imbalance in zynqmp_qspi_probe
	spi: zynqmp-gqspi: fix clock imbalance on probe failure
	NFS: Cleanup unused rpc_clnt variable
	NFS: rename nfs_client_kset to nfs_kset
	NFSv4: Fix a state manager thread deadlock regression
	ring-buffer: remove obsolete comment for free_buffer_page()
	ring-buffer: Fix bytes info in per_cpu buffer stats
	drm/mediatek: Fix backport issue in mtk_drm_gem_prime_vmap()
	rbd: move rbd_dev_refresh() definition
	rbd: decouple header read-in from updating rbd_dev->header
	rbd: decouple parent info read-in from updating rbd_dev
	rbd: take header_rwsem in rbd_dev_refresh() only when updating
	block: fix use-after-free of q->q_usage_counter
	Revert "clk: imx: pll14xx: dynamically configure PLL for 393216000/361267200Hz"
	Revert "PCI: qcom: Disable write access to read only registers for IP v2.3.3"
	scsi: zfcp: Fix a double put in zfcp_port_enqueue()
	qed/red_ll2: Fix undefined behavior bug in struct qed_ll2_info
	wifi: mwifiex: Fix tlv_buf_left calculation
	net: replace calls to sock->ops->connect() with kernel_connect()
	net: prevent rewrite of msg_name in sock_sendmsg()
	arm64: Add Cortex-A520 CPU part definition
	ubi: Refuse attaching if mtd's erasesize is 0
	wifi: iwlwifi: dbg_ini: fix structure packing
	wifi: mwifiex: Fix oob check condition in mwifiex_process_rx_packet
	bpf: Fix tr dereferencing
	drivers/net: process the result of hdlc_open() and add call of hdlc_close() in uhdlc_close()
	wifi: mt76: mt76x02: fix MT76x0 external LNA gain handling
	regmap: rbtree: Fix wrong register marked as in-cache when creating new node
	ima: Finish deprecation of IMA_TRUSTED_KEYRING Kconfig
	scsi: target: core: Fix deadlock due to recursive locking
	ima: rework CONFIG_IMA dependency block
	NFSv4: Fix a nfs4_state_manager() race
	modpost: add missing else to the "of" check
	net: fix possible store tearing in neigh_periodic_work()
	ipv4, ipv6: Fix handling of transhdrlen in __ip{,6}_append_data()
	net: dsa: mv88e6xxx: Avoid EEPROM timeout when EEPROM is absent
	net: usb: smsc75xx: Fix uninit-value access in __smsc75xx_read_reg
	net: nfc: llcp: Add lock when modifying device list
	net: ethernet: ti: am65-cpsw: Fix error code in am65_cpsw_nuss_init_tx_chns()
	netfilter: handle the connecting collision properly in nf_conntrack_proto_sctp
	netfilter: nf_tables: nft_set_rbtree: fix spurious insertion failure
	net: stmmac: dwmac-stm32: fix resume on STM32 MCU
	tipc: fix a potential deadlock on &tx->lock
	tcp: fix quick-ack counting to count actual ACKs of new data
	tcp: fix delayed ACKs for MSS boundary condition
	sctp: update transport state when processing a dupcook packet
	sctp: update hb timer immediately after users change hb_interval
	cpupower: add Makefile dependencies for install targets
	dm zoned: free dmz->ddev array in dmz_put_zoned_devices
	RDMA/core: Require admin capabilities to set system parameters
	of: dynamic: Fix potential memory leak in of_changeset_action()
	IB/mlx4: Fix the size of a buffer in add_port_entries()
	gpio: aspeed: fix the GPIO number passed to pinctrl_gpio_set_config()
	gpio: pxa: disable pinctrl calls for MMP_GPIO
	RDMA/cma: Initialize ib_sa_multicast structure to 0 when join
	RDMA/cma: Fix truncation compilation warning in make_cma_ports
	RDMA/uverbs: Fix typo of sizeof argument
	RDMA/siw: Fix connection failure handling
	RDMA/mlx5: Fix NULL string error
	parisc: Restore __ldcw_align for PA-RISC 2.0 processors
	netfilter: nf_tables: fix kdoc warnings after gc rework
	netfilter: nftables: exthdr: fix 4-byte stack OOB write
	mmc: renesas_sdhi: only reset SCC when its pointer is populated
	xen/events: replace evtchn_rwlock with RCU
	Linux 5.10.198

Change-Id: Iabfdf919ae63e41a565e523087d800ebc20e5448
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-10-26 17:54:46 +00:00
Greg Kroah-Hartman 3414e62421 Merge 5.10.197 into android12-5.10-lts
Changes in 5.10.197
	autofs: fix memory leak of waitqueues in autofs_catatonic_mode
	btrfs: output extra debug info if we failed to find an inline backref
	locks: fix KASAN: use-after-free in trace_event_raw_event_filelock_lock
	ACPICA: Add AML_NO_OPERAND_RESOLVE flag to Timer
	kernel/fork: beware of __put_task_struct() calling context
	rcuscale: Move rcu_scale_writer() schedule_timeout_uninterruptible() to _idle()
	scftorture: Forgive memory-allocation failure if KASAN
	ACPI: video: Add backlight=native DMI quirk for Lenovo Ideapad Z470
	perf/smmuv3: Enable HiSilicon Erratum 162001900 quirk for HIP08/09
	ACPI: video: Add backlight=native DMI quirk for Apple iMac12,1 and iMac12,2
	hw_breakpoint: fix single-stepping when using bpf_overflow_handler
	devlink: remove reload failed checks in params get/set callbacks
	crypto: lrw,xts - Replace strlcpy with strscpy
	wifi: ath9k: fix fortify warnings
	wifi: ath9k: fix printk specifier
	wifi: mwifiex: fix fortify warning
	wifi: wil6210: fix fortify warnings
	crypto: lib/mpi - avoid null pointer deref in mpi_cmp_ui()
	tpm_tis: Resend command to recover from data transfer errors
	mmc: sdhci-esdhc-imx: improve ESDHC_FLAG_ERR010450
	alx: fix OOB-read compiler warning
	netfilter: ebtables: fix fortify warnings in size_entry_mwt()
	wifi: mac80211_hwsim: drop short frames
	drm/bridge: tc358762: Instruct DSI host to generate HSE packets
	samples/hw_breakpoint: Fix kernel BUG 'invalid opcode: 0000'
	ALSA: hda: intel-dsp-cfg: add LunarLake support
	drm/exynos: fix a possible null-pointer dereference due to data race in exynos_drm_crtc_atomic_disable()
	bus: ti-sysc: Configure uart quirks for k3 SoC
	md: raid1: fix potential OOB in raid1_remove_disk()
	ext2: fix datatype of block number in ext2_xattr_set2()
	fs/jfs: prevent double-free in dbUnmount() after failed jfs_remount()
	jfs: fix invalid free of JFS_IP(ipimap)->i_imap in diUnmount
	powerpc/pseries: fix possible memory leak in ibmebus_bus_init()
	media: dvb-usb-v2: af9035: Fix null-ptr-deref in af9035_i2c_master_xfer
	media: dw2102: Fix null-ptr-deref in dw2102_i2c_transfer()
	media: af9005: Fix null-ptr-deref in af9005_i2c_xfer
	media: anysee: fix null-ptr-deref in anysee_master_xfer
	media: az6007: Fix null-ptr-deref in az6007_i2c_xfer()
	media: dvb-usb-v2: gl861: Fix null-ptr-deref in gl861_i2c_master_xfer
	media: tuners: qt1010: replace BUG_ON with a regular error
	media: pci: cx23885: replace BUG with error return
	usb: gadget: fsl_qe_udc: validate endpoint index for ch9 udc
	scsi: target: iscsi: Fix buffer overflow in lio_target_nacl_info_show()
	serial: cpm_uart: Avoid suspicious locking
	media: pci: ipu3-cio2: Initialise timing struct to avoid a compiler warning
	kobject: Add sanity check for kset->kobj.ktype in kset_register()
	mtd: rawnand: brcmnand: Allow SoC to provide I/O operations
	mtd: rawnand: brcmnand: Fix ECC level field setting for v7.2 controller
	perf jevents: Make build dependency on test JSONs
	perf tools: Add an option to build without libbfd
	btrfs: move btrfs_pinned_by_swapfile prototype into volumes.h
	btrfs: add a helper to read the superblock metadata_uuid
	btrfs: compare the correct fsid/metadata_uuid in btrfs_validate_super
	drm: gm12u320: Fix the timeout usage for usb_bulk_msg()
	scsi: qla2xxx: Fix NULL vs IS_ERR() bug for debugfs_create_dir()
	selftests: tracing: Fix to unmount tracefs for recovering environment
	scsi: lpfc: Fix the NULL vs IS_ERR() bug for debugfs_create_file()
	x86/boot/compressed: Reserve more memory for page tables
	samples/hw_breakpoint: fix building without module unloading
	md/raid1: fix error: ISO C90 forbids mixed declarations
	attr: block mode changes of symlinks
	ovl: fix incorrect fdput() on aio completion
	btrfs: fix lockdep splat and potential deadlock after failure running delayed items
	btrfs: release path before inode lookup during the ino lookup ioctl
	drm/amdgpu: fix amdgpu_cs_p1_user_fence
	net/sched: Retire rsvp classifier
	proc: fix a dentry lock race between release_task and lookup
	mm/filemap: fix infinite loop in generic_file_buffered_read()
	drm/amd/display: enable cursor degamma for DCN3+ DRM legacy gamma
	tracing: Have current_trace inc the trace array ref count
	tracing: Have option files inc the trace array ref count
	nfsd: fix change_info in NFSv4 RENAME replies
	tracefs: Add missing lockdown check to tracefs_create_dir()
	i2c: aspeed: Reset the i2c controller when timeout occurs
	ata: libata: disallow dev-initiated LPM transitions to unsupported states
	scsi: megaraid_sas: Fix deadlock on firmware crashdump
	scsi: pm8001: Setup IRQs on resume
	ext4: fix rec_len verify error
	Linux 5.10.197

Change-Id: Ic8626d7d13ec54d438c4d80efe1f8b6bddeb84a8
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-10-26 17:52:15 +00:00
Fedor Pchelkin ccd87fe7a0 dm zoned: free dmz->ddev array in dmz_put_zoned_devices
commit 9850ccd5dd upstream.

Commit 4dba12881f ("dm zoned: support arbitrary number of devices")
made the pointers to additional zoned devices to be stored in a
dynamically allocated dmz->ddev array. However, this array is not freed.

Rename dmz_put_zoned_device to dmz_put_zoned_devices and fix it to
free the dmz->ddev array when cleaning up zoned device information.
Remove NULL assignment for all dmz->ddev elements and just free the
dmz->ddev array instead.

Found by Linux Verification Center (linuxtesting.org).

Fixes: 4dba12881f ("dm zoned: support arbitrary number of devices")
Cc: stable@vger.kernel.org
Signed-off-by: Fedor Pchelkin <pchelkin@ispras.ru>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-10-10 21:53:39 +02:00
Nigel Croxon 634444dea8 md/raid1: fix error: ISO C90 forbids mixed declarations
[ Upstream commit df203da47f ]

There is a compile error when this commit is added:
md: raid1: fix potential OOB in raid1_remove_disk()

drivers/md/raid1.c: In function 'raid1_remove_disk':
drivers/md/raid1.c:1844:9: error: ISO C90 forbids mixed declarations
and code [-Werror=declaration-after-statement]
1844 |         struct raid1_info *p = conf->mirrors + number;
     |         ^~~~~~

That's because the new code was inserted before the struct.
The change is move the struct command above this commit.

Fixes: 8b0472b50b ("md: raid1: fix potential OOB in raid1_remove_disk()")
Signed-off-by: Nigel Croxon <ncroxon@redhat.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/46d929d0-2aab-4cf2-b2bf-338963e8ba5a@redhat.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-09-23 11:01:09 +02:00
Zhang Shurong 7993cfc041 md: raid1: fix potential OOB in raid1_remove_disk()
[ Upstream commit 8b0472b50b ]

If rddev->raid_disk is greater than mddev->raid_disks, there will be
an out-of-bounds in raid1_remove_disk(). We have already found
similar reports as follows:

1) commit d17f744e88 ("md-raid10: fix KASAN warning")
2) commit 1ebc2cec0b ("dm raid: fix KASAN warning in raid5_remove_disk")

Fix this bug by checking whether the "number" variable is
valid.

Signed-off-by: Zhang Shurong <zhang_shurong@foxmail.com>
Reviewed-by: Yu Kuai <yukuai3@huawei.com>
Link: https://lore.kernel.org/r/tencent_0D24426FAC6A21B69AC0C03CE4143A508F09@qq.com
Signed-off-by: Song Liu <song@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-09-23 11:01:07 +02:00
Greg Kroah-Hartman 8026d5839b Merge 5.10.195 into android12-5.10-lts
Changes in 5.10.195
	erofs: ensure that the post-EOF tails are all zeroed
	ARM: pxa: remove use of symbol_get()
	mmc: au1xmmc: force non-modular build and remove symbol_get usage
	net: enetc: use EXPORT_SYMBOL_GPL for enetc_phc_index
	rtc: ds1685: use EXPORT_SYMBOL_GPL for ds1685_rtc_poweroff
	modules: only allow symbol_get of EXPORT_SYMBOL_GPL modules
	USB: serial: option: add Quectel EM05G variant (0x030e)
	USB: serial: option: add FOXCONN T99W368/T99W373 product
	usb: dwc3: meson-g12a: do post init to fix broken usb after resumption
	usb: chipidea: imx: improve logic if samsung,picophy-* parameter is 0
	HID: wacom: remove the battery when the EKR is off
	staging: rtl8712: fix race condition
	Bluetooth: btsdio: fix use after free bug in btsdio_remove due to race condition
	configfs: fix a race in configfs_lookup()
	serial: qcom-geni: fix opp vote on shutdown
	serial: sc16is7xx: fix broken port 0 uart init
	serial: sc16is7xx: fix bug when first setting GPIO direction
	firmware: stratix10-svc: Fix an NULL vs IS_ERR() bug in probe
	fsi: master-ast-cf: Add MODULE_FIRMWARE macro
	nilfs2: fix general protection fault in nilfs_lookup_dirty_data_buffers()
	nilfs2: fix WARNING in mark_buffer_dirty due to discarded buffer reuse
	pinctrl: amd: Don't show `Invalid config param` errors
	ASoC: rt5682: Fix a problem with error handling in the io init function of the soundwire
	ARM: dts: imx: update sdma node name format
	ARM: dts: imx7s: Drop dma-apb interrupt-names
	ARM: dts: imx: Adjust dma-apbh node name
	ARM: dts: imx: Set default tuning step for imx7d usdhc
	phy: qcom-snps-femto-v2: use qcom_snps_hsphy_suspend/resume error code
	media: pulse8-cec: handle possible ping error
	media: pci: cx23885: fix error handling for cx23885 ATSC boards
	9p: virtio: make sure 'offs' is initialized in zc_request
	ASoC: da7219: Flush pending AAD IRQ when suspending
	ASoC: da7219: Check for failure reading AAD IRQ events
	ethernet: atheros: fix return value check in atl1c_tso_csum()
	vxlan: generalize vxlan_parse_gpe_hdr and remove unused args
	m68k: Fix invalid .section syntax
	s390/dasd: use correct number of retries for ERP requests
	s390/dasd: fix hanging device after request requeue
	fs/nls: make load_nls() take a const parameter
	ASoc: codecs: ES8316: Fix DMIC config
	ASoC: atmel: Fix the 8K sample parameter in I2SC master
	platform/x86: intel: hid: Always call BTNL ACPI method
	platform/x86: huawei-wmi: Silence ambient light sensor
	drm/amd/display: Exit idle optimizations before attempt to access PHY
	ovl: Always reevaluate the file signature for IMA
	ata: pata_arasan_cf: Use dev_err_probe() instead dev_err() in data_xfer()
	security: keys: perform capable check only on privileged operations
	kprobes: Prohibit probing on CFI preamble symbol
	clk: fixed-mmio: make COMMON_CLK_FIXED_MMIO depend on HAS_IOMEM
	vmbus_testing: fix wrong python syntax for integer value comparison
	net: usb: qmi_wwan: add Quectel EM05GV2
	idmaengine: make FSL_EDMA and INTEL_IDMA64 depends on HAS_IOMEM
	scsi: qedi: Fix potential deadlock on &qedi_percpu->p_work_lock
	netlabel: fix shift wrapping bug in netlbl_catmap_setlong()
	bnx2x: fix page fault following EEH recovery
	sctp: handle invalid error codes without calling BUG()
	scsi: storvsc: Always set no_report_opcodes
	ALSA: seq: oss: Fix racy open/close of MIDI devices
	tracing: Introduce pipe_cpumask to avoid race on trace_pipes
	platform/mellanox: Fix mlxbf-tmfifo not handling all virtio CONSOLE notifications
	net: Avoid address overwrite in kernel_connect
	udf: Check consistency of Space Bitmap Descriptor
	udf: Handle error when adding extent to a file
	Revert "net: macsec: preserve ingress frame ordering"
	reiserfs: Check the return value from __getblk()
	eventfd: Export eventfd_ctx_do_read()
	eventfd: prevent underflow for eventfd semaphores
	fs: Fix error checking for d_hash_and_lookup()
	tmpfs: verify {g,u}id mount options correctly
	selftests/harness: Actually report SKIP for signal tests
	refscale: Fix uninitalized use of wait_queue_head_t
	OPP: Fix passing 0 to PTR_ERR in _opp_attach_genpd()
	selftests/resctrl: Don't leak buffer in fill_cache()
	selftests/resctrl: Unmount resctrl FS if child fails to run benchmark
	selftests/resctrl: Close perf value read fd on errors
	x86/decompressor: Don't rely on upper 32 bits of GPRs being preserved
	perf/imx_ddr: don't enable counter0 if none of 4 counters are used
	s390/pkey: fix/harmonize internal keyblob headers
	s390/paes: fix PKEY_TYPE_EP11_AES handling for secure keyblobs
	x86/efistub: Fix PCI ROM preservation in mixed mode
	cpufreq: powernow-k8: Use related_cpus instead of cpus in driver.exit()
	bpftool: Use a local bpf_perf_event_value to fix accessing its fields
	bpf: Clear the probe_addr for uprobe
	tcp: tcp_enter_quickack_mode() should be static
	hwrng: nomadik - keep clock enabled while hwrng is registered
	regmap: rbtree: Use alloc_flags for memory allocations
	udp: re-score reuseport groups when connected sockets are present
	bpf: reject unhashed sockets in bpf_sk_assign
	wifi: mt76: testmode: add nla_policy for MT76_TM_ATTR_TX_LENGTH
	spi: tegra20-sflash: fix to check return value of platform_get_irq() in tegra_sflash_probe()
	can: gs_usb: gs_usb_receive_bulk_callback(): count RX overflow errors also in case of OOM
	wifi: mwifiex: Fix OOB and integer underflow when rx packets
	wifi: mwifiex: fix error recovery in PCIE buffer descriptor management
	selftests/bpf: fix static assert compilation issue for test_cls_*.c
	crypto: stm32 - Properly handle pm_runtime_get failing
	crypto: api - Use work queue in crypto_destroy_instance
	Bluetooth: nokia: fix value check in nokia_bluetooth_serdev_probe()
	Bluetooth: Fix potential use-after-free when clear keys
	net: tcp: fix unexcepted socket die when snd_wnd is 0
	selftests/bpf: Clean up fmod_ret in bench_rename test script
	ice: ice_aq_check_events: fix off-by-one check when filling buffer
	crypto: caam - fix unchecked return value error
	hwrng: iproc-rng200 - Implement suspend and resume calls
	lwt: Fix return values of BPF xmit ops
	lwt: Check LWTUNNEL_XMIT_CONTINUE strictly
	fs: ocfs2: namei: check return value of ocfs2_add_entry()
	wifi: mwifiex: fix memory leak in mwifiex_histogram_read()
	wifi: mwifiex: Fix missed return in oob checks failed path
	samples/bpf: fix broken map lookup probe
	wifi: ath9k: fix races between ath9k_wmi_cmd and ath9k_wmi_ctrl_rx
	wifi: ath9k: protect WMI command response buffer replacement with a lock
	wifi: mwifiex: avoid possible NULL skb pointer dereference
	Bluetooth: btusb: Do not call kfree_skb() under spin_lock_irqsave()
	wifi: ath9k: use IS_ERR() with debugfs_create_dir()
	net: arcnet: Do not call kfree_skb() under local_irq_disable()
	mlxsw: i2c: Fix chunk size setting in output mailbox buffer
	mlxsw: i2c: Limit single transaction buffer size
	hwmon: (tmp513) Fix the channel number in tmp51x_is_visible()
	net/sched: sch_hfsc: Ensure inner classes have fsc curve
	netrom: Deny concurrent connect().
	drm/bridge: tc358764: Fix debug print parameter order
	quota: factor out dquot_write_dquot()
	quota: rename dquot_active() to inode_quota_active()
	quota: add new helper dquot_active()
	quota: fix dqput() to follow the guarantees dquot_srcu should provide
	ASoC: stac9766: fix build errors with REGMAP_AC97
	soc: qcom: ocmem: Add OCMEM hardware version print
	soc: qcom: ocmem: Fix NUM_PORTS & NUM_MACROS macros
	arm64: dts: qcom: msm8996: Add missing interrupt to the USB2 controller
	drm/amdgpu: avoid integer overflow warning in amdgpu_device_resize_fb_bar()
	ARM: dts: BCM5301X: Harmonize EHCI/OHCI DT nodes name
	ARM: dts: BCM53573: Describe on-SoC BCM53125 rev 4 switch
	ARM: dts: BCM53573: Drop nonexistent #usb-cells
	ARM: dts: BCM53573: Add cells sizes to PCIe node
	ARM: dts: BCM53573: Use updated "spi-gpio" binding properties
	drm/etnaviv: fix dumping of active MMU context
	x86/mm: Fix PAT bit missing from page protection modify mask
	ARM: dts: s3c64xx: align pinctrl with dtschema
	ARM: dts: samsung: s3c6410-mini6410: correct ethernet reg addresses (split)
	ARM: dts: s5pv210: adjust node names to DT spec
	ARM: dts: s5pv210: add dummy 5V regulator for backlight on SMDKv210
	ARM: dts: samsung: s5pv210-smdkv210: correct ethernet reg addresses (split)
	drm: adv7511: Fix low refresh rate register for ADV7533/5
	ARM: dts: BCM53573: Fix Ethernet info for Luxul devices
	arm64: dts: qcom: sdm845: Add missing RPMh power domain to GCC
	arm64: dts: qcom: sdm845: Fix the min frequency of "ice_core_clk"
	drm/amdgpu: Update min() to min_t() in 'amdgpu_info_ioctl'
	md/bitmap: don't set max_write_behind if there is no write mostly device
	md/md-bitmap: hold 'reconfig_mutex' in backlog_store()
	drm/tegra: Remove superfluous error messages around platform_get_irq()
	drm/tegra: dpaux: Fix incorrect return value of platform_get_irq
	of: unittest: fix null pointer dereferencing in of_unittest_find_node_by_name()
	drm/armada: Fix off-by-one error in armada_overlay_get_property()
	drm/panel: simple: Add missing connector type and pixel format for AUO T215HVN01
	ima: Remove deprecated IMA_TRUSTED_KEYRING Kconfig
	drm: xlnx: zynqmp_dpsub: Add missing check for dma_set_mask
	drm/msm/mdp5: Don't leak some plane state
	firmware: meson_sm: fix to avoid potential NULL pointer dereference
	smackfs: Prevent underflow in smk_set_cipso()
	drm/amd/pm: fix variable dereferenced issue in amdgpu_device_attr_create()
	drm/msm/a2xx: Call adreno_gpu_init() earlier
	audit: fix possible soft lockup in __audit_inode_child()
	bus: ti-sysc: Fix build warning for 64-bit build
	drm/mediatek: Fix potential memory leak if vmap() fail
	bus: ti-sysc: Fix cast to enum warning
	of: unittest: Fix overlay type in apply/revert check
	ALSA: ac97: Fix possible error value of *rac97
	ipmi:ssif: Add check for kstrdup
	ipmi:ssif: Fix a memory leak when scanning for an adapter
	drivers: clk: keystone: Fix parameter judgment in _of_pll_clk_init()
	clk: sunxi-ng: Modify mismatched function name
	clk: qcom: gcc-sc7180: use ARRAY_SIZE instead of specifying num_parents
	clk: qcom: gcc-sc7180: Fix up gcc_sdcc2_apps_clk_src
	ext4: correct grp validation in ext4_mb_good_group
	clk: qcom: gcc-sm8250: use ARRAY_SIZE instead of specifying num_parents
	clk: qcom: gcc-sm8250: Fix gcc_sdcc2_apps_clk_src
	clk: qcom: reset: Use the correct type of sleep/delay based on length
	PCI: Mark NVIDIA T4 GPUs to avoid bus reset
	pinctrl: mcp23s08: check return value of devm_kasprintf()
	PCI: pciehp: Use RMW accessors for changing LNKCTL
	PCI/ASPM: Use RMW accessors for changing LNKCTL
	clk: imx8mp: fix sai4 clock
	clk: imx: composite-8m: fix clock pauses when set_rate would be a no-op
	vfio/type1: fix cap_migration information leak
	powerpc/fadump: reset dump area size if fadump memory reserve fails
	powerpc/perf: Convert fsl_emb notifier to state machine callbacks
	drm/amdgpu: Use RMW accessors for changing LNKCTL
	drm/radeon: Use RMW accessors for changing LNKCTL
	net/mlx5: Use RMW accessors for changing LNKCTL
	wifi: ath10k: Use RMW accessors for changing LNKCTL
	powerpc: Don't include lppaca.h in paca.h
	powerpc/pseries: Rework lppaca_shared_proc() to avoid DEBUG_PREEMPT
	nfs/blocklayout: Use the passed in gfp flags
	powerpc/iommu: Fix notifiers being shared by PCI and VIO buses
	jfs: validate max amount of blocks before allocation.
	fs: lockd: avoid possible wrong NULL parameter
	NFSD: da_addr_body field missing in some GETDEVICEINFO replies
	NFS: Guard against READDIR loop when entry names exceed MAXNAMELEN
	NFSv4.2: fix handling of COPY ERR_OFFLOAD_NO_REQ
	media: ad5820: Drop unsupported ad5823 from i2c_ and of_device_id tables
	media: i2c: tvp5150: check return value of devm_kasprintf()
	media: v4l2-core: Fix a potential resource leak in v4l2_fwnode_parse_link()
	drivers: usb: smsusb: fix error handling code in smsusb_init_device
	media: dib7000p: Fix potential division by zero
	media: dvb-usb: m920x: Fix a potential memory leak in m920x_i2c_xfer()
	media: cx24120: Add retval check for cx24120_message_send()
	scsi: hisi_sas: Print SAS address for v3 hw erroneous completion print
	scsi: libsas: Introduce more SAM status code aliases in enum exec_status
	scsi: hisi_sas: Modify v3 HW SSP underflow error processing
	scsi: hisi_sas: Modify v3 HW SATA completion error processing
	scsi: hisi_sas: Fix warnings detected by sparse
	scsi: hisi_sas: Fix normally completed I/O analysed as failed
	media: rkvdec: increase max supported height for H.264
	media: mediatek: vcodec: Return NULL if no vdec_fb is found
	usb: phy: mxs: fix getting wrong state with mxs_phy_is_otg_host()
	scsi: RDMA/srp: Fix residual handling
	scsi: iscsi: Rename iscsi_set_param() to iscsi_if_set_param()
	scsi: iscsi: Add length check for nlattr payload
	scsi: iscsi: Add strlen() check in iscsi_if_set{_host}_param()
	scsi: be2iscsi: Add length check when parsing nlattrs
	scsi: qla4xxx: Add length check when parsing nlattrs
	serial: sprd: Assign sprd_port after initialized to avoid wrong access
	serial: sprd: Fix DMA buffer leak issue
	x86/APM: drop the duplicate APM_MINOR_DEV macro
	scsi: qedf: Do not touch __user pointer in qedf_dbg_stop_io_on_error_cmd_read() directly
	scsi: qedf: Do not touch __user pointer in qedf_dbg_debug_cmd_read() directly
	scsi: qedf: Do not touch __user pointer in qedf_dbg_fp_int_cmd_read() directly
	coresight: tmc: Explicit type conversions to prevent integer overflow
	dma-buf/sync_file: Fix docs syntax
	driver core: test_async: fix an error code
	IB/uverbs: Fix an potential error pointer dereference
	fsi: aspeed: Reset master errors after CFAM reset
	iommu/qcom: Disable and reset context bank before programming
	iommu/vt-d: Fix to flush cache of PASID directory table
	media: go7007: Remove redundant if statement
	USB: gadget: f_mass_storage: Fix unused variable warning
	media: ov5640: Enable MIPI interface in ov5640_set_power_mipi()
	media: i2c: ov2680: Set V4L2_CTRL_FLAG_MODIFY_LAYOUT on flips
	media: ov2680: Remove auto-gain and auto-exposure controls
	media: ov2680: Fix ov2680_bayer_order()
	media: ov2680: Fix vflip / hflip set functions
	media: ov2680: Fix regulators being left enabled on ov2680_power_on() errors
	cgroup:namespace: Remove unused cgroup_namespaces_init()
	scsi: core: Use 32-bit hostnum in scsi_host_lookup()
	scsi: fcoe: Fix potential deadlock on &fip->ctlr_lock
	serial: tegra: handle clk prepare error in tegra_uart_hw_init()
	amba: bus: fix refcount leak
	Revert "IB/isert: Fix incorrect release of isert connection"
	RDMA/siw: Balance the reference of cep->kref in the error path
	RDMA/siw: Correct wrong debug message
	HID: logitech-dj: Fix error handling in logi_dj_recv_switch_to_dj_mode()
	HID: multitouch: Correct devm device reference for hidinput input_dev name
	x86/speculation: Mark all Skylake CPUs as vulnerable to GDS
	tracing: Fix race issue between cpu buffer write and swap
	mtd: rawnand: brcmnand: Fix mtd oobsize
	phy/rockchip: inno-hdmi: use correct vco_div_5 macro on rk3328
	phy/rockchip: inno-hdmi: round fractal pixclock in rk3328 recalc_rate
	phy/rockchip: inno-hdmi: do not power on rk3328 post pll on reg write
	rpmsg: glink: Add check for kstrdup
	mtd: spi-nor: Check bus width while setting QE bit
	mtd: rawnand: fsmc: handle clk prepare error in fsmc_nand_resume()
	um: Fix hostaudio build errors
	dmaengine: ste_dma40: Add missing IRQ check in d40_probe
	cpufreq: Fix the race condition while updating the transition_task of policy
	virtio_ring: fix avail_wrap_counter in virtqueue_add_packed
	igmp: limit igmpv3_newpack() packet size to IP_MAX_MTU
	netfilter: ipset: add the missing IP_SET_HASH_WITH_NET0 macro for ip_set_hash_netportnet.c
	netfilter: xt_u32: validate user space input
	netfilter: xt_sctp: validate the flag_info count
	skbuff: skb_segment, Call zero copy functions before using skbuff frags
	igb: set max size RX buffer when store bad packet is enabled
	PM / devfreq: Fix leak in devfreq_dev_release()
	ALSA: pcm: Fix missing fixup call in compat hw_refine ioctl
	printk: ringbuffer: Fix truncating buffer size min_t cast
	scsi: core: Fix the scsi_set_resid() documentation
	ipmi_si: fix a memleak in try_smi_init()
	ARM: OMAP2+: Fix -Warray-bounds warning in _pwrdm_state_switch()
	backlight/gpio_backlight: Compare against struct fb_info.device
	backlight/bd6107: Compare against struct fb_info.device
	backlight/lv5207lp: Compare against struct fb_info.device
	xtensa: PMU: fix base address for the newer hardware
	arm64: csum: Fix OoB access in IP checksum code for negative lengths
	media: dvb: symbol fixup for dvb_attach()
	Revert "scsi: qla2xxx: Fix buffer overrun"
	scsi: mpt3sas: Perform additional retries if doorbell read returns 0
	ntb: Drop packets when qp link is down
	ntb: Clean up tx tail index on link down
	ntb: Fix calculation ntb_transport_tx_free_entry()
	Revert "PCI: Mark NVIDIA T4 GPUs to avoid bus reset"
	procfs: block chmod on /proc/thread-self/comm
	parisc: Fix /proc/cpuinfo output for lscpu
	dlm: fix plock lookup when using multiple lockspaces
	dccp: Fix out of bounds access in DCCP error handler
	X.509: if signature is unsupported skip validation
	net: handle ARPHRD_PPP in dev_is_mac_header_xmit()
	fsverity: skip PKCS#7 parser when keyring is empty
	pstore/ram: Check start of empty przs during init
	s390/ipl: add missing secure/has_secure file to ipl type 'unknown'
	crypto: stm32 - fix loop iterating through scatterlist for DMA
	cpufreq: brcmstb-avs-cpufreq: Fix -Warray-bounds bug
	usb: typec: bus: verify partner exists in typec_altmode_attention
	USB: core: Unite old scheme and new scheme descriptor reads
	USB: core: Change usb_get_device_descriptor() API
	USB: core: Fix race by not overwriting udev->descriptor in hub_port_init()
	USB: core: Fix oversight in SuperSpeed initialization
	usb: typec: tcpci: clear the fault status bit
	tracing: Zero the pipe cpumask on alloc to avoid spurious -EBUSY
	md/md-bitmap: remove unnecessary local variable in backlog_store()
	udf: initialize newblock to 0
	net/ipv6: SKB symmetric hash should incorporate transport ports
	io_uring: always lock in io_apoll_task_func
	io_uring: break out of iowq iopoll on teardown
	io_uring: break iopolling on signal
	scsi: qla2xxx: Fix deletion race condition
	scsi: qla2xxx: fix inconsistent TMF timeout
	scsi: qla2xxx: Fix erroneous link up failure
	scsi: qla2xxx: Turn off noisy message log
	scsi: qla2xxx: Remove unsupported ql2xenabledif option
	fbdev/ep93xx-fb: Do not assign to struct fb_info.dev
	drm/ast: Fix DRAM init on AST2200
	lib/test_meminit: allocate pages up to order MAX_ORDER
	parisc: led: Fix LAN receive and transmit LEDs
	parisc: led: Reduce CPU overhead for disk & lan LED computation
	pinctrl: cherryview: fix address_space_handler() argument
	dt-bindings: clock: xlnx,versal-clk: drop select:false
	clk: imx: pll14xx: dynamically configure PLL for 393216000/361267200Hz
	clk: qcom: gcc-mdm9615: use proper parent for pll0_vote clock
	soc: qcom: qmi_encdec: Restrict string length in decode
	NFS: Fix a potential data corruption
	NFSv4/pnfs: minor fix for cleanup path in nfs4_get_device_info
	kconfig: fix possible buffer overflow
	backlight: gpio_backlight: Drop output GPIO direction check for initial power state
	perf annotate bpf: Don't enclose non-debug code with an assert()
	x86/virt: Drop unnecessary check on extended CPUID level in cpu_has_svm()
	perf top: Don't pass an ERR_PTR() directly to perf_session__delete()
	watchdog: intel-mid_wdt: add MODULE_ALIAS() to allow auto-load
	pwm: lpc32xx: Remove handling of PWM channels
	net/sched: fq_pie: avoid stalls in fq_pie_timer()
	sctp: annotate data-races around sk->sk_wmem_queued
	ipv4: annotate data-races around fi->fib_dead
	net: read sk->sk_family once in sk_mc_loop()
	drm/i915/gvt: Save/restore HW status to support GVT suspend/resume
	drm/i915/gvt: Drop unused helper intel_vgpu_reset_gtt()
	ipv4: ignore dst hint for multipath routes
	igb: disable virtualization features on 82580
	veth: Fixing transmit return status for dropped packets
	net: ipv6/addrconf: avoid integer underflow in ipv6_create_tempaddr
	af_unix: Fix data-races around user->unix_inflight.
	af_unix: Fix data-race around unix_tot_inflight.
	af_unix: Fix data-races around sk->sk_shutdown.
	af_unix: Fix data race around sk->sk_err.
	net: sched: sch_qfq: Fix UAF in qfq_dequeue()
	kcm: Destroy mutex in kcm_exit_net()
	igc: Change IGC_MIN to allow set rx/tx value between 64 and 80
	igbvf: Change IGBVF_MIN to allow set rx/tx value between 64 and 80
	igb: Change IGB_MIN to allow set rx/tx value between 64 and 80
	s390/zcrypt: don't leak memory if dev_set_name() fails
	idr: fix param name in idr_alloc_cyclic() doc
	ip_tunnels: use DEV_STATS_INC()
	net: dsa: sja1105: fix bandwidth discrepancy between tc-cbs software and offload
	net: dsa: sja1105: fix -ENOSPC when replacing the same tc-cbs too many times
	netfilter: nfnetlink_osf: avoid OOB read
	net: hns3: fix the port information display when sfp is absent
	sh: boards: Fix CEU buffer size passed to dma_declare_coherent_memory()
	ext4: add correct group descriptors and reserved GDT blocks to system zone
	ata: sata_gemini: Add missing MODULE_DESCRIPTION
	ata: pata_ftide010: Add missing MODULE_DESCRIPTION
	fuse: nlookup missing decrement in fuse_direntplus_link
	btrfs: don't start transaction when joining with TRANS_JOIN_NOSTART
	btrfs: use the correct superblock to compare fsid in btrfs_validate_super
	mtd: rawnand: brcmnand: Fix crash during the panic_write
	mtd: rawnand: brcmnand: Fix potential out-of-bounds access in oob write
	mtd: rawnand: brcmnand: Fix potential false time out warning
	drm/amd/display: prevent potential division by zero errors
	perf hists browser: Fix hierarchy mode header
	perf tools: Handle old data in PERF_RECORD_ATTR
	perf hists browser: Fix the number of entries for 'e' key
	ACPI: APEI: explicit init of HEST and GHES in apci_init()
	arm64: sdei: abort running SDEI handlers during crash
	scsi: qla2xxx: If fcport is undergoing deletion complete I/O with retry
	scsi: qla2xxx: Consolidate zio threshold setting for both FCP & NVMe
	scsi: qla2xxx: Fix crash in PCIe error handling
	scsi: qla2xxx: Flush mailbox commands on chip reset
	ARM: dts: samsung: exynos4210-i9100: Fix LCD screen's physical size
	ARM: dts: BCM5301X: Extend RAM to full 256MB for Linksys EA6500 V2
	bus: mhi: host: Skip MHI reset if device is in RDDM
	net: ipv4: fix one memleak in __inet_del_ifa()
	selftests/kselftest/runner/run_one(): allow running non-executable files
	kselftest/runner.sh: Propagate SIGTERM to runner child
	net/smc: use smc_lgr_list.lock to protect smc_lgr_list.list iterate in smcr_port_add
	net: ethernet: mvpp2_main: fix possible OOB write in mvpp2_ethtool_get_rxnfc()
	net: ethernet: mtk_eth_soc: fix possible NULL pointer dereference in mtk_hwlro_get_fdir_all()
	hsr: Fix uninit-value access in fill_frame_info()
	r8152: check budget for r8152_poll()
	kcm: Fix memory leak in error path of kcm_sendmsg()
	platform/mellanox: mlxbf-tmfifo: Drop the Rx packet if no more descriptors
	platform/mellanox: mlxbf-tmfifo: Drop jumbo frames
	net/tls: do not free tls_rec on async operation in bpf_exec_tx_verdict()
	ipv6: fix ip6_sock_set_addr_preferences() typo
	ixgbe: fix timestamp configuration code
	kcm: Fix error handling for SOCK_DGRAM in kcm_sendmsg().
	drm/amd/display: Fix a bug when searching for insert_above_mpcc
	parisc: Drop loops_per_jiffy from per_cpu struct
	Linux 5.10.195

Change-Id: I4eef618f573b6d4201e05c9cf56088d77d712d97
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-09-19 11:32:32 +00:00
Yu Kuai 06494cd473 md/md-bitmap: remove unnecessary local variable in backlog_store()
commit b4d129640f upstream.

Local variable is definied first in the beginning of backlog_store(),
there is no need to define it again.

Fixes: 8c13ab115b ("md/bitmap: don't set max_write_behind if there is no write mostly device")
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Link: https://lore.kernel.org/r/20230706083727.608914-2-yukuai1@huaweicloud.com
Signed-off-by: Song Liu <song@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-09-19 12:20:23 +02:00
Yu Kuai 4a61d72585 md/md-bitmap: hold 'reconfig_mutex' in backlog_store()
[ Upstream commit 44abfa6a95 ]

Several reasons why 'reconfig_mutex' should be held:

1) rdev_for_each() is not safe to be called without the lock, because
   rdev can be removed concurrently.
2) mddev_destroy_serial_pool() and mddev_create_serial_pool() should not
   be called concurrently.
3) mddev_suspend() from mddev_destroy/create_serial_pool() should be
   protected by the lock.

Fixes: 10c92fca63 ("md-bitmap: create and destroy wb_info_pool with the change of backlog")
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Link: https://lore.kernel.org/r/20230706083727.608914-3-yukuai1@huaweicloud.com
Signed-off-by: Song Liu <song@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-09-19 12:20:12 +02:00
Guoqing Jiang 8563d52a4f md/bitmap: don't set max_write_behind if there is no write mostly device
[ Upstream commit 8c13ab115b ]

We shouldn't set it since write behind IO should only happen to write
mostly device.

Signed-off-by: Guoqing Jiang <guoqing.jiang@linux.dev>
Signed-off-by: Song Liu <songliubraving@fb.com>
Stable-dep-of: 44abfa6a95 ("md/md-bitmap: hold 'reconfig_mutex' in backlog_store()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-09-19 12:20:12 +02:00
Greg Kroah-Hartman 3acf914de4 Merge 5.10.193 into android12-5.10-lts
Changes in 5.10.193
	objtool/x86: Fix SRSO mess
	NFSv4: fix out path in __nfs4_get_acl_uncached
	xprtrdma: Remap Receive buffers after a reconnect
	PCI: acpiphp: Reassign resources on bridge if necessary
	dlm: improve plock logging if interrupted
	dlm: replace usage of found with dedicated list iterator variable
	fs: dlm: add pid to debug log
	fs: dlm: change plock interrupted message to debug again
	fs: dlm: use dlm_plock_info for do_unlock_close
	fs: dlm: fix mismatch of plock results from userspace
	MIPS: cpu-features: Enable octeon_cache by cpu_type
	MIPS: cpu-features: Use boot_cpu_type for CPU type based features
	fbdev: Improve performance of sys_imageblit()
	fbdev: Fix sys_imageblit() for arbitrary image widths
	fbdev: fix potential OOB read in fast_imageblit()
	dm integrity: increase RECALC_SECTORS to improve recalculate speed
	dm integrity: reduce vmalloc space footprint on 32-bit architectures
	ALSA: pcm: Fix potential data race at PCM memory allocation helpers
	drm/amd/display: do not wait for mpc idle if tg is disabled
	drm/amd/display: check TG is non-null before checking if enabled
	libceph, rbd: ignore addr->type while comparing in some cases
	rbd: make get_lock_owner_info() return a single locker or NULL
	rbd: retrieve and check lock owner twice before blocklisting
	rbd: prevent busy loop when requesting exclusive lock
	tracing: Fix cpu buffers unavailable due to 'record_disabled' missed
	tracing: Fix memleak due to race between current_tracer and trace
	octeontx2-af: SDP: fix receive link config
	sock: annotate data-races around prot->memory_pressure
	dccp: annotate data-races in dccp_poll()
	ipvlan: Fix a reference count leak warning in ipvlan_ns_exit()
	net: bgmac: Fix return value check for fixed_phy_register()
	net: bcmgenet: Fix return value check for fixed_phy_register()
	net: validate veth and vxcan peer ifindexes
	ice: fix receive buffer size miscalculation
	igb: Avoid starting unnecessary workqueues
	net/sched: fix a qdisc modification with ambiguous command request
	netfilter: nf_tables: fix out of memory error handling
	rtnetlink: return ENODEV when ifname does not exist and group is given
	rtnetlink: Reject negative ifindexes in RTM_NEWLINK
	net: remove bond_slave_has_mac_rcu()
	bonding: fix macvlan over alb bond support
	ibmveth: Use dcbf rather than dcbfl
	NFSv4: Fix dropped lock for racing OPEN and delegation return
	clk: Fix slab-out-of-bounds error in devm_clk_release()
	mm: add a call to flush_cache_vmap() in vmap_pfn()
	NFS: Fix a use after free in nfs_direct_join_group()
	nfsd: Fix race to FREE_STATEID and cl_revoked
	selinux: set next pointer before attaching to list
	batman-adv: Trigger events for auto adjusted MTU
	batman-adv: Don't increase MTU when set by user
	batman-adv: Do not get eth header before batadv_check_management_packet
	batman-adv: Fix TT global entry leak when client roamed back
	batman-adv: Fix batadv_v_ogm_aggr_send memory leak
	batman-adv: Hold rtnl lock during MTU update via netlink
	lib/clz_ctz.c: Fix __clzdi2() and __ctzdi2() for 32-bit kernels
	radix tree: remove unused variable
	of: dynamic: Refactor action prints to not use "%pOF" inside devtree_lock
	media: vcodec: Fix potential array out-of-bounds in encoder queue_setup
	PCI: acpiphp: Use pci_assign_unassigned_bridge_resources() only for non-root bus
	drm/vmwgfx: Fix shader stage validation
	drm/display/dp: Fix the DP DSC Receiver cap size
	x86/fpu: Set X86_FEATURE_OSXSAVE feature after enabling OSXSAVE in CR4
	torture: Fix hang during kthread shutdown phase
	tick: Detect and fix jiffies update stall
	timers/nohz: Switch to ONESHOT_STOPPED in the low-res handler when the tick is stopped
	cgroup/cpuset: Rename functions dealing with DEADLINE accounting
	sched/cpuset: Bring back cpuset_mutex
	sched/cpuset: Keep track of SCHED_DEADLINE task in cpusets
	cgroup/cpuset: Iterate only if DEADLINE tasks are present
	sched/deadline: Create DL BW alloc, free & check overflow interface
	cgroup/cpuset: Free DL BW in case can_attach() fails
	drm/i915: Fix premature release of request's reusable memory
	ASoC: rt711: add two jack detection modes
	scsi: snic: Fix double free in snic_tgt_create()
	scsi: core: raid_class: Remove raid_component_add()
	clk: Fix undefined reference to `clk_rate_exclusive_{get,put}'
	pinctrl: renesas: rza2: Add lock around pinctrl_generic{{add,remove}_group,{add,remove}_function}
	dma-buf/sw_sync: Avoid recursive lock during fence signal
	mm,hwpoison: refactor get_any_page
	mm: fix page reference leak in soft_offline_page()
	mm: memory-failure: kill soft_offline_free_page()
	mm: memory-failure: fix unexpected return value in soft_offline_page()
	ASoC: Intel: sof_sdw: include rt711.h for RT711 JD mode
	mm,hwpoison: fix printing of page flags
	Linux 5.10.193

Change-Id: I7c6ce55cbc73cef27a5cbe8954131a052b67dac2
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-08-31 18:29:19 +00:00
Mikulas Patocka 8c3a4c3b64 dm integrity: reduce vmalloc space footprint on 32-bit architectures
[ Upstream commit 6d50eb4725 ]

It was reported that dm-integrity runs out of vmalloc space on 32-bit
architectures. On x86, there is only 128MiB vmalloc space and dm-integrity
consumes it quickly because it has a 64MiB journal and 8MiB recalculate
buffer.

Fix this by reducing the size of the journal to 4MiB and the size of
the recalculate buffer to 1MiB, so that multiple dm-integrity devices
can be created and activated on 32-bit architectures.

Cc: stable@vger.kernel.org
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-08-30 16:23:11 +02:00
Mikulas Patocka 4fdfd3d2f0 dm integrity: increase RECALC_SECTORS to improve recalculate speed
[ Upstream commit b1a2b93320 ]

Increase RECALC_SECTORS because it improves recalculate speed slightly
(from 390kiB/s to 410kiB/s).

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Stable-dep-of: 6d50eb4725 ("dm integrity: reduce vmalloc space footprint on 32-bit architectures")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-08-30 16:23:11 +02:00
Greg Kroah-Hartman df0f5bd7a8 Merge 5.10.190 into android12-5.10-lts
Changes in 5.10.190
	KVM: s390: pv: fix index value of replaced ASCE
	io_uring: don't audit the capability check in io_uring_create()
	gpio: tps68470: Make tps68470_gpio_output() always set the initial value
	btrfs: fix race between quota disable and relocation
	btrfs: fix extent buffer leak after tree mod log failure at split_node()
	i2c: Delete error messages for failed memory allocations
	i2c: Improve size determinations
	i2c: nomadik: Remove unnecessary goto label
	i2c: nomadik: Use devm_clk_get_enabled()
	i2c: nomadik: Remove a useless call in the remove function
	PCI/ASPM: Return 0 or -ETIMEDOUT from pcie_retrain_link()
	PCI/ASPM: Factor out pcie_wait_for_retrain()
	PCI/ASPM: Avoid link retraining race
	dlm: cleanup plock_op vs plock_xop
	dlm: rearrange async condition return
	fs: dlm: interrupt posix locks only when process is killed
	drm/ttm: add ttm_bo_pin()/ttm_bo_unpin() v2
	drm/ttm: never consider pinned BOs for eviction&swap
	tracing: Show real address for trace event arguments
	pwm: meson: Simplify duplicated per-channel tracking
	pwm: meson: fix handling of period/duty if greater than UINT_MAX
	ext4: fix to check return value of freeze_bdev() in ext4_shutdown()
	phy: qcom-snps: Use dev_err_probe() to simplify code
	phy: qcom-snps: correct struct qcom_snps_hsphy kerneldoc
	phy: qcom-snps-femto-v2: keep cfg_ahb_clk enabled during runtime suspend
	phy: qcom-snps-femto-v2: properly enable ref clock
	media: staging: atomisp: select V4L2_FWNODE
	i40e: Fix an NULL vs IS_ERR() bug for debugfs_create_dir()
	net: phy: marvell10g: fix 88x3310 power up
	net: hns3: reconstruct function hclge_ets_validate()
	net: hns3: fix wrong bw weight of disabled tc issue
	vxlan: move to its own directory
	vxlan: calculate correct header length for GPE
	phy: hisilicon: Fix an out of bounds check in hisi_inno_phy_probe()
	ethernet: atheros: fix return value check in atl1e_tso_csum()
	ipv6 addrconf: fix bug where deleting a mngtmpaddr can create a new temporary address
	tcp: Reduce chance of collisions in inet6_hashfn().
	ice: Fix memory management in ice_ethtool_fdir.c
	bonding: reset bond's flags when down link is P2P device
	team: reset team's flags when down link is P2P device
	platform/x86: msi-laptop: Fix rfkill out-of-sync on MSI Wind U100
	netfilter: nft_set_rbtree: fix overlap expiration walk
	netfilter: nftables: add helper function to validate set element data
	netfilter: nf_tables: skip immediate deactivate in _PREPARE_ERROR
	netfilter: nf_tables: disallow rule addition to bound chain via NFTA_RULE_CHAIN_ID
	net/sched: mqprio: refactor nlattr parsing to a separate function
	net/sched: mqprio: add extack to mqprio_parse_nlattr()
	net/sched: mqprio: Add length check for TCA_MQPRIO_{MAX/MIN}_RATE64
	benet: fix return value check in be_lancer_xmit_workarounds()
	tipc: check return value of pskb_trim()
	tipc: stop tipc crypto on failure in tipc_node_create
	RDMA/mlx4: Make check for invalid flags stricter
	drm/msm/dpu: drop enum dpu_core_perf_data_bus_id
	drm/msm/adreno: Fix snapshot BINDLESS_DATA size
	RDMA/mthca: Fix crash when polling CQ for shared QPs
	drm/msm: Fix IS_ERR_OR_NULL() vs NULL check in a5xx_submit_in_rb()
	ASoC: fsl_spdif: Silence output on stop
	block: Fix a source code comment in include/uapi/linux/blkzoned.h
	dm raid: fix missing reconfig_mutex unlock in raid_ctr() error paths
	dm raid: clean up four equivalent goto tags in raid_ctr()
	dm raid: protect md_stop() with 'reconfig_mutex'
	ata: pata_ns87415: mark ns87560_tf_read static
	ring-buffer: Fix wrong stat of cpu_buffer->read
	tracing: Fix warning in trace_buffered_event_disable()
	Revert "usb: gadget: tegra-xudc: Fix error check in tegra_xudc_powerdomain_init()"
	USB: gadget: Fix the memory leak in raw_gadget driver
	serial: qcom-geni: drop bogus runtime pm state update
	serial: 8250_dw: Preserve original value of DLF register
	serial: sifive: Fix sifive_serial_console_setup() section
	USB: serial: option: support Quectel EM060K_128
	USB: serial: option: add Quectel EC200A module support
	USB: serial: simple: add Kaufmann RKS+CAN VCP
	USB: serial: simple: sort driver entries
	can: gs_usb: gs_can_close(): add missing set of CAN state to CAN_STATE_STOPPED
	Revert "usb: dwc3: core: Enable AutoRetry feature in the controller"
	usb: dwc3: pci: skip BYT GPIO lookup table for hardwired phy
	usb: dwc3: don't reset device side if dwc3 was configured as host-only
	usb: ohci-at91: Fix the unhandle interrupt when resume
	USB: quirks: add quirk for Focusrite Scarlett
	usb: xhci-mtk: set the dma max_seg_size
	Revert "usb: xhci: tegra: Fix error check"
	Documentation: security-bugs.rst: update preferences when dealing with the linux-distros group
	Documentation: security-bugs.rst: clarify CVE handling
	staging: ks7010: potential buffer overflow in ks_wlan_set_encode_ext()
	tty: n_gsm: fix UAF in gsm_cleanup_mux
	ALSA: hda/relatek: Enable Mute LED on HP 250 G8
	hwmon: (nct7802) Fix for temp6 (PECI1) processed even if PECI1 disabled
	btrfs: check for commit error at btrfs_attach_transaction_barrier()
	file: always lock position for FMODE_ATOMIC_POS
	nfsd: Remove incorrect check in nfsd4_validate_stateid
	tpm_tis: Explicitly check for error code
	irq-bcm6345-l1: Do not assume a fixed block to cpu mapping
	irqchip/gic-v4.1: Properly lock VPEs when doing a directLPI invalidation
	KVM: VMX: Invert handling of CR0.WP for EPT without unrestricted guest
	KVM: VMX: Fold ept_update_paging_mode_cr0() back into vmx_set_cr0()
	KVM: nVMX: Do not clear CR3 load/store exiting bits if L1 wants 'em
	KVM: VMX: Don't fudge CR0 and CR4 for restricted L2 guest
	staging: rtl8712: Use constants from <linux/ieee80211.h>
	staging: r8712: Fix memory leak in _r8712_init_xmit_priv()
	btrfs: check if the transaction was aborted at btrfs_wait_for_commit()
	virtio-net: fix race between set queues and probe
	s390/dasd: fix hanging device after quiesce/resume
	ASoC: wm8904: Fill the cache for WM8904_ADC_TEST_0 register
	ceph: never send metrics if disable_send_metrics is set
	dm cache policy smq: ensure IO doesn't prevent cleaner policy progress
	drm/ttm: make ttm_bo_unpin more defensive
	ACPI: processor: perflib: Use the "no limit" frequency QoS
	ACPI: processor: perflib: Avoid updating frequency QoS unnecessarily
	cpufreq: intel_pstate: Drop ACPI _PSS states table patching
	selftests: mptcp: depend on SYN_COOKIES
	io_uring: treat -EAGAIN for REQ_F_NOWAIT as final for io-wq
	ASoC: cs42l51: fix driver to properly autoload with automatic module loading
	kprobes/x86: Fix fall-through warnings for Clang
	x86/kprobes: Do not decode opcode in resume_execution()
	x86/kprobes: Retrieve correct opcode for group instruction
	x86/kprobes: Identify far indirect JMP correctly
	x86/kprobes: Use int3 instead of debug trap for single-step
	x86/kprobes: Fix to identify indirect jmp and others using range case
	x86/kprobes: Move 'inline' to the beginning of the kprobe_is_ss() declaration
	x86/kprobes: Update kcb status flag after singlestepping
	x86/kprobes: Fix JNG/JNLE emulation
	io_uring: gate iowait schedule on having pending requests
	perf: Fix function pointer case
	loop: Select I/O scheduler 'none' from inside add_disk()
	arm64: dts: imx8mn-var-som: add missing pull-up for onboard PHY reset pinmux
	word-at-a-time: use the same return type for has_zero regardless of endianness
	KVM: s390: fix sthyi error handling
	wifi: cfg80211: Fix return value in scan logic
	net/mlx5: DR, fix memory leak in mlx5dr_cmd_create_reformat_ctx
	net/mlx5e: fix return value check in mlx5e_ipsec_remove_trailer()
	bpf: Add length check for SK_DIAG_BPF_STORAGE_REQ_MAP_FD parsing
	rtnetlink: let rtnl_bridge_setlink checks IFLA_BRIDGE_MODE length
	net: dsa: fix value check in bcm_sf2_sw_probe()
	perf test uprobe_from_different_cu: Skip if there is no gcc
	net: sched: cls_u32: Fix match key mis-addressing
	mISDN: hfcpci: Fix potential deadlock on &hc->lock
	net: annotate data-races around sk->sk_max_pacing_rate
	net: add missing READ_ONCE(sk->sk_rcvlowat) annotation
	net: add missing READ_ONCE(sk->sk_sndbuf) annotation
	net: add missing READ_ONCE(sk->sk_rcvbuf) annotation
	net: add missing data-race annotations around sk->sk_peek_off
	net: add missing data-race annotation for sk_ll_usec
	net/sched: cls_u32: No longer copy tcf_result on update to avoid use-after-free
	net/sched: cls_fw: No longer copy tcf_result on update to avoid use-after-free
	net/sched: cls_route: No longer copy tcf_result on update to avoid use-after-free
	bpf: sockmap: Remove preempt_disable in sock_map_sk_acquire
	net: ll_temac: Switch to use dev_err_probe() helper
	net: ll_temac: fix error checking of irq_of_parse_and_map()
	net: netsec: Ignore 'phy-mode' on SynQuacer in DT mode
	net: dcb: choose correct policy to parse DCB_ATTR_BCN
	s390/qeth: Don't call dev_close/dev_open (DOWN/UP)
	ip6mr: Fix skb_under_panic in ip6mr_cache_report()
	vxlan: Fix nexthop hash size
	net/mlx5: fs_core: Make find_closest_ft more generic
	net/mlx5: fs_core: Skip the FTs in the same FS_TYPE_PRIO_CHAINS fs_prio
	tcp_metrics: fix addr_same() helper
	tcp_metrics: annotate data-races around tm->tcpm_stamp
	tcp_metrics: annotate data-races around tm->tcpm_lock
	tcp_metrics: annotate data-races around tm->tcpm_vals[]
	tcp_metrics: annotate data-races around tm->tcpm_net
	tcp_metrics: fix data-race in tcpm_suck_dst() vs fastopen
	scsi: zfcp: Defer fc_rport blocking until after ADISC response
	libceph: fix potential hang in ceph_osdc_notify()
	USB: zaurus: Add ID for A-300/B-500/C-700
	ceph: defer stopping mdsc delayed_work
	exfat: use kvmalloc_array/kvfree instead of kmalloc_array/kfree
	exfat: release s_lock before calling dir_emit()
	mtd: spinand: toshiba: Fix ecc_get_status
	mtd: rawnand: meson: fix OOB available bytes for ECC
	arm64: dts: stratix10: fix incorrect I2C property for SCL signal
	net: tun_chr_open(): set sk_uid from current_fsuid()
	net: tap_open(): set sk_uid from current_fsuid()
	bpf: Disable preemption in bpf_event_output
	open: make RESOLVE_CACHED correctly test for O_TMPFILE
	drm/ttm: check null pointer before accessing when swapping
	file: reinstate f_pos locking optimization for regular files
	tracing: Fix sleeping while atomic in kdb ftdump
	fs/sysv: Null check to prevent null-ptr-deref bug
	Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb
	net: usbnet: Fix WARNING in usbnet_start_xmit/usb_submit_urb
	fs: Protect reconfiguration of sb read-write from racing writes
	ext2: Drop fragment support
	mtd: rawnand: omap_elm: Fix incorrect type in assignment
	mtd: rawnand: fsl_upm: Fix an off-by one test in fun_exec_op()
	powerpc/mm/altmap: Fix altmap boundary check
	selftests/rseq: check if libc rseq support is registered
	selftests/rseq: Play nice with binaries statically linked against glibc 2.35+
	soundwire: bus: add better dev_dbg to track complete() calls
	soundwire: bus: pm_runtime_request_resume on peripheral attachment
	soundwire: fix enumeration completion
	PM / wakeirq: support enabling wake-up irq after runtime_suspend called
	PM: sleep: wakeirq: fix wake irq arming
	exfat: speed up iterate/lookup by fixing start point of traversing cluster chain
	exfat: support dynamic allocate bh for exfat_entry_set_cache
	exfat: check if filename entries exceeds max filename length
	mt76: move band capabilities in mt76_phy
	mt76: mt7615: Fix fall-through warnings for Clang
	wifi: mt76: mt7615: do not advertise 5 GHz on first phy of MT7615D (DBDC)
	ARM: dts: imx: add usb alias
	ARM: dts: imx6sll: fixup of operating points
	ARM: dts: nxp/imx6sll: fix wrong property name in usbphy node
	x86/CPU/AMD: Do not leak quotient data after a division by 0
	Linux 5.10.190

Fix up build problem in ext4 due to merge of ed3d841f2f ("ext4: fix to
check return value of freeze_bdev() in ext4_shutdown()") conflicting
with a previous block layer core change coming in through the f2fs tree
in the past, that is not upstream, but ANDROID specific.

Change-Id: Ib95e59ce8ba653bcc791802735afafcd26bd996f
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-08-25 12:26:58 +00:00
Joe Thornber c0f2b2b020 dm cache policy smq: ensure IO doesn't prevent cleaner policy progress
commit 1e4ab7b4c8 upstream.

When using the cleaner policy to decommission the cache, there is
never any writeback started from the cache as it is constantly delayed
due to normal I/O keeping the device busy. Meaning @idle=false was
always being passed to clean_target_met()

Fix this by adding a specific 'cleaner' flag that is set when the
cleaner policy is configured. This flag serves to always allow the
cleaner's writeback work to be queued until the cache is
decommissioned (even if the cache isn't idle).

Reported-by: David Jeffery <djeffery@redhat.com>
Fixes: b29d4986d0 ("dm cache: significant rework to leverage dm-bio-prison-v2")
Cc: stable@vger.kernel.org
Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-11 11:57:44 +02:00
Yu Kuai 82ce0ae87a dm raid: protect md_stop() with 'reconfig_mutex'
[ Upstream commit 7d5fff8982 ]

__md_stop_writes() and __md_stop() will modify many fields that are
protected by 'reconfig_mutex', and all the callers will grab
'reconfig_mutex' except for md_stop().

Also, update md_stop() to make certain 'reconfig_mutex' is held using
lockdep_assert_held().

Fixes: 9d09e663d5 ("dm: raid456 basic support")
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-08-11 11:57:38 +02:00
Yu Kuai d6a1cf4ee5 dm raid: clean up four equivalent goto tags in raid_ctr()
[ Upstream commit e74c874eab ]

There are four equivalent goto tags in raid_ctr(), clean them up to
use just one.

There is no functional change and this is preparation to fix
raid_ctr()'s unprotected md_stop().

Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Stable-dep-of: 7d5fff8982 ("dm raid: protect md_stop() with 'reconfig_mutex'")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-08-11 11:57:38 +02:00
Yu Kuai a43c761a7e dm raid: fix missing reconfig_mutex unlock in raid_ctr() error paths
[ Upstream commit bae3028799 ]

In the error paths 'bad_stripe_cache' and 'bad_check_reshape',
'reconfig_mutex' is still held after raid_ctr() returns.

Fixes: 9dbd1aa3a8 ("dm raid: add reshaping support to the target")
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-08-11 11:57:38 +02:00
Greg Kroah-Hartman 477f5e6b9e Merge 5.10.188 into android12-5.10-lts
Changes in 5.10.188
	media: atomisp: fix "variable dereferenced before check 'asd'"
	x86/smp: Use dedicated cache-line for mwait_play_dead()
	can: isotp: isotp_sendmsg(): fix return error fix on TX path
	video: imsttfb: check for ioremap() failures
	fbdev: imsttfb: Fix use after free bug in imsttfb_probe
	HID: wacom: Use ktime_t rather than int when dealing with timestamps
	HID: logitech-hidpp: add HIDPP_QUIRK_DELAYED_INIT for the T651.
	Revert "thermal/drivers/mediatek: Use devm_of_iomap to avoid resource leak in mtk_thermal_probe"
	scripts/tags.sh: Resolve gtags empty index generation
	drm/amdgpu: Validate VM ioctl flags.
	nubus: Partially revert proc_create_single_data() conversion
	fs: pipe: reveal missing function protoypes
	x86/resctrl: Only show tasks' pid in current pid namespace
	blk-iocost: use spin_lock_irqsave in adjust_inuse_and_calc_cost
	md/raid10: check slab-out-of-bounds in md_bitmap_get_counter
	md/raid10: fix overflow of md/safe_mode_delay
	md/raid10: fix wrong setting of max_corr_read_errors
	md/raid10: fix null-ptr-deref of mreplace in raid10_sync_request
	md/raid10: fix io loss while replacement replace rdev
	irqchip/jcore-aic: Kill use of irq_create_strict_mappings()
	irqchip/jcore-aic: Fix missing allocation of IRQ descriptors
	posix-timers: Prevent RT livelock in itimer_delete()
	tracing/timer: Add missing hrtimer modes to decode_hrtimer_mode().
	clocksource/drivers/cadence-ttc: Fix memory leak in ttc_timer_probe
	PM: domains: fix integer overflow issues in genpd_parse_state()
	perf/arm-cmn: Fix DTC reset
	powercap: RAPL: Fix CONFIG_IOSF_MBI dependency
	ARM: 9303/1: kprobes: avoid missing-declaration warnings
	cpufreq: intel_pstate: Fix energy_performance_preference for passive
	thermal/drivers/sun8i: Fix some error handling paths in sun8i_ths_probe()
	rcuscale: Console output claims too few grace periods
	rcuscale: Always log error message
	rcuscale: Move shutdown from wait_event() to wait_event_idle()
	rcu/rcuscale: Move rcu_scale_*() after kfree_scale_cleanup()
	rcu/rcuscale: Stop kfree_scale_thread thread(s) after unloading rcuscale
	perf/ibs: Fix interface via core pmu events
	x86/mm: Fix __swp_entry_to_pte() for Xen PV guests
	evm: Complete description of evm_inode_setattr()
	ima: Fix build warnings
	pstore/ram: Add check for kstrdup
	igc: Enable and fix RX hash usage by netstack
	wifi: ath9k: fix AR9003 mac hardware hang check register offset calculation
	wifi: ath9k: avoid referencing uninit memory in ath9k_wmi_ctrl_rx
	samples/bpf: Fix buffer overflow in tcp_basertt
	spi: spi-geni-qcom: Correct CS_TOGGLE bit in SPI_TRANS_CFG
	wifi: wilc1000: fix for absent RSN capabilities WFA testcase
	wifi: mwifiex: Fix the size of a memory allocation in mwifiex_ret_802_11_scan()
	bpf: Remove extra lock_sock for TCP_ZEROCOPY_RECEIVE
	sctp: add bpf_bypass_getsockopt proto callback
	libbpf: fix offsetof() and container_of() to work with CO-RE
	nfc: constify several pointers to u8, char and sk_buff
	nfc: llcp: fix possible use of uninitialized variable in nfc_llcp_send_connect()
	bpftool: JIT limited misreported as negative value on aarch64
	regulator: core: Fix more error checking for debugfs_create_dir()
	regulator: core: Streamline debugfs operations
	wifi: orinoco: Fix an error handling path in spectrum_cs_probe()
	wifi: orinoco: Fix an error handling path in orinoco_cs_probe()
	wifi: atmel: Fix an error handling path in atmel_probe()
	wl3501_cs: Fix misspelling and provide missing documentation
	net: create netdev->dev_addr assignment helpers
	wl3501_cs: use eth_hw_addr_set()
	wifi: wl3501_cs: Fix an error handling path in wl3501_probe()
	wifi: ray_cs: Utilize strnlen() in parse_addr()
	wifi: ray_cs: Drop useless status variable in parse_addr()
	wifi: ray_cs: Fix an error handling path in ray_probe()
	wifi: ath9k: don't allow to overwrite ENDPOINT0 attributes
	wifi: rsi: Do not configure WoWlan in shutdown hook if not enabled
	wifi: rsi: Do not set MMC_PM_KEEP_POWER in shutdown
	watchdog/perf: define dummy watchdog_update_hrtimer_threshold() on correct config
	watchdog/perf: more properly prevent false positives with turbo modes
	kexec: fix a memory leak in crash_shrink_memory()
	memstick r592: make memstick_debug_get_tpc_name() static
	wifi: ath9k: Fix possible stall on ath9k_txq_list_has_key()
	rtnetlink: extend RTEXT_FILTER_SKIP_STATS to IFLA_VF_INFO
	wifi: iwlwifi: pull from TXQs with softirqs disabled
	wifi: cfg80211: rewrite merging of inherited elements
	wifi: ath9k: convert msecs to jiffies where needed
	igc: Fix race condition in PTP tx code
	net: stmmac: fix double serdes powerdown
	netlink: fix potential deadlock in netlink_set_err()
	netlink: do not hard code device address lenth in fdb dumps
	selftests: rtnetlink: remove netdevsim device after ipsec offload test
	gtp: Fix use-after-free in __gtp_encap_destroy().
	net: axienet: Move reset before 64-bit DMA detection
	sfc: fix crash when reading stats while NIC is resetting
	nfc: llcp: simplify llcp_sock_connect() error paths
	net: nfc: Fix use-after-free caused by nfc_llcp_find_local
	lib/ts_bm: reset initial match offset for every block of text
	netfilter: conntrack: dccp: copy entire header to stack buffer, not just basic one
	netfilter: nf_conntrack_sip: fix the ct_sip_parse_numerical_param() return value.
	ipvlan: Fix return value of ipvlan_queue_xmit()
	netlink: Add __sock_i_ino() for __netlink_diag_dump().
	radeon: avoid double free in ci_dpm_init()
	drm/amd/display: Explicitly specify update type per plane info change
	Input: drv260x - sleep between polling GO bit
	drm/bridge: tc358768: always enable HS video mode
	drm/bridge: tc358768: fix PLL parameters computation
	drm/bridge: tc358768: fix PLL target frequency
	drm/bridge: tc358768: fix TCLK_ZEROCNT computation
	drm/bridge: tc358768: Add atomic_get_input_bus_fmts() implementation
	drm/bridge: tc358768: fix TCLK_TRAILCNT computation
	drm/bridge: tc358768: fix THS_ZEROCNT computation
	drm/bridge: tc358768: fix TXTAGOCNT computation
	drm/bridge: tc358768: fix THS_TRAILCNT computation
	drm/vram-helper: fix function names in vram helper doc
	ARM: dts: BCM5301X: Drop "clock-names" from the SPI node
	ARM: dts: meson8b: correct uart_B and uart_C clock references
	Input: adxl34x - do not hardcode interrupt trigger type
	drm: sun4i_tcon: use devm_clk_get_enabled in `sun4i_tcon_init_clocks`
	drm/panel: sharp-ls043t1le01: adjust mode settings
	ARM: dts: stm32: Move ethernet MAC EEPROM from SoM to carrier boards
	bus: ti-sysc: Fix dispc quirk masking bool variables
	arm64: dts: microchip: sparx5: do not use PSCI on reference boards
	RDMA/bnxt_re: Disable/kill tasklet only if it is enabled
	RDMA/bnxt_re: Fix to remove unnecessary return labels
	RDMA/bnxt_re: Use unique names while registering interrupts
	RDMA/bnxt_re: Remove a redundant check inside bnxt_re_update_gid
	RDMA/bnxt_re: Fix to remove an unnecessary log
	ARM: dts: gta04: Move model property out of pinctrl node
	arm64: dts: qcom: msm8916: correct camss unit address
	arm64: dts: qcom: msm8994: correct SPMI unit address
	arm64: dts: qcom: msm8996: correct camss unit address
	drm/panel: simple: fix active size for Ampire AM-480272H3TMQW-T01H
	ARM: ep93xx: fix missing-prototype warnings
	ARM: omap2: fix missing tick_broadcast() prototype
	arm64: dts: qcom: apq8096: fix fixed regulator name property
	ARM: dts: stm32: Shorten the AV96 HDMI sound card name
	memory: brcmstb_dpfe: fix testing array offset after use
	ASoC: es8316: Increment max value for ALC Capture Target Volume control
	ASoC: es8316: Do not set rate constraints for unsupported MCLKs
	ARM: dts: meson8: correct uart_B and uart_C clock references
	soc/fsl/qe: fix usb.c build errors
	IB/hfi1: Use bitmap_zalloc() when applicable
	IB/hfi1: Fix sdma.h tx->num_descs off-by-one errors
	IB/hfi1: Fix wrong mmu_node used for user SDMA packet after invalidate
	RDMA: Remove uverbs_ex_cmd_mask values that are linked to functions
	RDMA/hns: Fix coding style issues
	RDMA/hns: Use refcount_t APIs for HEM
	RDMA/hns: Clean the hardware related code for HEM
	RDMA/hns: Fix hns_roce_table_get return value
	ARM: dts: iwg20d-q7-common: Fix backlight pwm specifier
	arm64: dts: renesas: ulcb-kf: Remove flow control for SCIF1
	fbdev: omapfb: lcd_mipid: Fix an error handling path in mipid_spi_probe()
	arm64: dts: ti: k3-j7200: Fix physical address of pin
	ARM: dts: stm32: Fix audio routing on STM32MP15xx DHCOM PDK2
	ARM: dts: stm32: fix i2s endpoint format property for stm32mp15xx-dkx
	hwmon: (gsc-hwmon) fix fan pwm temperature scaling
	hwmon: (adm1275) enable adm1272 temperature reporting
	hwmon: (adm1275) Allow setting sample averaging
	hwmon: (pmbus/adm1275) Fix problems with temperature monitoring on ADM1272
	ARM: dts: BCM5301X: fix duplex-full => full-duplex
	drm/amdkfd: Fix potential deallocation of previously deallocated memory.
	drm/radeon: fix possible division-by-zero errors
	amdgpu: validate offset_in_bo of drm_amdgpu_gem_va
	RDMA/bnxt_re: wraparound mbox producer index
	RDMA/bnxt_re: Avoid calling wake_up threads from spin_lock context
	clk: imx: clk-imx8mn: fix memory leak in imx8mn_clocks_probe
	clk: imx: clk-imx8mp: improve error handling in imx8mp_clocks_probe()
	clk: tegra: tegra124-emc: Fix potential memory leak
	ALSA: ac97: Fix possible NULL dereference in snd_ac97_mixer
	drm/msm/dpu: do not enable color-management if DSPPs are not available
	drm/msm/dp: Free resources after unregistering them
	clk: vc5: check memory returned by kasprintf()
	clk: cdce925: check return value of kasprintf()
	clk: si5341: Allow different output VDD_SEL values
	clk: si5341: Add sysfs properties to allow checking/resetting device faults
	clk: si5341: return error if one synth clock registration fails
	clk: si5341: check return value of {devm_}kasprintf()
	clk: si5341: free unused memory on probe failure
	clk: keystone: sci-clk: check return value of kasprintf()
	clk: ti: clkctrl: check return value of kasprintf()
	drivers: meson: secure-pwrc: always enable DMA domain
	ovl: update of dentry revalidate flags after copy up
	ASoC: imx-audmix: check return value of devm_kasprintf()
	PCI: cadence: Fix Gen2 Link Retraining process
	scsi: qedf: Fix NULL dereference in error handling
	pinctrl: bcm2835: Handle gpiochip_add_pin_range() errors
	PCI/ASPM: Disable ASPM on MFD function removal to avoid use-after-free
	scsi: 3w-xxxx: Add error handling for initialization failure in tw_probe()
	PCI: pciehp: Cancel bringup sequence if card is not present
	PCI: ftpci100: Release the clock resources
	PCI: Add pci_clear_master() stub for non-CONFIG_PCI
	perf bench: Use unbuffered output when pipe/tee'ing to a file
	perf bench: Add missing setlocale() call to allow usage of %'d style formatting
	pinctrl: cherryview: Return correct value if pin in push-pull mode
	kcsan: Don't expect 64 bits atomic builtins from 32 bits architectures
	perf script: Fixup 'struct evsel_script' method prefix
	perf script: Fix allocation of evsel->priv related to per-event dump files
	perf dwarf-aux: Fix off-by-one in die_get_varname()
	pinctrl: at91-pio4: check return value of devm_kasprintf()
	powerpc/powernv/sriov: perform null check on iov before dereferencing iov
	mm: rename pud_page_vaddr to pud_pgtable and make it return pmd_t *
	mm: rename p4d_page_vaddr to p4d_pgtable and make it return pud_t *
	powerpc/book3s64/mm: Fix DirectMap stats in /proc/meminfo
	powerpc/mm/dax: Fix the condition when checking if altmap vmemap can cross-boundary
	hwrng: virtio - add an internal buffer
	hwrng: virtio - don't wait on cleanup
	hwrng: virtio - don't waste entropy
	hwrng: virtio - always add a pending request
	hwrng: virtio - Fix race on data_avail and actual data
	crypto: nx - fix build warnings when DEBUG_FS is not enabled
	modpost: fix section mismatch message for R_ARM_ABS32
	modpost: fix section mismatch message for R_ARM_{PC24,CALL,JUMP24}
	crypto: marvell/cesa - Fix type mismatch warning
	modpost: fix off by one in is_executable_section()
	ARC: define ASM_NL and __ALIGN(_STR) outside #ifdef __ASSEMBLY__ guard
	NFSv4.1: freeze the session table upon receiving NFS4ERR_BADSESSION
	dax: Fix dax_mapping_release() use after free
	dax: Introduce alloc_dev_dax_id()
	hwrng: st - keep clock enabled while hwrng is registered
	io_uring: ensure IOPOLL locks around deferred work
	USB: serial: option: add LARA-R6 01B PIDs
	usb: dwc3: gadget: Propagate core init errors to UDC during pullup
	phy: tegra: xusb: Clear the driver reference in usb-phy dev
	block: fix signed int overflow in Amiga partition support
	block: change all __u32 annotations to __be32 in affs_hardblocks.h
	SUNRPC: Fix UAF in svc_tcp_listen_data_ready()
	w1: w1_therm: fix locking behavior in convert_t
	w1: fix loop in w1_fini()
	sh: j2: Use ioremap() to translate device tree address into kernel memory
	serial: 8250: omap: Fix freeing of resources on failed register
	clk: qcom: gcc-ipq6018: Use floor ops for sdcc clocks
	media: usb: Check az6007_read() return value
	media: videodev2.h: Fix struct v4l2_input tuner index comment
	media: usb: siano: Fix warning due to null work_func_t function pointer
	clk: qcom: reset: Allow specifying custom reset delay
	clk: qcom: reset: support resetting multiple bits
	clk: qcom: ipq6018: fix networking resets
	usb: dwc3: qcom: Fix potential memory leak
	usb: gadget: u_serial: Add null pointer check in gserial_suspend
	extcon: Fix kernel doc of property fields to avoid warnings
	extcon: Fix kernel doc of property capability fields to avoid warnings
	usb: phy: phy-tahvo: fix memory leak in tahvo_usb_probe()
	usb: hide unused usbfs_notify_suspend/resume functions
	serial: 8250: lock port for stop_rx() in omap8250_irq()
	serial: 8250: lock port for UART_IER access in omap8250_irq()
	kernfs: fix missing kernfs_idr_lock to remove an ID from the IDR
	coresight: Fix loss of connection info when a module is unloaded
	mfd: rt5033: Drop rt5033-battery sub-device
	media: venus: helpers: Fix ALIGN() of non power of two
	media: atomisp: gmin_platform: fix out_len in gmin_get_config_dsm_var()
	KVM: s390: fix KVM_S390_GET_CMMA_BITS for GFNs in memslot holes
	usb: dwc3: qcom: Release the correct resources in dwc3_qcom_remove()
	usb: dwc3: qcom: Fix an error handling path in dwc3_qcom_probe()
	usb: common: usb-conn-gpio: Set last role to unknown before initial detection
	usb: dwc3-meson-g12a: Fix an error handling path in dwc3_meson_g12a_probe()
	mfd: intel-lpss: Add missing check for platform_get_resource
	Revert "usb: common: usb-conn-gpio: Set last role to unknown before initial detection"
	serial: 8250_omap: Use force_suspend and resume for system suspend
	test_firmware: return ENOMEM instead of ENOSPC on failed memory allocation
	mfd: stmfx: Fix error path in stmfx_chip_init
	mfd: stmfx: Nullify stmfx->vdd in case of error
	KVM: s390: vsie: fix the length of APCB bitmap
	mfd: stmpe: Only disable the regulators if they are enabled
	phy: tegra: xusb: check return value of devm_kzalloc()
	pwm: imx-tpm: force 'real_period' to be zero in suspend
	pwm: sysfs: Do not apply state to already disabled PWMs
	rtc: st-lpc: Release some resources in st_rtc_probe() in case of error
	media: cec: i2c: ch7322: also select REGMAP
	sctp: fix potential deadlock on &net->sctp.addr_wq_lock
	Add MODULE_FIRMWARE() for FIRMWARE_TG357766.
	net: dsa: vsc73xx: fix MTU configuration
	spi: bcm-qspi: return error if neither hif_mspi nor mspi is available
	mailbox: ti-msgmgr: Fill non-message tx data fields with 0x0
	f2fs: fix error path handling in truncate_dnode()
	octeontx2-af: Fix mapping for NIX block from CGX connection
	powerpc: allow PPC_EARLY_DEBUG_CPM only when SERIAL_CPM=y
	net: bridge: keep ports without IFF_UNICAST_FLT in BR_PROMISC mode
	tcp: annotate data races in __tcp_oow_rate_limited()
	xsk: Honor SO_BINDTODEVICE on bind
	net/sched: act_pedit: Add size check for TCA_PEDIT_PARMS_EX
	pptp: Fix fib lookup calls.
	net: dsa: tag_sja1105: fix MAC DA patching from meta frames
	s390/qeth: Fix vipa deletion
	sh: dma: Fix DMA channel offset calculation
	apparmor: fix missing error check for rhashtable_insert_fast
	i2c: xiic: Defer xiic_wakeup() and __xiic_start_xfer() in xiic_process()
	i2c: xiic: Don't try to handle more interrupt events after error
	ALSA: jack: Fix mutex call in snd_jack_report()
	i2c: qup: Add missing unwind goto in qup_i2c_probe()
	NFSD: add encoding of op_recall flag for write delegation
	io_uring: wait interruptibly for request completions on exit
	mmc: core: disable TRIM on Kingston EMMC04G-M627
	mmc: core: disable TRIM on Micron MTFC4GACAJCN-1M
	mmc: mmci: Set PROBE_PREFER_ASYNCHRONOUS
	mmc: sdhci: fix DMA configure compatibility issue when 64bit DMA mode is used.
	bcache: fixup btree_cache_wait list damage
	bcache: Remove unnecessary NULL point check in node allocations
	bcache: Fix __bch_btree_node_alloc to make the failure behavior consistent
	um: Use HOST_DIR for mrproper
	integrity: Fix possible multiple allocation in integrity_inode_get()
	autofs: use flexible array in ioctl structure
	shmem: use ramfs_kill_sb() for kill_sb method of ramfs-based tmpfs
	jffs2: reduce stack usage in jffs2_build_xattr_subsystem()
	fs: avoid empty option when generating legacy mount string
	ext4: Remove ext4 locking of moved directory
	Revert "f2fs: fix potential corruption when moving a directory"
	fs: Establish locking order for unrelated directories
	fs: Lock moved directories
	btrfs: add handling for RAID1C23/DUP to btrfs_reduce_alloc_profile
	btrfs: fix race when deleting quota root from the dirty cow roots list
	ASoC: mediatek: mt8173: Fix irq error path
	ASoC: mediatek: mt8173: Fix snd_soc_component_initialize error path
	ARM: orion5x: fix d2net gpio initialization
	leds: trigger: netdev: Recheck NETDEV_LED_MODE_LINKUP on dev rename
	fs: no need to check source
	fanotify: disallow mount/sb marks on kernel internal pseudo fs
	tpm, tpm_tis: Claim locality in interrupt handler
	selftests/bpf: Add verifier test for PTR_TO_MEM spill
	block: add overflow checks for Amiga partition support
	sh: pgtable-3level: Fix cast to pointer from integer of different size
	netfilter: nf_tables: use net_generic infra for transaction data
	netfilter: nf_tables: add rescheduling points during loop detection walks
	netfilter: nf_tables: incorrect error path handling with NFT_MSG_NEWRULE
	netfilter: nf_tables: fix chain binding transaction logic
	netfilter: nf_tables: add NFT_TRANS_PREPARE_ERROR to deal with bound set/chain
	netfilter: nf_tables: reject unbound anonymous set before commit phase
	netfilter: nf_tables: reject unbound chain set before commit phase
	netfilter: nftables: rename set element data activation/deactivation functions
	netfilter: nf_tables: drop map element references from preparation phase
	netfilter: nf_tables: unbind non-anonymous set if rule construction fails
	netfilter: nf_tables: fix scheduling-while-atomic splat
	netfilter: conntrack: Avoid nf_ct_helper_hash uses after free
	netfilter: nf_tables: do not ignore genmask when looking up chain by id
	netfilter: nf_tables: prevent OOB access in nft_byteorder_eval
	wireguard: queueing: use saner cpu selection wrapping
	wireguard: netlink: send staged packets when setting initial private key
	tty: serial: fsl_lpuart: add earlycon for imx8ulp platform
	rcu-tasks: Mark ->trc_reader_nesting data races
	rcu-tasks: Mark ->trc_reader_special.b.need_qs data races
	rcu-tasks: Simplify trc_read_check_handler() atomic operations
	block/partition: fix signedness issue for Amiga partitions
	io_uring: Use io_schedule* in cqring wait
	io_uring: add reschedule point to handle_tw_list()
	net: lan743x: Don't sleep in atomic context
	workqueue: clean up WORK_* constant types, clarify masking
	drm/panel: simple: Add connector_type for innolux_at043tn24
	drm/panel: simple: Add Powertip PH800480T013 drm_display_mode flags
	igc: Remove delay during TX ring configuration
	net/mlx5e: fix double free in mlx5e_destroy_flow_table
	net/mlx5e: Check for NOT_READY flag state after locking
	igc: set TP bit in 'supported' and 'advertising' fields of ethtool_link_ksettings
	scsi: qla2xxx: Fix error code in qla2x00_start_sp()
	net: mvneta: fix txq_map in case of txq_number==1
	net/sched: cls_fw: Fix improper refcount update leads to use-after-free
	gve: Set default duplex configuration to full
	ionic: remove WARN_ON to prevent panic_on_warn
	net: bgmac: postpone turning IRQs off to avoid SoC hangs
	net: prevent skb corruption on frag list segmentation
	icmp6: Fix null-ptr-deref of ip6_null_entry->rt6i_idev in icmp6_dev().
	udp6: fix udp6_ehashfn() typo
	ntb: idt: Fix error handling in idt_pci_driver_init()
	NTB: amd: Fix error handling in amd_ntb_pci_driver_init()
	ntb: intel: Fix error handling in intel_ntb_pci_driver_init()
	NTB: ntb_transport: fix possible memory leak while device_register() fails
	NTB: ntb_tool: Add check for devm_kcalloc
	ipv6/addrconf: fix a potential refcount underflow for idev
	platform/x86: wmi: remove unnecessary argument
	platform/x86: wmi: use guid_t and guid_equal()
	platform/x86: wmi: move variables
	platform/x86: wmi: Break possible infinite loop when parsing GUID
	igc: Fix launchtime before start of cycle
	igc: Fix inserting of empty frame for launchtime
	riscv: bpf: Move bpf_jit_alloc_exec() and bpf_jit_free_exec() to core
	riscv: bpf: Avoid breaking W^X
	bpf, riscv: Support riscv jit to provide bpf_line_info
	riscv, bpf: Fix inconsistent JIT image generation
	erofs: avoid infinite loop in z_erofs_do_read_page() when reading beyond EOF
	wifi: airo: avoid uninitialized warning in airo_get_rate()
	net/sched: flower: Ensure both minimum and maximum ports are specified
	netdevsim: fix uninitialized data in nsim_dev_trap_fa_cookie_write()
	net/sched: make psched_mtu() RTNL-less safe
	net/sched: sch_qfq: refactor parsing of netlink parameters
	net/sched: sch_qfq: account for stab overhead in qfq_enqueue
	nvme-pci: fix DMA direction of unmapping integrity data
	f2fs: fix to avoid NULL pointer dereference f2fs_write_end_io()
	pinctrl: amd: Fix mistake in handling clearing pins at startup
	pinctrl: amd: Detect internal GPIO0 debounce handling
	pinctrl: amd: Only use special debounce behavior for GPIO 0
	tpm: tpm_vtpm_proxy: fix a race condition in /dev/vtpmx creation
	mtd: rawnand: meson: fix unaligned DMA buffers handling
	net: bcmgenet: Ensure MDIO unregistration has clocks enabled
	powerpc: Fail build if using recordmcount with binutils v2.37
	misc: fastrpc: Create fastrpc scalar with correct buffer count
	erofs: fix compact 4B support for 16k block size
	MIPS: Loongson: Fix cpu_probe_loongson() again
	ext4: Fix reusing stale buffer heads from last failed mounting
	ext4: fix wrong unit use in ext4_mb_clear_bb
	ext4: get block from bh in ext4_free_blocks for fast commit replay
	ext4: fix wrong unit use in ext4_mb_new_blocks
	ext4: only update i_reserved_data_blocks on successful block allocation
	jfs: jfs_dmap: Validate db_l2nbperpage while mounting
	hwrng: imx-rngc - fix the timeout for init and self check
	PCI/PM: Avoid putting EloPOS E2/S2/H2 PCIe Ports in D3cold
	PCI: Add function 1 DMA alias quirk for Marvell 88SE9235
	PCI: qcom: Disable write access to read only registers for IP v2.3.3
	PCI: rockchip: Assert PCI Configuration Enable bit after probe
	PCI: rockchip: Write PCI Device ID to correct register
	PCI: rockchip: Add poll and timeout to wait for PHY PLLs to be locked
	PCI: rockchip: Fix legacy IRQ generation for RK3399 PCIe endpoint core
	PCI: rockchip: Use u32 variable to access 32-bit registers
	PCI: rockchip: Set address alignment for endpoint mode
	misc: pci_endpoint_test: Free IRQs before removing the device
	misc: pci_endpoint_test: Re-init completion for every test
	md/raid0: add discard support for the 'original' layout
	fs: dlm: return positive pid value for F_GETLK
	drm/atomic: Allow vblank-enabled + self-refresh "disable"
	drm/rockchip: vop: Leave vblank enabled in self-refresh
	drm/amd/display: Correct `DMUB_FW_VERSION` macro
	serial: atmel: don't enable IRQs prematurely
	tty: serial: samsung_tty: Fix a memory leak in s3c24xx_serial_getclk() in case of error
	tty: serial: samsung_tty: Fix a memory leak in s3c24xx_serial_getclk() when iterating clk
	firmware: stratix10-svc: Fix a potential resource leak in svc_create_memory_pool()
	ceph: don't let check_caps skip sending responses for revoke msgs
	xhci: Fix resume issue of some ZHAOXIN hosts
	xhci: Fix TRB prefetch issue of ZHAOXIN hosts
	xhci: Show ZHAOXIN xHCI root hub speed correctly
	meson saradc: fix clock divider mask length
	Revert "8250: add support for ASIX devices with a FIFO bug"
	s390/decompressor: fix misaligned symbol build error
	tracing/histograms: Add histograms to hist_vars if they have referenced variables
	samples: ftrace: Save required argument registers in sample trampolines
	net: ena: fix shift-out-of-bounds in exponential backoff
	ring-buffer: Fix deadloop issue on reading trace_pipe
	xtensa: ISS: fix call to split_if_spec
	tracing: Fix null pointer dereference in tracing_err_log_open()
	tracing/probes: Fix not to count error code to total length
	scsi: qla2xxx: Wait for io return on terminate rport
	scsi: qla2xxx: Array index may go out of bound
	scsi: qla2xxx: Fix buffer overrun
	scsi: qla2xxx: Fix potential NULL pointer dereference
	scsi: qla2xxx: Check valid rport returned by fc_bsg_to_rport()
	scsi: qla2xxx: Correct the index of array
	scsi: qla2xxx: Pointer may be dereferenced
	scsi: qla2xxx: Remove unused nvme_ls_waitq wait queue
	net/sched: sch_qfq: reintroduce lmax bound check for MTU
	RDMA/cma: Ensure rdma_addr_cancel() happens before issuing more requests
	drm/atomic: Fix potential use-after-free in nonblocking commits
	ALSA: hda/realtek - remove 3k pull low procedure
	ALSA: hda/realtek: Enable Mute LED on HP Laptop 15s-eq2xxx
	keys: Fix linking a duplicate key to a keyring's assoc_array
	perf probe: Add test for regression introduced by switch to die_get_decl_file()
	btrfs: fix warning when putting transaction with qgroups enabled after abort
	fuse: revalidate: don't invalidate if interrupted
	selftests: tc: set timeout to 15 minutes
	selftests: tc: add 'ct' action kconfig dep
	regmap: Drop initial version of maximum transfer length fixes
	regmap: Account for register length in SMBus I/O limits
	can: bcm: Fix UAF in bcm_proc_show()
	drm/client: Fix memory leak in drm_client_target_cloned
	drm/client: Fix memory leak in drm_client_modeset_probe
	ASoC: fsl_sai: Disable bit clock with transmitter
	ext4: correct inline offset when handling xattrs in inode body
	debugobjects: Recheck debug_objects_enabled before reporting
	nbd: Add the maximum limit of allocated index in nbd_dev_add
	md: fix data corruption for raid456 when reshape restart while grow up
	md/raid10: prevent soft lockup while flush writes
	posix-timers: Ensure timer ID search-loop limit is valid
	btrfs: add xxhash to fast checksum implementations
	ACPI: button: Add lid disable DMI quirk for Nextbook Ares 8A
	ACPI: video: Add backlight=native DMI quirk for Apple iMac11,3
	ACPI: video: Add backlight=native DMI quirk for Lenovo ThinkPad X131e (3371 AMD version)
	arm64: set __exception_irq_entry with __irq_entry as a default
	arm64: mm: fix VA-range sanity check
	sched/fair: Don't balance task to its current running CPU
	wifi: ath11k: fix registration of 6Ghz-only phy without the full channel range
	bpf: Address KCSAN report on bpf_lru_list
	devlink: report devlink_port_type_warn source device
	wifi: wext-core: Fix -Wstringop-overflow warning in ioctl_standard_iw_point()
	wifi: iwlwifi: mvm: avoid baid size integer overflow
	igb: Fix igb_down hung on surprise removal
	spi: bcm63xx: fix max prepend length
	fbdev: imxfb: warn about invalid left/right margin
	pinctrl: amd: Use amd_pinconf_set() for all config options
	net: ethernet: ti: cpsw_ale: Fix cpsw_ale_get_field()/cpsw_ale_set_field()
	bridge: Add extack warning when enabling STP in netns.
	iavf: Fix use-after-free in free_netdev
	iavf: Fix out-of-bounds when setting channels on remove
	security: keys: Modify mismatched function name
	octeontx2-pf: Dont allocate BPIDs for LBK interfaces
	tcp: annotate data-races around tcp_rsk(req)->ts_recent
	net: ipv4: Use kfree_sensitive instead of kfree
	net:ipv6: check return value of pskb_trim()
	Revert "tcp: avoid the lookup process failing to get sk in ehash table"
	fbdev: au1200fb: Fix missing IRQ check in au1200fb_drv_probe
	llc: Don't drop packet from non-root netns.
	netfilter: nf_tables: fix spurious set element insertion failure
	netfilter: nf_tables: can't schedule in nft_chain_validate
	netfilter: nft_set_pipapo: fix improper element removal
	netfilter: nf_tables: skip bound chain in netns release path
	netfilter: nf_tables: skip bound chain on rule flush
	tcp: annotate data-races around tp->tcp_tx_delay
	tcp: annotate data-races around tp->keepalive_time
	tcp: annotate data-races around tp->keepalive_intvl
	tcp: annotate data-races around tp->keepalive_probes
	net: Introduce net.ipv4.tcp_migrate_req.
	tcp: Fix data-races around sysctl_tcp_syn(ack)?_retries.
	tcp: annotate data-races around icsk->icsk_syn_retries
	tcp: annotate data-races around tp->linger2
	tcp: annotate data-races around rskq_defer_accept
	tcp: annotate data-races around tp->notsent_lowat
	tcp: annotate data-races around icsk->icsk_user_timeout
	tcp: annotate data-races around fastopenq.max_qlen
	net: phy: prevent stale pointer dereference in phy_init()
	tracing/histograms: Return an error if we fail to add histogram to hist_vars list
	tracing: Fix memory leak of iter->temp when reading trace_pipe
	ftrace: Store the order of pages allocated in ftrace_page
	ftrace: Fix possible warning on checking all pages used in ftrace_process_locs()
	Linux 5.10.188

Change-Id: Ibcc1adc43df5b8f649b12078eedd5d4f57de4578
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-08-03 11:23:27 +00:00
Yu Kuai 634daf6b2c md/raid10: prevent soft lockup while flush writes
[ Upstream commit 010444623e ]

Currently, there is no limit for raid1/raid10 plugged bio. While flushing
writes, raid1 has cond_resched() while raid10 doesn't, and too many
writes can cause soft lockup.

Follow up soft lockup can be triggered easily with writeback test for
raid10 with ramdisks:

watchdog: BUG: soft lockup - CPU#10 stuck for 27s! [md0_raid10:1293]
Call Trace:
 <TASK>
 call_rcu+0x16/0x20
 put_object+0x41/0x80
 __delete_object+0x50/0x90
 delete_object_full+0x2b/0x40
 kmemleak_free+0x46/0xa0
 slab_free_freelist_hook.constprop.0+0xed/0x1a0
 kmem_cache_free+0xfd/0x300
 mempool_free_slab+0x1f/0x30
 mempool_free+0x3a/0x100
 bio_free+0x59/0x80
 bio_put+0xcf/0x2c0
 free_r10bio+0xbf/0xf0
 raid_end_bio_io+0x78/0xb0
 one_write_done+0x8a/0xa0
 raid10_end_write_request+0x1b4/0x430
 bio_endio+0x175/0x320
 brd_submit_bio+0x3b9/0x9b7 [brd]
 __submit_bio+0x69/0xe0
 submit_bio_noacct_nocheck+0x1e6/0x5a0
 submit_bio_noacct+0x38c/0x7e0
 flush_pending_writes+0xf0/0x240
 raid10d+0xac/0x1ed0

Fix the problem by adding cond_resched() to raid10 like what raid1 did.

Note that unlimited plugged bio still need to be optimized, for example,
in the case of lots of dirty pages writeback, this will take lots of
memory and io will spend a long time in plug, hence io latency is bad.

Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20230529131106.2123367-2-yukuai1@huaweicloud.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-07-27 08:44:36 +02:00
Yu Kuai b02939413e md: fix data corruption for raid456 when reshape restart while grow up
[ Upstream commit 873f50ece4 ]

Currently, if reshape is interrupted, echo "reshape" to sync_action will
restart reshape from scratch, for example:

echo frozen > sync_action
echo reshape > sync_action

This will corrupt data before reshape_position if the array is growing,
fix the problem by continue reshape from reshape_position.

Reported-by: Peter Neuwirth <reddunur@online.de>
Link: https://lore.kernel.org/linux-raid/e2f96772-bfbc-f43b-6da1-f520e5164536@online.de/
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20230512015610.821290-3-yukuai1@huaweicloud.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-07-27 08:44:36 +02:00
Jason Baron 5e9aff5b10 md/raid0: add discard support for the 'original' layout
commit e836007089 upstream.

We've found that using raid0 with the 'original' layout and discard
enabled with different disk sizes (such that at least two zones are
created) can result in data corruption. This is due to the fact that
the discard handling in 'raid0_handle_discard()' assumes the 'alternate'
layout. We've seen this corruption using ext4 but other filesystems are
likely susceptible as well.

More specifically, while multiple zones are necessary to create the
corruption, the corruption may not occur with multiple zones if they
layout in such a way the layout matches what the 'alternate' layout
would have produced. Thus, not all raid0 devices with the 'original'
layout, different size disks and discard enabled will encounter this
corruption.

The 3.14 kernel inadvertently changed the raid0 disk layout for different
size disks. Thus, running a pre-3.14 kernel and post-3.14 kernel on the
same raid0 array could corrupt data. This lead to the creation of the
'original' layout (to match the pre-3.14 layout) and the 'alternate' layout
(to match the post 3.14 layout) in the 5.4 kernel time frame and an option
to tell the kernel which layout to use (since it couldn't be autodetected).
However, when the 'original' layout was added back to 5.4 discard support
for the 'original' layout was not added leading this issue.

I've been able to reliably reproduce the corruption with the following
test case:

1. create raid0 array with different size disks using original layout
2. mkfs
3. mount -o discard
4. create lots of files
5. remove 1/2 the files
6. fstrim -a (or just the mount point for the raid0 array)
7. umount
8. fsck -fn /dev/md0 (spews all sorts of corruptions)

Let's fix this by adding proper discard support to the 'original' layout.
The fix 'maps' the 'original' layout disks to the order in which they are
read/written such that we can compare the disks in the same way that the
current 'alternate' layout does. A 'disk_shift' field is added to
'struct strip_zone'. This could be computed on the fly in
raid0_handle_discard() but by adding this field, we save some computation
in the discard path.

Note we could also potentially fix this by re-ordering the disks in the
zones that follow the first one, and then always read/writing them using
the 'alternate' layout. However, that is seen as a more substantial change,
and we are attempting the least invasive fix at this time to remedy the
corruption.

I've verified the change using the reproducer mentioned above. Typically,
the corruption is seen after less than 3 iterations, while the patch has
run 500+ iterations.

Cc: NeilBrown <neilb@suse.de>
Cc: Song Liu <song@kernel.org>
Fixes: c84a1372df ("md/raid0: avoid RAID0 data corruption due to layout confusion.")
Cc: stable@vger.kernel.org
Signed-off-by: Jason Baron <jbaron@akamai.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20230623180523.1901230-1-jbaron@akamai.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-07-27 08:44:29 +02:00
Zheng Wang a4405f6ee0 bcache: Fix __bch_btree_node_alloc to make the failure behavior consistent
commit 80fca8a10b upstream.

In some specific situations, the return value of __bch_btree_node_alloc
may be NULL. This may lead to a potential NULL pointer dereference in
caller function like a calling chain :
btree_split->bch_btree_node_alloc->__bch_btree_node_alloc.

Fix it by initializing the return value in __bch_btree_node_alloc.

Fixes: cafe563591 ("bcache: A block layer cache")
Cc: stable@vger.kernel.org
Signed-off-by: Zheng Wang <zyytlz.wz@163.com>
Signed-off-by: Coly Li <colyli@suse.de>
Link: https://lore.kernel.org/r/20230615121223.22502-6-colyli@suse.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-07-27 08:44:12 +02:00
Zheng Wang db9439cef0 bcache: Remove unnecessary NULL point check in node allocations
commit 028ddcac47 upstream.

Due to the previous fix of __bch_btree_node_alloc, the return value will
never be a NULL pointer. So IS_ERR is enough to handle the failure
situation. Fix it by replacing IS_ERR_OR_NULL check by an IS_ERR check.

Fixes: cafe563591 ("bcache: A block layer cache")
Cc: stable@vger.kernel.org
Signed-off-by: Zheng Wang <zyytlz.wz@163.com>
Signed-off-by: Coly Li <colyli@suse.de>
Link: https://lore.kernel.org/r/20230615121223.22502-5-colyli@suse.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-07-27 08:44:12 +02:00
Mingzhe Zou bcb295778a bcache: fixup btree_cache_wait list damage
commit f0854489fc upstream.

We get a kernel crash about "list_add corruption. next->prev should be
prev (ffff9c801bc01210), but was ffff9c77b688237c.
(next=ffffae586d8afe68)."

crash> struct list_head 0xffff9c801bc01210
struct list_head {
  next = 0xffffae586d8afe68,
  prev = 0xffffae586d8afe68
}
crash> struct list_head 0xffff9c77b688237c
struct list_head {
  next = 0x0,
  prev = 0x0
}
crash> struct list_head 0xffffae586d8afe68
struct list_head struct: invalid kernel virtual address: ffffae586d8afe68  type: "gdb_readmem_callback"
Cannot access memory at address 0xffffae586d8afe68

[230469.019492] Call Trace:
[230469.032041]  prepare_to_wait+0x8a/0xb0
[230469.044363]  ? bch_btree_keys_free+0x6c/0xc0 [escache]
[230469.056533]  mca_cannibalize_lock+0x72/0x90 [escache]
[230469.068788]  mca_alloc+0x2ae/0x450 [escache]
[230469.080790]  bch_btree_node_get+0x136/0x2d0 [escache]
[230469.092681]  bch_btree_check_thread+0x1e1/0x260 [escache]
[230469.104382]  ? finish_wait+0x80/0x80
[230469.115884]  ? bch_btree_check_recurse+0x1a0/0x1a0 [escache]
[230469.127259]  kthread+0x112/0x130
[230469.138448]  ? kthread_flush_work_fn+0x10/0x10
[230469.149477]  ret_from_fork+0x35/0x40

bch_btree_check_thread() and bch_dirty_init_thread() may call
mca_cannibalize() to cannibalize other cached btree nodes. Only one thread
can do it at a time, so the op of other threads will be added to the
btree_cache_wait list.

We must call finish_wait() to remove op from btree_cache_wait before free
it's memory address. Otherwise, the list will be damaged. Also should call
bch_cannibalize_unlock() to release the btree_cache_alloc_lock and wake_up
other waiters.

Fixes: 8e7102273f ("bcache: make bch_btree_check() to be multithreaded")
Fixes: b144e45fc5 ("bcache: make bch_sectors_dirty_init() to be multithreaded")
Cc: stable@vger.kernel.org
Signed-off-by: Mingzhe Zou <mingzhe.zou@easystack.cn>
Signed-off-by: Coly Li <colyli@suse.de>
Link: https://lore.kernel.org/r/20230615121223.22502-7-colyli@suse.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-07-27 08:44:12 +02:00
Li Nan 9d1cccdad0 md/raid10: fix io loss while replacement replace rdev
[ Upstream commit 2ae6aaf769 ]

When removing a disk with replacement, the replacement will be used to
replace rdev. During this process, there is a brief window in which both
rdev and replacement are read as NULL in raid10_write_request(). This
will result in io not being submitted but it should be.

  //remove				//write
  raid10_remove_disk			raid10_write_request
   mirror->rdev = NULL
					 read rdev -> NULL
   mirror->rdev = mirror->replacement
   mirror->replacement = NULL
					 read replacement -> NULL

Fix it by reading replacement first and rdev later, meanwhile, use smp_mb()
to prevent memory reordering.

Fixes: 475b0321a4 ("md/raid10: writes should get directed to replacement as well as original.")
Signed-off-by: Li Nan <linan122@huawei.com>
Reviewed-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20230602091839.743798-3-linan666@huaweicloud.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-07-27 08:43:32 +02:00
Li Nan 2990e2ece1 md/raid10: fix null-ptr-deref of mreplace in raid10_sync_request
[ Upstream commit 34817a2441 ]

There are two check of 'mreplace' in raid10_sync_request(). In the first
check, 'need_replace' will be set and 'mreplace' will be used later if
no-Faulty 'mreplace' exists, In the second check, 'mreplace' will be
set to NULL if it is Faulty, but 'need_replace' will not be changed
accordingly. null-ptr-deref occurs if Faulty is set between two check.

Fix it by merging two checks into one. And replace 'need_replace' with
'mreplace' because their values are always the same.

Fixes: ee37d7314a ("md/raid10: Fix raid10 replace hang when new added disk faulty")
Signed-off-by: Li Nan <linan122@huawei.com>
Reviewed-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20230527072218.2365857-2-linan666@huaweicloud.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-07-27 08:43:32 +02:00
Li Nan b1d8f38310 md/raid10: fix wrong setting of max_corr_read_errors
[ Upstream commit f8b20a4054 ]

There is no input check when echo md/max_read_errors and overflow might
occur. Add check of input number.

Fixes: 1e50915fe0 ("raid: improve MD/raid10 handling of correctable read errors.")
Signed-off-by: Li Nan <linan122@huawei.com>
Reviewed-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20230522072535.1523740-3-linan666@huaweicloud.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-07-27 08:43:32 +02:00
Li Nan b3a0bc4a01 md/raid10: fix overflow of md/safe_mode_delay
[ Upstream commit 6beb489b2e ]

There is no input check when echo md/safe_mode_delay in safe_delay_store().
And msec might also overflow when HZ < 1000 in safe_delay_show(), Fix it by
checking overflow in safe_delay_store() and use unsigned long conversion in
safe_delay_show().

Fixes: 72e02075a3 ("md: factor out parsing of fixed-point numbers")
Signed-off-by: Li Nan <linan122@huawei.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20230522072535.1523740-2-linan666@huaweicloud.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-07-27 08:43:32 +02:00
Li Nan 39fa14e824 md/raid10: check slab-out-of-bounds in md_bitmap_get_counter
[ Upstream commit 301867b1c1 ]

If we write a large number to md/bitmap_set_bits, md_bitmap_checkpage()
will return -EINVAL because 'page >= bitmap->pages', but the return value
was not checked immediately in md_bitmap_get_counter() in order to set
*blocks value and slab-out-of-bounds occurs.

Move check of 'page >= bitmap->pages' to md_bitmap_get_counter() and
return directly if true.

Fixes: ef42567335 ("md/bitmap: optimise scanning of empty bitmaps.")
Signed-off-by: Li Nan <linan122@huawei.com>
Reviewed-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20230515134808.3936750-2-linan666@huaweicloud.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-07-27 08:43:32 +02:00
Greg Kroah-Hartman d70c95bd81 Merge 5.10.180 into android12-5.10-lts
Changes in 5.10.180
	seccomp: Move copy_seccomp() to no failure path.
	counter: 104-quad-8: Fix race condition between FLAG and CNTR reads
	KVM: arm64: Fix buffer overflow in kvm_arm_set_fw_reg()
	wifi: brcmfmac: slab-out-of-bounds read in brcmf_get_assoc_ies()
	drm/fb-helper: set x/yres_virtual in drm_fb_helper_check_var
	bluetooth: Perform careful capability checks in hci_sock_ioctl()
	x86/fpu: Prevent FPU state corruption
	USB: serial: option: add UNISOC vendor and TOZED LT70C product
	driver core: Don't require dynamic_debug for initcall_debug probe timing
	iio: adc: palmas_gpadc: fix NULL dereference on rmmod
	ASoC: Intel: bytcr_rt5640: Add quirk for the Acer Iconia One 7 B1-750
	asm-generic/io.h: suppress endianness warnings for readq() and writeq()
	wireguard: timers: cast enum limits members to int in prints
	PCI: pciehp: Fix AB-BA deadlock between reset_lock and device_lock
	PCI: qcom: Fix the incorrect register usage in v2.7.0 config
	USB: dwc3: fix runtime pm imbalance on probe errors
	USB: dwc3: fix runtime pm imbalance on unbind
	hwmon: (k10temp) Check range scale when CUR_TEMP register is read-write
	hwmon: (adt7475) Use device_property APIs when configuring polarity
	posix-cpu-timers: Implement the missing timer_wait_running callback
	perf sched: Cast PTHREAD_STACK_MIN to int as it may turn into sysconf(__SC_THREAD_STACK_MIN_VALUE)
	blk-mq: release crypto keyslot before reporting I/O complete
	blk-crypto: make blk_crypto_evict_key() return void
	blk-crypto: make blk_crypto_evict_key() more robust
	ext4: use ext4_journal_start/stop for fast commit transactions
	staging: iio: resolver: ads1210: fix config mode
	xhci: fix debugfs register accesses while suspended
	tick/nohz: Fix cpu_is_hotpluggable() by checking with nohz subsystem
	MIPS: fw: Allow firmware to pass a empty env
	ipmi:ssif: Add send_retries increment
	ipmi: fix SSIF not responding under certain cond.
	kheaders: Use array declaration instead of char
	pwm: meson: Fix axg ao mux parents
	pwm: meson: Fix g12a ao clk81 name
	ring-buffer: Sync IRQ works before buffer destruction
	crypto: api - Demote BUG_ON() in crypto_unregister_alg() to a WARN_ON()
	crypto: safexcel - Cleanup ring IRQ workqueues on load failure
	rcu: Avoid stack overflow due to __rcu_irq_enter_check_tick() being kprobe-ed
	reiserfs: Add security prefix to xattr name in reiserfs_security_write()
	KVM: nVMX: Emulate NOPs in L2, and PAUSE if it's not intercepted
	relayfs: fix out-of-bounds access in relay_file_read
	writeback, cgroup: fix null-ptr-deref write in bdi_split_work_to_wbs
	i2c: omap: Fix standard mode false ACK readings
	iommu/amd: Fix "Guest Virtual APIC Table Root Pointer" configuration in IRTE
	Revert "ubifs: dirty_cow_znode: Fix memleak in error handling path"
	ubifs: Fix memleak when insert_old_idx() failed
	ubi: Fix return value overwrite issue in try_write_vid_and_data()
	ubifs: Free memory for tmpfile name
	sound/oss/dmasound: fix build when drivers are mixed =y/=m
	parisc: Fix argument pointer in real64_call_asm()
	nilfs2: do not write dirty data after degenerating to read-only
	nilfs2: fix infinite loop in nilfs_mdt_get_block()
	md/raid10: fix null-ptr-deref in raid10_sync_request
	mailbox: zynqmp: Fix IPI isr handling
	mailbox: zynqmp: Fix typo in IPI documentation
	wifi: rtl8xxxu: RTL8192EU always needs full init
	clk: rockchip: rk3399: allow clk_cifout to force clk_cifout_src to reparent
	rcu: Fix missing TICK_DEP_MASK_RCU_EXP dependency check
	selftests/resctrl: Return NULL if malloc_and_init_memory() did not alloc mem
	selftests/resctrl: Check for return value after write_schemata()
	selinux: fix Makefile dependencies of flask.h
	selinux: ensure av_permissions.h is built when needed
	tpm, tpm_tis: Do not skip reset of original interrupt vector
	tpm, tpm_tis: Claim locality before writing TPM_INT_ENABLE register
	tpm, tpm_tis: Disable interrupts if tpm_tis_probe_irq() failed
	tpm, tpm_tis: Claim locality before writing interrupt registers
	tpm, tpm: Implement usage counter for locality
	tpm, tpm_tis: Claim locality when interrupts are reenabled on resume
	erofs: stop parsing non-compact HEAD index if clusterofs is invalid
	erofs: fix potential overflow calculating xattr_isize
	drm/rockchip: Drop unbalanced obj unref
	drm/vgem: add missing mutex_destroy
	drm/probe-helper: Cancel previous job before starting new one
	soc: ti: pm33xx: Enable basic PM runtime support for genpd
	soc: ti: pm33xx: Fix refcount leak in am33xx_pm_probe
	arm64: dts: renesas: r8a77990: Remove bogus voltages from OPP table
	arm64: dts: renesas: r8a774c0: Remove bogus voltages from OPP table
	drm/msm/disp/dpu: check for crtc enable rather than crtc active to release shared resources
	EDAC/skx: Fix overflows on the DRAM row address mapping arrays
	arm64: dts: qcom: msm8998: Fix stm-stimulus-base reg name
	arm64: dts: qcom: sdm845: correct dynamic power coefficients
	arm64: dts: qcom: sdm845: Fix the PCI I/O port range
	arm64: dts: qcom: msm8998: Fix the PCI I/O port range
	arm64: dts: qcom: ipq8074: Fix the PCI I/O port range
	arm64: dts: qcom: msm8996: Fix the PCI I/O port range
	ARM: dts: qcom: ipq4019: Fix the PCI I/O port range
	ARM: dts: qcom: ipq8064: reduce pci IO size to 64K
	ARM: dts: qcom: ipq8064: Fix the PCI I/O port range
	x86/MCE/AMD: Use an u64 for bank_map
	media: bdisp: Add missing check for create_workqueue
	firmware: qcom_scm: Clear download bit during reboot
	drm/bridge: adv7533: Fix adv7533_mode_valid for adv7533 and adv7535
	media: max9286: Free control handler
	drm/msm/adreno: Defer enabling runpm until hw_init()
	drm/msm/adreno: drop bogus pm_runtime_set_active()
	drm: msm: adreno: Disable preemption on Adreno 510
	ACPI: processor: Fix evaluating _PDC method when running as Xen dom0
	mmc: sdhci-of-esdhc: fix quirk to ignore command inhibit for data
	ARM: dts: gta04: fix excess dma channel usage
	drm/lima/lima_drv: Add missing unwind goto in lima_pdev_probe()
	regulator: core: Consistently set mutex_owner when using ww_mutex_lock_slow()
	regulator: core: Avoid lockdep reports when resolving supplies
	x86/apic: Fix atomic update of offset in reserve_eilvt_offset()
	media: rkvdec: fix use after free bug in rkvdec_remove
	media: dm1105: Fix use after free bug in dm1105_remove due to race condition
	media: saa7134: fix use after free bug in saa7134_finidev due to race condition
	media: rcar_fdp1: simplify error check logic at fdp_open()
	media: rcar_fdp1: fix pm_runtime_get_sync() usage count
	media: rcar_fdp1: Make use of the helper function devm_platform_ioremap_resource()
	media: rcar_fdp1: Fix the correct variable assignments
	media: rcar_fdp1: Fix refcount leak in probe and remove function
	media: rc: gpio-ir-recv: Fix support for wake-up
	media: venus: vdec: Fix non reliable setting of LAST flag
	media: venus: vdec: Make decoder return LAST flag for sufficient event
	media: venus: preserve DRC state across seeks
	media: venus: vdec: Handle DRC after drain
	media: venus: dec: Fix handling of the start cmd
	regulator: stm32-pwr: fix of_iomap leak
	x86/ioapic: Don't return 0 from arch_dynirq_lower_bound()
	arm64: kgdb: Set PSTATE.SS to 1 to re-enable single-step
	debugobject: Prevent init race with static objects
	drm/i915: Make intel_get_crtc_new_encoder() less oopsy
	tick/sched: Use tick_next_period for lockless quick check
	tick/sched: Reduce seqcount held scope in tick_do_update_jiffies64()
	tick/sched: Optimize tick_do_update_jiffies64() further
	tick: Get rid of tick_period
	tick/common: Align tick period with the HZ tick.
	wifi: ath6kl: minor fix for allocation size
	wifi: ath9k: hif_usb: fix memory leak of remain_skbs
	wifi: ath5k: fix an off by one check in ath5k_eeprom_read_freq_list()
	wifi: ath6kl: reduce WARN to dev_dbg() in callback
	tools: bpftool: Remove invalid \' json escape
	wifi: rtw88: mac: Return the original error from rtw_pwr_seq_parser()
	wifi: rtw88: mac: Return the original error from rtw_mac_power_switch()
	bpf: take into account liveness when propagating precision
	bpf: fix precision propagation verbose logging
	scm: fix MSG_CTRUNC setting condition for SO_PASSSEC
	bpf: Remove misleading spec_v1 check on var-offset stack read
	vlan: partially enable SIOCSHWTSTAMP in container
	net/packet: annotate accesses to po->xmit
	net/packet: convert po->origdev to an atomic flag
	net/packet: convert po->auxdata to an atomic flag
	scsi: target: Rename struct sense_info to sense_detail
	scsi: target: Rename cmd.bad_sector to cmd.sense_info
	scsi: target: Make state_list per CPU
	scsi: target: Fix multiple LUN_RESET handling
	scsi: target: iscsit: Fix TAS handling during conn cleanup
	scsi: megaraid: Fix mega_cmd_done() CMDID_INT_CMDS
	f2fs: handle dqget error in f2fs_transfer_project_quota()
	f2fs: enforce single zone capacity
	f2fs: apply zone capacity to all zone type
	f2fs: compress: fix to call f2fs_wait_on_page_writeback() in f2fs_write_raw_pages()
	crypto: caam - Clear some memory in instantiate_rng
	crypto: sa2ul - Select CRYPTO_DES
	wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_rfreg()
	wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_reg()
	net: qrtr: correct types of trace event parameters
	selftests/bpf: Wait for receive in cg_storage_multi test
	bpftool: Fix bug for long instructions in program CFG dumps
	crypto: drbg - make drbg_prepare_hrng() handle jent instantiation errors
	crypto: drbg - Only fail when jent is unavailable in FIPS mode
	xsk: Fix unaligned descriptor validation
	f2fs: fix to avoid use-after-free for cached IPU bio
	scsi: lpfc: Fix ioremap issues in lpfc_sli4_pci_mem_setup()
	net: ethernet: stmmac: dwmac-rk: fix optional phy regulator handling
	bpf, sockmap: fix deadlocks in the sockhash and sockmap
	nvme: handle the persistent internal error AER
	nvme: fix async event trace event
	nvme-fcloop: fix "inconsistent {IN-HARDIRQ-W} -> {HARDIRQ-ON-W} usage"
	bpf, sockmap: Revert buggy deadlock fix in the sockhash and sockmap
	md/raid10: fix leak of 'r10bio->remaining' for recovery
	md/raid10: fix memleak for 'conf->bio_split'
	md/raid10: fix memleak of md thread
	wifi: iwlwifi: yoyo: Fix possible division by zero
	wifi: iwlwifi: fw: move memset before early return
	jdb2: Don't refuse invalidation of already invalidated buffers
	wifi: iwlwifi: make the loop for card preparation effective
	wifi: iwlwifi: mvm: check firmware response size
	wifi: iwlwifi: fw: fix memory leak in debugfs
	ixgbe: Allow flow hash to be set via ethtool
	ixgbe: Enable setting RSS table to default values
	bpf: Don't EFAULT for getsockopt with optval=NULL
	netfilter: nf_tables: don't write table validation state without mutex
	net/sched: sch_fq: fix integer overflow of "credit"
	ipv4: Fix potential uninit variable access bug in __ip_make_skb()
	Revert "Bluetooth: btsdio: fix use after free bug in btsdio_remove due to unfinished work"
	netlink: Use copy_to_user() for optval in netlink_getsockopt().
	net: amd: Fix link leak when verifying config failed
	tcp/udp: Fix memleaks of sk and zerocopy skbs with TX timestamp.
	ipmi: ASPEED_BT_IPMI_BMC: select REGMAP_MMIO instead of depending on it
	pstore: Revert pmsg_lock back to a normal mutex
	usb: host: xhci-rcar: remove leftover quirk handling
	usb: dwc3: gadget: Change condition for processing suspend event
	fpga: bridge: fix kernel-doc parameter description
	iio: light: max44009: add missing OF device matching
	spi: spi-imx: using pm_runtime_resume_and_get instead of pm_runtime_get_sync
	spi: imx: Don't skip cleanup in remove's error path
	usb: gadget: udc: renesas_usb3: Fix use after free bug in renesas_usb3_remove due to race condition
	PCI: imx6: Install the fault handler only on compatible match
	ASoC: es8316: Use IRQF_NO_AUTOEN when requesting the IRQ
	ASoC: es8316: Handle optional IRQ assignment
	linux/vt_buffer.h: allow either builtin or modular for macros
	spi: qup: Don't skip cleanup in remove's error path
	spi: fsl-spi: Fix CPM/QE mode Litte Endian
	vmci_host: fix a race condition in vmci_host_poll() causing GPF
	of: Fix modalias string generation
	PCI/EDR: Clear Device Status after EDR error recovery
	ia64: mm/contig: fix section mismatch warning/error
	ia64: salinfo: placate defined-but-not-used warning
	scripts/gdb: bail early if there are no clocks
	scripts/gdb: bail early if there are no generic PD
	coresight: etm_pmu: Set the module field
	ASoC: fsl_mqs: move of_node_put() to the correct location
	spi: cadence-quadspi: fix suspend-resume implementations
	i2c: cadence: cdns_i2c_master_xfer(): Fix runtime PM leak on error path
	uapi/linux/const.h: prefer ISO-friendly __typeof__
	sh: sq: Fix incorrect element size for allocating bitmap buffer
	usb: gadget: tegra-xudc: Fix crash in vbus_draw
	usb: chipidea: fix missing goto in `ci_hdrc_probe`
	usb: mtu3: fix kernel panic at qmu transfer done irq handler
	firmware: stratix10-svc: Fix an NULL vs IS_ERR() bug in probe
	tty: serial: fsl_lpuart: adjust buffer length to the intended size
	serial: 8250: Add missing wakeup event reporting
	staging: rtl8192e: Fix W_DISABLE# does not work after stop/start
	spmi: Add a check for remove callback when removing a SPMI driver
	macintosh/windfarm_smu_sat: Add missing of_node_put()
	powerpc/mpc512x: fix resource printk format warning
	powerpc/wii: fix resource printk format warnings
	powerpc/sysdev/tsi108: fix resource printk format warnings
	macintosh: via-pmu-led: requires ATA to be set
	powerpc/rtas: use memmove for potentially overlapping buffer copy
	perf/core: Fix hardlockup failure caused by perf throttle
	clk: at91: clk-sam9x60-pll: fix return value check
	RDMA/siw: Fix potential page_array out of range access
	RDMA/rdmavt: Delete unnecessary NULL check
	workqueue: Rename "delayed" (delayed by active management) to "inactive"
	workqueue: Fix hung time report of worker pools
	rtc: omap: include header for omap_rtc_power_off_program prototype
	RDMA/mlx4: Prevent shift wrapping in set_user_sq_size()
	rtc: meson-vrtc: Use ktime_get_real_ts64() to get the current time
	power: supply: generic-adc-battery: fix unit scaling
	clk: add missing of_node_put() in "assigned-clocks" property parsing
	RDMA/siw: Remove namespace check from siw_netdev_event()
	RDMA/cm: Trace icm_send_rej event before the cm state is reset
	RDMA/srpt: Add a check for valid 'mad_agent' pointer
	IB/hfi1: Fix SDMA mmu_rb_node not being evicted in LRU order
	IB/hfi1: Add AIP tx traces
	IB/hfi1: Add additional usdma traces
	IB/hfi1: Fix bugs with non-PAGE_SIZE-end multi-iovec user SDMA requests
	NFSv4.1: Always send a RECLAIM_COMPLETE after establishing lease
	firmware: raspberrypi: Introduce devm_rpi_firmware_get()
	input: raspberrypi-ts: Release firmware handle when not needed
	Input: raspberrypi-ts - fix refcount leak in rpi_ts_probe
	RDMA/mlx5: Fix flow counter query via DEVX
	SUNRPC: remove the maximum number of retries in call_bind_status
	RDMA/mlx5: Use correct device num_ports when modify DC
	clocksource/drivers/davinci: Fix memory leak in davinci_timer_register when init fails
	openrisc: Properly store r31 to pt_regs on unhandled exceptions
	ext4: fix use-after-free read in ext4_find_extent for bigalloc + inline
	leds: TI_LMU_COMMON: select REGMAP instead of depending on it
	dmaengine: mv_xor_v2: Fix an error code.
	leds: tca6507: Fix error handling of using fwnode_property_read_string
	pwm: mtk-disp: Don't check the return code of pwmchip_remove()
	pwm: mtk-disp: Adjust the clocks to avoid them mismatch
	pwm: mtk-disp: Disable shadow registers before setting backlight values
	phy: tegra: xusb: Add missing tegra_xusb_port_unregister for usb2_port and ulpi_port
	dmaengine: dw-edma: Fix to change for continuous transfer
	dmaengine: dw-edma: Fix to enable to issue dma request on DMA processing
	dmaengine: at_xdmac: do not enable all cyclic channels
	thermal/drivers/mediatek: Use devm_of_iomap to avoid resource leak in mtk_thermal_probe
	mfd: tqmx86: Do not access I2C_DETECT register through io_base
	mfd: tqmx86: Remove incorrect TQMx90UC board ID
	mfd: tqmx86: Add support for TQMx110EB and TQMxE40x
	mfd: tqmx86: Specify IO port register range more precisely
	mfd: tqmx86: Correct board names for TQMxE39x
	afs: Fix updating of i_size with dv jump from server
	scripts/gdb: fix lx-timerlist for Python3
	btrfs: scrub: reject unsupported scrub flags
	s390/dasd: fix hanging blockdevice after request requeue
	ia64: fix an addr to taddr in huge_pte_offset()
	dm clone: call kmem_cache_destroy() in dm_clone_init() error path
	dm integrity: call kmem_cache_destroy() in dm_integrity_init() error path
	dm flakey: fix a crash with invalid table line
	dm ioctl: fix nested locking in table_clear() to remove deadlock concern
	perf auxtrace: Fix address filter entire kernel size
	perf intel-pt: Fix CYC timestamps after standalone CBR
	arm64: Always load shadow stack pointer directly from the task struct
	arm64: Stash shadow stack pointer in the task struct on interrupt
	debugobject: Ensure pool refill (again)
	sound/oss/dmasound: fix 'dmasound_setup' defined but not used
	arm64: dts: qcom: sdm845: correct dynamic power coefficients
	scsi: target: core: Avoid smp_processor_id() in preemptible code
	netfilter: nf_tables: deactivate anonymous set from preparation phase
	tty: create internal tty.h file
	tty: audit: move some local functions out of tty.h
	tty: move some internal tty lock enums and functions out of tty.h
	tty: move some tty-only functions to drivers/tty/tty.h
	tty: clean include/linux/tty.h up
	tty: Prevent writing chars during tcsetattr TCSADRAIN/FLUSH
	ring-buffer: Ensure proper resetting of atomic variables in ring_buffer_reset_online_cpus
	crypto: ccp - Clear PSP interrupt status register before calling handler
	mailbox: zynq: Switch to flexible array to simplify code
	mailbox: zynqmp: Fix counts of child nodes
	dm verity: skip redundant verity_handle_err() on I/O errors
	dm verity: fix error handling for check_at_most_once on FEC
	scsi: qedi: Fix use after free bug in qedi_remove()
	net/ncsi: clear Tx enable mode when handling a Config required AEN
	net/sched: cls_api: remove block_cb from driver_list before freeing
	sit: update dev->needed_headroom in ipip6_tunnel_bind_dev()
	net: dsa: mv88e6xxx: add mv88e6321 rsvd2cpu
	writeback: fix call of incorrect macro
	watchdog: dw_wdt: Fix the error handling path of dw_wdt_drv_probe()
	net/sched: act_mirred: Add carrier check
	sfc: Fix module EEPROM reporting for QSFP modules
	rxrpc: Fix hard call timeout units
	octeontx2-pf: Disable packet I/O for graceful exit
	octeontx2-vf: Detach LF resources on probe cleanup
	ionic: remove noise from ethtool rxnfc error msg
	af_packet: Don't send zero-byte data in packet_sendmsg_spkt().
	drm/amdgpu: add a missing lock for AMDGPU_SCHED
	ALSA: caiaq: input: Add error handling for unsupported input methods in `snd_usb_caiaq_input_init`
	net: dsa: mt7530: fix corrupt frames using trgmii on 40 MHz XTAL MT7621
	virtio_net: split free_unused_bufs()
	virtio_net: suppress cpu stall when free_unused_bufs
	net: enetc: check the index of the SFI rather than the handle
	perf vendor events power9: Remove UTF-8 characters from JSON files
	perf pmu: zfree() expects a pointer to a pointer to zero it after freeing its contents
	perf map: Delete two variable initialisations before null pointer checks in sort__sym_from_cmp()
	crypto: sun8i-ss - Fix a test in sun8i_ss_setup_ivs()
	perf symbols: Fix return incorrect build_id size in elf_read_build_id()
	btrfs: fix btrfs_prev_leaf() to not return the same key twice
	btrfs: don't free qgroup space unless specified
	btrfs: print-tree: parent bytenr must be aligned to sector size
	cifs: fix pcchunk length type in smb2_copychunk_range
	platform/x86: touchscreen_dmi: Add upside-down quirk for GDIX1002 ts on the Juno Tablet
	platform/x86: touchscreen_dmi: Add info for the Dexp Ursus KX210i
	inotify: Avoid reporting event with invalid wd
	sh: math-emu: fix macro redefined warning
	sh: mcount.S: fix build error when PRINTK is not enabled
	sh: init: use OF_EARLY_FLATTREE for early init
	sh: nmi_debug: fix return value of __setup handler
	remoteproc: stm32: Call of_node_put() on iteration error
	remoteproc: st: Call of_node_put() on iteration error
	ARM: dts: exynos: fix WM8960 clock name in Itop Elite
	ARM: dts: s5pv210: correct MIPI CSIS clock name
	f2fs: fix potential corruption when moving a directory
	drm/panel: otm8009a: Set backlight parent to panel device
	drm/amdgpu: fix an amdgpu_irq_put() issue in gmc_v9_0_hw_fini()
	drm/amdgpu/gfx: disable gfx9 cp_ecc_error_irq only when enabling legacy gfx ras
	drm/amdgpu: disable sdma ecc irq only when sdma RAS is enabled in suspend
	HID: wacom: Set a default resolution for older tablets
	HID: wacom: insert timestamp to packed Bluetooth (BT) events
	KVM: x86: hyper-v: Avoid calling kvm_make_vcpus_request_mask() with vcpu_mask==NULL
	KVM: x86: do not report a vCPU as preempted outside instruction boundaries
	ext4: fix WARNING in mb_find_extent
	ext4: avoid a potential slab-out-of-bounds in ext4_group_desc_csum
	ext4: fix data races when using cached status extents
	ext4: check iomap type only if ext4_iomap_begin() does not fail
	ext4: improve error recovery code paths in __ext4_remount()
	ext4: fix deadlock when converting an inline directory in nojournal mode
	ext4: add bounds checking in get_max_inline_xattr_value_size()
	ext4: bail out of ext4_xattr_ibody_get() fails for any reason
	ext4: remove a BUG_ON in ext4_mb_release_group_pa()
	ext4: fix invalid free tracking in ext4_xattr_move_to_block()
	serial: 8250: Fix serial8250_tx_empty() race with DMA Tx
	drbd: correctly submit flush bio on barrier
	KVM: x86: Ensure PV TLB flush tracepoint reflects KVM behavior
	KVM: x86: Fix recording of guest steal time / preempted status
	KVM: Fix steal time asm constraints
	KVM: x86: Remove obsolete disabling of page faults in kvm_arch_vcpu_put()
	KVM: x86: do not set st->preempted when going back to user space
	KVM: x86: revalidate steal time cache if MSR value changes
	KVM: x86: do not report preemption if the steal time cache is stale
	KVM: x86: move guest_pv_has out of user_access section
	printk: declare printk_deferred_{enter,safe}() in include/linux/printk.h
	drm/exynos: move to use request_irq by IRQF_NO_AUTOEN flag
	mm/page_alloc: fix potential deadlock on zonelist_update_seq seqlock
	drm/amd/display: Fix hang when skipping modeset
	Linux 5.10.180

Change-Id: Ie0c8ae79d56d844ec23ec277d91d4c70c3e1e9a8
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-06-26 17:31:57 +00:00
Greg Kroah-Hartman 5cb8a3c82c Merge ea827627a9 ("dm ioctl: fix nested locking in table_clear() to remove deadlock concern") into android12-5.10-lts
Steps on the way to 5.10.180

Change-Id: Ia6eb1de3ebe489c20972ef5bf8433878a886fea6
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-06-26 07:12:57 +00:00
Greg Kroah-Hartman e3f8cee7f9 Merge a1e3fffe02 ("dm flakey: fix a crash with invalid table line") into android12-5.10-lts
Steps on the way to 5.10.180

Change-Id: I7f695e1286a058e2015dc4d831bce6bafc2e3687
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-06-26 07:12:26 +00:00
Greg Kroah-Hartman eee3af95eb Merge 44f29e93a5 ("dm integrity: call kmem_cache_destroy() in dm_integrity_init() error path") into android12-5.10-lts
Steps on the way to 5.10.180

Change-Id: I02600c62a69bb3be22b70c118c9c745fcf520096
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-06-26 07:11:46 +00:00
Greg Kroah-Hartman 7a6cb8c4fa Merge 717ceb487b ("dm clone: call kmem_cache_destroy() in dm_clone_init() error path") into android12-5.10-lts
Steps on the way to 5.10.180

Change-Id: I02658b2fdfd1efd902baf7003a7e1ff00e9bef25
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-06-26 07:11:06 +00:00
Greg Kroah-Hartman 2dcf843019 Merge fd7bf900c3 ("i2c: cadence: cdns_i2c_master_xfer(): Fix runtime PM leak on error path") into android12-5.10-lts
Steps on the way to 5.10.180

Change-Id: I3438288cccc8a544306afc5aa178fde55e7e34fb
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-06-25 11:42:29 +00:00
Greg Kroah-Hartman 6f849f24da Merge e0dd13b49d ("wifi: rtl8xxxu: RTL8192EU always needs full init") into android12-5.10-lts
Steps on the way to 5.10.180

Change-Id: Id1ae1d6b019603d17be21ebc68f399eb60bde38a
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-06-25 08:10:12 +00:00
Greg Kroah-Hartman 851de32d27 Merge tag 'android12-5.10.177_r00' into android12-5.10
This is the merge of the upstream LTS release of 5.10.177 into the
android12-5.10 branch.

It contains the following commits:

289d29ddbfdb Merge tag 'android12-5.10.177_r00' into android12-5.10
0334ff98b9 Revert "net: mdio: fix owner field for mdio buses registered using device-tree"
f3670bd0ff Merge 5.10.177 into android12-5.10-lts
387078f903 Linux 5.10.177
34a02011c5 hsr: ratelimit only when errors are printed
7c414f6f06 gfs2: Always check inode size of inline inodes
3392d67af0 ext4: fix kernel BUG in 'ext4_write_inline_data_end()'
b4781477f3 libbpf: Fix btf_dump's packed struct determination
7ad30ad8c6 selftests/bpf: Add few corner cases to test padding handling of btf_dump
e5a16bcb13 libbpf: Fix BTF-to-C converter's padding logic
b9f7422dd9 selftests/bpf: Test btf dump for struct with padding only fields
f1c17475a9 zonefs: Fix error message in zonefs_file_dio_append()
b51e442295 btrfs: scan device in non-exclusive mode
3eeff8d26c s390/uaccess: add missing earlyclobber annotations to __clear_user()
7051d51f12 drm/amd/display: Add DSC Support for Synaptics Cascaded MST Hub
79815326a5 drm/etnaviv: fix reference leak when mmaping imported buffer
a484f8bec8 rcu: Fix rcu_torture_read ftrace event
08bfd05987 xtensa: fix KASAN report for show_stack
8ada1b5c8b ALSA: hda/realtek: Add quirk for Lenovo ZhaoYang CF4620Z
3b6992bdf0 ALSA: usb-audio: Fix regression on detection of Roland VS-100
0044721f4f ALSA: hda/conexant: Partial revert of a quirk for Lenovo
3d328a17c8 NFSv4: Fix hangs when recovering open state after a server reboot
80a4200d51 powerpc: Don't try to copy PPR for task with NULL pt_regs
12c2612e18 pinctrl: at91-pio4: fix domain name assignment
25065ed83b pinctrl: amd: Disable and mask interrupts on resume
fbf3fe7f7b net: phy: dp83869: fix default value for tx-/rx-internal-delay
b3d7a4478c xen/netback: don't do grant copy across page boundary
5f63470343 btrfs: fix race between quota disable and quota assign ioctls
ba5deb64dd Input: goodix - add Lenovo Yoga Book X90F to nine_bytes_report DMI table
26a32a212b cifs: fix DFS traversal oops without CONFIG_CIFS_DFS_UPCALL
63bbe24b99 cifs: prevent infinite recursion in CIFSGetDFSRefer()
8b3d7ad3e8 Input: focaltech - use explicitly signed char type
449a1a61f7 Input: alps - fix compatibility with -funsigned-char
988061d099 pinctrl: ocelot: Fix alt mode for ocelot
ed3439a8c4 net: dsa: mv88e6xxx: Enable IGMP snooping on user ports only
8104c79551 bnxt_en: Add missing 200G link speed reporting
62850a0763 bnxt_en: Fix typo in PCI id to device description string mapping
f524d1e550 i40e: fix registers dump after run ethtool adapter self test
fa7fafedc9 net: ipa: compute DMA pool size properly
96e34c8800 ALSA: ymfpci: Fix BUG_ON in probe function
688b1178c4 ALSA: ymfpci: Fix assignment in if condition
ee17dea307 s390/vfio-ap: fix memory leak in vfio_ap device driver
ab2a559078 can: bcm: bcm_tx_setup(): fix KMSAN uninit-value in vfs_write
9b22e0cfc4 net: stmmac: don't reject VLANs when IFF_PROMISC is set
f032e12514 net/net_failover: fix txq exceeding warning
1025c47151 regulator: Handle deferred clk
69ed49a7b8 r8169: fix RTL8168H and RTL8107E rx crc error
3907fcb5a4 ptp_qoriq: fix memory leak in probe()
6ff4a54c02 scsi: megaraid_sas: Fix crash after a double completion
059c3a7a3d sfc: ef10: don't overwrite offload features at NIC reset
4a81e2da72 mtd: rawnand: meson: invalidate cache on polling ECC bit
47a449ec09 mips: bmips: BCM6358: disable RAC flush for TP1
ac63f78d9a ca8210: Fix unsigned mac_len comparison with zero in ca8210_skb_tx()
8b1269b709 tracing: Fix wrong return in kprobe_event_gen_test.c
038765a095 tools/power turbostat: Fix /dev/cpu_dma_latency warnings
5ec5680dc6 fbdev: au1200fb: Fix potential divide by zero
ce5551db36 fbdev: lxfb: Fix potential divide by zero
c2be7f8056 fbdev: intelfb: Fix potential divide by zero
78eb964805 fbdev: nvidia: Fix potential divide by zero
1f2a94baee sched_getaffinity: don't assume 'cpumask_size()' is fully initialized
6eaa2254cc fbdev: tgafb: Fix potential divide by zero
baef27176e ALSA: hda/ca0132: fixup buffer overrun at tuning_ctl_set()
fcf80111a4 ALSA: asihpi: check pao in control_message()
b94ffa2874 net: hsr: Don't log netdev_err message on unknown prp dst node
74d6d33f36 md: avoid signed overflow in slot_store()
10941fd5c3 fsverity: don't drop pagecache at end of FS_IOC_ENABLE_VERITY
0b9493b504 dm crypt: avoid accessing uninitialized tasklet
b2d1956547 bus: imx-weim: fix branch condition evaluates to a garbage value
1635a062fa drm/meson: fix missing component unbind on bind errors
794a6cea22 drm/meson: Fix error handling when afbcd.ops->init fails
f7385e0886 kcsan: avoid passing -g for test
46ae204069 kernel: kcsan: kcsan_test: build without structleak plugin
a5ce0a559b usb: dwc3: gadget: Add 1ms delay after end transfer command without IOC
ddb1973e67 usb: dwc3: gadget: move cmd_endtransfer to extra function
01e4c9c03d NFSD: fix use-after-free in __nfs42_ssc_open()
34ef9cd887 KVM: fix memoryleak in kvm_init()
a6d345c3a3 xfs: don't reuse busy extents on extent trim
cb61e1e36f xfs: shut down the filesystem if we screw up quota reservation
91d7a4bd56 ocfs2: fix data corruption after failed write
d4a5181ba1 sched/fair: Sanitize vruntime of entity being migrated
dfdcda25fb sched/fair: sanitize vruntime of entity being placed
66ff37993d dm crypt: add cond_resched() to dmcrypt_write()
c68f08cc74 dm stats: check for and propagate alloc_percpu failure
1eaa2b7ae9 i2c: xgene-slimpro: Fix out-of-bounds bug in xgene_slimpro_i2c_xfer()
85b637feee firmware: arm_scmi: Fix device node validation for mailbox transport
f632a90f8e tee: amdtee: fix race condition in amdtee_open_session
4ede0da36c drm/i915: Preserve crtc_state->inherited during state clearing
d5329a06b4 drm/i915/active: Fix missing debug object activation
d18db946cc nilfs2: fix kernel-infoleak in nilfs_ioctl_wrap_copy()
560437bba1 wifi: mac80211: fix qos on mesh interfaces
a6adfe9bbd usb: ucsi: Fix NULL pointer deref in ucsi_connector_change()
09671cfc2b usb: chipidea: core: fix possible concurrent when switch role
073ce98aa3 usb: chipdea: core: fix return -EINVAL if request role is the same with current role
5a36b601af usb: cdns3: Fix issue with using incorrect PCI device function
aae6d1bf4d dm thin: fix deadlock when swapping to thin device
4d2626e107 igb: revert rtnl_lock() that causes deadlock
e66f3039c7 fsverity: Remove WQ_UNBOUND from fsverity read workqueue
33f341c1fc usb: gadget: u_audio: don't let userspace block driver unbind
1f01027c51 usb: dwc2: fix a devres leak in hw_enable upon suspend resume
dce1284215 scsi: core: Add BLIST_SKIP_VPD_PAGES for SKhynix H28U74301AMR
f7a4ce3514 cifs: empty interface list when server doesn't support query interfaces
8beb18c25b sh: sanitize the flags on sigreturn
87e800e3dc net: usb: qmi_wwan: add Telit 0x1080 composition
27d4ce4aa3 net: usb: cdc_mbim: avoid altsetting toggling for Telit FE990
ddfc061793 scsi: storvsc: Handle BlockSize change in Hyper-V VHD/VHDX file
3e0a423a55 scsi: lpfc: Avoid usage of list iterator variable after loop
f9a937f75b scsi: ufs: core: Add soft dependency on governor_simpleondemand
522314863f scsi: hisi_sas: Check devm_add_action() return value
799d29a447 scsi: target: iscsi: Fix an error message in iscsi_check_key()
8c42442887 selftests/bpf: check that modifier resolves after pointer
df1da53a7e m68k: Only force 030 bus error if PC not in exception table
7df72bedbd ca8210: fix mac_len negative array access
3d8fafc530 HID: cp2112: Fix driver not registering GPIO IRQ chip as threaded
082b8240a6 riscv: Bump COMMAND_LINE_SIZE value to 1024
2d6c2dee59 thunderbolt: Use const qualifier for `ring_interrupt_index`
06e04b450b thunderbolt: Use scale field when allocating USB3 bandwidth
32fa53c27e uas: Add US_FL_NO_REPORT_OPCODES for JMicron JMS583Gen 2
231cfa78ec scsi: qla2xxx: Perform lockless command completion in abort path
f73a88df19 hwmon (it87): Fix voltage scaling for chips with 10.9mV ADCs
33c2fa39fb hwmon: fix potential sensor registration fail if of_node is missing
f86ff88a15 platform/chrome: cros_ec_chardev: fix kernel data leak from ioctl
da3d3fdfb4 Bluetooth: btsdio: fix use after free bug in btsdio_remove due to unfinished work
fce0e47e9e Bluetooth: L2CAP: Fix responding with wrong PDU type
77a61df0a0 Bluetooth: L2CAP: Fix not checking for maximum number of DCID
65ceb17074 Bluetooth: btqcomsmd: Fix command timeout after setting BD address
7aa3d03e1b net: mdio: thunder: Add missing fwnode_handle_put()
94ef1715d2 gve: Cache link_speed value from device
3c72445dad nvme-tcp: fix nvme_tcp_term_pdu to match spec
73db80dcdc net/sonic: use dma_mapping_error() for error check
f8cec30541 erspan: do not use skb_mac_header() in ndo_start_xmit()
19aa85b9df atm: idt77252: fix kmemleak when rmmod idt77252
5eadc80328 net/mlx5: E-Switch, Fix an Oops in error handling code
265101aea4 net/mlx5: Read the TC mapping of all priorities on ETS query
18cead61e4 net/mlx5: Fix steering rules cleanup
a4bbab27c4 bpf: Adjust insufficient default bpf_jit_limit
a44e98abcc keys: Do not cache key in task struct if key is requested from kernel thread
ec23a669de bootconfig: Fix testcase to increase max node
56e0bc4a72 net/ps3_gelic_net: Use dma_mapping_error
3d5a97283e net/ps3_gelic_net: Fix RX sk_buff length
cb5879efde net: qcom/emac: Fix use after free bug in emac_remove due to race condition
d04dac7fae net: mdio: fix owner field for mdio buses registered using device-tree
1b333766ea net: phy: Ensure state transitions are processed from phy_stop()
bfeeb3aaad xirc2ps_cs: Fix use after free bug in xirc2ps_detach
39c3b9dd48 qed/qed_sriov: guard against NULL derefs from qed_iov_get_vf_info
33d1603a38 net: usb: smsc95xx: Limit packet length to skb->len
c09cdf6eb8 scsi: scsi_dh_alua: Fix memleak for 'qdata' in alua_activate()
a3ada13f20 i2c: imx-lpi2c: check only for enabled interrupt flags
bde2e73d52 igc: fix the validation logic for taprio's gate list
d3e4844c18 igbvf: Regard vf reset nack as success
fe3850c72a intel/igbvf: free irq on the error path in igbvf_request_msix()
155d6d434f iavf: fix non-tunneled IPv6 UDP packet type and hashing
15dcb57eba iavf: fix inverted Rx hash condition leading to disabled hash
580634b03a xsk: Add missing overflow check in xdp_umem_reg
7b5dffe048 ARM: dts: imx6sl: tolino-shine2hd: fix usbotg1 pinctrl
35a49d2758 ARM: dts: imx6sll: e60k02: fix usbotg1 pinctrl
75e2144291 power: supply: da9150: Fix use after free bug in da9150_charger_remove due to race condition
2b346876b9 power: supply: bq24190: Fix use after free bug in bq24190_remove due to race condition
18359b8e30 power: supply: bq24190_charger: using pm_runtime_resume_and_get instead of pm_runtime_get_sync
1fde5782f1 net: tls: fix possible race condition between do_tls_getsockopt_conf() and do_tls_setsockopt_conf()
cfeda9432c drm/sun4i: fix missing component unbind on bind errors
b5131ed83c serial: 8250: ASPEED_VUART: select REGMAP instead of depending on it
5fcb12f00a serial: 8250: SERIAL_8250_ASPEED_VUART should depend on ARCH_ASPEED
19a98d56df tty: serial: fsl_lpuart: fix race on RX DMA shutdown
ae12308c7d serial: fsl_lpuart: Fix comment typo
a43f7d0628 KVM: Register /dev/kvm as the _very_ last thing during initialization
7958663668 KVM: Pre-allocate cpumasks for kvm_make_all_cpus_request_except()
6100066358 KVM: Optimize kvm_make_vcpus_request_mask() a bit
ad120bc869 KVM: KVM: Use cpumask_available() to check for NULL cpumask when kicking vCPUs
4cc54f6ae5 KVM: Clean up benign vcpu->cpu data races when kicking vCPUs
8f9ae017dd ipmi:ssif: Add a timer between request retries
c94de7f85d ipmi:ssif: resend_msg() cannot fail
cd35cbde00 ipmi:ssif: Increase the message retry time
4d57c90f24 ipmi:ssif: make ssif_i2c_send() void
18dd825b86 perf: fix perf_event_context->time
ddcf832000 perf/core: Fix perf_output_begin parameter is incorrectly invoked in perf_event_bpf_output
29ee1495e8 interconnect: qcom: osm-l3: fix icc_onecell_data allocation
90eb02302b Revert "HID: core: Provide new max_buffer_size attribute to over-ride the default"
f1b6325b25 Revert "HID: uhid: Over-ride the default maximum data buffer value with our own"
df23049a96 Merge 5.10.176 into android12-5.10-lts
9b0fcb1986 ANDROID: preserve CRC for __irq_domain_add()
87cdb8101e Merge 5.10.175 into android12-5.10-lts
1baa036104 Merge 5.10.174 into android12-5.10-lts
fe51d37c6c Merge branch 'android12-5.10' into android12-5.10-lts
04d892b616 Revert "PCI: loongson: Prevent LS7A MRRS increases"
1aaaa18b4a Revert "PCI: loongson: Add more devices that need MRRS quirk"
a880d7ebc5 ANDROID: remove CONFIG_NET_CLS_TCINDEX from gki_defconfig
ca9787bdec Linux 5.10.176
e57f797e3f HID: uhid: Over-ride the default maximum data buffer value with our own
9bc878756b HID: core: Provide new max_buffer_size attribute to over-ride the default
daa97e770e xfs: remove xfs_setattr_time() declaration
183ca91954 fs: use consistent setgid checks in is_sxid()
0e9dbde96c attr: use consistent sgid stripping checks
240b96ffec attr: add setattr_should_drop_sgid()
baea3ae425 fs: move should_remove_suid()
24378d6f74 attr: add in_group_or_capable()
94ac142c19 fs: move S_ISGID stripping into the vfs_*() helpers
347750e1b6 fs: add mode_strip_sgid() helper
f60b68c464 xfs: use setattr_copy to set vfs inode attributes
8cf9400f89 xfs: set prealloc flag in xfs_alloc_file_space()
308dfe49eb xfs: fallocate() should call file_modified()
35f049abba xfs: remove XFS_PREALLOC_SYNC
c84fb29626 xfs: don't leak btree cursor when insrec fails after a split
be60f08c03 xfs: purge dquots after inode walk fails during quotacheck
d6f223cfef xfs: don't assert fail on perag references on teardown
d0292124bb PCI/DPC: Await readiness of secondary bus after reset
337aa99f76 PCI: Unify delay handling for reset and resume
b5e0b3d742 s390/ipl: add missing intersection check to ipl_report handling
84e2e393bf io_uring: avoid null-ptr-deref in io_arm_poll_handler
5e784a7d07 drm/i915/active: Fix misuse of non-idle barriers as fence trackers
8f27d43217 drm/i915: Don't use stolen memory for ring buffers with LLC
b4a798374f x86/mm: Fix use of uninitialized buffer in sme_enable()
764217184f x86/mce: Make sure logged MCEs are processed after sysfs update
15e926dfd8 cpuidle: psci: Iterate backwards over list in psci_pd_remove()
38742635ed fbdev: stifb: Provide valid pixelclock and add fb_check_var() checks
03fc29e75e mmc: sdhci_am654: lower power-on failed message severity
b2747b690c mm/userfaultfd: propagate uffd-wp bit when PTE-mapping the huge zeropage
83c3b2f4e7 ftrace: Fix invalid address access in lookup_rec() when index is 0
f9a98b8dde mptcp: avoid setting TCP_CLOSE state twice
684c7372bb drm/shmem-helper: Remove another errant put in error path
fbc5ffcce7 ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro
9addf5e105 ALSA: hda: intel-dsp-config: add MTL PCI id
c54974ccaf KVM: nVMX: add missing consistency checks for CR0 and CR4
7b18dea697 cifs: Fix smb2_set_path_size()
ec663c410c tracing: Make tracepoint lockdep check actually test something
8ae86ef7a0 tracing: Check field value in hist_field_name()
de3170bd41 tracing: Make splice_read available again
efae80ca13 interconnect: fix mem leak when freeing nodes
b37d3ccbd5 firmware: xilinx: don't make a sleepable memory allocation from an atomic context
0c16c20b87 serial: 8250_em: Fix UART port type
f5a5150c70 tty: serial: fsl_lpuart: skip waiting for transmission complete when UARTCTRL_SBK is asserted
020166bc66 ext4: fix possible double unlock when moving a directory
7257070be7 drm/amd/display: fix shift-out-of-bounds in CalculateVMAndRowBytes
ab7da8d93a sh: intc: Avoid spurious sizeof-pointer-div warning
6936525142 drm/amdkfd: Fix an illegal memory access
a98160d8f3 ext4: fix task hung in ext4_xattr_delete_inode
0bf15bc393 ext4: fail ext4_iget if special inode unallocated
8e7f26b956 jffs2: correct logic when creating a hole in jffs2_write_begin
980d4e70c7 mmc: atmel-mci: fix race between stop command and start of next command
04eaeaa2f7 media: m5mols: fix off-by-one loop termination error
a4c048d502 hwmon: (adm1266) Set `can_sleep` flag for GPIO chip
a4c3e11324 hwmon: tmp512: drop of_match_ptr for ID table
c5bd9719b5 hwmon: (ucd90320) Add minimum delay between bus accesses
663c3afee8 hwmon: (ina3221) return prober error code
0a73c8b3cc hwmon: (xgene) Fix use after free bug in xgene_hwmon_remove due to race condition
4a8c3ad12c hwmon: (adt7475) Fix masking of hysteresis registers
aff84fadba hwmon: (adt7475) Display smoothing attributes in correct order
d4dbd26f98 ethernet: sun: add check for the mdesc_grab()
eb80cb66a2 qed/qed_mng_tlv: correctly zero out ->min instead of ->hour
1c06d12237 selftests: net: devlink_port_split.py: skip test if no suitable device available
bd2e78462a net/iucv: Fix size of interrupt data
2cc46ed406 net: usb: smsc75xx: Move packet length check to prevent kernel panic in skb_pull
013fae04b8 ipv4: Fix incorrect table ID in IOCTL path
1f0586dcc0 net: dsa: mv88e6xxx: fix max_mtu of 1492 on 6165, 6191, 6220, 6250, 6290
cccba1ff07 ice: xsk: disable txq irq before flushing hw
2f28cb5c2a block: sunvdc: add check for mdesc_grab() returning NULL
a6317235da nvmet: avoid potential UAF in nvmet_req_complete()
9ebc344ce5 nvme: fix handling single range discard request
4cf15887a4 block: null_blk: Fix handling of fake timeout request
d14d2574a5 null_blk: Move driver into its own directory
d5e61a859a drm/bridge: Fix returned array size name for atomic_get_input_bus_fmts kdoc
e294f0aa47 net: usb: smsc75xx: Limit packet length to skb->len
9708efad9b net/smc: fix deadlock triggered by cancel_delayed_work_syn()
43aa468df2 nfc: st-nci: Fix use after free bug in ndlc_remove due to race condition
194248138f net: phy: smsc: bail out in lan87xx_read_status if genphy_read_status fails
be59b87ee4 net: tunnels: annotate lockless accesses to dev->needed_headroom
281e86e3fa qed/qed_dev: guard against a possible division by zero
31817c5307 net/smc: fix NULL sndbuf_desc in smc_cdc_tx_handler()
3cbecb1c90 i40e: Fix kernel crash during reboot when adapter is in recovery mode
91eb592401 ipvlan: Make skb->skb_iif track skb->dev for l3s mode
2703da7884 nfc: pn533: initialize struct pn533_out_arg properly
77ad58bca0 tcp: tcp_make_synack() can be called from process context
68c665bb18 scsi: core: Fix a procfs host directory removal regression
be5aa25341 scsi: core: Fix a comment in function scsi_host_dev_release()
0fac20b180 netfilter: nft_redir: correct value of inet type `.maxattrs`
c144dff64e netfilter: nft_redir: correct length for loading protocol registers
3a0f8ea35d netfilter: nft_masq: correct length for loading protocol registers
eff050d83e netfilter: nft_nat: correct length for loading protocol registers
0c6c5abeb4 ALSA: hda: Match only Intel devices with CONTROLLER_IN_GPU()
6f0c2f70d9 scsi: mpt3sas: Fix NULL pointer access in mpt3sas_transport_port_add()
79fe786dab docs: Correct missing "d_" prefix for dentry_operations member d_weak_revalidate
ea1e21d38a clk: HI655X: select REGMAP instead of depending on it
081893e254 drm/meson: fix 1px pink line on GXM when scaling video overlay
ed9ed2f58c cifs: Move the in_send statistic to __smb_send_rqst()
a3c502218c drm/panfrost: Don't sync rpm suspension after mmu flushing
0da0b81697 xfrm: Allow transport-mode states with AF_UNSPEC selector
0847230e9b Merge 5.10.173 into android12-5.10-lts
2b5ee1cbc1 Merge 5.10.172 into android12-5.10-lts
78985e3685 Merge 5.10.171 into android12-5.10-lts
45fa1d879a Merge 5.10.170 into android12-5.10-lts
de26e1b210 Linux 5.10.175
aa8579bc08 s390/dasd: add missing discipline function
6baebcecf0 KVM: VMX: Fix crash due to uninitialized current_vmcs
685ed0a277 KVM: VMX: Introduce vmx_msr_bitmap_l01_changed() helper
0ef55bafab KVM: nVMX: Don't use Enlightened MSR Bitmap for L3
9da269bee7 UML: define RUNTIME_DISCARD_EXIT
5c425eb9da sh: define RUNTIME_DISCARD_EXIT
bfef72d2fc s390: define RUNTIME_DISCARD_EXIT to fix link error with GNU ld < 2.36
6af633e778 powerpc/vmlinux.lds: Don't discard .rela* for relocatable builds
af560685ba powerpc/vmlinux.lds: Define RUNTIME_DISCARD_EXIT
d367c5ebe9 arch: fix broken BuildID for arm64 and riscv
7550aade97 ext4: block range must be validated before use in ext4_mb_clear_bb()
c3fd717b58 ext4: add strict range checks while freeing blocks
65061f49a5 ext4: add ext4_sb_block_valid() refactored out of ext4_inode_block_valid()
9cd21f5bab ext4: refactor ext4_free_blocks() to pull out ext4_mb_clear_bb()
b500560501 drm/i915: Don't use BAR mappings for ring buffers with LLC
c53d50d808 skbuff: Fix nfct leak on napi stolen
a4932a2c54 ipmi:watchdog: Set panic count to proper value on a panic
7aa5a495cb ipmi/watchdog: replace atomic_add() and atomic_sub()
a5c140d88a media: rc: gpio-ir-recv: add remove function
13b04efb5b media: ov5640: Fix analogue gain control
42bb1e6b7f scripts: handle BrokenPipeError for python scripts
be658aa43a PCI: Add SolidRun vendor ID
d47d364f66 macintosh: windfarm: Use unsigned type for 1-bit bitfields
9cff3f106a alpha: fix R_ALPHA_LITERAL reloc for large modules
9a61a3a6ec powerpc/kcsan: Exclude udelay to prevent recursive instrumentation
5ddcb0a348 MIPS: Fix a compilation issue
7f77f3dab5 block, bfq: fix uaf for bfqq in bic_set_bfqq()
6291281f15 block, bfq: replace 0/1 with false/true in bic apis
e6f03decf5 block/bfq-iosched.c: use "false" rather than "BLK_RW_ASYNC"
1425f1bb5d block, bfq: fix uaf for bfqq in bfq_exit_icq_bfqq
5533742c7c block, bfq: fix possible uaf for 'bfqq->bic'
c660e024bc tpm/eventlog: Don't abort tpm_read_log on faulty ACPI address
b1fddddf58 watch_queue: fix IOC_WATCH_QUEUE_SET_SIZE alloc error paths
f2a5ec7f7b iommu/amd: Add a length limitation for the ivrs_acpihid command-line parameter
b113f90204 ext4: Fix deadlock during directory rename
ab89b8a67f RISC-V: Don't check text_mutex during stop_machine
3de277af48 riscv: Use READ_ONCE_NOCHECK in imprecise unwinding stack mode
ce7dd61e00 SUNRPC: Fix a server shutdown leak
e1b8342a85 net/smc: fix fallback failed while sendmsg with fastopen
93367126f6 platform: x86: MLX_PLATFORM: select REGMAP instead of depending on it
0fe672336d scsi: megaraid_sas: Update max supported LD IDs to 240
f4eae84f57 net: ethernet: mtk_eth_soc: fix RX data corruption issue
01a1e98109 btf: fix resolving BTF_KIND_VAR after ARRAY, STRUCT, UNION, PTR
065c1ed5c4 netfilter: tproxy: fix deadlock due to missing BH disable
26fa059cc9 netfilter: ctnetlink: revert to dumping mark regardless of event type
d16701a385 bnxt_en: Avoid order-5 memory allocation for TPA data
c0df4e5c24 net: phylib: get rid of unnecessary locking
d2a5a9cdc5 net: stmmac: add to set device wake up flag when stmmac init phy
c3aaec463a net: caif: Fix use-after-free in cfusbl_device_notify()
db16d65674 net: lan78xx: fix accessing the LAN7800's internal phy specific registers from the MAC driver
d5e8f7edc2 net: usb: lan78xx: Remove lots of set but unused 'ret' variables
374cbffe7d selftests: nft_nat: ensuring the listening side is up before starting the client
42d9ed4e5d ila: do not generate empty messages in ila_xlat_nl_cmd_get_mapping()
6f0cc879c8 powerpc: dts: t1040rdb: fix compatible string for Rev A boards
80be62358f nfc: fdp: add null check of devm_kmalloc_array in fdp_nci_i2c_read_device_properties
cbf11ff370 bgmac: fix *initial* chip reset to support BCM5358
4c43a0291f drm/msm/a5xx: fix context faults during ring switch
34e71ca0a0 drm/msm/a5xx: fix the emptyness check in the preempt code
8dde1d9d6f drm/msm: Document and rename preempt_lock
00c2020b8b drm/msm/a5xx: fix setting of the CP_PREEMPT_ENABLE_LOCAL register
08c0b54bef drm/msm: Fix potential invalid ptr free
8b4a6dd157 drm/nouveau/kms/nv50: fix nv50_wndw_new_ prototype
9ca74e5e75 drm/nouveau/kms/nv50-: remove unused functions
0c440f1455 ext4: Fix possible corruption when moving a directory
6b223e32d6 scsi: core: Remove the /proc/scsi/${proc_name} directory earlier
e993e3ea95 riscv: Add header include guards to insn.h
713c335e5a riscv: Avoid enabling interrupts in die()
f9fdb3e7b0 RISC-V: Avoid dereferening NULL regs in die()
030b1c4217 arm64: efi: Make efi_rt_lock a raw_spinlock
7e00b52c8c iommu/vt-d: Fix PASID directory pointer coherency
c424b18191 iommu/vt-d: Fix lockdep splat in intel_pasid_get_entry()
aeab1f1a60 irqdomain: Fix domain registration race
bb7597777c irqdomain: Change the type of 'size' in __irq_domain_add() to be consistent
4ab311d51c irqdomain: Fix mapping-creation race
8617599c64 irqdomain: Refactor __irq_domain_alloc_irqs()
ff762cdbf0 irqdomain: Look for existing mapping only once
6414597815 irq: Fix typos in comments
fe80a53eab udf: Fix off-by-one error when discarding preallocation
7786bfd8f7 nfc: change order inside nfc_se_io error path
3f00c476da ext4: zero i_disksize when initializing the bootloader inode
a9bd94f67b ext4: fix WARNING in ext4_update_inline_data
d72a6c3139 ext4: move where set the MAY_INLINE_DATA flag is set
1d2366624b ext4: fix another off-by-one fsmap error on 1k block filesystems
8706c972fc ext4: fix RENAME_WHITEOUT handling for inline directories
d0632ff49b ext4: fix cgroup writeback accounting with fs-layer encryption
3106cb47cd drm/connector: print max_requested_bpc in state debugfs
4279e87da6 drm/amdgpu: fix error checking in amdgpu_read_mm_registers for soc15
5462843dc4 x86/CPU/AMD: Disable XSAVES on AMD family 0x17
a1eb8bf1e3 fork: allow CLONE_NEWTIME in clone3 flags
a759905de9 fs: prevent out-of-bounds array speculation when closing a file descriptor
955623617f Linux 5.10.174
c036dae036 staging: rtl8192e: Remove call_usermodehelper starting RadioPower.sh
1afff6203a staging: rtl8192e: Remove function ..dm_check_ac_dc_power calling a script
decf73066f wifi: cfg80211: Partial revert "wifi: cfg80211: Fix use after free for wext"
e5f315b55f Linux 5.10.173
8ecd5dabdd usb: gadget: uvc: fix missing mutex_unlock() if kstrtou8() fails
a5bbea50d6 malidp: Fix NULL vs IS_ERR() checking
1dfc0a52f7 scsi: mpt3sas: Remove usage of dma_get_required_mask() API
747652f9c5 scsi: mpt3sas: re-do lost mpt3sas DMA mask fix
2392303df2 scsi: mpt3sas: Don't change DMA mask while reallocating pools
f73bbfb47f Revert "scsi: mpt3sas: Fix return value check of dma_get_required_mask()"
331c18e8ac media: uvcvideo: Fix race condition with usb_kill_urb
9d83b69e93 media: uvcvideo: Provide sync and async uvc_ctrl_status_event
c5fe3fba1b drm/virtio: Fix error code in virtio_gpu_object_shmem_init()
0a1d0c79ea tcp: Fix listen() regression in 5.10.163
7474be26b0 Bluetooth: hci_sock: purge socket queues in the destruct() callback
d90967f850 drm/display/dp_mst: Fix down message handling after a packet reception error
ee4a4282d7 drm/display/dp_mst: Fix down/up message handling after sink disconnect
411b8ad505 x86/resctl: fix scheduler confusion with 'current'
9554af9801 x86/resctrl: Apply READ_ONCE/WRITE_ONCE to task_struct.{rmid,closid}
7123a4337b net: tls: avoid hanging tasks on the tx_lock
a6549336f5 soundwire: cadence: Drain the RX FIFO after an IO timeout
e5ca5b7136 soundwire: cadence: Remove wasted space in response_buf
4d2423f15b phy: rockchip-typec: Fix unsigned comparison with less than zero
01923e3196 PCI: Add ACS quirk for Wangxun NICs
faa050d2ff PCI: loongson: Add more devices that need MRRS quirk
dd9981a11d kernel/fail_function: fix memory leak with using debugfs_lookup()
b2301851e7 PCI: Take other bus devices into account when distributing resources
fdca189e52 PCI: Align extra resources for hotplug bridges properly
877aacda14 usb: gadget: uvc: Make bSourceID read/write
56495e8d3c usb: uvc: Enumerate valid values for color matching
961f93d63d USB: ene_usb6250: Allocate enough memory for full object
426cbe9a0a usb: host: xhci: mvebu: Iterate over array indexes instead of using pointer math
654ae53925 PCI: loongson: Prevent LS7A MRRS increases
09ca779ac0 iio: accel: mma9551_core: Prevent uninitialized variable in mma9551_read_config_word()
3357e90d3c iio: accel: mma9551_core: Prevent uninitialized variable in mma9551_read_status_word()
8db64cea47 tools/iio/iio_utils:fix memory leak
160494b66f mei: bus-fixup:upon error print return values of send and receive
17b96b5c19 serial: sc16is7xx: setup GPIO controller later in probe
0cb1f78d88 tty: serial: fsl_lpuart: disable the CTS when send break signal
84ea44dc3e tty: fix out-of-bounds access in tty_driver_lookup_tty()
e8a5efd5ae staging: emxx_udc: Add checks for dma_alloc_coherent()
c4d96503d6 media: uvcvideo: Silence memcpy() run-time false positive warnings
78b1fdc47e media: uvcvideo: Quirk for autosuspend in Logitech B910 and C910
23f9bead35 media: uvcvideo: Handle errors from calls to usb_string
d8aa2e1ae6 media: uvcvideo: Handle cameras with invalid descriptors
76752888ed IB/hfi1: Update RMT size calculation
754e81ff44 mfd: arizona: Use pm_runtime_resume_and_get() to prevent refcnt leak
903b91cea7 bootconfig: Increase max nodes of bootconfig from 1024 to 8192 for DCC support
07fb565336 firmware/efi sysfb_efi: Add quirk for Lenovo IdeaPad Duet 3
25c9fba724 tracing: Add NULL checks for buffer in ring_buffer_free_read_page()
e30b26e746 thermal: intel: BXT_PMIC: select REGMAP instead of depending on it
f73134231f thermal: intel: quark_dts: fix error pointer dereference
01829cb870 ASoC: zl38060 add gpiolib dependency
2bc1f260ed ASoC: zl38060: Remove spurious gpiolib select
c8e7c0ec45 ASoC: adau7118: don't disable regulators on device unbind
c79a924ed6 loop: loop_set_status_from_info() check before assignment
af5f9a4761 scsi: ipr: Work around fortify-string warning
555f315832 rtc: sun6i: Always export the internal oscillator
3e734e6941 vc_screen: modify vcs_size() handling in vcs_read()
ac73d8f6a6 tcp: tcp_check_req() can be called from process context
4d08ed4651 ARM: dts: spear320-hmi: correct STMPE GPIO compatible
2f935409cd net/sched: act_sample: fix action bind logic
8978315cb4 nfc: fix memory leak of se_io context in nfc_genl_se_io
8817602cff net/mlx5: Geneve, Fix handling of Geneve object id as error code
0ac65fab2b 9p/rdma: unmap receive dma buffer in rdma_request()/post_recv()
3e0359f151 9p/xen: fix connection sequence
c959a53b62 9p/xen: fix version parsing
82a0c1fe1f net: fix __dev_kfree_skb_any() vs drop monitor
8ee401f89c sctp: add a refcnt in sctp_stream_priorities to avoid a nested loop
da26369377 ipv6: Add lwtunnel encap size of all siblings in nexthop calculation
9060abce33 netfilter: ebtables: fix table blob use-after-free
1ff0b87df9 netfilter: ctnetlink: fix possible refcount leak in ctnetlink_create_conntrack()
9f7abdd500 watchdog: pcwd_usb: Fix attempting to access uninitialized memory
c5a21a5501 watchdog: Fix kmemleak in watchdog_cdev_register
273559f58f watchdog: at91sam9_wdt: use devm_request_irq to avoid missing free_irq() in error path
7cb46fa16b x86: um: vdso: Add '%rcx' and '%r11' to the syscall clobber list
8a18856e07 ubi: ubi_wl_put_peb: Fix infinite loop when wear-leveling work failed
9d448dd6bc ubi: Fix UAF wear-leveling entry in eraseblk_count_seq_show()
0aa0253f6c ubi: fastmap: Fix missed fm_anchor PEB in wear-leveling after disabling fastmap
f09a84548c ubifs: ubifs_writepage: Mark page dirty after writing inode failed
9d4768523b ubifs: dirty_cow_znode: Fix memleak in error handling path
343d273d5f ubifs: Re-statistic cleaned znode count if commit failed
fcbc795abe ubi: Fix possible null-ptr-deref in ubi_free_volume()
bf50229494 ubifs: Fix memory leak in alloc_wbufs()
31d60afe2c ubi: Fix unreferenced object reported by kmemleak in ubi_resize_volume()
35f8d4064e ubi: Fix use-after-free when volume resizing failed
38fd7acdc1 ubifs: Reserve one leb for each journal head while doing budget
38a097dce1 ubifs: do_rename: Fix wrong space budget when target inode's nlink > 1
495ea59a24 ubifs: Fix wrong dirty space budget for dirty inode
9e07ee28c2 ubifs: Rectify space budget for ubifs_xrename()
ffebd804c7 ubifs: Rectify space budget for ubifs_symlink() if symlink is encrypted
93e748ba51 ubifs: Fix build errors as symbol undefined
846bfba341 ubi: ensure that VID header offset + VID header size <= alloc, size
f2b9c4544e um: vector: Fix memory leak in vector_config
6be349d738 fs: f2fs: initialize fsdata in pagecache_write()
33909b1a64 f2fs: use memcpy_{to,from}_page() where possible
9d4a4a9ee9 pwm: stm32-lp: fix the check on arr and cmp registers update
c2677c49b7 pwm: sifive: Always let the first pwm_apply_state succeed
8b98e7a45e pwm: sifive: Reduce time the controller lock is held
a1368eaea0 objtool: Fix memory leak in create_static_call_sections()
5d03a19ac7 fs/jfs: fix shift exponent db_agl2size negative
18c3fa7a7f net/sched: Retire tcindex classifier
322df540ba kbuild: Port silent mode detection to future gnu make.
f8ac5467e1 pinctrl: rockchip: fix reading pull type on rk3568
50afcd5316 pinctrl: rockchip: fix mux route data for rk3568
844da39013 wifi: ath9k: use proper statements in conditionals
a2a1e3f4ed arm64: dts: qcom: ipq8074: fix Gen2 PCIe QMP PHY
64a99c0ac6 drm/edid: fix AVI infoframe aspect ratio handling
1f064aaa81 drm/radeon: Fix eDP for single-display iMac11,2
266864c1e0 drm/i915/quirks: Add inverted backlight quirk for HP 14-r206nv
5a27124271 vfio/type1: prevent underflow of locked_vm via exec()
691a8e26de PCI: Avoid FLR for AMD FCH AHCI adapters
88b51c6a6d PCI: hotplug: Allow marking devices as disconnected during bind/unbind
d219b19e1f PCI/PM: Observe reset delay irrespective of bridge_d3
285d8390d9 riscv: jump_label: Fixup unaligned arch_static_branch function
8f9542cad6 scsi: ses: Fix slab-out-of-bounds in ses_intf_remove()
c315560e3e scsi: ses: Fix possible desc_ptr out-of-bounds accesses
2ecd344173 scsi: ses: Fix possible addl_desc_ptr out-of-bounds accesses
e4dd25da78 scsi: ses: Fix slab-out-of-bounds in ses_enclosure_data_process()
d68937dfc7 scsi: ses: Don't attach if enclosure has no components
0d14ace68d scsi: qla2xxx: Fix erroneous link down
e596253113 scsi: qla2xxx: Fix DMA-API call trace on NVMe LS requests
40bedbf10d scsi: qla2xxx: Fix link failure in NPIV environment
6e02a43acd ring-buffer: Handle race between rb_move_tail and rb_check_pages
1693f3bc1f ktest.pl: Add RUN_TIMEOUT option with default unlimited
39255e4788 ktest.pl: Fix missing "end_monitor" when machine check fails
0dfb3f4588 ktest.pl: Give back console on Ctrt^C on monitor
ed77831e69 mm/thp: check and bail out if page in deferred queue already
e6d20325f4 mm: memcontrol: deprecate charge moving
f1f6c87d82 docs: gdbmacros: print newest record
6814e8e420 remoteproc/mtk_scp: Move clk ops outside send_lock
3b78c2482b media: ipu3-cio2: Fix PM runtime usage_count in driver unbind
6c96c0b2e3 mips: fix syscall_get_nr
cd4d3eab23 dax/kmem: Fix leak of memory-hotplug resources
241e893df4 alpha: fix FEN fault handling
ae16346078 rbd: avoid use-after-free in do_rbd_add() when rbd_dev_create() fails
0f2fd21b5b ARM: dts: exynos: correct TMU phandle in Odroid HC1
7dd9de2e2f ARM: dts: exynos: correct TMU phandle in Odroid XU
d1887cca65 ARM: dts: exynos: correct TMU phandle in Exynos5250
136d6f3c5d ARM: dts: exynos: correct TMU phandle in Odroid XU3 family
135e968d6a ARM: dts: exynos: correct TMU phandle in Exynos4
aaa2d2249c ARM: dts: exynos: correct TMU phandle in Exynos4210
f2b478228b dm flakey: don't corrupt the zero page
07e375c18a dm flakey: fix logic when corrupting a bio
17f81b1277 thermal: intel: powerclamp: Fix cur_state for multi package system
2cfe78619b wifi: cfg80211: Fix use after free for wext
73090cebe3 wifi: rtl8xxxu: Use a longer retry limit of 48
3383f79d6b dm: add cond_resched() to dm_wq_work()
e6409208c1 mtd: spi-nor: Fix shift-out-of-bounds in spi_nor_set_erase_type
0dc0fa313b ext4: refuse to create ea block when umounted
d738789ae9 ext4: optimize ea_inode block expansion
ab22799f11 jbd2: fix data missing when reusing bh which is ready to be checkpointed
a9cd89463e ALSA: hda/realtek: Add quirk for HP EliteDesk 800 G6 Tower PC
ae2340769e ALSA: ice1712: Do not left ice->gpio_mutex locked in aureon_add_controls()
246f26664b io_uring/poll: allow some retries for poll triggering spuriously
7f3d132415 io_uring: remove MSG_NOSIGNAL from recvmsg
72783d2af8 io_uring/rsrc: disallow multi-source reg buffers
a442f12e47 io_uring: add a conditional reschedule to the IOPOLL cancelation loop
3d1f9533a3 io_uring: mark task TASK_RUNNING before handling resume/task work
3f32f8492e io_uring: handle TIF_NOTIFY_RESUME when checking for task_work
306c8b49b5 irqdomain: Drop bogus fwspec-mapping error handling
e0538aa7e0 irqdomain: Fix disassociation race
6b24bd85ae irqdomain: Fix association race
8c64acd24a ima: Align ima_file_mmap() parameters with mmap_file LSM hook
c1aa96927b brd: return 0/-error from brd_insert_page()
3326ef84cd Documentation/hw-vuln: Document the interaction between IBRS and STIBP
abfed855f0 x86/speculation: Allow enabling STIBP with legacy IBRS
44a44b57e8 x86/microcode/AMD: Fix mixed steppings support
87cf9bc78c x86/microcode/AMD: Add a @cpu parameter to the reloading functions
0a89768b85 x86/microcode/amd: Remove load_microcode_amd()'s bsp parameter
5255fd8dfb x86/kprobes: Fix arch_check_optimized_kprobe check within optimized_kprobe range
c16e4610d5 x86/kprobes: Fix __recover_optprobed_insn check optimizing logic
f75ee95196 x86/reboot: Disable SVM, not just VMX, when stopping CPUs
051f991c57 x86/reboot: Disable virtualization in an emergency if SVM is supported
8ff2cc2f87 x86/crash: Disable virt in core NMI crash handler to avoid double shootdown
537be939a8 x86/virt: Force GIF=1 prior to disabling SVM (for reboot flows)
edd7f5bc6f KVM: s390: disable migration mode when dirty tracking is disabled
018798c6fb KVM: x86: Inject #GP if WRMSR sets reserved bits in APIC Self-IPI
76a9886e1b KVM: Destroy target device if coalesced MMIO unregistration fails
bacfce056e udf: Fix file corruption when appending just after end of preallocated extent
a44ec34b90 udf: Detect system inodes linked into directory hierarchy
63478c3ce2 udf: Preserve link count of system files
eb2133900c udf: Do not update file length for failed writes to inline files
965982feb3 udf: Do not bother merging very long extents
9c792a59e0 udf: Truncate added extents on failed expansion
6bf9caa585 ocfs2: fix non-auto defrag path not working issue
2c559b3ba8 ocfs2: fix defrag path triggering jbd2 ASSERT
e9f20138b5 f2fs: fix cgroup writeback accounting with fs-layer encryption
00b5587326 f2fs: fix information leak in f2fs_move_inline_dirents()
f9dbc35ecb exfat: fix inode->i_blocks for non-512 byte sector size device
4017209e08 exfat: redefine DIR_DELETED as the bad cluster number
c2d1997074 exfat: fix unexpected EOF while reading dir
34b0588341 exfat: fix reporting fs error when reading dir beyond EOF
ef7d71d7bd fs: hfsplus: fix UAF issue in hfsplus_put_super
dc9f78b6d2 hfs: fix missing hfs_bnode_get() in __hfs_bnode_create
300b6404e6 ARM: dts: exynos: correct HDMI phy compatible in Exynos4
69493675fd cifs: Fix uninitialized memory read in smb3_qfs_tcon()
59102ded74 s390/kprobes: fix current_kprobe never cleared after kprobes reenter
d8724dc0ce s390/kprobes: fix irq mask clobbering on kprobe reenter from post_handler
d43abcf91c s390: discard .interp section
6cf48403c4 s390/extmem: return correct segment type in __segment_load()
be2dad7bc9 ipmi_ssif: Rename idle state and check
66b40f8756 rtc: pm8xxx: fix set-alarm race
e5b643645a firmware: coreboot: framebuffer: Ignore reserved pixel color bits
bf990eebea wifi: rtl8xxxu: fixing transmisison failure for rtl8192eu
759f6a72bc nfsd: zero out pointers after putting nfsd_files on COPY setup error
9b8047b210 dm cache: add cond_resched() to various workqueue loops
52206dd1c7 dm thin: add cond_resched() to various workqueue loops
861229a52b drm: panel-orientation-quirks: Add quirk for Lenovo IdeaPad Duet 3 10IGL5
7df5da8e6b HID: logitech-hidpp: Don't restart communication if not necessary
ca64ebcb45 pinctrl: at91: use devm_kasprintf() to avoid potential leaks
5735878a7b hwmon: (coretemp) Simplify platform device handling
2f8623377f gfs2: Improve gfs2_make_fs_rw error handling
bfa4ffd815 regulator: s5m8767: Bounds check id indexing into arrays
b4ff71c6f0 regulator: max77802: Bounds check regulator id against opmode
0adacf6d6b ASoC: kirkwood: Iterate over array indexes instead of using pointer math
fcfc774022 docs/scripts/gdb: add necessary make scripts_gdb step
540c66180a drm/msm/dsi: Add missing check for alloc_ordered_workqueue
d473c55ce1 drm: amd: display: Fix memory leakage
ce9e9d3dcb drm/radeon: free iio for atombios when driver shutdown
819d8dba03 drm/tiny: ili9486: Do not assume 8-bit only SPI controllers
bc919c866d HID: Add Mapping for System Microphone Mute
f4cb425252 drm/omap: dsi: Fix excessive stack usage
9f73793b81 drm/amd/display: Fix potential null-deref in dm_resume
348cc9ab33 Bluetooth: btusb: Add VID:PID 13d3:3529 for Realtek RTL8821CE
e974e8f1e3 PM: EM: fix memory leak with using debugfs_lookup()
0c2b778edd uaccess: Add minimum bounds check on kernel buffer size
d80f947bb3 coda: Avoid partial allocation of sig_inputArgs
206c511e42 net/mlx5: fw_tracer: Fix debug print
1ef724fed3 ACPI: video: Fix Lenovo Ideapad Z570 DMI match
46ce77b07c wifi: mt76: dma: free rx_head in mt76_dma_rx_cleanup
7873def499 m68k: Check syscall_trace_enter() return code
8418813205 net: bcmgenet: Add a check for oversized packets
1fc9760afd crypto: hisilicon: Wipe entire pool on error
2fc7748d48 clocksource: Suspend the watchdog temporarily when high read latency detected
94933dab75 ACPI: Don't build ACPICA with '-Os'
9f1865ebfa ice: add missing checks for PF vsi type
b33091fc28 inet: fix fast path in __inet_hash_connect()
47dc1f425a wifi: mt7601u: fix an integer underflow
0ca2efea4f wifi: brcmfmac: ensure CLM version is null-terminated to prevent stack-out-of-bounds
4707c94f7f x86/bugs: Reset speculation control settings on init
6ef02cdb5a timers: Prevent union confusion from unexpected restart_syscall()
781bff0a53 thermal: intel: Fix unsigned comparison with less than zero
744e538dcf wifi: ath11k: debugfs: fix to work with multiple PCI devices
d99d194e2f rcu-tasks: Make rude RCU-Tasks work well with CPU hotplug
2bf501f1bc rcu: Suppress smp_processor_id() complaint in synchronize_rcu_expedited_wait()
f5657f3306 rcu: Make RCU_LOCKDEP_WARN() avoid early lockdep checks
d6ef66194b wifi: brcmfmac: Fix potential stack-out-of-bounds in brcmf_c_preinit_dcmds()
99ff971b62 wifi: ath9k: Fix use-after-free in ath9k_hif_usb_disconnect()
6e291810fe blk-iocost: fix divide by 0 error in calc_lcoefs()
199624f314 ARM: dts: exynos: Use Exynos5420 compatible for the MIPI video phy
f34cc701ea udf: Define EFSCORRUPTED error code
91f9d70871 rpmsg: glink: Avoid infinite loop on intent for missing channel
2b72ceef17 media: saa7134: Use video_unregister_device for radio_dev
42f8ba8355 media: usb: siano: Fix use after free bugs caused by do_submit_urb
cc2f9c8eb1 media: i2c: ov7670: 0 instead of -EINVAL was returned
78da5a378b media: rc: Fix use-after-free bugs caused by ene_tx_irqsim()
c6c3b4ae31 media: i2c: imx219: Fix binning for RAW8 capture
a34288e3a1 media: i2c: imx219: Split common registers from mode tables
09a0410886 media: i2c: imx219: remove redundant writes
dfaafeb8e9 media: i2c: ov772x: Fix memleak in ov772x_probe()
bcae9115a1 media: ov5675: Fix memleak in ov5675_init_controls()
a163ee1134 media: ov2740: Fix memleak in ov2740_init_controls()
505ff3a0c5 media: max9286: Fix memleak in max9286_v4l2_register()
f3e10a3437 builddeb: clean generated package content
55f3bca25d powerpc: Remove linker flag from KBUILD_AFLAGS
b74aaa314f media: platform: ti: Add missing check for devm_regulator_get
c7a218cbf6 media: ti: cal: fix possible memory leak in cal_ctx_create()
0a2e2674f7 remoteproc: qcom_q6v5_mss: Use a carveout to authenticate modem headers
7e5bc675eb Input: iqs269a - do not poll during ATI
65e39fdce1 Input: iqs269a - do not poll during suspend or resume
b0b84fd32c alpha/boot/tools/objstrip: fix the check for ELF header
4cab7debf3 vdpa/mlx5: Don't clear mr struct on destroy MR
bccccd43a0 MIPS: vpe-mt: drop physical_memsize
132203ce40 MIPS: SMP-CPS: fix build error when HOTPLUG_CPU not set
6fc6d29be8 powerpc/eeh: Set channel state after notifying the drivers
dfc41e3859 powerpc/eeh: Small refactor of eeh_handle_normal_event()
386cc2af90 powerpc/rtas: ensure 4KB alignment for rtas_data_buf
c9a299f2f4 powerpc/rtas: make all exports GPL
7afd768784 powerpc/pseries/lparcfg: add missing RTAS retry status handling
df995aef64 powerpc/pseries/lpar: add missing RTAS retry status handling
9626f83a6e powerpc/perf/hv-24x7: add missing RTAS retry status handling
831a2d8de1 clk: Honor CLK_OPS_PARENT_ENABLE in clk_core_is_enabled()
4f060379aa powerpc/powernv/ioda: Skip unallocated resources when mapping to PE
15fed9258b clk: qcom: gpucc-sdm845: fix clk_dis_wait being programmed for CX GDSC
241048adcb clk: qcom: gpucc-sc7180: fix clk_dis_wait being programmed for CX GDSC
1957c5b5ec Input: ads7846 - don't check penirq immediately for 7845
8d9b9e56c2 Input: ads7846 - always set last command to PWRDOWN
d247f3527b Input: ads7846 - convert to one message
a6c4384446 Input: ads7846 - convert to full duplex
7f2034b9b0 Input: ads7846 - don't report pressure for ads7845
092effd9f9 clk: imx: avoid memory leak
092f17eca8 clk: renesas: cpg-mssr: Remove superfluous check in resume code
7beb9b4538 clk: renesas: cpg-mssr: Fix use after free if cpg_mssr_common_init() failed
44a2a912c7 linux/kconfig.h: replace IF_ENABLED() with PTR_IF() in <linux/kernel.h>
9a6dca86cf Input: iqs269a - configure device with a single block write
b7afc359f6 Input: iqs269a - increase interrupt handler return delay
a6a70ab2bb Input: iqs269a - drop unused device node references
b7fb5b5d2c mtd: rawnand: sunxi: Fix the size of the last OOB region
c90fa32bd4 RISC-V: fix funct4 definition for c.jalr in parse_asm.h
c7950aa872 clk: qcom: gcc-qcs404: fix names of the DSI clocks used as parents
7fd6fd898b clk: qcom: gcc-qcs404: disable gpll[04]_out_aux parents
3ee13bdf0d mfd: pcf50633-adc: Fix potential memleak in pcf50633_adc_async_read()
8a041377a4 objtool: add UACCESS exceptions for __tsan_volatile_read/write
455cf05161 printf: fix errname.c list
b18946a9ce selftests/ftrace: Fix bash specific "==" operator
b8dc9f6fde sparc: allow PM configs for sparc32 COMPILE_TEST
93925ab9dd perf tools: Fix auto-complete on aarch64
1d6101d922 leds: led-core: Fix refcount leak in of_led_get()
071b7f5720 perf llvm: Fix inadvertent file creation
deece7bd60 gfs2: jdata writepage fix
cfd85a0922 cifs: Fix warning and UAF when destroy the MR list
caac205e0d cifs: Fix lost destroy smbd connection when MR allocate failed
9e8ccaf4ff nfsd: fix race to check ls_layouts
e73640184c hid: bigben_probe(): validate report count
fddde36316 HID: bigben: use spinlock to safely schedule workers
ec8b79668e HID: bigben_worker() remove unneeded check on report_field
2ca8ae5cf6 HID: bigben: use spinlock to protect concurrent accesses
f69065e1bd ASoC: soc-dapm.h: fixup warning struct snd_pcm_substream not declared
c785a87d9a spi: synquacer: Fix timeout handling in synquacer_spi_transfer_one()
ac3a513d4f NFS: fix disabling of swap
242df51a82 nfs4trace: fix state manager flag printing
6d434b4c49 NFSv4: keep state manager thread active if swap is enabled
d601f78282 NFS: Fix up handling of outstanding layoutcommit in nfs_update_inode()
c550f65a54 dm: remove flush_scheduled_work() during local_exit()
f23a4b9bf8 ASoC: tlv320adcx140: fix 'ti,gpio-config' DT property init
4c6d18ea71 hwmon: (mlxreg-fan) Return zero speed for broken fan
a79f1e71e7 spi: bcm63xx-hsspi: Fix multi-bit mode setting
59b0ce292a spi: bcm63xx-hsspi: fix pm_runtime
ca769960cb scsi: aic94xx: Add missing check for dma_map_single()
30c7c72b6c scsi: mpt3sas: Fix a memory leak
0cb8a92a88 drm/amdgpu: fix enum odm_combine_mode mismatch
859bdc96ba hwmon: (ltc2945) Handle error case in ltc2945_value_store
d9bcf67b8b ASoC: dt-bindings: meson: fix gx-card codec node regex
b4d74716da ASoC: mchp-spdifrx: Fix uninitialized use of mr in mchp_spdifrx_hw_params()
ce07bbe038 ASoC: mchp-spdifrx: disable all interrupts in mchp_spdifrx_dai_remove()
d8f5539b5e ASoC: mchp-spdifrx: fix controls that works with completion mechanism
45956f1764 ASoC: mchp-spdifrx: fix return value in case completion times out
426423ed55 ASoC: atmel: fix spelling mistakes
1983a70778 ASoC: mchp-spdifrx: fix controls which rely on rsr register
b33ca7b7bb spi: dw_bt1: fix MUX_MMIO dependencies
33033f392d gpio: vf610: connect GPIO label to dev name
f2f6e683d9 ASoC: soc-compress.c: fixup private_data on snd_soc_new_compress()
6a89ddee16 drm/mediatek: Clean dangling pointer on bind error path
b64b6dff15 drm/mediatek: mtk_drm_crtc: Add checks for devm_kcalloc
3a50d86696 drm/mediatek: Drop unbalanced obj unref
55bc7babc0 drm/mediatek: Use NULL instead of 0 for NULL pointer
da5fd53999 drm/mediatek: dsi: Reduce the time of dsi from LP11 to sending cmd
cfd710a7e5 gpu: host1x: Don't skip assigning syncpoints to channels
53f98ffcd8 pinctrl: mediatek: Initialize variable *buf to zero
d2eb2e7125 pinctrl: mediatek: Initialize variable pullen and pullup to zero
a46d29437b pinctrl: bcm2835: Remove of_node_put() in bcm2835_of_gpio_ranges_fallback()
49907c8873 drm/msm/mdp5: Add check for kzalloc
e9743b3052 drm/msm/dpu: Add check for pstates
31f2f8de0e drm/msm/dpu: Add check for cstate
70bc4db1fb drm/msm: use strscpy instead of strncpy
23770064a3 drm/mipi-dsi: Fix byte order of 16-bit DCS set/get brightness
10c58ca62a drm/bridge: lt9611: pass a pointer to the of node
ffd4cbd7ea drm/bridge: lt9611: fix clock calculation
aa37ec52c1 drm/bridge: lt9611: fix programming of video modes
bffd007802 drm/bridge: lt9611: fix polarity programming
3c865a0146 drm/bridge: lt9611: fix HPD reenablement
88618e800a drm/bridge: lt9611: fix sleep mode setup
8dbd54d679 drm/msm/dpu: Disallow unallocated resources to be returned
42fdae9f59 ALSA: hda/ca0132: minor fix for allocation size
b26bd7791f drm/msm/adreno: Fix null ptr access in adreno_gpu_cleanup()
a3bf72eab8 ASoC: fsl_sai: initialize is_dsp_mode flag
d4438cbd9c drm/vc4: hdmi: Correct interlaced timings again
15a6be1011 drm/vc4: hvs: Fix colour order for xRGB1555 on HVS5
bc65127ba4 drm/vc4: hvs: Set AXI panic modes
d562054a3a pinctrl: rockchip: Fix refcount leak in rockchip_pinctrl_parse_groups
3dd6f15938 pinctrl: rockchip: do coding style for mux route struct
6da121152a pinctrl: rockchip: add support for rk3568
8ab860dd87 pinctrl: stm32: Fix refcount leak in stm32_pctrl_get_irq_domain
86704e50ff pinctrl: qcom: pinctrl-msm8976: Correct function names for wcss pins
1bab31a096 drm/msm/hdmi: Add missing check for alloc_ordered_workqueue
8eb74bd9c9 gpu: ipu-v3: common: Add of_node_put() for reference returned by of_graph_get_port_by_id()
fdcacfd110 drm: tidss: Fix pixel format definition
2adbcf94eb drm/vc4: dpi: Fix format mapping for RGB565
09c6e21d6a drm/vc4: dpi: Add option for inverting pixel clock and output enable
0b8f390e22 drm/vkms: Fix null-ptr-deref in vkms_release()
5b9bcb33cf drm/bridge: megachips: Fix error handling in i2c_register_driver()
181fb5efb6 drm: mxsfb: DRM_MXSFB should depend on ARCH_MXS || ARCH_MXC
a86bd12bd9 drm/fourcc: Add missing big-endian XRGB1555 and RGB565 formats
5ae70041a6 drm: Fix potential null-ptr-deref due to drmm_mode_config_init()
8f06907f9f sefltests: netdevsim: wait for devlink instance after netns removal
6038e45879 selftest: fib_tests: Always cleanup before exit
e1c848d9dd net: bcmgenet: fix MoCA LED control
4a413d3609 l2tp: Avoid possible recursive deadlock in l2tp_tunnel_register()
5663df2062 selftests/net: Interpret UDP_GRO cmsg data as an int value
7cefa69222 irqchip/irq-bcm7120-l2: Set IRQ_LEVEL for level triggered interrupts
27a601623d irqchip/irq-brcmstb-l2: Set IRQ_LEVEL for level triggered interrupts
9f487d888e bpf: Fix global subprog context argument resolution logic
3e8733949f can: esd_usb: Move mislocated storage of SJA1000_ECC_SEG bits in case of a bus error
e02bc49288 thermal/drivers/hisi: Drop second sensor hi3660
3856f75597 wifi: mac80211: make rate u32 in sta_set_rate_info_rx()
f333346001 crypto: crypto4xx - Call dma_unmap_page when done
b10827bce7 selftests/bpf: Fix out-of-srctree build
d7c5ecbc49 wifi: mwifiex: fix loop iterator in mwifiex_update_ampdu_txwinsize()
3185d6cfc5 wifi: iwl4965: Add missing check for create_singlethread_workqueue()
2f80b3ff92 wifi: iwl3945: Add missing check for create_singlethread_workqueue
5da95a7eb9 RISC-V: time: initialize hrtimer based broadcast clock event device
dabc22a30d m68k: /proc/hardware should depend on PROC_FS
c9c8714226 crypto: rsa-pkcs1pad - Use akcipher_request_complete
eb209a35d3 rds: rds_rm_zerocopy_callback() correct order for list_add_tail()
b7aa7fbc16 libbpf: Fix alen calculation in libbpf_nla_dump_errormsg()
b8ed41cc04 Bluetooth: L2CAP: Fix potential user-after-free
4f4c970a05 OPP: fix error checking in opp_migrate_dentry()
4a9272a864 tap: tap_open(): correctly initialize socket uid
9a31af61f3 tun: tun_chr_open(): correctly initialize socket uid
2416abd6ba net: add sock_init_data_uid()
4a614a68d9 s390/vmem: fix empty page tables cleanup under KASAN
df8d3536b6 irqchip/ti-sci: Fix refcount leak in ti_sci_intr_irq_domain_probe
cee12e8be8 irqchip/irq-mvebu-gicp: Fix refcount leak in mvebu_gicp_probe
c9aaf4efe1 irqchip/alpine-msi: Fix refcount leak in alpine_msix_init_domains
b00baffcc2 irqchip: Fix refcount leak in platform_irqchip_probe
9cc2a41c58 net/mlx5: Enhance debug print in page allocation failure
94c4eafbbd bpftool: profile online CPUs instead of possible
627e140a5b crypto: ccp - Flush the SEV-ES TMR memory before giving it to firmware
959bd9d42a crypto: ccp - Refactor out sev_fw_alloc()
6952629bed leds: led-class: Add missing put_device() to led_put()
92a07ba4f0 crypto: xts - Handle EBUSY correctly
1198484164 net: ethernet: ti: add missing of_node_put before return
80c81aafc9 net: ethernet: ti: am65-cpsw: handle deferred probe with dev_err_probe()
37f0ca73fe net: ethernet: ti: am65-cpsw: fix tx csum offload for multi mac mode
8e83e1619f x86/microcode: Adjust late loading result reporting message
511e27e5fd x86/microcode: Check CPU capabilities after late microcode update correctly
89e848bb4a x86/microcode: Add a parameter to microcode_check() to store CPU capabilities
f5e78fa916 x86/microcode: Print previous version of microcode after reload
e623080668 x86/microcode: Default-disable late loading
9e56938f20 x86/microcode: Rip out the OLD_INTERFACE
8078a170ba x86: Mark stop_this_cpu() __noreturn
3900b7de1d x86/microcode: Replace deprecated CPU-hotplug functions.
2e3bd75f64 x86/cpu: Init AP exception handling from cpu_init_secondary()
0e7a569929 powercap: fix possible name leak in powercap_register_zone()
ae849d2f48 crypto: seqiv - Handle EBUSY correctly
796e02cca3 crypto: essiv - Handle EBUSY correctly
62d428c9fe crypto: ccp - Failure on re-initialization due to duplicate sysfs filename
6fb7dead79 ACPI: battery: Fix missing NUL-termination with large strings
45a1ca6f3a wifi: cfg80211: Fix extended KCK key length check in nl80211_set_rekey_data()
137963e3b9 wifi: ath11k: Fix memory leak in ath11k_peer_rx_frag_setup
78b56b0a61 wifi: ath9k: Fix potential stack-out-of-bounds write in ath9k_wmi_rsp_callback()
f26dd69f61 wifi: ath9k: hif_usb: clean up skbs if ath9k_hif_usb_rx_stream() fails
5668e63e26 ath9k: htc: clean up statistics macros
221f9bd5ec ath9k: hif_usb: simplify if-if to if-else
ec246dfe00 wifi: ath9k: htc_hst: free skb in ath9k_htc_rx_msg() if there is no callback function
b44178e718 wifi: orinoco: check return value of hermes_write_wordrec()
430f9f9bec wifi: rtl8xxxu: Fix memory leaks with RTL8723BU, RTL8192EU
695f1d9431 thermal/drivers/tsens: Sort out msm8976 vs msm8956 data
40f62ff0d7 thermal/drivers/tsens: Add compat string for the qcom,msm8960
a9f2002484 thermal/drivers/qcom/tsens_v1: Enable sensor 3 on MSM8976
e6ec7fa688 thermal/drivers/tsens: Drop msm8976-specific defines
5419cd28c8 ACPICA: nsrepair: handle cases without a return value correctly
4c33e01fe1 crypto: ccp - Avoid page allocation failure warning for SEV_GET_ID2
4c5300f6f5 crypto: ccp - Use kzalloc for sev ioctl interfaces to prevent kernel memory leak
daaec051cd crypto: ccp: Use the stack and common buffer for status commands
c997b509fd crypto: ccp: Use the stack for small SEV command buffers
318dd6f5b7 lib/mpi: Fix buffer overrun when SG is too long
1c37e86a78 rcu-tasks: Fix synchronize_rcu_tasks() VS zap_pid_ns_processes()
ad410f64f7 rcu-tasks: Remove preemption disablement around srcu_read_[un]lock() calls
b02b6bb83c rcu-tasks: Improve comments explaining tasks_rcu_exit_srcu purpose
a4935bb734 genirq: Fix the return type of kstat_cpu_irqs_sum()
5562585c4a ACPICA: Drop port I/O validation for some regions
6e43b2d9d1 crypto: x86/ghash - fix unaligned access in ghash_setkey()
f6e429cde9 wifi: wl3501_cs: don't call kfree_skb() under spin_lock_irqsave()
93b8809be5 wifi: libertas: cmdresp: don't call kfree_skb() under spin_lock_irqsave()
2ddb1820bd wifi: libertas: main: don't call kfree_skb() under spin_lock_irqsave()
647230e71e wifi: libertas: if_usb: don't call kfree_skb() under spin_lock_irqsave()
0258757caa wifi: libertas_tf: don't call kfree_skb() under spin_lock_irqsave()
b4b4447481 wifi: brcmfmac: unmap dma buffer in brcmf_msgbuf_alloc_pktid()
e08e6812ef wifi: brcmfmac: fix potential memory leak in brcmf_netdev_start_xmit()
a1e94fb4d0 wifi: wilc1000: fix potential memory leak in wilc_mac_xmit()
8a2eb9d9d0 wifi: ipw2200: fix memory leak in ipw_wdev_init()
841ae9b924 wifi: ipw2x00: don't call dev_kfree_skb() under spin_lock_irqsave()
3938f01405 libbpf: Fix btf__align_of() by taking into account field offsets
1e950b9a84 wifi: rtlwifi: Fix global-out-of-bounds bug in _rtl8812ae_phy_set_txpower_limit()
d4fddfd728 rtlwifi: fix -Wpointer-sign warning
75f4eed70a wifi: rtl8xxxu: don't call dev_kfree_skb() under spin_lock_irqsave()
9c8f50c743 wifi: libertas: fix memory leak in lbs_init_adapter()
e9ef5631dd wifi: iwlegacy: common: don't call dev_kfree_skb() under spin_lock_irqsave()
0e5b782c1c wifi: rtlwifi: rtl8723be: don't call kfree_skb() under spin_lock_irqsave()
97018e737b wifi: rtlwifi: rtl8188ee: don't call kfree_skb() under spin_lock_irqsave()
d85d0b1a61 wifi: rtlwifi: rtl8821ae: don't call kfree_skb() under spin_lock_irqsave()
efc8df9705 wifi: rsi: Fix memory leak in rsi_coex_attach()
0a82c1e057 block: bio-integrity: Copy flags when bio_integrity_payload is cloned
895cb50196 x86/perf/zhaoxin: Add stepping check for ZXC
80a1751730 sched/rt: pick_next_rt_entity(): check list_entry
53dbbe3634 sched/deadline,rt: Remove unused parameter from pick_next_[rt|dl]_entity()
a50e28d433 s390/dasd: Fix potential memleak in dasd_eckd_init()
72aebdac39 s390/dasd: Prepare for additional path event handling
a33c33593b blk-mq: correct stale comment of .get_budget
2c58012d96 blk-mq: remove stale comment for blk_mq_sched_mark_restart_hctx
12bcc4ec54 blk-mq: avoid sleep in blk_mq_alloc_request_hctx
d7cf3864d7 arm64: dts: mediatek: mt7622: Add missing pwm-cells to pwm node
e874629c5f ARM: dts: imx7s: correct iomuxc gpr mux controller cells
bbddc7c708 ARM: dts: sun8i: nanopi-duo2: Fix regulator GPIO reference
a451c1377a arm64: dts: renesas: beacon-renesom: Fix gpio expander reference
4c37a37743 arm64: dts: amlogic: meson-gxbb-kii-pro: fix led node name
c39c3ed4a3 arm64: dts: amlogic: meson-gxl-s905d-phicomm-n1: fix led node name
269fd2fb04 arm64: dts: amlogic: meson-gx-libretech-pc: fix update button name
373bb505ff arm64: dts: amlogic: meson-gxl: add missing unit address to eth-phy-mux node name
1c30db46dd arm64: dts: amlogic: meson-gx: add missing unit address to rng node name
436060c1b6 arm64: dts: amlogic: meson-gxl-s905d-sml5442tw: drop invalid clock-names property
6a46320f2a arm64: dts: amlogic: meson-gx: add missing SCPI sensors compatible
eb5f2c5657 arm64: dts: amlogic: meson-axg: fix SCPI clock dvfs node name
a7163b258a arm64: dts: amlogic: meson-gx: fix SCPI clock dvfs node name
14736f2eae ARM: imx: Call ida_simple_remove() for ida_simple_get
23134f7a54 ARM: dts: exynos: correct wr-active property in Exynos3250 Rinato
5325b8a120 arm64: dts: ti: k3-j7200: Fix wakeup pinmux range
4811cfd286 ARM: s3c: fix s3c64xx_set_timer_source prototype
66315db914 ARM: OMAP1: call platform_device_put() in error case in omap1_dm_timer_init()
1fa673af0a arm64: dts: meson: remove CPU opps below 1GHz for G12A boards
c56595b948 arm64: dts: qcom: ipq8074: correct PCIe QMP PHY output clock names
192cb335d8 arm64: dts: qcom: ipq8074: fix Gen3 PCIe node
e839d027d7 arm64: dts: qcom: ipq8074: correct Gen2 PCIe ranges
77970cf389 arm64: dts: qcom: ipq8074: fix Gen3 PCIe QMP PHY
9b5b1652e3 arm64: dts: qcom: ipq8074: fix PCIe PHY serdes size
8f1cb871f9 arm64: dts: qcom: Fix IPQ8074 PCIe PHY nodes
7ee2ca51e3 arm64: dts: qcom: ipq8074: correct USB3 QMP PHY-s clock output names
5633e86cce arm64: dts: meson-gx: Fix the SCPI DVFS node name and unit address
bd55aa16bf arm64: dts: meson-g12a: Fix internal Ethernet PHY unit name
8303a34fce arm64: dts: meson-gx: Fix Ethernet MAC address unit name
2df155a114 arm64: dts: qcom: sc7180: correct SPMI bus address cells
64b69cb420 arm64: dts: qcom: sdm845-db845c: fix audio codec interrupt pin name
717aa39846 arm64: dts: mediatek: mt8183: Fix systimer 13 MHz clock description
227f8c1c5c ARM: zynq: Fix refcount leak in zynq_early_slcr_init
644688a921 arm64: dts: qcom: qcs404: use symbol names for PCIe resets
4862c41d5f ARM: OMAP2+: Fix memory leak in realtime_counter_init()
e1bb97947c powerpc/mm: Rearrange if-else block to avoid clang warning
21a2eec4a4 HID: asus: use spinlock to safely schedule workers
6a63a3334a HID: asus: use spinlock to protect concurrent accesses
cb8382c371 HID: asus: Remove check for same LED brightness on set
9fd42770b5 Linux 5.10.172
da24142b1e io_uring: ensure that io_init_req() passes in the right issue_flags
a02b4a8660 Revert "nvmem: core: Fix a conflict between MTD and NVMEM on wp-gpios property"
d480976b05 Revert "nvmem: core: remove nvmem_config wp_gpio"
a4160f76c7 Revert "nvmem: core: fix cleanup after dev_set_name()"
07d89b34a9 Revert "nvmem: core: fix registration vs use race"
365c551e77 Revert "nvmem: core: fix return value"
a25aa776b0 Linux 5.10.171
08681391b8 io_uring: add missing lock in io_get_file_fixed
218925bfd5 USB: core: Don't hold device lock while reading the "descriptors" sysfs file
c5360eec64 usb: gadget: u_serial: Add null pointer check in gserial_resume
cebcd4300a USB: serial: option: add support for VW/Skoda "Carstick LTE"
87c647def3 drm/virtio: Correct drm_gem_shmem_get_sg_table() error handling
0a4181b23a drm/virtio: Fix NULL vs IS_ERR checking in virtio_gpu_object_shmem_init
a401ef0557 scripts/tags.sh: fix incompatibility with PCRE2
65c07e15f2 scripts/tags.sh: Invoke 'realpath' via 'xargs'
1c44109c30 md: Flush workqueue md_rdev_misc_wq in md_alloc()
80653a6e6e vc_screen: don't clobber return value in vcs_read
3e4bbd1f38 net: Remove WARN_ON_ONCE(sk->sk_forward_alloc) from sk_stream_kill_queues().
a2957adbf3 bpf: bpf_fib_lookup should not return neigh in NUD_FAILED state
75fbe1e435 HID: core: Fix deadloop in hid_apply_multiplier.
2fd5059f4f neigh: make sure used and confirmed times are valid
065f6a6633 IB/hfi1: Assign npages earlier
6195cea4c7 btrfs: send: limit number of clones and allocated memory size
8e833fe47f ACPI: NFIT: fix a potential deadlock during NFIT teardown
abbf52efad ARM: dts: rockchip: add power-domains property to dp node on rk3288
1f3a209b2f arm64: dts: rockchip: drop unused LED mode property from rk3328-roc-cc
887975834d Fix XFRM-I support for nested ESP tunnels
0caf8151c2 Merge 5.10.169 into android12-5.10-lts
bb0ae42d0b Revert "Revert "nvmem: core: Fix a conflict between MTD and NVMEM on wp-gpios property""
22d269bb30 Linux 5.10.170
12e3119a87 bpf: add missing header file include
c44e96d6c3 Revert "net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs"
1ba10d3640 ext4: Fix function prototype mismatch for ext4_feat_ktype
01e652f03a audit: update the mailing list in MAINTAINERS
e1dc3f102a wifi: mwifiex: Add missing compatible string for SD8787
4311ad1e76 nbd: fix possible overflow on 'first_minor' in nbd_dev_add()
2e0c3e43eb nbd: fix possible overflow for 'first_minor' in nbd_dev_add()
fd8107206a nbd: fix max value for 'first_minor'
f3f6b33b77 Revert "Revert "block: nbd: add sanity check for first_minor""
3b6ce54cfa uaccess: Add speculation barrier to copy_from_user()
267f62b7f3 mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh
3d743415c6 drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
b50f6fc9d7 powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
6a3fb887da can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
1b0cafaae8 KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
c41d856b70 KVM: SVM: Skip WRMSR fastpath on VM-Exit if next RIP isn't valid
a7ef904b68 KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
119e75d8fe random: always mix cycle counter in add_latent_entropy()
2da1f95085 clk: mxl: syscon_node_to_regmap() returns error pointers
1423d88753 powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
caa47d9173 clk: mxl: Fix a clk entry by adding relevant flags
9dcf2ca5d3 clk: mxl: Add option to override gate clks
3789e905f4 clk: mxl: Remove redundant spinlocks
072eb5fbd6 clk: mxl: Switch from direct readl/writel based IO to regmap based IO
051d73eb9a wifi: rtl8xxxu: gen2: Turn on the rate control
eb9236d74c drm/etnaviv: don't truncate physical page address
2ae7379698 Linux 5.10.169
e953810345 nvmem: core: fix return value
c00867afe4 net: sched: sch: Fix off by one in htb_activate_prios()
31167df7c2 ASoC: SOF: Intel: hda-dai: fix possible stream_tag leak
6af2872cc6 alarmtimer: Prevent starvation by small intervals and SIG_IGN
6416c2108b kvm: initialize all of the kvm_debugregs structure before sending it to userspace
4fe9950815 net/sched: tcindex: search key must be 16 bits
b452e20b95 i40e: Add checking for null for nlmsg_find_attr()
5dfa51dbfc net/sched: act_ctinfo: use percpu stats
015ea70d72 flow_offload: fill flags to action structure
1d76a84448 drm/i915/gen11: Wa_1408615072/Wa_1407596294 should be on GT list
210e601180 drm/i915/gen11: Moving WAs to icl_gt_workarounds_init()
0ee5ed0126 nilfs2: fix underflow in second superblock position calculations
7546fb3554 ipv6: Fix tcp socket connection with DSCP.
5337bb508b ipv6: Fix datagram socket connection with DSCP.
1a4a5fd652 ixgbe: add double of VLAN header when computing the max MTU
7ff0fdba82 net: mpls: fix stale pointer if allocation fails during device rename
2dd914105a net: stmmac: Restrict warning on disabling DMA store and fwd mode
7eb8ebb5e8 bnxt_en: Fix mqprio and XDP ring checking logic
cc7ca4871a net: stmmac: fix order of dwmac5 FlexPPS parametrization sequence
c0f65ee0a3 net: openvswitch: fix possible memory leak in ovs_meter_cmd_set()
525bdcb083 net/usb: kalmia: Don't pass act_len in usb_bulk_msg error path
9d68bfa220 dccp/tcp: Avoid negative sk_forward_alloc by ipv6_pinfo.pktoptions.
eb8e9d8572 net/sched: tcindex: update imperfect hash filters respecting rcu
747a17e25a sctp: sctp_sock_filter(): avoid list_entry() on possibly empty list
a5c51e0c32 net: bgmac: fix BCM5358 support by setting correct flags
23974088fd i40e: add double of VLAN header when computing the max MTU
152a5f32ac ixgbe: allow to increase MTU to 3K with XDP enabled
3a63392c19 revert "squashfs: harden sanity check in squashfs_read_xattr_id_table"
e2bf52ff15 net: Fix unwanted sign extension in netdev_stats_to_stats64()
1933be146c Revert "mm: Always release pages to the buddy allocator in memblock_free_late()."
9662320238 hugetlb: check for undefined shift on 32 bit architectures
ec9c7aa088 sched/psi: Fix use-after-free in ep_remove_wait_queue()
7ed5c14722 ALSA: hda/realtek - fixed wrong gpio assigned
59d5c80ce5 ALSA: hda/conexant: add a new hda codec SN6180
0b3edcb24b mmc: mmc_spi: fix error handling in mmc_spi_probe()
30716d9f0f mmc: sdio: fix possible resource leaks in some error paths
73ad25c50d mmc: jz4740: Work around bug on JZ4760(B)
eaba3f9b67 netfilter: nft_tproxy: restrict to prerouting hook
6618b0dcf2 ovl: remove privs in ovl_fallocate()
f6f94837d9 ovl: remove privs in ovl_copyfile()
645df4047b s390/signal: fix endless loop in do_signal
c261f798f7 aio: fix mremap after fork null-deref
2dcb474af1 nvmem: core: fix registration vs use race
23676ecd2e nvmem: core: fix cleanup after dev_set_name()
89991ededc nvmem: core: remove nvmem_config wp_gpio
a19a0f67db nvmem: core: add error handling for dev_set_name
25f65c83f5 platform/x86: touchscreen_dmi: Add Chuwi Vi8 (CWI501) DMI match
ecf5b49df3 nvme-fc: fix a missing queue put in nvmet_fc_ls_create_association
55dbd6f4ea s390/decompressor: specify __decompress() buf len to avoid overflow
90fcf55d83 net: sched: sch: Bounds check priority
614a58e00d net: stmmac: do not stop RX_CLK in Rx LPI state for qcs404 SoC
aa84a8cc1b net/rose: Fix to not accept on connected socket
37bb61763d tools/virtio: fix the vringh test for virtio ring changes
3ec44268e2 ASoC: cs42l56: fix DT probe
7fc4e7191e ALSA: hda: Do not unset preset when cleaning up codec
490fcbc7b5 selftests/bpf: Verify copy_register_state() preserves parent/live fields
7d3a5ec579 ASoC: Intel: sof_rt5682: always set dpcm_capture for amplifiers

Update the .xml file to handle the ABI update in the LTS branch:

Leaf changes summary: 1 artifact changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 1 Changed, 0 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

1 function with some sub-type change:

  [C] 'function irq_domain* __irq_domain_add(fwnode_handle*, int, irq_hw_number_t, int, const irq_domain_ops*, void*)' at irqdomain.c:229:1 has some sub-type changes:
    parameter 2 of type 'int' changed:
      type name changed from 'int' to 'unsigned int'
      type size hasn't changed

Change-Id: I0a63ed2e6b2f1871671f8341f3c3b431592fcd64
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-05-26 15:09:40 +00:00
Peifeng Li 64c7044d39 ANDROID: vendor_hook: add hooks in dm_bufio.c
1. android_vh_dm_bufio_shrink_scan_bypass
To adjust dm_bufio-buffer shrinker's policy in some cases.
2. cleanup_old_buffers_bypass
To adjust the policy of dm_bufio-buffer periodic eviction
in some cases.

Bug: 281467813

Signed-off-by: Peifeng Li <lipeifeng@oppo.com>
Change-Id: I29a9d91d18d2e279170533db83b59cfc3b17ebe2
2023-05-22 10:51:36 +08:00
Yeongjin Gil 4285cc0a22 dm verity: fix error handling for check_at_most_once on FEC
[ Upstream commit e8c5d45f82 ]

In verity_end_io(), if bi_status is not BLK_STS_OK, it can be return
directly. But if FEC configured, it is desired to correct the data page
through verity_verify_io. And the return value will be converted to
blk_status and passed to verity_finish_io().

BTW, when a bit is set in v->validated_blocks, verity_verify_io() skips
verification regardless of I/O error for the corresponding bio. In this
case, the I/O error could not be returned properly, and as a result,
there is a problem that abnormal data could be read for the
corresponding block.

To fix this problem, when an I/O error occurs, do not skip verification
even if the bit related is set in v->validated_blocks.

Fixes: 843f38d382 ("dm verity: add 'check_at_most_once' option to only validate hashes once")
Cc: stable@vger.kernel.org
Reviewed-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Yeongjin Gil <youngjin.gil@samsung.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-05-17 11:48:10 +02:00
Akilesh Kailash fc097cfca0 dm verity: skip redundant verity_handle_err() on I/O errors
[ Upstream commit 2c0468e054 ]

Without FEC, dm-verity won't call verity_handle_err() when I/O fails,
but with FEC enabled, it currently does even if an I/O error has
occurred.

If there is an I/O error and FEC correction fails, return the error
instead of calling verity_handle_err() again.

Suggested-by: Sami Tolvanen <samitolvanen@google.com>
Signed-off-by: Akilesh Kailash <akailash@google.com>
Reviewed-by: Sami Tolvanen <samitolvanen@google.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Stable-dep-of: e8c5d45f82 ("dm verity: fix error handling for check_at_most_once on FEC")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-05-17 11:48:09 +02:00
Mike Snitzer ea827627a9 dm ioctl: fix nested locking in table_clear() to remove deadlock concern
commit 3d32aaa7e6 upstream.

syzkaller found the following problematic rwsem locking (with write
lock already held):

 down_read+0x9d/0x450 kernel/locking/rwsem.c:1509
 dm_get_inactive_table+0x2b/0xc0 drivers/md/dm-ioctl.c:773
 __dev_status+0x4fd/0x7c0 drivers/md/dm-ioctl.c:844
 table_clear+0x197/0x280 drivers/md/dm-ioctl.c:1537

In table_clear, it first acquires a write lock
https://elixir.bootlin.com/linux/v6.2/source/drivers/md/dm-ioctl.c#L1520
down_write(&_hash_lock);

Then before the lock is released at L1539, there is a path shown above:
table_clear -> __dev_status -> dm_get_inactive_table ->  down_read
https://elixir.bootlin.com/linux/v6.2/source/drivers/md/dm-ioctl.c#L773
down_read(&_hash_lock);

It tries to acquire the same read lock again, resulting in the deadlock
problem.

Fix this by moving table_clear()'s __dev_status() call to after its
up_write(&_hash_lock);

Cc: stable@vger.kernel.org
Reported-by: Zheng Zhang <zheng.zhang@email.ucr.edu>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-05-17 11:48:07 +02:00
Mikulas Patocka a1e3fffe02 dm flakey: fix a crash with invalid table line
commit 98dba02d9a upstream.

This command will crash with NULL pointer dereference:
 dmsetup create flakey --table \
  "0 `blockdev --getsize /dev/ram0` flakey /dev/ram0 0 0 1 2 corrupt_bio_byte 512"

Fix the crash by checking if arg_name is non-NULL before comparing it.

Cc: stable@vger.kernel.org
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-05-17 11:48:07 +02:00
Mike Snitzer 44f29e93a5 dm integrity: call kmem_cache_destroy() in dm_integrity_init() error path
commit 6b79a428c0 upstream.

Otherwise the journal_io_cache will leak if dm_register_target() fails.

Cc: stable@vger.kernel.org
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-05-17 11:48:06 +02:00
Mike Snitzer 717ceb487b dm clone: call kmem_cache_destroy() in dm_clone_init() error path
commit 6827af4a9a upstream.

Otherwise the _hydration_cache will leak if dm_register_target() fails.

Cc: stable@vger.kernel.org
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-05-17 11:48:06 +02:00
Yu Kuai 2a65555f7e md/raid10: fix memleak of md thread
[ Upstream commit f0ddb83da3 ]

In raid10_run(), if setup_conf() succeed and raid10_run() failed before
setting 'mddev->thread', then in the error path 'conf->thread' is not
freed.

Fix the problem by setting 'mddev->thread' right after setup_conf().

Fixes: 43a521238a ("md-cluster: choose correct label when clustered layout is not supported")
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20230310073855.1337560-7-yukuai1@huaweicloud.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-05-17 11:47:52 +02:00
Yu Kuai 6361b0592b md/raid10: fix memleak for 'conf->bio_split'
[ Upstream commit c9ac2acde5 ]

In the error path of raid10_run(), 'conf' need be freed, however,
'conf->bio_split' is missed and memory will be leaked.

Since there are 3 places to free 'conf', factor out a helper to fix the
problem.

Fixes: fc9977dd06 ("md/raid10: simplify the splitting of requests.")
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20230310073855.1337560-6-yukuai1@huaweicloud.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-05-17 11:47:52 +02:00
Yu Kuai 1697fb124c md/raid10: fix leak of 'r10bio->remaining' for recovery
[ Upstream commit 26208a7cff ]

raid10_sync_request() will add 'r10bio->remaining' for both rdev and
replacement rdev. However, if the read io fails, recovery_request_write()
returns without issuing the write io, in this case, end_sync_request()
is only called once and 'remaining' is leaked, cause an io hang.

Fix the problem by decreasing 'remaining' according to if 'bio' and
'repl_bio' is valid.

Fixes: 24afd80d99 ("md/raid10: handle recovery of replacement devices.")
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20230310073855.1337560-5-yukuai1@huaweicloud.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-05-17 11:47:52 +02:00
Li Nan bdbf104b1c md/raid10: fix null-ptr-deref in raid10_sync_request
commit a405c6f022 upstream.

init_resync() inits mempool and sets conf->have_replacemnt at the beginning
of sync, close_sync() frees the mempool when sync is completed.

After [1] recovery might be skipped and init_resync() is called but
close_sync() is not. null-ptr-deref occurs with r10bio->dev[i].repl_bio.

The following is one way to reproduce the issue.

  1) create a array, wait for resync to complete, mddev->recovery_cp is set
     to MaxSector.
  2) recovery is woken and it is skipped. conf->have_replacement is set to
     0 in init_resync(). close_sync() not called.
  3) some io errors and rdev A is set to WantReplacement.
  4) a new device is added and set to A's replacement.
  5) recovery is woken, A have replacement, but conf->have_replacemnt is
     0. r10bio->dev[i].repl_bio will not be alloced and null-ptr-deref
     occurs.

Fix it by not calling init_resync() if recovery skipped.

[1] commit 7e83ccbecd ("md/raid10: Allow skipping recovery when clean arrays are assembled")
Fixes: 7e83ccbecd ("md/raid10: Allow skipping recovery when clean arrays are assembled")
Cc: stable@vger.kernel.org
Signed-off-by: Li Nan <linan122@huawei.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20230222041000.3341651-3-linan666@huaweicloud.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-05-17 11:47:36 +02:00
Nathan Huckleberry 306223f885 UPSTREAM: dm verity: stop using WQ_UNBOUND for verify_wq
Setting WQ_UNBOUND increases scheduler latency on ARM64.  This is
likely due to the asymmetric architecture of ARM64 processors.

I've been unable to reproduce the results that claim WQ_UNBOUND gives
a performance boost on x86-64.

This flag is causing performance issues for multiple subsystems within
Android.  Notably, the same slowdown exists for decompression with
EROFS.

| open-prebuilt-camera  | WQ_UNBOUND | ~WQ_UNBOUND   |
|-----------------------|------------|---------------|
| verity wait time (us) | 11746      | 119 (-98%)    |
| erofs wait time (us)  | 357805     | 174205 (-51%) |

| sha256 ramdisk random read | WQ_UNBOUND    | ~WQ_UNBOUND |
|----------------------------|-----------=---|-------------|
| arm64 (accelerated)        | bw=42.4MiB/s  | bw=212MiB/s |
| arm64 (generic)            | bw=16.5MiB/s  | bw=48MiB/s  |
| x86_64 (generic)           | bw=233MiB/s   | bw=230MiB/s |

Using a alloc_workqueue() @max_active arg of num_online_cpus() only
made sense with WQ_UNBOUND. Switch the @max_active arg to 0 (aka
default, which is 256 per-cpu).

Also, eliminate 'wq_flags' since it really doesn't serve a purpose.

Cc: Sami Tolvanen <samitolvanen@google.com>
Cc: Eric Biggers <ebiggers@kernel.org>
Signed-off-by: Nathan Huckleberry <nhuck@google.com>
Reviewed-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>

Bug: 233247259
(cherry picked from commit c25da5b7ba)
(cherry picked from https://android-review.googlesource.com/q/commit:0b8c60f03740004a9693d63a2d31618b00469107)
Merged-In: Iea437fcfaa978a1389a57ef4d4adcb976d89089c

Bug: 279521578
Change-Id: Iecdc2ef25cc59ca53bfe3bca775f93cfda57f9d7
2023-04-25 14:26:54 +00:00
Nathan Huckleberry 3de420d372 BACKPORT: dm verity: enable WQ_HIGHPRI on verify_wq
WQ_HIGHPRI increases throughput and decreases disk latency when using
dm-verity. This is important in Android for camera startup speed.

The following tests were run by doing 60 seconds of random reads using
a dm-verity device backed by two ramdisks.

Without WQ_HIGHPRI
lat (usec): min=13, max=3947, avg=69.53, stdev=50.55
READ: bw=51.1MiB/s (53.6MB/s), 51.1MiB/s-51.1MiB/s (53.6MB/s-53.6MB/s)

With WQ_HIGHPRI:
lat (usec): min=13, max=7854, avg=31.15, stdev=30.42
READ: bw=116MiB/s (121MB/s), 116MiB/s-116MiB/s (121MB/s-121MB/s)

Further testing was done by measuring how long it takes to open a
camera on an Android device.

Without WQ_HIGHPRI
Total verity work queue wait times (ms):
880.960, 789.517, 898.852

With WQ_HIGHPRI:
Total verity work queue wait times (ms):
528.824, 439.191, 433.300

The average time to open the camera is reduced by 350ms (or 40-50%).

Signed-off-by: Nathan Huckleberry <nhuck@google.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>

Bug: 233247259
(cherry picked from commit afd41fff9c)
[nhuck: Resolved minor conflict in drivers/md/dm-verity-target.c ]
(cherry picked from https://android-review.googlesource.com/q/commit:fd4631f8568f5bf16ac5c8b0686d40fad6e4e047)
Merged-In: I7d600c924b4a3e793b9a26c2852139683061a831

Bug: 279521578
Change-Id: Ib858d388aa24e4a625085804c097ad66aa179a14
2023-04-25 14:24:05 +00:00