Commit graph android_kernel_motorola_sm6375/kernel/events
Author SHA1 Message Date
Greg Kroah-Hartman
978aeb58ff This is the 5.4.295 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmhebGEACgkQONu9yGCS
 aT67mBAAqkBCrkNSqHHQpsl/YybmfDgGonfHeLkNOYp4G44Axp/oytb1bAEhg65A
 oqfTSF67Hr3xjBVEvFMHMnuFO1+xHxkKIy3LUr9o9gjS+6+rEn7U5cYkaHYPNef5
 hN/tPUwf90d2ivpAsTueUu4PegJUJTaux0VqW6PsECKJ/fRF2sdAW7NpGps4zwaw
 +gnxZ7fhWnMLDeSH4d6HAFsVB10AH4sC/WzVMGlXpiS7V8vzM7QjAj3S7NWkOjaX
 fUWmKLecRT6388V+PBH6tr7vwsbFAv83gKVENgFMPKnsfPLTKd3d81TJvWqbU5Dn
 Y+KxG1NWmIUkhlMeqDld51JJCP2JpLxSchqHvJ2TiFJs3gRdkYeQxiDfXHzRsZ+v
 8beqQufcmQFxOyUkWQLGlMR9ACva1IA7hQ4HdTqygDqcQjKcvIYGcy+29PpTBVjj
 +BNs6F8ttK6jQ19IqwhP2AeIObq/DQCtn0xRaOkfAwyODhi2nD7F191ZtmrRwAq7
 ax+hXzNIWkLhvsuG+YLuNXczYbOGKZ56mg8XI+3DQ0KNRUieznsgeXXsjkGbzivn
 uDPWkRtqO48RnZHzlLUzT0Zv7pNCWXscnHEa1LfQ7Effj3G0C74TJWLDRcfSgf0i
 +cdXwJhnHc1ztExtmuNvfk7SHEFRNhjB8Zmdd8weK6SUzH0knPE=
 =jzgM
 -----END PGP SIGNATURE-----

Merge 5.4.295 into android11-5.4-lts

Changes in 5.4.295
	tracing: Fix compilation warning on arm32
	pinctrl: armada-37xx: use correct OUTPUT_VAL register for GPIOs > 31
	pinctrl: armada-37xx: set GPIO output value before setting direction
	usb: quirks: Add NO_LPM quirk for SanDisk Extreme 55AE
	usb: storage: Ignore UAS driver for SanDisk 3.2 Gen2 storage device
	usb: usbtmc: Fix timeout value in get_stb
	thunderbolt: Do not double dequeue a configuration request
	netfilter: nft_socket: fix sk refcount leaks
	gfs2: gfs2_create_inode error handling fix
	perf/core: Fix broken throttling when max_samples_per_tick=1
	x86/cpu: Sanitize CPUID(0x80000000) output
	crypto: marvell/cesa - Handle zero-length skcipher requests
	crypto: marvell/cesa - Avoid empty transfer descriptor
	EDAC/skx_common: Fix general protection fault
	PM: wakeup: Delete space in the end of string shown by pm_show_wakelocks()
	x86/mtrr: Check if fixed-range MTRRs exist in mtrr_save_fixed_ranges()
	ACPI: OSI: Stop advertising support for "3.0 _SCP Extensions"
	spi: sh-msiof: Fix maximum DMA transfer size
	drm/vmwgfx: Add seqno waiter for sync_files
	m68k: mac: Fix macintosh_config for Mac II
	firmware: psci: Fix refcount leak in psci_dt_init
	selftests/seccomp: fix syscall_restart test for arm compat
	drm: rcar-du: Fix memory leak in rcar_du_vsps_init()
	drm/vkms: Adjust vkms_state->active_planes allocation type
	drm/tegra: rgb: Fix the unbound reference count
	f2fs: fix to do sanity check on sbi->total_valid_block_count
	net: ncsi: Fix GCPS 64-bit member variables
	wifi: rtw88: do not ignore hardware read error during DPK
	RDMA/hns: Include hnae3.h in hns_roce_hw_v2.h
	f2fs: clean up w/ fscrypt_is_bounce_page()
	netfilter: bridge: Move specific fragmented packet to slow_path instead of dropping it
	ktls, sockmap: Fix missing uncharge operation
	pinctrl: at91: Fix possible out-of-boundary access
	bpf: Fix WARN() in get_bpf_raw_tp_regs
	wifi: ath9k_htc: Abort software beacon handling if disabled
	netfilter: nf_tables: nft_fib_ipv6: fix VRF ipv4/ipv6 result discrepancy
	net: usb: aqc111: fix error handling of usbnet read calls
	net: lan743x: rename lan743x_reset_phy to lan743x_hw_reset_phy
	calipso: Don't call calipso functions for AF_INET sk.
	f2fs: use d_inode(dentry) cleanup dentry->d_inode
	f2fs: fix to correct check conditions in f2fs_cross_rename
	ARM: dts: at91: usb_a9263: fix GPIO for Dataflash chip select
	ARM: dts: at91: at91sam9263: fix NAND chip selects
	Squashfs: check return result of sb_min_blocksize
	nilfs2: add pointer check for nilfs_direct_propagate()
	nilfs2: do not propagate ENOENT error from nilfs_btree_propagate()
	bus: fsl-mc: fix double-free on mc_dev
	ARM: dts: qcom: apq8064 merge hw splinlock into corresponding syscon device
	arm64: dts: rockchip: disable unrouted USB controllers and PHY on RK3399 Puma with Haikou
	soc: aspeed: lpc: Fix impossible judgment condition
	soc: aspeed: Add NULL check in aspeed_lpc_enable_snoop()
	fbdev: core: fbcvt: avoid division by 0 in fb_cvt_hperiod()
	perf ui browser hists: Set actions->thread before calling do_zoom_thread()
	perf scripts python: exported-sql-viewer.py: Fix pattern matching with Python 3
	rpmsg: qcom_smd: Fix uninitialized return variable in __qcom_smd_send()
	mfd: exynos-lpass: Avoid calling exynos_lpass_disable() twice in exynos_lpass_remove()
	mfd: stmpe-spi: Correct the name used in MODULE_DEVICE_TABLE
	perf tests switch-tracking: Fix timestamp comparison
	perf record: Fix incorrect --user-regs comments
	rtc: sh: assign correct interrupts with DT
	rtc: Fix offset calculation for .start_secs < 0
	usb: renesas_usbhs: Reorder clock handling and power management in probe
	serial: Fix potential null-ptr-deref in mlb_usio_probe()
	vt: remove VT_RESIZE and VT_RESIZEX from vt_compat_ioctl()
	net/mlx4_en: Prevent potential integer overflow calculating Hz
	Bluetooth: L2CAP: Fix not responding with L2CAP_CR_LE_ENCRYPTION
	ice: create new Tx scheduler nodes for new queues only
	PM: sleep: Fix power.is_suspended cleanup for direct-complete devices
	do_change_type(): refuse to operate on unmounted/not ours mounts
	pmdomain: core: Fix error checking in genpd_dev_pm_attach_by_id()
	Input: synaptics-rmi4 - convert to use sysfs_emit() APIs
	Input: synaptics-rmi - fix crash with unsupported versions of F34
	NFSD: Fix ia_size underflow
	NFSD: Fix NFSv3 SETATTR/CREATE's handling of large file sizes
	scsi: iscsi: Fix incorrect error path labels for flashnode operations
	net_sched: sch_sfq: fix a potential crash on gso_skb handling
	i40e: return false from i40e_reset_vf if reset is in progress
	i40e: retry VFLR handling if there is ongoing VF reset
	net/mlx5: Wait for inactive autogroups
	net/mlx5: Fix return value when searching for existing flow group
	net_sched: prio: fix a race in prio_tune()
	net_sched: red: fix a race in __red_change()
	net_sched: tbf: fix a race in tbf_change()
	net: mdio: C22 is now optional, EOPNOTSUPP if not provided
	x86/boot/compressed: prefer cc-option for CFLAGS additions
	MIPS: Move '-Wa,-msoft-float' check from as-option to cc-option
	drm/amd/display: Do not add '-mhard-float' to dml_ccflags for clang
	drm/amd/display: Do not add '-mhard-float' to dcn2{1,0}_resource.o for clang
	net/mdiobus: Fix potential out-of-bounds read/write access
	fs/filesystems: Fix potential unsigned integer underflow in fs_name()
	usb: Flush altsetting 0 endpoints before reinitializating them after reset.
	xen/arm: call uaccess_ttbr0_enable for dm_op hypercall
	calipso: unlock rcu before returning -EAFNOSUPPORT
	net: usb: aqc111: debug info before sanitation
	configfs: Do not override creating attribute file failure in populate_attrs()
	gfs2: move msleep to sleepable context
	wifi: p54: prevent buffer-overflow in p54_rx_eeprom_readback()
	nfsd: nfsd4_spo_must_allow() must check this is a v4 compound request
	wifi: rtlwifi: disable ASPM for RTL8723BE with subsystem ID 11ad:1723
	media: gspca: Add error handling for stv06xx_read_sensor()
	media: v4l2-dev: fix error handling in __video_register_device()
	ARM: 9447/1: arm/memremap: fix arch_memremap_can_ram_remap()
	ata: pata_via: Force PIO for ATAPI devices on VT6415/VT6330
	bus: fsl-mc: do not add a device-link for the UAPI used DPMCP device
	ext4: inline: fix len overflow in ext4_prepare_inline_data
	ext4: fix calculation of credits for extent tree modification
	Input: ims-pcu - check record size in ims_pcu_flash_firmware()
	f2fs: prevent kernel warning due to negative i_nlink from corrupted image
	NFC: nci: uart: Set tty->disc_data only in success path
	EDAC/altera: Use correct write width with the INTTEST register
	fbdev: Fix fb_set_var to prevent null-ptr-deref in fb_videomode_to_var
	vgacon: Add check for vc_origin address range in vgacon_scroll()
	parisc: fix building with gcc-15
	ipc: fix to protect IPCS lookups using RCU
	mm: fix ratelimit_pages update error in dirty_ratio_handler()
	mtd: rawnand: sunxi: Add randomizer configuration in sunxi_nfc_hw_ecc_write_chunk
	mtd: nand: sunxi: Add randomizer configuration before randomizer enable
	dm-mirror: fix a tiny race condition
	ftrace: Fix UAF when lookup kallsym after ftrace disabled
	net: ch9200: fix uninitialised access during mii_nway_restart
	staging: iio: ad5933: Correct settling cycles encoding per datasheet
	mips: Add -std= flag specified in KBUILD_CFLAGS to vdso CFLAGS
	regulator: max14577: Add error check for max14577_read_reg()
	uio_hv_generic: Use correct size for interrupt and monitor pages
	PCI: Add ACS quirk for Loongson PCIe
	PCI: Fix lock symmetry in pci_slot_unlock()
	iio: adc: ad7606_spi: fix reg write value mask
	ACPICA: fix acpi operand cache leak in dswstate.c
	ACPICA: Avoid sequence overread in call to strncmp()
	ACPICA: fix acpi parse and parseext cache leaks
	power: supply: bq27xxx: Retrieve again when busy
	PM: runtime: fix denying of auto suspend in pm_suspend_timer_fn()
	ACPI: battery: negate current when discharging
	drm/amdgpu/gfx6: fix CSIB handling
	sunrpc: update nextcheck time when adding new cache entries
	drm/bridge: analogix_dp: Add irq flag IRQF_NO_AUTOEN instead of calling disable_irq()
	drm/msm/hdmi: add runtime PM calls to DDC transfer function
	media: uapi: v4l: Fix V4L2_TYPE_IS_OUTPUT condition
	drm/amd/display: Add NULL pointer checks in dm_force_atomic_commit()
	drm/msm/a6xx: Increase HFI response timeout
	drm/amdgpu/gfx10: fix CSIB handling
	drm/amdgpu/gfx7: fix CSIB handling
	jfs: fix array-index-out-of-bounds read in add_missing_indices
	drm/amdgpu/gfx8: fix CSIB handling
	drm/amdgpu/gfx9: fix CSIB handling
	jfs: Fix null-ptr-deref in jfs_ioc_trim
	drm/amdkfd: Set SDMA_RLCx_IB_CNTL/SWITCH_INSIDE_IB
	media: tc358743: ignore video while HPD is low
	media: platform: exynos4-is: Add hardware sync wait to fimc_is_hw_change_mode()
	nios2: force update_mmu_cache on spurious tlb-permission--related pagefaults
	cpufreq: Force sync policy boost with global boost on sysfs update
	net: macb: Check return value of dma_set_mask_and_coherent()
	i2c: designware: Invoke runtime suspend on quick slave re-registration
	emulex/benet: correct command version selection in be_cmd_get_stats()
	sctp: Do not wake readers in __sctp_write_space()
	net: dlink: add synchronization for stats update
	tcp: always seek for minimal rtt in tcp_rcv_rtt_update()
	tcp: fix initial tp->rcvq_space.space value for passive TS enabled flows
	ipv4/route: Use this_cpu_inc() for stats on PREEMPT_RT
	pinctrl: armada-37xx: propagate error from armada_37xx_pmx_set_by_name()
	pinctrl: armada-37xx: propagate error from armada_37xx_gpio_get_direction()
	pinctrl: armada-37xx: propagate error from armada_37xx_pmx_gpio_set_direction()
	pinctrl: armada-37xx: propagate error from armada_37xx_gpio_get()
	net: mlx4: add SOF_TIMESTAMPING_TX_SOFTWARE flag when getting ts info
	wifi: mac80211: do not offer a mesh path if forwarding is disabled
	clk: rockchip: rk3036: mark ddrphy as critical
	vxlan: Do not treat dst cache initialization errors as fatal
	scsi: lpfc: Use memcpy() for BIOS version
	sock: Correct error checking condition for (assign|release)_proto_idx()
	i40e: fix MMIO write access to an invalid page in i40e_clear_hw
	watchdog: da9052_wdt: respect TWDMIN
	bus: fsl-mc: increase MC_CMD_COMPLETION_TIMEOUT_MS value
	ARM: OMAP2+: Fix l4ls clk domain handling in STANDBY
	tee: Prevent size calculation wraparound on 32-bit kernels
	Revert "bus: ti-sysc: Probe for l4_wkup and l4_cfg interconnect devices first"
	platform: Add Surface platform directory
	platform/x86: dell_rbu: Stop overwriting data buffer
	powerpc/eeh: Fix missing PE bridge reconfiguration during VFIO EEH recovery
	Revert "x86/bugs: Make spectre user default depend on MITIGATION_SPECTRE_V2" on v6.6 and older
	drivers/rapidio/rio_cm.c: prevent possible heap overwrite
	jffs2: check that raw node were preallocated before writing summary
	jffs2: check jffs2_prealloc_raw_node_refs() result in few other places
	scsi: storvsc: Increase the timeouts to storvsc_timeout
	scsi: s390: zfcp: Ensure synchronous unit_add
	selinux: fix selinux_xfrm_alloc_user() to set correct ctx_len
	atm: Revert atm_account_tx() if copy_from_iter_full() fails.
	HID: usbhid: Eliminate recurrent out-of-bounds bug in usbhid_parse()
	Input: sparcspkr - avoid unannotated fall-through
	ALSA: hda/intel: Add Thinkpad E15 to PM deny list
	ALSA: hda/realtek: enable headset mic on Latitude 5420 Rugged
	erofs: remove unused trace event erofs_destroy_inode
	drm/nouveau/bl: increase buffer size to avoid truncate warning
	hwmon: (occ) fix unaligned accesses
	aoe: clean device rq_list in aoedev_downdev()
	wifi: carl9170: do not ping device which has failed to load firmware
	mpls: Use rcu_dereference_rtnl() in mpls_route_input_rcu().
	atm: atmtcp: Free invalid length skb in atmtcp_c_send().
	tcp: fix tcp_packet_delayed() for tcp_is_non_sack_preventing_reopen() behavior
	tipc: fix null-ptr-deref when acquiring remote ip of ethernet bearer
	calipso: Fix null-ptr-deref in calipso_req_{set,del}attr().
	net: atm: add lec_mutex
	net: atm: fix /proc/net/atm/lec handling
	ARM: dts: am335x-bone-common: Add GPIO PHY reset on revision C3 board
	ARM: dts: am335x-bone-common: Increase MDIO reset deassert time
	ARM: dts: am335x-bone-common: Increase MDIO reset deassert delay to 50ms
	posix-cpu-timers: fix race between handle_posix_cpu_timers() and posix_cpu_timer_del()
	xprtrdma: fix pointer derefs in error cases of rpcrdma_ep_create
	rtc: Improve performance of rtc_time64_to_tm(). Add tests.
	rtc: Make rtc_time64_to_tm() support dates before 1970
	mm/huge_memory: fix dereferencing invalid pmd migration entry
	jbd2: fix data-race and null-ptr-deref in jbd2_journal_dirty_metadata()
	rtc: test: Fix invalid format specifier.
	s390/pci: Fix __pcilg_mio_inuser() inline assembly
	perf: Fix sample vs do_exit()
	arm64/ptrace: Fix stack-out-of-bounds read in regs_get_kernel_stack_nth()
	scsi: qedf: Use designated initializer for struct qed_fcoe_cb_ops
	Linux 5.4.295

Change-Id: I44ee88afdff6b4865efac55635f7529a2d9715e8
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-06-30 08:05:33 +00:00
Peter Zijlstra
7b8f3c7217 perf: Fix sample vs do_exit()
[ Upstream commit 4f6fc782128355931527cefe3eb45338abd8ab39 ]

Baisheng Gao reported an ARM64 crash, which Mark decoded as being a
synchronous external abort -- most likely due to trying to access
MMIO in bad ways.

The crash further shows perf trying to do a user stack sample while in
exit_mmap()'s tlb_finish_mmu() -- i.e. while tearing down the address
space it is trying to access.

It turns out that we stop perf after we tear down the userspace mm; a
receipie for disaster, since perf likes to access userspace for
various reasons.

Flip this order by moving up where we stop perf in do_exit().

Additionally, harden PERF_SAMPLE_CALLCHAIN and PERF_SAMPLE_STACK_USER
to abort when the current task does not have an mm (exit_mm() makes
sure to set current->mm = NULL; before commencing with the actual
teardown). Such that CPU wide events don't trip on this same problem.

Fixes: c5ebcedb56 ("perf: Add ability to attach user stack dump to sample")
Reported-by: Baisheng Gao <baisheng.gao@unisoc.com>
Suggested-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20250605110815.GQ39944@noisy.programming.kicks-ass.net
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-06-27 11:02:58 +01:00
Qing Wang
5b4da569a2 perf/core: Fix broken throttling when max_samples_per_tick=1
[ Upstream commit f51972e6f8b9a737b2b3eb588069acb538fa72de ]

According to the throttling mechanism, the pmu interrupts number can not
exceed the max_samples_per_tick in one tick. But this mechanism is
ineffective when max_samples_per_tick=1, because the throttling check is
skipped during the first interrupt and only performed when the second
interrupt arrives.

Perhaps this bug may cause little influence in one tick, but if in a
larger time scale, the problem can not be underestimated.

When max_samples_per_tick = 1:
Allowed-interrupts-per-second max-samples-per-second  default-HZ  ARCH
200                           100                     100         X86
500                           250                     250         ARM64
...
Obviously, the pmu interrupt number far exceed the user's expect.

Fixes: e050e3f0a7 ("perf: Fix broken interrupt rate throttling")
Signed-off-by: Qing Wang <wangqing7171@gmail.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20250405141635.243786-3-wangqing7171@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-06-27 11:02:44 +01:00
Greg Kroah-Hartman
9b78f083cb This is the 5.4.292 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmf3uc8ACgkQONu9yGCS
 aT7cOA/+IMZpVcP8BeutEqLl9O0SXf4QS9LT8u/eQKy3b26p8otQXOkElhGmchBv
 cvb7+ZuJQGUcjfhW0CsHGx/vKfDz3qbbLaXH/F0sRvZxkYApX35pkSDOtcE3jAHn
 klQejHzoFlom8d951VUpQukwGXPoVfPExdXMWNg4RCrn1pcDnb3JjmEyhDRu5Sna
 fA1JeQ54UReNPUnXOHyixy+xoOLGBdikqVzV8SIqKNuzBloXIbSA831BGocFffrW
 xng8XIemuCEuK552/Ex8AJfUiY/q6XGH2OYy46g4oEG85xoyseGlQJqsnziOxDGX
 VYbdYGmtTZB7Tv2fwjpKsyluexoQEXmxVbu8CuGn/X0B1d48tRl40ROBMoAnOOhZ
 j7gjZG9TK9G7+fQSEpS8bLwknRndQWlbxSRMVEGAqIDcxF09+Hkkycu82siCtKz2
 JYQnKsv7We/m7EI+3uAh50zZrLU6NL+wVnkGlQy17RTQYYshZpSs6GYvB4OjJ5vx
 OXovZA2IKDnWA336viL265etHsUf2agNIyWiMr/5Tp4RgirN2WSQubZjNhp/FdjR
 e3MxVPrUxBD/QyGs2KuZo/rA/SuYDtMxdoogrYQO1cbpvBCcsyYvnczhAUcjVgKq
 C+iGTOAs+EEHWYol/CWuOJAkG/0O7Uj2U+cDdQQgeKD9SCSzohA=
 =wRcs
 -----END PGP SIGNATURE-----

Merge 5.4.292 into android11-5.4-lts

Changes in 5.4.292
	vlan: fix memory leak in vlan_newlink()
	clockevents/drivers/i8253: Fix stop sequence for timer 0
	sched/isolation: Prevent boot crash when the boot CPU is nohz_full
	Revert "sctp: sysctl: cookie_hmac_alg: avoid using current->nsproxy"
	Revert "sctp: sysctl: auth_enable: avoid using current->nsproxy"
	sctp: sysctl: cookie_hmac_alg: avoid using current->nsproxy
	sctp: sysctl: auth_enable: avoid using current->nsproxy
	pinctrl: bcm281xx: Fix incorrect regmap max_registers value
	netpoll: Fix use correct return type for ndo_start_xmit()
	netpoll: remove dev argument from netpoll_send_skb_on_dev()
	netpoll: move netpoll_send_skb() out of line
	netpoll: netpoll_send_skb() returns transmit status
	netpoll: hold rcu read lock in __netpoll_send_skb()
	drivers/hv: Replace binary semaphore with mutex
	Drivers: hv: vmbus: Don't release fb_mmio resource in vmbus_free_mmio()
	netfilter: nf_conncount: Fully initialize struct nf_conncount_tuple in insert_tree()
	ipvs: prevent integer overflow in do_ip_vs_get_ctl()
	net_sched: Prevent creation of classes with TC_H_ROOT
	netfilter: nft_exthdr: fix offset with ipv4_find_option()
	net/mlx5e: Prevent bridge link show failure for non-eswitch-allowed devices
	nvme-fc: go straight to connecting state when initializing
	hrtimers: Mark is_migration_base() with __always_inline
	powercap: call put_device() on an error path in powercap_register_control_type()
	iscsi_ibft: Fix UBSAN shift-out-of-bounds warning in ibft_attr_show_nic()
	scsi: qla1280: Fix kernel oops when debug level > 2
	ACPI: resource: IRQ override for Eluktronics MECH-17
	HID: intel-ish-hid: fix the length of MNG_SYNC_FW_CLOCK in doorbell
	HID: ignore non-functional sensor in HP 5MP Camera
	s390/cio: Fix CHPID "configure" attribute caching
	ASoC: rsnd: don't indicate warning on rsnd_kctrl_accept_runtime()
	nvmet-rdma: recheck queue state is LIVE in state lock in recv done
	sctp: Fix undefined behavior in left shift operation
	nvme: only allow entering LIVE from CONNECTING state
	fuse: don't truncate cached, mutated symlink
	x86/irq: Define trace events conditionally
	drm/nouveau: Do not override forced connector status
	block: fix 'kmem_cache of name 'bio-108' already exists'
	USB: serial: ftdi_sio: add support for Altera USB Blaster 3
	USB: serial: option: add Telit Cinterion FE990B compositions
	USB: serial: option: fix Telit Cinterion FE990A name
	USB: serial: option: match on interface class for Telit FN990B
	x86/microcode/AMD: Fix out-of-bounds on systems with CPU-less NUMA nodes
	drm/atomic: Filter out redundant DPMS calls
	drm/amd/display: Assign normalized_pix_clk when color depth = 14
	qlcnic: fix memory leak issues in qlcnic_sriov_common.c
	drm/gma500: Add NULL check for pci_gfx_root in mid_get_vbt_data()
	ASoC: codecs: wm0010: Fix error handling path in wm0010_spi_probe()
	i2c: ali1535: Fix an error handling path in ali1535_probe()
	i2c: ali15x3: Fix an error handling path in ali15x3_probe()
	i2c: sis630: Fix an error handling path in sis630_probe()
	firmware: imx-scu: fix OF node leak in .probe()
	xfrm_output: Force software GSO only in tunnel mode
	RDMA/bnxt_re: Avoid clearing VLAN_ID mask in modify qp path
	RDMA/hns: Fix wrong value of max_sge_rd
	Bluetooth: Fix error code in chan_alloc_skb_cb()
	ipv6: Fix memleak of nhc_pcpu_rth_output in fib_check_nh_v6_gw().
	ipv6: Set errno after ip_fib_metrics_init() in ip6_route_info_create().
	net: atm: fix use after free in lec_send()
	net/neighbor: add missing policy for NDTPA_QUEUE_LENBYTES
	i2c: omap: fix IRQ storms
	drm/v3d: Don't run jobs that have errors flagged in its fence
	mmc: atmel-mci: Add missing clk_disable_unprepare()
	ARM: shmobile: smp: Enforce shmobile_smp_* alignment
	batman-adv: Ignore own maximum aggregation size during RX
	drm/radeon: fix uninitialized size issue in radeon_vce_cs_parse()
	ALSA: usb-audio: Add quirk for Plantronics headsets to fix control names
	HID: hid-plantronics: Add mic mute mapping and generalize quirks
	atm: Fix NULL pointer dereference
	ARM: 9350/1: fault: Implement copy_from_kernel_nofault_allowed()
	ARM: 9351/1: fault: Add "cut here" line for prefetch aborts
	ARM: Remove address checking for MMUless devices
	netfilter: socket: Lookup orig tuple for IPv6 SNAT
	counter: stm32-lptimer-cnt: fix error handling when enabling
	tty: serial: 8250: Add some more device IDs
	net: usb: qmi_wwan: add Telit Cinterion FN990B composition
	net: usb: qmi_wwan: add Telit Cinterion FE990B composition
	net: usb: usbnet: restore usb%d name exception for local mac addresses
	memstick: rtsx_usb_ms: Fix slab-use-after-free in rtsx_usb_ms_drv_remove
	serial: 8250_dma: terminate correct DMA in tx_dma_flush()
	x86/mm/pat: cpa-test: fix length for CPA_ARRAY test
	cpufreq: governor: Fix negative 'idle_time' handling in dbs_update()
	x86/fpu: Avoid copying dynamic FP state from init_task in arch_dup_task_struct()
	x86/platform: Only allow CONFIG_EISA for 32-bit
	selinux: Chain up tool resolving errors in install_policy.sh
	EDAC/ie31200: Fix the size of EDAC_MC_LAYER_CHIP_SELECT layer
	EDAC/ie31200: Fix the DIMM size mask for several SoCs
	EDAC/ie31200: Fix the error path order of ie31200_init()
	thermal: int340x: Add NULL check for adev
	PM: sleep: Fix handling devices with direct_complete set on errors
	lockdep: Don't disable interrupts on RT in disable_irq_nosync_lockdep.*()
	perf/ring_buffer: Allow the EPOLLRDNORM flag for poll
	ALSA: hda/realtek: Always honor no_shutup_pins
	drm/mediatek: mtk_hdmi: Fix typo for aud_sampe_size member
	PCI/ASPM: Fix link state exit during switch upstream function removal
	PCI/portdrv: Only disable pciehp interrupts early when needed
	PCI: Remove stray put_device() in pci_register_host_bridge()
	PCI: pciehp: Don't enable HPIE when resuming in poll mode
	fbdev: au1100fb: Move a variable assignment behind a null pointer check
	mdacon: rework dependency list
	fbdev: sm501fb: Add some geometry checks.
	clk: amlogic: gxbb: drop incorrect flag on 32k clock
	bpf: Use preempt_count() directly in bpf_send_signal_common()
	lib: 842: Improve error handling in sw842_compress()
	pinctrl: renesas: rza2: Fix missing of_node_put() call
	clk: rockchip: rk3328: fix wrong clk_ref_usb3otg parent
	IB/mad: Check available slots before posting receive WRs
	clk: amlogic: g12b: fix cluster A parent data
	clk: amlogic: gxbb: drop non existing 32k clock parent
	clk: amlogic: g12a: fix mmc A peripheral clock
	x86/entry: Fix ORC unwinder for PUSH_REGS with save_ret=1
	power: supply: max77693: Fix wrong conversion of charge input threshold value
	RDMA/mlx5: Fix mlx5_poll_one() cur_qp update flow
	mfd: sm501: Switch to BIT() to mitigate integer overflows
	x86/dumpstack: Fix inaccurate unwinding from exception stacks due to misplaced assignment
	isofs: fix KMSAN uninit-value bug in do_isofs_readdir()
	coresight: catu: Fix number of pages while using 64k pages
	iio: accel: mma8452: Ensure error return on failure to matching oversampling ratio
	perf units: Fix insufficient array space
	kexec: initialize ELF lowest address to ULONG_MAX
	ocfs2: validate l_tree_depth to avoid out-of-bounds access
	perf python: Fixup description of sample.id event member
	perf python: Decrement the refcount of just created event on failure
	perf python: Check if there is space to copy all the event
	fs/procfs: fix the comment above proc_pid_wchan()
	objtool, media: dib8000: Prevent divide-by-zero in dib8000_set_dds()
	ring-buffer: Fix bytes_dropped calculation issue
	octeontx2-af: Fix mbox INTR handler when num VFs > 64
	sched/smt: Always inline sched_smt_active()
	wifi: iwlwifi: fw: allocate chained SG tables for dump
	affs: generate OFS sequence numbers starting at 1
	affs: don't write overlarge OFS data block size fields
	sched/deadline: Use online cpus for validating runtime
	locking/semaphore: Use wake_q to wake up processes outside lock critical section
	can: statistics: use atomic access in hot path
	hwmon: (nct6775-core) Fix out of bounds access for NCT679{8,9}
	spufs: fix a leak on spufs_new_file() failure
	spufs: fix a leak in spufs_create_context()
	ntb_hw_switchtec: Fix shift-out-of-bounds in switchtec_ntb_mw_set_trans
	ntb: intel: Fix using link status DB's
	netlabel: Fix NULL pointer exception caused by CALIPSO on IPv4 sockets
	net_sched: skbprio: Remove overly strict queue assertions
	vsock: avoid timeout during connect() if the socket is closing
	ipv6: fix omitted netlink attributes when using RTEXT_FILTER_SKIP_STATS
	net: dsa: mv88e6xxx: propperly shutdown PPU re-enable timer on destroy
	arcnet: Add NULL check in com20020pci_probe()
	can: flexcan: only change CAN state when link up in system PM
	ntb_perf: Delete duplicate dmaengine_unmap_put() call in perf_copy_chunk()
	x86/tsc: Always save/restore TSC sched_clock() on suspend/resume
	x86/mm: Fix flush_tlb_range() when used for zapping normal PMDs
	ACPI: resource: Skip IRQ override on ASUS Vivobook 14 X1404VAP
	mmc: sdhci-pxav3: set NEED_RSP_BUSY capability
	tracing: Fix use-after-free in print_graph_function_flags during tracer switching
	jfs: fix slab-out-of-bounds read in ea_get()
	jfs: add index corruption check to DT_GETPAGE()
	Linux 5.4.292

Change-Id: I9386a675acdf4384f0d612b6fc80c59bd6bb739f
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-04-11 08:16:05 +00:00
Tao Chen
fc50ed312c perf/ring_buffer: Allow the EPOLLRDNORM flag for poll
[ Upstream commit c96fff391c095c11dc87dab35be72dee7d217cde ]

The poll man page says POLLRDNORM is equivalent to POLLIN. For poll(),
it seems that if user sets pollfd with POLLRDNORM in userspace, perf_poll
will not return until timeout even if perf_output_wakeup called,
whereas POLLIN returns.

Fixes: 76369139ce ("perf: Split up buffer handling from core code")
Signed-off-by: Tao Chen <chen.dylane@linux.dev>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Link: https://lore.kernel.org/r/20250314030036.2543180-1-chen.dylane@linux.dev
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-04-10 14:29:40 +02:00
Greg Kroah-Hartman
d6a7c6fab0 This is the 5.4.291 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmfSxSAACgkQONu9yGCS
 aT4xFxAAlZPsz8ZaSZdkyMSpr9lnz1P7Z/ONSc4f2j9dURdLz+HfP1jwQHRzK/jd
 JDtO9c9eg77/3UjKIyszTeHlaPbyA5bKsNF2zE+UjonSXzRNvsASmZW7Wee770Rf
 Yt6ZOn2tbDPwRfEsUILhKugNHkoZABSDUj+3FCbPQm5XzaTNeB0ofjWaRxbop5qv
 +GJnaFKwtu9yOWRIvRCQ5tE9zxW39xt767uuOBmsN1C6YECx5SAtgXXPQrpjCJEL
 TY09ATSAqbTjxdHDsQGBL1oe2XEXHJmD4hBKY/FysXuq2i+oFxXEavk7Eq6dR34M
 CoDKbeMXyTL3XnZ6iOzcqsyB/9hWHqRqvkqJI7fOqeJUWydRy7xy3Arf93M3Occ1
 nGyJ1k51Wl19TaOE9G4hjWtBwBVx0rPtMIBOuWwBU1KP13R3pbPvUU41GKTEtw78
 7ruTFycqRbU3uxYUoyV/XEUqLoWEuPyGk6DRCZy8rls0jLXnRzeKLJ6FxfhwBbrP
 B/NHcI6yUGwxpIPhwFJxwy+H/0eprxxBKrqldJBK3NkI1IyB2azldHWmdMdJKUiO
 e7Gxqi2SFOyjTRYb2GSgD25nQMbXyarwyS3vQxDb8XCDuZw2KJCBoD6OCTbtEeMZ
 pytJMQrM/GM6+tlqAWZqMZaNwStA4FnJzBL17fLmoTIWEpdmy0o=
 =LuVk
 -----END PGP SIGNATURE-----

Merge 5.4.291 into android11-5.4-lts

Changes in 5.4.291
	perf cs-etm: Add missing variable in cs_etm__process_queues()
	udf: Fix use of check_add_overflow() with mixed type arguments
	overflow: Add __must_check attribute to check_*() helpers
	overflow: Correct check_shl_overflow() comment
	overflow: Allow mixed type arguments
	afs: Fix directory format encoding struct
	nbd: don't allow reconnect after disconnect
	partitions: ldm: remove the initial kernel-doc notation
	drm/etnaviv: Fix page property being used for non writecombine buffers
	drm/amdgpu: Fix potential NULL pointer dereference in atomctrl_get_smc_sclk_range_table
	ipmi: ipmb: Add check devm_kasprintf() returned value
	wifi: rtlwifi: do not complete firmware loading needlessly
	rtlwifi: rtl8192se Rename RT_TRACE to rtl_dbg
	wifi: rtlwifi: rtl8192se: rise completion of firmware loading as last step
	wifi: rtlwifi: usb: fix workqueue leak when probe fails
	dt-bindings: mmc: controller: clarify the address-cells description
	rtlwifi: replace usage of found with dedicated list iterator variable
	wifi: rtlwifi: remove unused timer and related code
	wifi: rtlwifi: remove unused dualmac control leftovers
	wifi: rtlwifi: remove unused check_buddy_priv
	wifi: rtlwifi: fix memory leaks and invalid access at probe error path
	wifi: rtlwifi: pci: wait for firmware loading before releasing memory
	cpupower: fix TSC MHz calculation
	team: prevent adding a device which is already a team device lower
	regulator: of: Implement the unwind path of of_regulator_match()
	wifi: wlcore: fix unbalanced pm_runtime calls
	selftests/harness: Display signed values correctly
	selftests: harness: fix printing of mismatch values in __EXPECT()
	clk: analogbits: Fix incorrect calculation of vco rate delta
	net: let net.core.dev_weight always be non-zero
	net/mlxfw: Drop hard coded max FW flash image size
	net: sched: Disallow replacing of child qdisc from one parent to another
	tools/testing/selftests/bpf/test_tc_tunnel.sh: Fix wait for server bind
	ASoC: sun4i-spdif: Add clock multiplier settings
	perf header: Fix one memory leakage in process_bpf_btf()
	perf header: Fix one memory leakage in process_bpf_prog_info()
	ktest.pl: Remove unused declarations in run_bisect_test function
	padata: fix sysfs store callback check
	perf top: Don't complain about lack of vmlinux when not resolving some kernel samples
	perf report: Fix misleading help message about --demangle
	bpf: Send signals asynchronously if !preemptible
	RDMA/mlx4: Avoid false error about access to uninitialized gids array
	rdma/cxgb4: Prevent potential integer overflow on 32bit
	arm64: dts: mediatek: mt8173-evb: Drop regulator-compatible property
	arm64: dts: mediatek: mt8173-evb: Fix MT6397 PMIC sub-node names
	ARM: dts: mediatek: mt7623: fix IR nodename
	fbdev: omapfb: Fix an OF node leak in dss_of_port_get_parent_device()
	media: rc: iguanair: handle timeouts
	media: lmedm04: Use GFP_KERNEL for URB allocation/submission.
	media: lmedm04: Handle errors for lme2510_int_read
	PCI: endpoint: Destroy the EPC device in devm_pci_epc_destroy()
	media: mipi-csis: Add check for clk_enable()
	media: camif-core: Add check for clk_enable()
	media: uvcvideo: Propagate buf->error to userspace
	staging: media: imx: fix OF node leak in imx_media_add_of_subdevs()
	scsi: mpt3sas: Set ioc->manu_pg11.EEDPTagMode directly to 1
	scsi: ufs: bsg: Delete bsg_dev when setting up bsg fails
	ocfs2: mark dquot as inactive if failed to start trans while releasing dquot
	module: Extend the preempt disabled section in dereference_symbol_descriptor().
	dmaengine: ti: edma: fix OF node reference leaks in edma_driver
	rtc: pcf85063: fix potential OOB write in PCF85063 NVMEM read
	ubifs: skip dumping tnc tree when zroot is null
	net: fec: implement TSO descriptor cleanup
	ipmr: do not call mr_mfc_uses_dev() for unres entries
	PM: hibernate: Add error handling for syscore_suspend()
	net: rose: fix timer races against user threads
	net: davicom: fix UAF in dm9000_drv_remove
	perf trace: Fix runtime error of index out of bounds
	vsock: Allow retrying on connect() failure
	net: sh_eth: Fix missing rtnl lock in suspend/resume path
	genksyms: fix memory leak when the same symbol is added from source
	genksyms: fix memory leak when the same symbol is read from *.symref file
	hexagon: fix using plain integer as NULL pointer warning in cmpxchg
	hexagon: Fix unbalanced spinlock in die()
	NFSD: Reset cb_seq_status after NFS4ERR_DELAY
	ktest.pl: Check kernelrelease return in get_version
	drivers/card_reader/rtsx_usb: Restore interrupt based detection
	usb: typec: tcpm: set SRC_SEND_CAPABILITIES timeout to PD_T_SENDER_RESPONSE
	HID: core: Fix assumption that Resolution Multipliers must be in Logical Collections
	media: uvcvideo: Fix double free in error path
	usb: gadget: f_tcm: Don't free command immediately
	btrfs: output the reason for open_ctree() failure
	btrfs: fix use-after-free when attempting to join an aborted transaction
	btrfs: convert BUG_ON in btrfs_reloc_cow_block() to proper error handling
	sched: Don't try to catch up excess steal time.
	x86/amd_nb: Restrict init function to AMD-based systems
	printk: Fix signed integer overflow when defining LOG_BUF_LEN_MAX
	tun: fix group permission check
	mmc: core: Respect quirk_max_rate for non-UHS SDIO card
	wifi: brcmsmac: add gain range check to wlc_phy_iqcal_gainparams_nphy()
	tomoyo: don't emit warning in tomoyo_write_control()
	mfd: lpc_ich: Add another Gemini Lake ISA bridge PCI device-id
	HID: Wacom: Add PCI Wacom device support
	APEI: GHES: Have GHES honor the panic= setting
	x86/mm: Don't disable PCID when INVLPG has been fixed by microcode
	spi-mxs: Fix chipselect glitch
	nilfs2: move page release outside of nilfs_delete_entry and nilfs_set_link
	nilfs2: eliminate staggered calls to kunmap in nilfs_rename
	nilfs2: handle errors that nilfs_prepare_chunk() may return
	media: uvcvideo: Only save async fh if success
	media: uvcvideo: Remove dangling pointers
	sched: sch_cake: add bounds checks to host bulk flow fairness counts
	kbuild: userprogs: use correct lld when linking through clang
	tasklet: Introduce new initialization API
	net: usb: rtl8150: use new tasklet API
	net: usb: rtl8150: enable basic endpoint checking
	usb: xhci: Add timeout argument in address_device USB HCD callback
	usb: xhci: Fix NULL pointer dereference on certain command aborts
	nvme: handle connectivity loss in nvme_set_queue_count
	firmware: iscsi_ibft: fix ISCSI_IBFT Kconfig entry
	gpu: drm_dp_cec: fix broken CEC adapter properties check
	tg3: Disable tg3 PCIe AER on system reboot
	udp: gso: do not drop small packets when PMTU reduces
	net: rose: lock the socket in rose_bind()
	netem: Update sch->q.qlen before qdisc_tree_reduce_backlog()
	tun: revert fix group permission check
	cpufreq: s3c64xx: Fix compilation warning
	leds: lp8860: Write full EEPROM, not only half of it
	s390/futex: Fix FUTEX_OP_ANDN implementation
	m68k: vga: Fix I/O defines
	binfmt_flat: Fix integer overflow bug on 32 bit systems
	arm64: dts: rockchip: increase gmac rx_delay on rk3399-puma
	KVM: Explicitly verify target vCPU is online in kvm_get_vcpu()
	KVM: s390: vsie: fix some corner-cases when grabbing vsie pages
	drm/komeda: Add check for komeda_get_layer_fourcc_list()
	Bluetooth: L2CAP: handle NULL sock pointer in l2cap_sock_alloc
	clk: qcom: clk-alpha-pll: fix alpha mode configuration
	clk: qcom: clk-rpmh: prevent integer overflow in recalc_rate
	perf bench: Fix undefined behavior in cmpworker()
	of: Correct child specifier used as input of the 2nd nexus node
	of: Fix of_find_node_opts_by_path() handling of alias+path+options
	of: reserved-memory: Fix using wrong number of cells to get property 'alignment'
	HID: hid-sensor-hub: don't use stale platform-data on remove
	wifi: brcmfmac: fix NULL pointer dereference in brcmf_txfinalize()
	usb: gadget: f_tcm: Translate error to sense
	usb: gadget: f_tcm: Decrement command ref count on cleanup
	usb: gadget: f_tcm: ep_autoconfig with fullspeed endpoint
	usb: gadget: f_tcm: Don't prepare BOT write request twice
	soc: qcom: socinfo: Avoid out of bounds read of serial number
	serial: sh-sci: Drop __initdata macro for port_cfg
	serial: sh-sci: Do not probe the serial port if its slot in sci_ports[] is in use
	powerpc/pseries/eeh: Fix get PE state translation
	kbuild: Move -Wenum-enum-conversion to W=2
	soc: qcom: smem_state: fix missing of_node_put in error path
	media: ov5640: fix get_light_freq on auto
	media: uvcvideo: Fix event flags in uvc_ctrl_send_events
	media: uvcvideo: Remove redundant NULL assignment
	crypto: qce - fix goto jump in error path
	crypto: qce - unregister previously registered algos in error path
	nvmem: core: improve range check for nvmem_cell_write()
	vfio/platform: check the bounds of read/write syscalls
	ocfs2: fix incorrect CPU endianness conversion causing mount failure
	ocfs2: handle a symlink read error correctly
	nilfs2: fix possible int overflows in nilfs_fiemap()
	NFC: nci: Add bounds checking in nci_hci_create_pipe()
	mtd: onenand: Fix uninitialized retlen in do_otp_read()
	misc: fastrpc: Fix registered buffer page address
	net/ncsi: wait for the last response to Deselect Package before configuring channel
	ptp: Ensure info->enable callback is always set
	MIPS: ftrace: Declare ftrace_get_parent_ra_addr() as static
	ocfs2: check dir i_size in ocfs2_find_entry
	HID: multitouch: Add NULL check in mt_input_configured
	ndisc: ndisc_send_redirect() must use dev_get_by_index_rcu()
	vrf: use RCU protection in l3mdev_l3_out()
	team: better TEAM_OPTION_TYPE_STRING validation
	arm64: cacheinfo: Avoid out-of-bounds write to cacheinfo array
	gpio: bcm-kona: Fix GPIO lock/unlock for banks above bank 0
	gpio: bcm-kona: Make sure GPIO bits are unlocked when requesting IRQ
	gpio: bcm-kona: Add missing newline to dev_err format string
	xen: remove a confusing comment on auto-translated guest I/O
	x86/xen: allow larger contiguous memory regions in PV guests
	media: cxd2841er: fix 64-bit division on gcc-9
	vfio/pci: Enable iowrite64 and ioread64 for vfio pci
	Grab mm lock before grabbing pt lock
	orangefs: fix a oob in orangefs_debug_write
	ASoC: Intel: bytcr_rt5640: Add DMI quirk for Vexia Edu Atla 10 tablet 5V
	batman-adv: fix panic during interface removal
	usb: roles: set switch registered flag early on
	usb: gadget: udc: renesas_usb3: Fix compiler warning
	usb: dwc2: gadget: remove of_node reference upon udc_stop
	USB: pci-quirks: Fix HCCPARAMS register error for LS7A EHCI
	USB: quirks: add USB_QUIRK_NO_LPM quirk for Teclast dist
	USB: Add USB_QUIRK_NO_LPM quirk for sony xperia xz1 smartphone
	usb: gadget: f_midi: fix MIDI Streaming descriptor lengths
	USB: hub: Ignore non-compliant devices with too many configs or interfaces
	USB: cdc-acm: Fill in Renesas R-Car D3 USB Download mode quirk
	usb: cdc-acm: Check control transfer buffer size before access
	usb: cdc-acm: Fix handling of oversized fragments
	USB: serial: option: add MeiG Smart SLM828
	USB: serial: option: add Telit Cinterion FN990B compositions
	USB: serial: option: fix Telit Cinterion FN990A name
	USB: serial: option: drop MeiG Smart defines
	can: c_can: fix unbalanced runtime PM disable in error path
	can: j1939: j1939_sk_send_loop(): fix unable to send messages with data length zero
	alpha: make stack 16-byte aligned (most cases)
	serial: 8250: Fix fifo underflow on flush
	alpha: align stack for page fault and user unaligned trap handlers
	gpio: stmpe: Check return value of stmpe_reg_read in stmpe_gpio_irq_sync_unlock
	partitions: mac: fix handling of bogus partition table
	regmap-irq: Add missing kfree()
	net: treat possible_net_t net pointer as an RCU one and add read_pnet_rcu()
	net: add dev_net_rcu() helper
	ipv4: use RCU protection in rt_is_expired()
	ipv4: use RCU protection in inet_select_addr()
	ipv6: use RCU protection in ip6_default_advmss()
	ndisc: use RCU protection in ndisc_alloc_skb()
	neighbour: delete redundant judgment statements
	neighbour: use RCU protection in __neigh_notify()
	arp: use RCU protection in arp_xmit()
	openvswitch: use RCU protection in ovs_vport_cmd_fill_info()
	ndisc: extend RCU protection in ndisc_send_skb()
	alpha: replace hardcoded stack offsets with autogenerated ones
	nilfs2: do not output warnings when clearing dirty buffers
	nilfs2: do not force clear folio if buffer is referenced
	nilfs2: protect access to buffers with no active references
	can: ems_pci: move ASIX AX99100 ids to pci_ids.h
	serial: 8250_pci: add support for ASIX AX99100
	parport_pc: add support for ASIX AX99100
	x86/i8253: Disable PIT timer 0 when not in use
	Revert "btrfs: avoid monopolizing a core when activating a swap file"
	btrfs: avoid monopolizing a core when activating a swap file
	pps: Fix a use-after-free
	ima: Fix use-after-free on a dentry's dname.name
	vlan: introduce vlan_dev_free_egress_priority
	vlan: move dev_put into vlan_dev_uninit
	scsi: storvsc: Set correct data length for sending SCSI command without payload
	driver core: bus: Fix double free in driver API bus_register()
	crypto: testmgr - fix wrong key length for pkcs1pad
	crypto: testmgr - Fix wrong test case of RSA
	crypto: testmgr - fix version number of RSA tests
	crypto: testmgr - populate RSA CRT parameters in RSA test vectors
	crypto: testmgr - some more fixes to RSA test vectors
	mm: update mark_victim tracepoints fields
	memcg: fix soft lockup in the OOM process
	usb: dwc3: Increase DWC3 controller halt timeout
	usb: dwc3: Fix timeout issue during controller enter/exit from halt state
	usb/gadget: f_midi: convert tasklets to use new tasklet_setup() API
	usb/gadget: f_midi: Replace tasklet with work
	USB: gadget: f_midi: f_midi_complete to call queue_work
	powerpc/64s/mm: Move __real_pte stubs into hash-4k.h
	powerpc/64s: Rewrite __real_pte() and __rpte_to_hidx() as static inline
	ALSA: hda/realtek - Add type for ALC287
	ALSA: hda/realtek: Fixup ALC225 depop procedure
	powerpc/code-patching: Fix KASAN hit by not flagging text patching area as VM_ALLOC
	geneve: Fix use-after-free in geneve_find_dev().
	gtp: Suppress list corruption splat in gtp_net_exit_batch_rtnl().
	geneve: Suppress list corruption splat in geneve_destroy_tunnels().
	net: extract port range fields from fl_flow_key
	flow_dissector: Fix handling of mixed port and port-range keys
	flow_dissector: Fix port range key handling in BPF conversion
	power: supply: da9150-fg: fix potential overflow
	tee: optee: Fix supplicant wait loop
	nfp: bpf: Add check for nfp_app_ctrl_msg_alloc()
	ALSA: hda/conexant: Add quirk for HP ProBook 450 G4 mute LED
	acct: block access to kernel internal filesystems
	batman-adv: Ignore neighbor throughput metrics in error case
	batman-adv: Drop unmanaged ELP metric worker
	sunrpc: suppress warnings for unused procfs functions
	net: loopback: Avoid sending IP packets without an Ethernet header
	net: cadence: macb: Synchronize stats calculations
	ASoC: es8328: fix route from DAC to output
	ipvs: Always clear ipvs_property flag in skb_scrub_packet()
	net: mvpp2: cls: Fixed Non IP flow, with vlan tag flow defination.
	x86/CPU: Fix warm boot hang regression on AMD SC1100 SoC systems
	ftrace: Avoid potential division by zero in function_stat_show()
	perf/core: Fix low freq setting via IOC_PERIOD
	usbnet: gl620a: fix endpoint checking in genelink_bind()
	phy: tegra: xusb: reset VBUS & ID OVERRIDE
	phy: exynos5-usbdrd: fix MPLL_MULTIPLIER and SSC_REFCLKSEL masks in refclk
	sched/core: Prevent rescheduling when interrupts are disabled
	pfifo_tail_enqueue: Drop new packet when sch->limit == 0
	drop_monitor: fix incorrect initialization order
	kernel/acct.c: use #elif instead of #end and #elif
	kernel/acct.c: use dedicated helper to access rlimit values
	acct: perform last write from workqueue
	drm/amdgpu: skip BAR resizing if the bios already did it
	drm/amdgpu: Check extended configuration space register when system uses large bar
	drm/amdgpu: disable BAR resize on Dell G5 SE
	Revert "of: reserved-memory: Fix using wrong number of cells to get property 'alignment'"
	HID: appleir: Fix potential NULL dereference at raw event handle
	ALSA: hda: intel: Add Dell ALC3271 to power_save denylist
	ALSA: hda/realtek: update ALC222 depop optimize
	drm/radeon: Fix rs400_gpu_init for ATI mobility radeon Xpress 200M
	platform/x86: thinkpad_acpi: Add battery quirk for ThinkPad X131e
	x86/cacheinfo: Validate CPUID leaf 0x2 EDX output
	x86/cpu: Validate CPUID leaf 0x2 EDX output
	x86/cpu: Properly parse CPUID leaf 0x2 TLB descriptor 0x63
	wifi: cfg80211: regulatory: improve invalid hints checking
	wifi: nl80211: reject cooked mode if it is set along with other flags
	rapidio: add check for rio_add_net() in rio_scan_alloc_net()
	rapidio: fix an API misues when rio_add_net() fails
	mm/page_alloc: fix uninitialized variable
	wifi: iwlwifi: limit printed string from FW file
	HID: google: fix unused variable warning under !CONFIG_ACPI
	HID: intel-ish-hid: Fix use-after-free issue in ishtp_hid_remove()
	net: gso: fix ownership in __udp_gso_segment
	caif_virtio: fix wrong pointer check in cfv_probe()
	hwmon: (pmbus) Initialise page count in pmbus_identify()
	hwmon: (ntc_thermistor) Fix the ncpXXxh103 sensor table
	hwmon: (ad7314) Validate leading zero bits and return error
	llc: do not use skb_get() before dev_queue_xmit()
	hwmon: fix a NULL vs IS_ERR_OR_NULL() check in xgene_hwmon_probe()
	drm/sched: Fix preprocessor guard
	be2net: fix sleeping while atomic bugs in be_ndo_bridge_getlink
	ppp: Fix KMSAN uninit-value warning with bpf
	vlan: enforce underlying device type
	net-timestamp: support TCP GSO case for a few missing flags
	net: ipv6: fix dst ref loop in ila lwtunnel
	net: ipv6: fix missing dst ref drop in ila lwtunnel
	gpio: rcar: Fix missing of_node_put() call
	Revert "drivers/card_reader/rtsx_usb: Restore interrupt based detection"
	usb: renesas_usbhs: Call clk_put()
	usb: renesas_usbhs: Use devm_usb_get_phy()
	usb: quirks: Add DELAY_INIT and NO_LPM for Prolific Mass Storage Card Reader
	usb: renesas_usbhs: Flush the notify_hotplug_work
	usb: atm: cxacru: fix a flaw in existing endpoint checks
	usb: typec: ucsi: increase timeout for PPM reset operations
	usb: typec: tcpci_rt1711h: Unmask alert interrupts to fix functionality
	usb: gadget: Set self-powered based on MaxPower and bmAttributes
	usb: gadget: Fix setting self-powered state on suspend
	usb: gadget: Check bmAttributes only if configuration is valid
	xhci: pci: Fix indentation in the PCI device ID definitions
	Squashfs: check the inode number is not the invalid value of zero
	intel_th: pci: Add Arrow Lake support
	intel_th: pci: Add Panther Lake-H support
	intel_th: pci: Add Panther Lake-P/U support
	slimbus: messaging: Free transaction ID in delayed interrupt scenario
	eeprom: digsy_mtc: Make GPIO lookup table match the device
	Linux 5.4.291

Change-Id: Ica7eab9e6472f50da32bd885ba09d09dbb450ef0
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-03-13 14:53:52 +00:00
Kan Liang
813822972e perf/core: Fix low freq setting via IOC_PERIOD
commit 0d39844150546fa1415127c5fbae26db64070dd3 upstream.

A low attr::freq value cannot be set via IOC_PERIOD on some platforms.

The perf_event_check_period() introduced in:

  81ec3f3c4c ("perf/x86: Add check_period PMU callback")

was intended to check the period, rather than the frequency.
A low frequency may be mistakenly rejected by limit_period().

Fix it.

Fixes: 81ec3f3c4c ("perf/x86: Add check_period PMU callback")
Signed-off-by: Kan Liang <kan.liang@linux.intel.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Reviewed-by: Ravi Bangoria <ravi.bangoria@amd.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20250117151913.3043942-2-kan.liang@linux.intel.com
Closes: https://lore.kernel.org/lkml/20250115154949.3147-1-ravi.bangoria@amd.com/
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-03-13 12:43:25 +01:00
Greg Kroah-Hartman
94424b0fce This is the 5.4.285 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmcuLG4ACgkQONu9yGCS
 aT7BrA/+NGLfwp3lfOunHEhrw/IwD/tbMJuAOn5P2rvrg3f2aCVjboJpHh0pwL6O
 Axt4uEmJOo7++8mEo9cCBdLPSv5lQPK+j1uIXjKfdISODJYVqLf6g7GGHSdq/Ijj
 BCSW24P+Kl+XK0NHiyzlS2+XFP+Xk6T5yErV0cBwt6KFotYWjaAlpwDlCGHtvdra
 RROVwCQWVxGrCDLPEYeQIP3cD1fp/A3Q/d3quJLK1xo6SXAFBZjlYcOvl76i4ogj
 6ZZPBdIusk24pjpnhaIwmlzbmfqWbp5T2uJHJGaXNfSioIKSs1CdKP9zsOnGxoDl
 Iv3c65O/IZbLz/77z1yKDPWn9lQ1uu0sr15Bq6G720HOvk1reKbBwP+XeWNnl8PF
 RLdDxVAYqIFxfMsWGHgc7NzToRH/Z2AkqmTcm+uYHh+u9z4gXbVKXcgOX/EBFKKL
 rlVjwOsTzPm2NV81EP4bDKNag+3D6yoYn1zJV6Qdu7j/Wsn69OjFEuMIVeXf1olv
 BGGdTwleHgA8ml18xZkoCun3J9NORhaCgdfz979fwSdxBBpGHxDcklWZtQMJxfgl
 UpD0huZWoD3mjIx557N9Rxh270L7ETQMSLd3B6Bu2qy6Gd9V4Ik0R33nEEiodPfU
 bxmZ3r/Fzqs8Zzc3V/NrKCgxopf/yLcdXfOJCpNyL9oXaxCH8oQ=
 =W8Y0
 -----END PGP SIGNATURE-----

Merge 5.4.285 into android11-5.4-lts

Changes in 5.4.285
	usbnet: ipheth: fix carrier detection in modes 1 and 4
	net: ethernet: use ip_hdrlen() instead of bit shift
	net: phy: vitesse: repair vsc73xx autonegotiation
	scripts: kconfig: merge_config: config files: add a trailing newline
	arm64: dts: rockchip: override BIOS_DISABLE signal via GPIO hog on RK3399 Puma
	ice: fix accounting for filters shared by multiple VSIs
	net/mlx5e: Add missing link modes to ptys2ethtool_map
	net: ftgmac100: Enable TX interrupt to avoid TX timeout
	net: dpaa: Pad packets to ETH_ZLEN
	spi: nxp-fspi: fix the KASAN report out-of-bounds bug
	soundwire: stream: Revert "soundwire: stream: fix programming slave ports for non-continous port maps"
	selftests: breakpoints: Fix a typo of function name
	ASoC: allow module autoloading for table db1200_pids
	ALSA: hda/realtek - Fixed ALC256 headphone no sound
	ALSA: hda/realtek - FIxed ALC285 headphone no sound
	pinctrl: at91: make it work with current gpiolib
	microblaze: don't treat zero reserved memory regions as error
	net: ftgmac100: Ensure tx descriptor updates are visible
	wifi: iwlwifi: mvm: fix iwl_mvm_max_scan_ie_fw_cmd_room()
	wifi: iwlwifi: mvm: don't wait for tx queues if firmware is dead
	ASoC: tda7419: fix module autoloading
	drm: komeda: Fix an issue related to normalized zpos
	spi: bcm63xx: Enable module autoloading
	x86/hyperv: Set X86_FEATURE_TSC_KNOWN_FREQ when Hyper-V provides frequency
	ocfs2: add bounds checking to ocfs2_xattr_find_entry()
	ocfs2: strict bound check before memcmp in ocfs2_xattr_find_entry()
	gpio: prevent potential speculation leaks in gpio_device_get_desc()
	inet: inet_defrag: prevent sk release while still in use
	bpf: Fix DEVMAP_HASH overflow check on 32-bit arches
	USB: serial: pl2303: add device id for Macrosilicon MS3020
	USB: usbtmc: prevent kernel-usb-infoleak
	ACPI: PMIC: Remove unneeded check in tps68470_pmic_opregion_probe()
	wifi: ath9k: fix parameter check in ath9k_init_debug()
	wifi: ath9k: Remove error checks when creating debugfs entries
	fs: explicitly unregister per-superblock BDIs
	mount: warn only once about timestamp range expiration
	fs/namespace: fnic: Switch to use %ptTd
	mount: handle OOM on mnt_warn_timestamp_expiry
	can: j1939: use correct function name in comment
	netfilter: nf_tables: elements with timeout below CONFIG_HZ never expire
	netfilter: nf_tables: reject element expiration with no timeout
	netfilter: nf_tables: reject expiration higher than timeout
	wifi: cfg80211: fix UBSAN noise in cfg80211_wext_siwscan()
	wifi: cfg80211: fix two more possible UBSAN-detected off-by-one errors
	mac80211: parse radiotap header when selecting Tx queue
	wifi: mac80211: use two-phase skb reclamation in ieee80211_do_stop()
	wifi: wilc1000: fix potential RCU dereference issue in wilc_parse_join_bss_param
	sock_map: Add a cond_resched() in sock_hash_free()
	can: bcm: Clear bo->bcm_proc_read after remove_proc_entry().
	Bluetooth: btusb: Fix not handling ZPL/short-transfer
	net: tipc: avoid possible garbage value
	block, bfq: fix possible UAF for bfqq->bic with merge chain
	block, bfq: choose the last bfqq from merge chain in bfq_setup_cooperator()
	block, bfq: don't break merge chain in bfq_split_bfqq()
	spi: ppc4xx: handle irq_of_parse_and_map() errors
	spi: ppc4xx: Avoid returning 0 when failed to parse and map IRQ
	ARM: dts: imx7d-zii-rmu2: fix Ethernet PHY pinctrl property
	ARM: versatile: fix OF node leak in CPUs prepare
	reset: berlin: fix OF node leak in probe() error path
	clocksource/drivers/qcom: Add missing iounmap() on errors in msm_dt_timer_init()
	hwmon: (max16065) Fix overflows seen when writing limits
	mtd: slram: insert break after errors in parsing the map
	hwmon: (ntc_thermistor) fix module autoloading
	power: supply: axp20x_battery: allow disabling battery charging
	power: supply: axp20x_battery: Remove design from min and max voltage
	power: supply: max17042_battery: Fix SOC threshold calc w/ no current sense
	fbdev: hpfb: Fix an error handling path in hpfb_dio_probe()
	mtd: powernv: Add check devm_kasprintf() returned value
	drm/stm: Fix an error handling path in stm_drm_platform_probe()
	drm/amdgpu: Replace one-element array with flexible-array member
	drm/amdgpu: properly handle vbios fake edid sizing
	drm/radeon: Replace one-element array with flexible-array member
	drm/radeon: properly handle vbios fake edid sizing
	drm/rockchip: vop: Allow 4096px width scaling
	drm/rockchip: dw_hdmi: Fix reading EDID when using a forced mode
	drm/radeon/evergreen_cs: fix int overflow errors in cs track offsets
	jfs: fix out-of-bounds in dbNextAG() and diAlloc()
	drm/msm: Fix incorrect file name output in adreno_request_fw()
	drm/msm/a5xx: disable preemption in submits by default
	drm/msm/a5xx: properly clear preemption records on resume
	drm/msm/a5xx: fix races in preemption evaluation stage
	ipmi: docs: don't advertise deprecated sysfs entries
	drm/msm: fix %s null argument error
	drivers:drm:exynos_drm_gsc:Fix wrong assignment in gsc_bind()
	xen: use correct end address of kernel for conflict checking
	xen/swiotlb: add alignment check for dma buffers
	tpm: Clean up TPM space after command failure
	selftests/bpf: Fix compile error from rlim_t in sk_storage_map.c
	selftests/bpf: Fix compiling flow_dissector.c with musl-libc
	selftests/bpf: Fix compiling tcp_rtt.c with musl-libc
	selftests/bpf: Fix error compiling test_lru_map.c
	xz: cleanup CRC32 edits from 2018
	kthread: add kthread_work tracepoints
	kthread: fix task state in kthread worker if being frozen
	jbd2: introduce/export functions jbd2_journal_submit|finish_inode_data_buffers()
	ext4: clear EXT4_GROUP_INFO_WAS_TRIMMED_BIT even mount with discard
	smackfs: Use rcu_assign_pointer() to ensure safe assignment in smk_set_cipso
	ext4: avoid negative min_clusters in find_group_orlov()
	ext4: return error on ext4_find_inline_entry
	ext4: avoid OOB when system.data xattr changes underneath the filesystem
	nilfs2: fix potential null-ptr-deref in nilfs_btree_insert()
	nilfs2: determine empty node blocks as corrupted
	nilfs2: fix potential oob read in nilfs_btree_check_delete()
	bpf: Fix bpf_strtol and bpf_strtoul helpers for 32bit
	perf sched timehist: Fix missing free of session in perf_sched__timehist()
	perf sched timehist: Fixed timestamp error when unable to confirm event sched_in time
	perf time-utils: Fix 32-bit nsec parsing
	clk: rockchip: Set parent rate for DCLK_VOP clock on RK3228
	drivers: media: dvb-frontends/rtl2832: fix an out-of-bounds write error
	drivers: media: dvb-frontends/rtl2830: fix an out-of-bounds write error
	PCI: keystone: Fix if-statement expression in ks_pcie_quirk()
	PCI: xilinx-nwl: Fix register misspelling
	RDMA/iwcm: Fix WARNING:at_kernel/workqueue.c:#check_flush_dependency
	pinctrl: single: fix missing error code in pcs_probe()
	clk: ti: dra7-atl: Fix leak of of_nodes
	pinctrl: mvebu: Fix devinit_dove_pinctrl_probe function
	watchdog: imx_sc_wdt: Don't disable WDT in suspend
	RDMA/hns: Optimize hem allocation performance
	riscv: Fix fp alignment bug in perf_callchain_user()
	RDMA/cxgb4: Added NULL check for lookup_atid
	ntb: intel: Fix the NULL vs IS_ERR() bug for debugfs_create_dir()
	nfsd: call cache_put if xdr_reserve_space returns NULL
	nfsd: return -EINVAL when namelen is 0
	f2fs: enhance to update i_mode and acl atomically in f2fs_setattr()
	f2fs: fix typo
	f2fs: fix to update i_ctime in __f2fs_setxattr()
	f2fs: remove unneeded check condition in __f2fs_setxattr()
	f2fs: reduce expensive checkpoint trigger frequency
	iio: adc: ad7606: fix oversampling gpio array
	iio: adc: ad7606: fix standby gpio state to match the documentation
	coresight: tmc: sg: Do not leak sg_table
	netfilter: nf_reject_ipv6: fix nf_reject_ip6_tcphdr_put()
	net: seeq: Fix use after free vulnerability in ether3 Driver Due to Race Condition
	tcp: check skb is non-NULL in tcp_rto_delta_us()
	net: qrtr: Update packets cloning when broadcasting
	netfilter: ctnetlink: compile ctnetlink_label_size with CONFIG_NF_CONNTRACK_EVENTS
	crypto: aead,cipher - zeroize key buffer after use
	Remove *.orig pattern from .gitignore
	soc: versatile: integrator: fix OF node leak in probe() error path
	drm/amd/display: Round calculated vtotal
	USB: appledisplay: close race between probe and completion handler
	USB: misc: cypress_cy7c63: check for short transfer
	USB: class: CDC-ACM: fix race between get_serial and set_serial
	firmware_loader: Block path traversal
	tty: rp2: Fix reset with non forgiving PCIe host bridges
	drbd: Fix atomicity violation in drbd_uuid_set_bm()
	drbd: Add NULL check for net_conf to prevent dereference in state validation
	ACPI: sysfs: validate return type of _STR method
	ACPI: resource: Add another DMI match for the TongFang GMxXGxx
	wifi: rtw88: 8822c: Fix reported RX band width
	debugobjects: Fix conditions in fill_pool()
	f2fs: prevent possible int overflow in dir_block_index()
	f2fs: avoid potential int overflow in sanity_check_area_boundary()
	hwrng: mtk - Use devm_pm_runtime_enable
	vfs: fix race between evice_inodes() and find_inode()&iput()
	fs: Fix file_set_fowner LSM hook inconsistencies
	nfs: fix memory leak in error path of nfs4_do_reclaim
	ASoC: meson: axg: extract sound card utils
	ASoC: meson: axg-card: fix 'use-after-free'
	PCI: xilinx-nwl: Use irq_data_get_irq_chip_data()
	PCI: xilinx-nwl: Fix off-by-one in INTx IRQ handler
	soc: versatile: realview: fix memory leak during device remove
	soc: versatile: realview: fix soc_dev leak during device remove
	usb: yurex: Replace snprintf() with the safer scnprintf() variant
	USB: misc: yurex: fix race between read and write
	pps: remove usage of the deprecated ida_simple_xx() API
	pps: add an error check in parport_attach
	mm: only enforce minimum stack gap size if it's sensible
	i2c: aspeed: Update the stop sw state when the bus recovery occurs
	i2c: isch: Add missed 'else'
	usb: yurex: Fix inconsistent locking bug in yurex_read()
	mailbox: rockchip: fix a typo in module autoloading
	mailbox: bcm2835: Fix timeout during suspend mode
	ceph: remove the incorrect Fw reference check when dirtying pages
	Minor fixes to the CAIF Transport drivers Kconfig file
	drivers: net: Fix Kconfig indentation, continued
	ieee802154: Fix build error
	net/mlx5: Added cond_resched() to crdump collection
	netfilter: uapi: NFTA_FLOWTABLE_HOOK is NLA_NESTED
	net: ieee802154: mcr20a: Use IRQF_NO_AUTOEN flag in request_irq()
	netfilter: nf_tables: prevent nf_skb_duplicated corruption
	Bluetooth: btmrvl_sdio: Refactor irq wakeup
	Bluetooth: btmrvl: Use IRQF_NO_AUTOEN flag in request_irq()
	net: ethernet: lantiq_etop: fix memory disclosure
	net: avoid potential underflow in qdisc_pkt_len_init() with UFO
	net: add more sanity checks to qdisc_pkt_len_init()
	ipv4: ip_gre: Fix drops of small packets in ipgre_xmit
	sctp: set sk_state back to CLOSED if autobind fails in sctp_listen_start
	ALSA: hda/realtek: Fix the push button function for the ALC257
	ALSA: hda/generic: Unconditionally prefer preferred_dacs pairs
	ALSA: hda/conexant: Fix conflicting quirk for System76 Pangolin
	f2fs: Require FMODE_WRITE for atomic write ioctls
	wifi: ath9k: fix possible integer overflow in ath9k_get_et_stats()
	wifi: ath9k_htc: Use __skb_set_length() for resetting urb before resubmit
	ice: Adjust over allocation of memory in ice_sched_add_root_node() and ice_sched_add_node()
	net: hisilicon: hip04: fix OF node leak in probe()
	net: hisilicon: hns_dsaf_mac: fix OF node leak in hns_mac_get_info()
	net: hisilicon: hns_mdio: fix OF node leak in probe()
	ACPICA: Fix memory leak if acpi_ps_get_next_namepath() fails
	ACPICA: Fix memory leak if acpi_ps_get_next_field() fails
	net: sched: consistently use rcu_replace_pointer() in taprio_change()
	wifi: rtw88: select WANT_DEV_COREDUMP
	ACPI: EC: Do not release locks during operation region accesses
	ACPICA: check null return of ACPI_ALLOCATE_ZEROED() in acpi_db_convert_to_package()
	tipc: guard against string buffer overrun
	net: mvpp2: Increase size of queue_name buffer
	ipv4: Check !in_dev earlier for ioctl(SIOCSIFADDR).
	ipv4: Mask upper DSCP bits and ECN bits in NETLINK_FIB_LOOKUP family
	tcp: avoid reusing FIN_WAIT2 when trying to find port in connect() process
	ACPICA: iasl: handle empty connection_node
	proc: add config & param to block forcing mem writes
	wifi: mwifiex: Fix memcpy() field-spanning write warning in mwifiex_cmd_802_11_scan_ext()
	nfp: Use IRQF_NO_AUTOEN flag in request_irq()
	signal: Replace BUG_ON()s
	ALSA: asihpi: Fix potential OOB array access
	ALSA: hdsp: Break infinite MIDI input flush loop
	x86/syscall: Avoid memcpy() for ia32 syscall_get_arguments()
	fbdev: pxafb: Fix possible use after free in pxafb_task()
	power: reset: brcmstb: Do not go into infinite loop if reset fails
	ata: sata_sil: Rename sil_blacklist to sil_quirks
	jfs: UBSAN: shift-out-of-bounds in dbFindBits
	jfs: Fix uaf in dbFreeBits
	jfs: check if leafidx greater than num leaves per dmap tree
	jfs: Fix uninit-value access of new_ea in ea_buffer
	drm/amd/display: Check stream before comparing them
	drm/amd/display: Fix index out of bounds in degamma hardware format translation
	drm/amd/display: Initialize get_bytes_per_element's default to 1
	drm/printer: Allow NULL data in devcoredump printer
	scsi: aacraid: Rearrange order of struct aac_srb_unit
	drm/radeon/r100: Handle unknown family in r100_cp_init_microcode()
	of/irq: Refer to actual buffer size in of_irq_parse_one()
	ext4: ext4_search_dir should return a proper error
	ext4: fix i_data_sem unlock order in ext4_ind_migrate()
	spi: s3c64xx: fix timeout counters in flush_fifo
	selftests: breakpoints: use remaining time to check if suspend succeed
	selftests: vDSO: fix vDSO symbols lookup for powerpc64
	i2c: stm32f7: Do not prepare/unprepare clock during runtime suspend/resume
	i2c: xiic: Wait for TX empty to avoid missed TX NAKs
	firmware: tegra: bpmp: Drop unused mbox_client_to_bpmp()
	spi: bcm63xx: Fix module autoloading
	perf/core: Fix small negative period being ignored
	parisc: Fix itlb miss handler for 64-bit programs
	drm: Consistently use struct drm_mode_rect for FB_DAMAGE_CLIPS
	ALSA: core: add isascii() check to card ID generator
	ext4: no need to continue when the number of entries is 1
	ext4: propagate errors from ext4_find_extent() in ext4_insert_range()
	ext4: fix incorrect tid assumption in __jbd2_log_wait_for_space()
	ext4: aovid use-after-free in ext4_ext_insert_extent()
	ext4: fix double brelse() the buffer of the extents path
	ext4: fix incorrect tid assumption in ext4_wait_for_tail_page_commit()
	parisc: Fix 64-bit userspace syscall path
	parisc: Fix stack start for ADDR_NO_RANDOMIZE personality
	of/irq: Support #msi-cells=<0> in of_msi_get_domain
	drm: omapdrm: Add missing check for alloc_ordered_workqueue
	jbd2: stop waiting for space when jbd2_cleanup_journal_tail() returns error
	mm: krealloc: consider spare memory for __GFP_ZERO
	ocfs2: fix the la space leak when unmounting an ocfs2 volume
	ocfs2: fix uninit-value in ocfs2_get_block()
	ocfs2: reserve space for inline xattr before attaching reflink tree
	ocfs2: cancel dqi_sync_work before freeing oinfo
	ocfs2: remove unreasonable unlock in ocfs2_read_blocks
	ocfs2: fix null-ptr-deref when journal load failed.
	ocfs2: fix possible null-ptr-deref in ocfs2_set_buffer_uptodate
	riscv: define ILLEGAL_POINTER_VALUE for 64bit
	aoe: fix the potential use-after-free problem in more places
	clk: rockchip: fix error for unknown clocks
	media: sun4i_csi: Implement link validate for sun4i_csi subdev
	media: uapi/linux/cec.h: cec_msg_set_reply_to: zero flags
	media: venus: fix use after free bug in venus_remove due to race condition
	iio: magnetometer: ak8975: Fix reading for ak099xx sensors
	tomoyo: fallback to realpath if symlink's pathname does not exist
	rtc: at91sam9: fix OF node leak in probe() error path
	Input: adp5589-keys - fix adp5589_gpio_get_value()
	ACPI: resource: Add Asus Vivobook X1704VAP to irq1_level_low_skip_override[]
	ACPI: resource: Add Asus ExpertBook B2502CVA to irq1_level_low_skip_override[]
	btrfs: fix a NULL pointer dereference when failed to start a new trasacntion
	btrfs: wait for fixup workers before stopping cleaner kthread during umount
	gpio: davinci: fix lazy disable
	i2c: qcom-geni: Let firmware specify irq trigger flags
	i2c: qcom-geni: Grow a dev pointer to simplify code
	i2c: qcom-geni: Use IRQF_NO_AUTOEN flag in request_irq()
	arm64: Add Cortex-715 CPU part definition
	arm64: cputype: Add Neoverse-N3 definitions
	arm64: errata: Expand speculative SSBS workaround once more
	uprobes: fix kernel info leak via "[uprobes]" vma
	nfsd: use ktime_get_seconds() for timestamps
	nfsd: fix delegation_blocked() to block correctly for at least 30 seconds
	clk: qcom: rpmh: Simplify clk_rpmh_bcm_send_cmd()
	clk: qcom: clk-rpmh: Fix overflow in BCM vote
	r8169: Fix spelling mistake: "tx_underun" -> "tx_underrun"
	r8169: add tally counter fields added with RTL8125
	ACPI: battery: Simplify battery hook locking
	ACPI: battery: Fix possible crash when unregistering a battery hook
	ext4: fix inode tree inconsistency caused by ENOMEM
	unicode: Don't special case ignorable code points
	net: ethernet: cortina: Drop TSO support
	tracing: Remove precision vsnprintf() check from print event
	drm/crtc: fix uninitialized variable use even harder
	tracing: Have saved_cmdlines arrays all in one allocation
	virtio_console: fix misc probe bugs
	Input: synaptics-rmi4 - fix UAF of IRQ domain on driver removal
	bpf: Check percpu map value size first
	s390/facility: Disable compile time optimization for decompressor code
	s390/mm: Add cond_resched() to cmm_alloc/free_pages()
	ext4: nested locking for xattr inode
	s390/cpum_sf: Remove WARN_ON_ONCE statements
	ktest.pl: Avoid false positives with grub2 skip regex
	clk: bcm: bcm53573: fix OF node leak in init
	PCI: Add ACS quirk for Qualcomm SA8775P
	i2c: i801: Use a different adapter-name for IDF adapters
	PCI: Mark Creative Labs EMU20k2 INTx masking as broken
	ntb: ntb_hw_switchtec: Fix use after free vulnerability in switchtec_ntb_remove due to race condition
	media: videobuf2-core: clear memory related fields in __vb2_plane_dmabuf_put()
	usb: chipidea: udc: enable suspend interrupt after usb reset
	usb: dwc2: Adjust the timing of USB Driver Interrupt Registration in the Crashkernel Scenario
	virtio_pmem: Check device status before requesting flush
	tools/iio: Add memory allocation failure check for trigger_name
	driver core: bus: Return -EIO instead of 0 when show/store invalid bus attribute
	fbdev: sisfb: Fix strbuf array overflow
	RDMA/rxe: Fix seg fault in rxe_comp_queue_pkt
	ice: fix VLAN replay after reset
	SUNRPC: Fix integer overflow in decode_rc_list()
	tcp: fix to allow timestamp undo if no retransmits were sent
	tcp: fix tcp_enter_recovery() to zero retrans_stamp when it's safe
	netfilter: br_netfilter: fix panic with metadata_dst skb
	Bluetooth: RFCOMM: FIX possible deadlock in rfcomm_sk_state_change
	gpio: aspeed: Add the flush write to ensure the write complete.
	gpio: aspeed: Use devm_clk api to manage clock source
	igb: Do not bring the device up after non-fatal error
	net/sched: accept TCA_STAB only for root qdisc
	net: ibm: emac: mal: fix wrong goto
	net: annotate lockless accesses to sk->sk_ack_backlog
	net: annotate lockless accesses to sk->sk_max_ack_backlog
	sctp: ensure sk_state is set to CLOSED if hashing fails in sctp_listen_start
	ppp: fix ppp_async_encode() illegal access
	slip: make slhc_remember() more robust against malicious packets
	locking/lockdep: Fix bad recursion pattern
	locking/lockdep: Rework lockdep_lock
	locking/lockdep: Avoid potential access of invalid memory in lock_class
	lockdep: fix deadlock issue between lockdep and rcu
	resource: fix region_intersects() vs add_memory_driver_managed()
	CDC-NCM: avoid overflow in sanity checking
	HID: plantronics: Workaround for an unexcepted opposite volume key
	Revert "usb: yurex: Replace snprintf() with the safer scnprintf() variant"
	usb: dwc3: core: Stop processing of pending events if controller is halted
	usb: xhci: Fix problem with xhci resume from suspend
	usb: storage: ignore bogus device raised by JieLi BR21 USB sound chip
	hid: intel-ish-hid: Fix uninitialized variable 'rv' in ish_fw_xfer_direct_dma
	net: Fix an unsafe loop on the list
	nouveau/dmem: Fix vulnerability in migrate_to_ram upon copy error
	posix-clock: Fix missing timespec64 check in pc_clock_settime()
	arm64: probes: Remove broken LDR (literal) uprobe support
	arm64: probes: Fix simulate_ldr*_literal()
	tracing/kprobes: Return EADDRNOTAVAIL when func matches several symbols
	tracing/kprobes: Fix symbol counting logic by looking at modules as well
	PCI: Add function 0 DMA alias quirk for Glenfly Arise chip
	fat: fix uninitialized variable
	mm/swapfile: skip HugeTLB pages for unuse_vma
	wifi: mac80211: fix potential key use-after-free
	KVM: Fix a data race on last_boosted_vcpu in kvm_vcpu_on_spin()
	s390/sclp_vt220: Convert newlines to CRLF instead of LFCR
	KVM: s390: Change virtual to physical address access in diag 0x258 handler
	x86/cpufeatures: Define X86_FEATURE_AMD_IBPB_RET
	blk-rq-qos: fix crash on rq_qos_wait vs. rq_qos_wake_function race
	drm/vmwgfx: Handle surface check failure correctly
	iio: dac: ltc1660: add missing select REGMAP_SPI in Kconfig
	iio: dac: stm32-dac-core: add missing select REGMAP_MMIO in Kconfig
	iio: adc: ti-ads8688: add missing select IIO_(TRIGGERED_)BUFFER in Kconfig
	iio: hid-sensors: Fix an error handling path in _hid_sensor_set_report_latency()
	iio: light: opt3001: add missing full-scale range value
	iio: proximity: mb1232: add missing select IIO_(TRIGGERED_)BUFFER in Kconfig
	iio: adc: ti-ads124s08: add missing select IIO_(TRIGGERED_)BUFFER in Kconfig
	Bluetooth: Remove debugfs directory on module init failure
	Bluetooth: btusb: Fix regression with fake CSR controllers 0a12:0001
	xhci: Fix incorrect stream context type macro
	USB: serial: option: add support for Quectel EG916Q-GL
	USB: serial: option: add Telit FN920C04 MBIM compositions
	parport: Proper fix for array out-of-bounds access
	x86/resctrl: Annotate get_mem_config() functions as __init
	x86/apic: Always explicitly disarm TSC-deadline timer
	nilfs2: propagate directory read errors from nilfs_find_entry()
	erofs: fix lz4 inplace decompression
	mac80211: Fix NULL ptr deref for injected rate info
	RDMA/bnxt_re: Fix incorrect AVID type in WQE structure
	ARM: dts: bcm2837-rpi-cm3-io3: Fix HDMI hpd-gpio pin
	RDMA/cxgb4: Fix RDMA_CM_EVENT_UNREACHABLE error for iWARP
	ipv4: give an IPv4 dev to blackhole_netdev
	RDMA/bnxt_re: Return more meaningful error
	drm/msm/dsi: fix 32-bit signed integer extension in pclk_rate calculation
	macsec: don't increment counters for an unrelated SA
	net: ethernet: aeroflex: fix potential memory leak in greth_start_xmit_gbit()
	net: systemport: fix potential memory leak in bcm_sysport_xmit()
	genetlink: hold RCU in genlmsg_mcast()
	smb: client: fix OOBs when building SMB2_IOCTL request
	usb: typec: altmode should keep reference to parent
	Bluetooth: bnep: fix wild-memory-access in proto_unregister
	arm64:uprobe fix the uprobe SWBP_INSN in big-endian
	arm64: probes: Fix uprobes for big-endian kernels
	KVM: s390: gaccess: Refactor gpa and length calculation
	KVM: s390: gaccess: Refactor access address range check
	KVM: s390: gaccess: Cleanup access to guest pages
	KVM: s390: gaccess: Check if guest address is in memslot
	drm/vboxvideo: Replace fake VLA at end of vbva_mouse_pointer_shape with real VLA
	udf: fix uninit-value use in udf_get_fileshortad
	jfs: Fix sanity check in dbMount
	tracing: Consider the NULL character when validating the event length
	net/sun3_82586: fix potential memory leak in sun3_82586_send_packet()
	be2net: fix potential memory leak in be_xmit()
	net: usb: usbnet: fix name regression
	net: sched: fix use-after-free in taprio_change()
	r8169: avoid unsolicited interrupts
	posix-clock: posix-clock: Fix unbalanced locking in pc_clock_settime()
	ALSA: firewire-lib: Avoid division by zero in apply_constraint_to_size()
	ALSA: hda/realtek: Update default depop procedure
	drm/amd: Guard against bad data for ATIF ACPI method
	ACPI: resource: Add LG 16T90SP to irq1_level_low_skip_override[]
	ACPI: button: Add DMI quirk for Samsung Galaxy Book2 to fix initial lid detection issue
	nilfs2: fix kernel bug due to missing clearing of buffer delay flag
	ALSA: hda/realtek: Add subwoofer quirk for Acer Predator G9-593
	hv_netvsc: Fix VF namespace also in synthetic NIC NETDEV_REGISTER event
	selinux: improve error checking in sel_write_load()
	arm64/uprobes: change the uprobe_opcode_t typedef to fix the sparse warning
	xfrm: validate new SA's prefixlen using SA family when sel.family is unset
	cgroup: Fix potential overflow issue when checking max_depth
	wifi: mac80211: skip non-uploaded keys in ieee80211_iter_keys
	mac80211: do drv_reconfig_complete() before restarting all
	mac80211: Add support to trigger sta disconnect on hardware restart
	wifi: iwlwifi: mvm: disconnect station vifs if recovery failed
	wifi: iwlwifi: mvm: Fix response handling in iwl_mvm_send_recovery_cmd()
	ASoC: cs42l51: Fix some error handling paths in cs42l51_probe()
	dt-bindings: gpu: Convert Samsung Image Rotator to dt-schema
	gtp: simplify error handling code in 'gtp_encap_enable()'
	gtp: allow -1 to be specified as file description from userspace
	net/sched: stop qdisc_tree_reduce_backlog on TC_H_ROOT
	bpf: Fix out-of-bounds write in trie_get_next_key()
	net: support ip generic csum processing in skb_csum_hwoffload_help
	net: skip offload for NETIF_F_IPV6_CSUM if ipv6 header contains extension
	netfilter: nft_payload: sanitize offset and length before calling skb_checksum()
	drivers/misc: ti-st: Remove unneeded variable in st_tty_open
	firmware: arm_sdei: Fix the input parameter of cpuhp_remove_state()
	net: amd: mvme147: Fix probe banner message
	misc: sgi-gru: Don't disable preemption in GRU driver
	usbip: tools: Fix detach_port() invalid port error path
	usb: phy: Fix API devm_usb_put_phy() can not release the phy
	xhci: Fix Link TRB DMA in command ring stopped completion event
	Revert "driver core: Fix uevent_show() vs driver detach race"
	wifi: mac80211: do not pass a stopped vif to the driver in .get_txpower
	wifi: ath10k: Fix memory leak in management tx
	wifi: iwlegacy: Clear stale interrupts before resuming device
	staging: iio: frequency: ad9832: fix division by zero in ad9832_calc_freqreg()
	nilfs2: fix potential deadlock with newly created symlinks
	riscv: Remove unused GENERATING_ASM_OFFSETS
	ocfs2: pass u64 to ocfs2_truncate_inline maybe overflow
	nilfs2: fix kernel bug due to missing clearing of checked flag
	mm: shmem: fix data-race in shmem_getattr()
	Revert "drm/mipi-dsi: Set the fwnode for mipi_dsi_device"
	vt: prevent kernel-infoleak in con_font_get()
	mac80211: always have ieee80211_sta_restart()
	mm: krealloc: Fix MTE false alarm in __do_krealloc
	Linux 5.4.285

Change-Id: Ie1859b6122e2fdacf18a1fe83f792b855fd0e54c
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-11-09 11:29:17 +00:00
Oleg Nesterov
fe5e9182d3 uprobes: fix kernel info leak via "[uprobes]" vma
commit 34820304cc2cd1804ee1f8f3504ec77813d29c8e upstream.

xol_add_vma() maps the uninitialized page allocated by __create_xol_area()
into userspace. On some architectures (x86) this memory is readable even
without VM_READ, VM_EXEC results in the same pgprot_t as VM_EXEC|VM_READ,
although this doesn't really matter, debugger can read this memory anyway.

Link: https://lore.kernel.org/all/20240929162047.GA12611@redhat.com/

Reported-by: Will Deacon <will@kernel.org>
Fixes: d4b3b6384f ("uprobes/core: Allocate XOL slots for uprobes use")
Cc: stable@vger.kernel.org
Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-08 16:20:42 +01:00
Luo Gengkun
d346599940 perf/core: Fix small negative period being ignored
commit 62c0b1061593d7012292f781f11145b2d46f43ab upstream.

In perf_adjust_period, we will first calculate period, and then use
this period to calculate delta. However, when delta is less than 0,
there will be a deviation compared to when delta is greater than or
equal to 0. For example, when delta is in the range of [-14,-1], the
range of delta = delta + 7 is between [-7,6], so the final value of
delta/8 is 0. Therefore, the impact of -1 and -2 will be ignored.
This is unacceptable when the target period is very short, because
we will lose a lot of samples.

Here are some tests and analyzes:
before:
  # perf record -e cs -F 1000  ./a.out
  [ perf record: Woken up 1 times to write data ]
  [ perf record: Captured and wrote 0.022 MB perf.data (518 samples) ]

  # perf script
  ...
  a.out     396   257.956048:         23 cs:  ffffffff81f4eeec schedul>
  a.out     396   257.957891:         23 cs:  ffffffff81f4eeec schedul>
  a.out     396   257.959730:         23 cs:  ffffffff81f4eeec schedul>
  a.out     396   257.961545:         23 cs:  ffffffff81f4eeec schedul>
  a.out     396   257.963355:         23 cs:  ffffffff81f4eeec schedul>
  a.out     396   257.965163:         23 cs:  ffffffff81f4eeec schedul>
  a.out     396   257.966973:         23 cs:  ffffffff81f4eeec schedul>
  a.out     396   257.968785:         23 cs:  ffffffff81f4eeec schedul>
  a.out     396   257.970593:         23 cs:  ffffffff81f4eeec schedul>
  ...

after:
  # perf record -e cs -F 1000  ./a.out
  [ perf record: Woken up 1 times to write data ]
  [ perf record: Captured and wrote 0.058 MB perf.data (1466 samples) ]

  # perf script
  ...
  a.out     395    59.338813:         11 cs:  ffffffff81f4eeec schedul>
  a.out     395    59.339707:         12 cs:  ffffffff81f4eeec schedul>
  a.out     395    59.340682:         13 cs:  ffffffff81f4eeec schedul>
  a.out     395    59.341751:         13 cs:  ffffffff81f4eeec schedul>
  a.out     395    59.342799:         12 cs:  ffffffff81f4eeec schedul>
  a.out     395    59.343765:         11 cs:  ffffffff81f4eeec schedul>
  a.out     395    59.344651:         11 cs:  ffffffff81f4eeec schedul>
  a.out     395    59.345539:         12 cs:  ffffffff81f4eeec schedul>
  a.out     395    59.346502:         13 cs:  ffffffff81f4eeec schedul>
  ...

test.c

int main() {
        for (int i = 0; i < 20000; i++)
                usleep(10);

        return 0;
}

  # time ./a.out
  real    0m1.583s
  user    0m0.040s
  sys     0m0.298s

The above results were tested on x86-64 qemu with KVM enabled using
test.c as test program. Ideally, we should have around 1500 samples,
but the previous algorithm had only about 500, whereas the modified
algorithm now has about 1400. Further more, the new version shows 1
sample per 0.001s, while the previous one is 1 sample per 0.002s.This
indicates that the new algorithm is more sensitive to small negative
values compared to old algorithm.

Fixes: bd2b5b1284 ("perf_counter: More aggressive frequency adjustment")
Signed-off-by: Luo Gengkun <luogengkun@huaweicloud.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Adrian Hunter <adrian.hunter@intel.com>
Reviewed-by: Kan Liang <kan.liang@linux.intel.com>
Cc: stable@vger.kernel.org
Link: https://lkml.kernel.org/r/20240831074316.2106159-2-luogengkun@huaweicloud.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-11-08 16:20:40 +01:00
Greg Kroah-Hartman
97009b56c6 This is the 5.4.284 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmbirowACgkQONu9yGCS
 aT50ww//X5S6LV/0C9V3+lq0zLBl6X6D0yyNlV4KFISFWoFPo2N13uxQ6+ZQliB5
 gYNRH1b/RBJxa50LjydvCtkJTsWuraZ0uW+tx6GvsfjlC7HeRqGDzOAcFehM9Fjc
 d/nn7J32amJZ2un8Xnf/B16z+WEbBzIq8ca1K2iPb/1+JQsgDFn0LGmyzNUOrdet
 Q2fpsaAzdCa72v9CzKALpK/rgAv8PIcx2dObp3YOX7ccKumP2qWg8s4dLhzYgSZ2
 MQNy55IxBKM7xKlqDPwaBgZipfAUHPPZrHlWYwEVQNIukn9l5ymjfhj8Wv6AqbgO
 KxvSNNpOnsw7ShdczumTY0JimUxziPXVcrZMX04L1a65rWrILiCjLpWPKxIhIRyL
 MIjvVg7GOWjDes+zJaKAO/X0A9oMY/inVLVrQqfWF+igXKsfwaylEqHX/qrdALZL
 /TIE7LV3iVNRm7qq3f4T8lCOGiy+gIhEgnWomzo6caulgQtnm6qmRkAgq/Siuzj1
 AMQt8d/3RNU6EQIuBFGKtYdLo9ccU1BNW773ekF3+szvmGrwp9vlGHCLixIdJt/a
 bGp2+nBr7eOWCjj3Lcm1x3vt+GY5FHBeZJEFLQ+sgSJC16o6UxXFLJeiCLOnLmaA
 r1Q3CrCCawFWDz8MBvM6xX1/XWmattoaUilMRLkqmP0SRKWmgIg=
 =Ii83
 -----END PGP SIGNATURE-----

Merge 5.4.284 into android11-5.4-lts

Changes in 5.4.284
	drm: panel-orientation-quirks: Add quirk for OrangePi Neo
	i2c: Fix conditional for substituting empty ACPI functions
	net: usb: qmi_wwan: add MeiG Smart SRM825L
	drm/amdgpu: Fix uninitialized variable warning in amdgpu_afmt_acr
	drm/amdgpu: fix overflowed array index read warning
	drm/amd/display: Check gpio_id before used as array index
	drm/amd/display: Stop amdgpu_dm initialize when stream nums greater than 6
	drm/amd/display: Check num_valid_sets before accessing reader_wm_sets[]
	drm/amd/display: Fix Coverity INTEGER_OVERFLOW within dal_gpio_service_create
	drm/amdgpu: fix ucode out-of-bounds read warning
	drm/amdgpu: fix mc_data out-of-bounds read warning
	drm/amdkfd: Reconcile the definition and use of oem_id in struct kfd_topology_device
	apparmor: fix possible NULL pointer dereference
	ionic: fix potential irq name truncation
	usbip: Don't submit special requests twice
	usb: typec: ucsi: Fix null pointer dereference in trace
	smack: tcp: ipv4, fix incorrect labeling
	wifi: cfg80211: make hash table duplicates more survivable
	drm/amd/display: Skip wbscl_set_scaler_filter if filter is null
	media: uvcvideo: Enforce alignment of frame and interval
	block: initialize integrity buffer to zero before writing it to media
	net: set SOCK_RCU_FREE before inserting socket into hashtable
	virtio_net: Fix napi_skb_cache_put warning
	udf: Limit file size to 4TB
	i2c: Use IS_REACHABLE() for substituting empty ACPI functions
	sch/netem: fix use after free in netem_dequeue
	ASoC: dapm: Fix UAF for snd_soc_pcm_runtime object
	ALSA: hda/conexant: Add pincfg quirk to enable top speakers on Sirius devices
	ata: libata: Fix memory leak for error path in ata_host_alloc()
	irqchip/gic-v2m: Fix refcount leak in gicv2m_of_init()
	mmc: dw_mmc: Fix IDMAC operation with pages bigger than 4K
	mmc: sdhci-of-aspeed: fix module autoloading
	fuse: update stats for pages in dropped aux writeback list
	fuse: use unsigned type for getxattr/listxattr size truncation
	reset: hi6220: Add support for AO reset controller
	clk: hi6220: use CLK_OF_DECLARE_DRIVER
	clk: qcom: clk-alpha-pll: Fix the pll post div mask
	clk: qcom: clk-alpha-pll: Fix the trion pll postdiv set rate API
	ila: call nf_unregister_net_hooks() sooner
	sched: sch_cake: fix bulk flow accounting logic for host fairness
	nilfs2: fix missing cleanup on rollforward recovery error
	nilfs2: fix state management in error path of log writing function
	ALSA: hda: Add input value sanity checks to HDMI channel map controls
	smack: unix sockets: fix accept()ed socket label
	irqchip/armada-370-xp: Do not allow mapping IRQ 0 and 1
	af_unix: Remove put_pid()/put_cred() in copy_peercred().
	netfilter: nf_conncount: fix wrong variable type
	udf: Avoid excessive partition lengths
	wifi: brcmsmac: advertise MFP_CAPABLE to enable WPA3
	usb: uas: set host status byte on data completion error
	PCI: keystone: Add workaround for Errata #i2037 (AM65x SR 1.0)
	media: qcom: camss: Add check for v4l2_fwnode_endpoint_parse
	pcmcia: Use resource_size function on resource object
	can: bcm: Remove proc entry when dev is unregistered.
	igb: Fix not clearing TimeSync interrupts for 82580
	platform/x86: dell-smbios: Fix error path in dell_smbios_init()
	tcp_bpf: fix return value of tcp_bpf_sendmsg()
	cx82310_eth: re-enable ethernet mode after router reboot
	drivers/net/usb: Remove all strcpy() uses
	net: usb: don't write directly to netdev->dev_addr
	usbnet: modern method to get random MAC
	net: bridge: fdb: convert is_local to bitops
	net: bridge: fdb: convert is_static to bitops
	net: bridge: fdb: convert is_sticky to bitops
	net: bridge: fdb: convert added_by_user to bitops
	net: bridge: fdb: convert added_by_external_learn to use bitops
	net: bridge: br_fdb_external_learn_add(): always set EXT_LEARN
	net: dsa: vsc73xx: fix possible subblocks range of CAPT block
	ASoC: topology: Properly initialize soc_enum values
	dm init: Handle minors larger than 255
	iommu/vt-d: Handle volatile descriptor status read
	cgroup: Protect css->cgroup write under css_set_lock
	um: line: always fill *error_out in setup_one_line()
	devres: Initialize an uninitialized struct member
	pci/hotplug/pnv_php: Fix hotplug driver crash on Powernv
	hwmon: (adc128d818) Fix underflows seen when writing limit attributes
	hwmon: (lm95234) Fix underflows seen when writing limit attributes
	hwmon: (nct6775-core) Fix underflows seen when writing limit attributes
	hwmon: (w83627ehf) Fix underflows seen when writing limit attributes
	libbpf: Add NULL checks to bpf_object__{prev_map,next_map}
	wifi: mwifiex: Do not return unused priv in mwifiex_get_priv_by_id()
	smp: Add missing destroy_work_on_stack() call in smp_call_on_cpu()
	btrfs: replace BUG_ON with ASSERT in walk_down_proc()
	btrfs: clean up our handling of refs == 0 in snapshot delete
	PCI: Add missing bridge lock to pci_bus_lock()
	btrfs: initialize location to fix -Wmaybe-uninitialized in btrfs_lookup_dentry()
	HID: cougar: fix slab-out-of-bounds Read in cougar_report_fixup
	Input: uinput - reject requests with unreasonable number of slots
	usbnet: ipheth: race between ipheth_close and error handling
	Squashfs: sanity check symbolic link size
	of/irq: Prevent device address out-of-bounds read in interrupt map walk
	lib/generic-radix-tree.c: Fix rare race in __genradix_ptr_alloc()
	ata: pata_macio: Use WARN instead of BUG
	NFSv4: Add missing rescheduling points in nfs_client_return_marked_delegations
	staging: iio: frequency: ad9834: Validate frequency parameter value
	iio: buffer-dmaengine: fix releasing dma channel on error
	iio: fix scale application in iio_convert_raw_to_processed_unlocked
	binder: fix UAF caused by offsets overwrite
	nvmem: Fix return type of devm_nvmem_device_get() in kerneldoc
	uio_hv_generic: Fix kernel NULL pointer dereference in hv_uio_rescind
	Drivers: hv: vmbus: Fix rescind handling in uio_hv_generic
	VMCI: Fix use-after-free when removing resource in vmci_resource_remove()
	clocksource/drivers/imx-tpm: Fix return -ETIME when delta exceeds INT_MAX
	clocksource/drivers/imx-tpm: Fix next event not taking effect sometime
	clocksource/drivers/timer-of: Remove percpu irq related code
	uprobes: Use kzalloc to allocate xol area
	ring-buffer: Rename ring_buffer_read() to read_buffer_iter_advance()
	tracing: Avoid possible softlockup in tracing_iter_reset()
	nilfs2: replace snprintf in show functions with sysfs_emit
	nilfs2: protect references to superblock parameters exposed in sysfs
	ACPI: processor: Return an error if acpi_processor_get_info() fails in processor_add()
	ACPI: processor: Fix memory leaks in error paths of processor_add()
	arm64: acpi: Move get_cpu_for_acpi_id() to a header
	arm64: acpi: Harden get_cpu_for_acpi_id() against missing CPU entry
	nvmet-tcp: fix kernel crash if commands allocation fails
	drm/i915/fence: Mark debug_fence_init_onstack() with __maybe_unused
	drm/i915/fence: Mark debug_fence_free() with __maybe_unused
	rtmutex: Drop rt_mutex::wait_lock before scheduling
	net, sunrpc: Remap EPERM in case of connection failure in xs_tcp_setup_socket
	cx82310_eth: fix error return code in cx82310_bind()
	Revert "parisc: Use irq_enter_rcu() to fix warning at kernel/context_tracking.c:367"
	Linux 5.4.284

Change-Id: Iafe252fcdd21fee8cffd209d616f8af16c9f4153
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-09-12 10:37:37 +00:00
Sven Schnelle
c6011b495d uprobes: Use kzalloc to allocate xol area
commit e240b0fde52f33670d1336697c22d90a4fe33c84 upstream.

To prevent unitialized members, use kzalloc to allocate
the xol area.

Fixes: b059a453b1 ("x86/vdso: Add mremap hook to vm_special_mapping")
Signed-off-by: Sven Schnelle <svens@linux.ibm.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Oleg Nesterov <oleg@redhat.com>
Link: https://lore.kernel.org/r/20240903102313.3402529-1-svens@linux.ibm.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-09-12 11:03:56 +02:00
Greg Kroah-Hartman
147724ba5f This is the 5.4.282 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmbCvnsACgkQONu9yGCS
 aT45Zw/9FM9SGzzJpl0jFgvbKhOufwdtzg/CNBRoqFybE+Zmpy0dJvzuurYQFmJZ
 bh6b9oPRGKBzT6aolOcN2bxjT1IlvTZ950CIbfYHD38qA7bhkeBKK9i8kuz7REUQ
 Bs8H7xMMK9xHrLUWb6gVPfPy2vPiBIE7IMzlhCrKKneInR3OANG70hM3USpt44/1
 BxuA87kjJHMe/He4AL7jVL4AO8EpZYrO5WuYA49aLEtrVFKOtbKQ1HgzhUsDgFI4
 FA5MXTBx7Cw7NKLcYkykbdScPJ7ZZgakY8283F0s+E8BdqcabeH/l1lvK4/EqHGC
 mnz6+9CmSnjyI7pW/X5FCXssmznoxBd9btnLM2ap9610veRqRuolo6VQpv6ONO53
 SYMKEkUs2CjS7adG8uGv2+C0t4nw2jWJjjNkyic72vZwlZL9BTJitiy3q96KFYmD
 OoRK6e7UQYgraRY8FmirMOjicKtBXASLDvfZ3KuZVconbloQTeYO9mRMLVsTt7Qn
 gag021ogc++Ps/75TrmygT5/rv4sV9vXWk/1pFsTdcAdn6kHVTtI+QHACLljrms8
 nEQGI/ZET9fZaCrLz56dfswLZzxjemJ7vLMGoweEXltXCG/e6d1tHGW3prYo2ZXC
 +wR6jw9q8kSoCSahACDkryAeQsnMkoIoDAJEktnRhBSCtGpUbZE=
 =zKyu
 -----END PGP SIGNATURE-----

Merge 5.4.282 into android11-5.4-lts

Changes in 5.4.282
	EDAC, skx_common: Refactor so that we initialize "dev" in result of adxl decode.
	EDAC, skx: Retrieve and print retry_rd_err_log registers
	EDAC/skx_common: Add new ADXL components for 2-level memory
	EDAC, i10nm: make skx_common.o a separate module
	platform/chrome: cros_ec_debugfs: fix wrong EC message version
	hfsplus: fix to avoid false alarm of circular locking
	x86/of: Return consistent error type from x86_of_pci_irq_enable()
	x86/pci/intel_mid_pci: Fix PCIBIOS_* return code handling
	x86/pci/xen: Fix PCIBIOS_* return code handling
	x86/platform/iosf_mbi: Convert PCIBIOS_* return codes to errnos
	hwmon: (adt7475) Fix default duty on fan is disabled
	pwm: stm32: Always do lazy disabling
	hwmon: (max6697) Fix underflow when writing limit attributes
	hwmon: (max6697) Fix swapped temp{1,8} critical alarms
	arm64: dts: qcom: sdm845: add power-domain to UFS PHY
	arm64: dts: qcom: msm8996: specify UFS core_clk frequencies
	arm64: dts: rockchip: Increase VOP clk rate on RK3328
	ARM: dts: imx6qdl-kontron-samx6i: move phy reset into phy-node
	ARM: dts: imx6qdl-kontron-samx6i: fix PHY reset
	ARM: dts: imx6qdl-kontron-samx6i: fix board reset
	ARM: dts: imx6qdl-kontron-samx6i: fix PCIe reset polarity
	arm64: dts: mediatek: mt7622: fix "emmc" pinctrl mux
	arm64: dts: amlogic: gx: correct hdmi clocks
	m68k: atari: Fix TT bootup freeze / unexpected (SCU) interrupt messages
	x86/xen: Convert comma to semicolon
	m68k: cmpxchg: Fix return value for default case in __arch_xchg()
	firmware: turris-mox-rwtm: Fix checking return value of wait_for_completion_timeout()
	firmware: turris-mox-rwtm: Initialize completion before mailbox
	wifi: brcmsmac: LCN PHY code is used for BCM4313 2G-only device
	net/smc: Allow SMC-D 1MB DMB allocations
	net/smc: set rmb's SG_MAX_SINGLE_ALLOC limitation only when CONFIG_ARCH_NO_SG_CHAIN is defined
	selftests/bpf: Check length of recv in test_sockmap
	lib: objagg: Fix general protection fault
	mlxsw: spectrum_acl_erp: Fix object nesting warning
	wifi: cfg80211: fix typo in cfg80211_calculate_bitrate_he()
	wifi: cfg80211: handle 2x996 RU allocation in cfg80211_calculate_bitrate_he()
	net: fec: Refactor: #define magic constants
	net: fec: Fix FEC_ECR_EN1588 being cleared on link-down
	ipvs: Avoid unnecessary calls to skb_is_gso_sctp
	netfilter: nf_tables: rise cap on SELinux secmark context
	perf/x86/intel/pt: Fix pt_topa_entry_for_page() address calculation
	perf: Fix perf_aux_size() for greater-than 32-bit size
	perf: Prevent passing zero nr_pages to rb_alloc_aux()
	qed: Improve the stack space of filter_config()
	wifi: virt_wifi: avoid reporting connection success with wrong SSID
	gss_krb5: Fix the error handling path for crypto_sync_skcipher_setkey
	wifi: virt_wifi: don't use strlen() in const context
	bna: adjust 'name' buf size of bna_tcb and bna_ccb structures
	selftests: forwarding: devlink_lib: Wait for udev events after reloading
	USB: move snd_usb_pipe_sanity_check into the USB core
	media: dvb-usb: Fix unexpected infinite loop in dvb_usb_read_remote_control()
	media: imon: Fix race getting ictx->lock
	saa7134: Unchecked i2c_transfer function result fixed
	media: uvcvideo: Allow entity-defined get_info and get_cur
	media: uvcvideo: Override default flags
	media: renesas: vsp1: Fix _irqsave and _irq mix
	media: renesas: vsp1: Store RPF partition configuration per RPF instance
	leds: trigger: Unregister sysfs attributes before calling deactivate()
	perf report: Fix condition in sort__sym_cmp()
	drm/etnaviv: fix DMA direction handling for cached RW buffers
	drm/qxl: Add check for drm_cvt_mode
	mfd: omap-usb-tll: Use struct_size to allocate tll
	SUNRPC: avoid soft lockup when transmitting UDP to reachable server.
	ext4: avoid writing unitialized memory to disk in EA inodes
	sparc64: Fix incorrect function signature and add prototype for prom_cif_init
	SUNRPC: Fixup gss_status tracepoint error output
	PCI: Fix resource double counting on remove & rescan
	Input: qt1050 - handle CHIP_ID reading error
	RDMA/mlx4: Fix truncated output warning in mad.c
	RDMA/mlx4: Fix truncated output warning in alias_GUID.c
	RDMA/rxe: Don't set BTH_ACK_MASK for UC or UD QPs
	ASoC: max98088: Check for clk_prepare_enable() error
	mtd: make mtd_test.c a separate module
	RDMA/device: Return error earlier if port in not valid
	Input: elan_i2c - do not leave interrupt disabled on suspend failure
	MIPS: Octeron: remove source file executable bit
	powerpc/xmon: Fix disassembly CPU feature checks
	macintosh/therm_windtunnel: fix module unload.
	bnxt_re: Fix imm_data endianness
	netfilter: ctnetlink: use helper function to calculate expect ID
	pinctrl: core: fix possible memory leak when pinctrl_enable() fails
	pinctrl: single: fix possible memory leak when pinctrl_enable() fails
	pinctrl: ti: ti-iodelay: Drop if block with always false condition
	pinctrl: ti: ti-iodelay: fix possible memory leak when pinctrl_enable() fails
	pinctrl: freescale: mxs: Fix refcount of child
	fs/nilfs2: remove some unused macros to tame gcc
	nilfs2: avoid undefined behavior in nilfs_cnt32_ge macro
	rtc: interface: Add RTC offset to alarm after fix-up
	tick/broadcast: Make takeover of broadcast hrtimer reliable
	net: netconsole: Disable target before netpoll cleanup
	af_packet: Handle outgoing VLAN packets without hardware offloading
	ipv6: take care of scope when choosing the src addr
	char: tpm: Fix possible memory leak in tpm_bios_measurements_open()
	media: venus: fix use after free in vdec_close
	hfs: fix to initialize fields of hfs_inode_info after hfs_alloc_inode()
	drm/gma500: fix null pointer dereference in cdv_intel_lvds_get_modes
	drm/gma500: fix null pointer dereference in psb_intel_lvds_get_modes
	drm/amd/display: Check for NULL pointer
	udf: Avoid using corrupted block bitmap buffer
	m68k: amiga: Turn off Warp1260 interrupts during boot
	ext4: check dot and dotdot of dx_root before making dir indexed
	ext4: make sure the first directory block is not a hole
	wifi: mwifiex: Fix interface type change
	leds: ss4200: Convert PCIBIOS_* return codes to errnos
	tools/memory-model: Fix bug in lock.cat
	hwrng: amd - Convert PCIBIOS_* return codes to errnos
	PCI: hv: Return zero, not garbage, when reading PCI_INTERRUPT_PIN
	binder: fix hang of unregistered readers
	scsi: qla2xxx: Return ENOBUFS if sg_cnt is more than one for ELS cmds
	f2fs: fix to don't dirty inode for readonly filesystem
	clk: davinci: da8xx-cfgchip: Initialize clk_init_data before use
	ubi: eba: properly rollback inside self_check_eba
	decompress_bunzip2: fix rare decompression failure
	kobject_uevent: Fix OOB access within zap_modalias_env()
	rtc: cmos: Fix return value of nvmem callbacks
	scsi: qla2xxx: During vport delete send async logout explicitly
	scsi: qla2xxx: Fix for possible memory corruption
	scsi: qla2xxx: Complete command early within lock
	scsi: qla2xxx: validate nvme_local_port correctly
	perf/x86/intel/pt: Fix topa_entry base length
	perf/x86/intel/pt: Fix a topa_entry base address calculation
	rtc: isl1208: Fix return value of nvmem callbacks
	watchdog/perf: properly initialize the turbo mode timestamp and rearm counter
	platform: mips: cpu_hwmon: Disable driver on unsupported hardware
	RDMA/iwcm: Fix a use-after-free related to destroying CM IDs
	selftests/sigaltstack: Fix ppc64 GCC build
	rbd: don't assume rbd_is_lock_owner() for exclusive mappings
	drm/panfrost: Mark simple_ondemand governor as softdep
	rbd: rename RBD_LOCK_STATE_RELEASING and releasing_wait
	rbd: don't assume RBD_LOCK_STATE_LOCKED for exclusive mappings
	Bluetooth: btusb: Add RTL8852BE device 0489:e125 to device tables
	Bluetooth: btusb: Add Realtek RTL8852BE support ID 0x13d3:0x3591
	nilfs2: handle inconsistent state in nilfs_btnode_create_block()
	kdb: address -Wformat-security warnings
	kdb: Use the passed prompt in kdb_position_cursor()
	jfs: Fix array-index-out-of-bounds in diFree
	um: time-travel: fix time-travel-start option
	libbpf: Fix no-args func prototype BTF dumping syntax
	dma: fix call order in dmam_free_coherent
	MIPS: SMP-CPS: Fix address for GCR_ACCESS register for CM3 and later
	ipv4: Fix incorrect source address in Record Route option
	net: bonding: correctly annotate RCU in bond_should_notify_peers()
	tipc: Return non-zero value from tipc_udp_addr2str() on error
	net: nexthop: Initialize all fields in dumped nexthops
	bpf: Fix a segment issue when downgrading gso_size
	mISDN: Fix a use after free in hfcmulti_tx()
	apparmor: Fix null pointer deref when receiving skb during sock creation
	powerpc: fix a file leak in kvm_vcpu_ioctl_enable_cap()
	ASoC: Intel: Convert to new X86 CPU match macros
	ASoC: Intel: Move soc_intel_is_foo() helpers to a generic header
	ASoC: Intel: use soc_intel_is_byt_cr() only when IOSF_MBI is reachable
	nvme-pci: add missing condition check for existence of mapped data
	mm: avoid overflows in dirty throttling logic
	PCI: rockchip: Make 'ep-gpios' DT property optional
	PCI: rockchip: Use GPIOD_OUT_LOW flag while requesting ep_gpio
	parport: Convert printk(KERN_<LEVEL> to pr_<level>(
	parport: Standardize use of printmode
	dev/parport: fix the array out-of-bounds risk
	driver core: Cast to (void *) with __force for __percpu pointer
	devres: Fix memory leakage caused by driver API devm_free_percpu()
	genirq: Allow the PM device to originate from irq domain
	irqchip/imx-irqsteer: Constify irq_chip struct
	irqchip/imx-irqsteer: Add runtime PM support
	irqchip/imx-irqsteer: Handle runtime power management correctly
	remoteproc: imx_rproc: ignore mapping vdev regions
	remoteproc: imx_rproc: Fix ignoring mapping vdev regions
	remoteproc: imx_rproc: Skip over memory region when node value is NULL
	drm/nouveau: prime: fix refcount underflow
	drm/vmwgfx: Fix overlay when using Screen Targets
	net/iucv: fix use after free in iucv_sock_close()
	net/mlx5e: Add a check for the return value from mlx5_port_set_eth_ptys
	ipv6: fix ndisc_is_useropt() handling for PIO
	HID: wacom: Modify pen IDs
	protect the fetch of ->fd[fd] in do_dup2() from mispredictions
	ALSA: usb-audio: Correct surround channels in UAC1 channel map
	net: usb: sr9700: fix uninitialized variable use in sr_mdio_read
	netfilter: ipset: Add list flush to cancel_gc
	genirq: Allow irq_chip registration functions to take a const irq_chip
	irqchip/mbigen: Fix mbigen node address layout
	x86/mm: Fix pti_clone_pgtable() alignment assumption
	sctp: move hlist_node and hashent out of sctp_ep_common
	sctp: Fix null-ptr-deref in reuseport_add_sock().
	net: usb: qmi_wwan: fix memory leak for not ip packets
	net: linkwatch: use system_unbound_wq
	Bluetooth: l2cap: always unlock channel in l2cap_conless_channel()
	net: fec: Stop PPS on driver remove
	md/raid5: avoid BUG_ON() while continue reshape after reassembling
	clocksource/drivers/sh_cmt: Address race condition for clock events
	ACPI: battery: create alarm sysfs attribute atomically
	ACPI: SBS: manage alarm sysfs attribute through psy core
	selftests/bpf: Fix send_signal test with nested CONFIG_PARAVIRT
	PCI: Add Edimax Vendor ID to pci_ids.h
	udf: prevent integer overflow in udf_bitmap_free_blocks()
	wifi: nl80211: don't give key data to userspace
	btrfs: fix bitmap leak when loading free space cache on duplicate entry
	drm/amdgpu: Fix the null pointer dereference to ras_manager
	media: uvcvideo: Ignore empty TS packets
	media: uvcvideo: Fix the bandwdith quirk on USB 3.x
	jbd2: avoid memleak in jbd2_journal_write_metadata_buffer
	s390/sclp: Prevent release of buffer in I/O
	SUNRPC: Fix a race to wake a sync task
	ext4: fix wrong unit use in ext4_mb_find_by_goal
	arm64: cpufeature: Force HWCAP to be based on the sysreg visible to user-space
	arm64: Add Neoverse-V2 part
	arm64: cputype: Add Cortex-X4 definitions
	arm64: cputype: Add Neoverse-V3 definitions
	arm64: errata: Add workaround for Arm errata 3194386 and 3312417
	arm64: cputype: Add Cortex-X3 definitions
	arm64: cputype: Add Cortex-A720 definitions
	arm64: cputype: Add Cortex-X925 definitions
	arm64: errata: Unify speculative SSBS errata logic
	arm64: errata: Expand speculative SSBS workaround
	arm64: cputype: Add Cortex-X1C definitions
	arm64: cputype: Add Cortex-A725 definitions
	arm64: errata: Expand speculative SSBS workaround (again)
	i2c: smbus: Don't filter out duplicate alerts
	i2c: smbus: Improve handling of stuck alerts
	i2c: smbus: Send alert notifications to all devices if source not found
	bpf: kprobe: remove unused declaring of bpf_kprobe_override
	spi: fsl-lpspi: remove unneeded array
	spi: spi-fsl-lpspi: Fix scldiv calculation
	drm/client: fix null pointer dereference in drm_client_modeset_probe
	ALSA: line6: Fix racy access to midibuf
	ALSA: hda: Add HP MP9 G4 Retail System AMS to force connect list
	ALSA: hda/hdmi: Yet more pin fix for HP EliteDesk 800 G4
	usb: vhci-hcd: Do not drop references before new references are gained
	USB: serial: debug: do not echo input by default
	usb: gadget: core: Check for unset descriptor
	scsi: ufs: core: Fix hba->last_dme_cmd_tstamp timestamp updating logic
	tick/broadcast: Move per CPU pointer access into the atomic section
	ntp: Clamp maxerror and esterror to operating range
	driver core: Fix uevent_show() vs driver detach race
	ntp: Safeguard against time_constant overflow
	scsi: mpt3sas: Remove scsi_dma_map() error messages
	scsi: mpt3sas: Avoid IOMMU page faults on REPORT ZONES
	serial: core: check uartclk for zero to avoid divide by zero
	genirq/irqdesc: Honor caller provided affinity in alloc_desc()
	power: supply: axp288_charger: Fix constant_charge_voltage writes
	power: supply: axp288_charger: Round constant_charge_voltage writes down
	tracing: Fix overflow in get_free_elt()
	x86/mtrr: Check if fixed MTRRs exist before saving them
	drm/bridge: analogix_dp: properly handle zero sized AUX transactions
	drm/mgag200: Set DDC timeout in milliseconds
	Fix gcc 4.9 build issue in 5.4.y
	kbuild: Fix '-S -c' in x86 stack protector scripts
	netfilter: nf_tables: set element extended ACK reporting support
	netfilter: nf_tables: use timestamp to check for set element timeout
	netfilter: nf_tables: prefer nft_chain_validate
	drm/i915/gem: Fix Virtual Memory mapping boundaries calculation
	arm64: cpufeature: Fix the visibility of compat hwcaps
	media: uvcvideo: Use entity get_cur in uvc_ctrl_set
	exec: Fix ToCToU between perm check and set-uid/gid usage
	nvme/pci: Add APST quirk for Lenovo N60z laptop
	ARM: dts: imx6qdl-kontron-samx6i: fix phy-mode
	media: Revert "media: dvb-usb: Fix unexpected infinite loop in dvb_usb_read_remote_control()"
	Linux 5.4.282

Change-Id: I6d0e4d26021c20136cefafa63b138db47b4069b8
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-08-28 08:50:45 +00:00
Adrian Hunter
b54962dc4e perf: Prevent passing zero nr_pages to rb_alloc_aux()
[ Upstream commit dbc48c8f41c208082cfa95e973560134489e3309 ]

nr_pages is unsigned long but gets passed to rb_alloc_aux() as an int,
and is stored as an int.

Only power-of-2 values are accepted, so if nr_pages is a 64_bit value, it
will be passed to rb_alloc_aux() as zero.

That is not ideal because:
 1. the value is incorrect
 2. rb_alloc_aux() is at risk of misbehaving, although it manages to
 return -ENOMEM in that case, it is a result of passing zero to get_order()
 even though the get_order() result is documented to be undefined in that
 case.

Fix by simply validating the maximum supported value in the first place.
Use -ENOMEM error code for consistency with the current error code that
is returned in that case.

Fixes: 45bfb2e504 ("perf: Add AUX area to ring buffer for raw data streams")
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/r/20240624201101.60186-6-adrian.hunter@intel.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-08-19 05:33:29 +02:00
Adrian Hunter
7d87d26bd1 perf: Fix perf_aux_size() for greater-than 32-bit size
[ Upstream commit 3df94a5b1078dfe2b0c03f027d018800faf44c82 ]

perf_buffer->aux_nr_pages uses a 32-bit type, so a cast is needed to
calculate a 64-bit size.

Fixes: 45bfb2e504 ("perf: Add AUX area to ring buffer for raw data streams")
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/r/20240624201101.60186-5-adrian.hunter@intel.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-08-19 05:33:29 +02:00
Greg Kroah-Hartman
a54d566214 This is the 5.4.279 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmaHnBoACgkQONu9yGCS
 aT4KXw/+M5G1Gt2DC4yL2NdbzioQEtKfGooj3WkVkwB5YxlcojVOmYYv9p1QiseK
 gIKGphjjTojqg7mEtTOI/xoTkfV1sdI7yi6hAkIGNI832iPC4Ji2jXgdbwdfQNci
 gT94CbNDucjRzIRJqliEuA1DYV9t2lUv1pgr1BeALJLdY5IH12XxvGpEny2YEsWN
 zHab/ajwhqLxLJuiX9rhUwY3tfCdSgifP5woRImKrTMGdggWTF7p1Ngb7EwUTmuD
 trVxOeFiNacnNzyoQO5JLtnXIN1Uu1ckbs1+4CQoZF9pMA9hIFE/qi6V3ewa1DtW
 737wNl1cZAlzrkssnmX1+fEWMOpul+J1npb0Q8ney2+0HXRQhEtncsSFBOD2iydC
 I2Ng1CPDxgc59Qq6eDimnamgEkq9Fwkf7ObPeDr5qQzrU4aAlHf8YeIotKcAfOFE
 2LJyVTmFd4fICMYg1kTOVI5fSH3EfCTCH/LPvsdzF3pd1FUZuKkBsXgbVKR73AVR
 hfmO0BpfGL66qbWE6L/bwfVxYwxnVdrgzPWpBrhV+zEKxSR/8kk3EPlF9jgTak4p
 iIunaXzXh/vst1N3McYb4fpoMrpS515Y5ZLxBj6Jw9tiy+US7mpXJ153RZG2b757
 G06fzgT4qJz4md6nvBtiuUwZrEd1RG3EDg04JUdvgri37BdTlC0=
 =20kv
 -----END PGP SIGNATURE-----

Merge 5.4.279 into android11-5.4-lts

Changes in 5.4.279
	wifi: mac80211: mesh: Fix leak of mesh_preq_queue objects
	wifi: mac80211: Fix deadlock in ieee80211_sta_ps_deliver_wakeup()
	wifi: cfg80211: pmsr: use correct nla_get_uX functions
	wifi: iwlwifi: mvm: revert gen2 TX A-MPDU size to 64
	wifi: iwlwifi: dbg_ini: move iwl_dbg_tlv_free outside of debugfs ifdef
	wifi: iwlwifi: mvm: don't read past the mfuart notifcation
	ipv6: sr: block BH in seg6_output_core() and seg6_input_core()
	net: sched: sch_multiq: fix possible OOB write in multiq_tune()
	vxlan: Fix regression when dropping packets due to invalid src addresses
	tcp: count CLOSE-WAIT sockets for TCP_MIB_CURRESTAB
	net/mlx5: Stop waiting for PCI if pci channel is offline
	net/sched: taprio: always validate TCA_TAPRIO_ATTR_PRIOMAP
	ptp: Fix error message on failed pin verification
	af_unix: Annotate data-race of sk->sk_state in unix_inq_len().
	af_unix: Annotate data-races around sk->sk_state in unix_write_space() and poll().
	af_unix: Annotate data-races around sk->sk_state in sendmsg() and recvmsg().
	af_unix: Annotate data-races around sk->sk_state in UNIX_DIAG.
	af_unix: Annotate data-race of net->unx.sysctl_max_dgram_qlen.
	af_unix: Use unix_recvq_full_lockless() in unix_stream_connect().
	af_unix: Use skb_queue_len_lockless() in sk_diag_show_rqlen().
	af_unix: Annotate data-race of sk->sk_shutdown in sk_diag_fill().
	ipv6: fix possible race in __fib6_drop_pcpu_from()
	usb: gadget: f_fs: Fix race between aio_cancel() and AIO request complete
	ASoC: ti: davinci-mcasp: remove redundant assignment to variable ret
	ASoC: ti: davinci-mcasp: remove always zero of davinci_mcasp_get_dt_params
	ASoC: ti: davinci-mcasp: Use platform_get_irq_byname_optional
	ASoC: ti: davinci-mcasp: Remove legacy dma_request parsing
	ASoC: ti: davinci-mcasp: Simplify the configuration parameter handling
	ASoC: ti: davinci-mcasp: Handle missing required DT properties
	ASoC: ti: davinci-mcasp: Fix race condition during probe
	drm/amd/display: Handle Y carry-over in VCP X.Y calculation
	serial: sc16is7xx: replace hardcoded divisor value with BIT() macro
	serial: sc16is7xx: fix bug in sc16is7xx_set_baud() when using prescaler
	selftests/mm: compaction_test: fix incorrect write of zero to nr_hugepages
	selftests/mm: conform test to TAP format output
	selftests/mm: compaction_test: fix bogus test success on Aarch64
	nilfs2: Remove check for PageError
	nilfs2: return the mapped address from nilfs_get_page()
	nilfs2: fix nilfs_empty_dir() misjudgment and long loop on I/O errors
	USB: class: cdc-wdm: Fix CPU lockup caused by excessive log messages
	mei: me: release irq in mei_me_pci_resume error path
	jfs: xattr: fix buffer overflow for invalid xattr
	xhci: Set correct transferred length for cancelled bulk transfers
	xhci: Apply reset resume quirk to Etron EJ188 xHCI host
	xhci: Apply broken streams quirk to Etron EJ188 xHCI host
	scsi: mpt3sas: Avoid test/set_bit() operating in non-allocated memory
	Input: try trimming too long modalias strings
	SUNRPC: return proper error from gss_wrap_req_priv
	gpio: tqmx86: fix typo in Kconfig label
	HID: core: remove unnecessary WARN_ON() in implement()
	iommu/amd: Fix sysfs leak in iommu init
	iommu: Return right value in iommu_sva_bind_device()
	HID: logitech-dj: Fix memory leak in logi_dj_recv_switch_to_dj_mode()
	liquidio: Adjust a NULL pointer handling path in lio_vf_rep_copy_packet
	drm/komeda: check for error-valued pointer
	drm/bridge/panel: Fix runtime warning on panel bridge release
	tcp: fix race in tcp_v6_syn_recv_sock()
	net/mlx5e: Fix features validation check for tunneled UDP (non-VXLAN) packets
	Bluetooth: L2CAP: Fix rejecting L2CAP_CONN_PARAM_UPDATE_REQ
	netfilter: ipset: Fix race between namespace cleanup and gc in the list:set type
	net/ipv6: Fix the RT cache flush via sysctl using a previous delay
	ionic: fix use after netif_napi_del()
	drivers: core: synchronize really_probe() and dev_uevent()
	drm/exynos/vidi: fix memory leak in .get_modes()
	drm/exynos: hdmi: report safe 640x480 mode as a fallback when no EDID found
	tracing/selftests: Fix kprobe event name test for .isra. functions
	vmci: prevent speculation leaks by sanitizing event in event_deliver()
	fs/proc: fix softlockup in __read_vmcore
	ocfs2: use coarse time for new created files
	ocfs2: fix races between hole punching and AIO+DIO
	PCI: rockchip-ep: Remove wrong mask on subsys_vendor_id
	dmaengine: axi-dmac: fix possible race in remove()
	intel_th: pci: Add Granite Rapids support
	intel_th: pci: Add Granite Rapids SOC support
	intel_th: pci: Add Sapphire Rapids SOC support
	intel_th: pci: Add Meteor Lake-S support
	intel_th: pci: Add Lunar Lake support
	nilfs2: fix potential kernel bug due to lack of writeback flag waiting
	tick/nohz_full: Don't abuse smp_call_function_single() in tick_setup_device()
	hv_utils: drain the timesync packets on onchannelcallback
	hugetlb_encode.h: fix undefined behaviour (34 << 26)
	netfilter: nftables: exthdr: fix 4-byte stack OOB write
	greybus: Fix use-after-free bug in gb_interface_release due to race condition.
	usb-storage: alauda: Check whether the media is initialized
	i2c: at91: Fix the functionality flags of the slave-only interface
	rcutorture: Fix rcu_torture_one_read() pipe_count overflow comment
	selftests/bpf: Prevent client connect before server bind in test_tc_tunnel.sh
	batman-adv: bypass empty buckets in batadv_purge_orig_ref()
	drop_monitor: replace spin_lock by raw_spin_lock
	scsi: qedi: Fix crash while reading debugfs attribute
	Bluetooth: ath3k: Fix multiple issues reported by checkpatch.pl
	powerpc/pseries: Enforce hcall result buffer validity and size
	powerpc/io: Avoid clang null pointer arithmetic warnings
	usb: misc: uss720: check for incompatible versions of the Belkin F5U002
	udf: udftime: prevent overflow in udf_disk_stamp_to_time()
	PCI/PM: Avoid D3cold for HP Pavilion 17 PC/1972 PCIe Ports
	MIPS: Octeon: Add PCIe link status check
	MIPS: Routerboard 532: Fix vendor retry check code
	mips: bmips: BCM6358: make sure CBR is correctly set
	cipso: fix total option length computation
	netrom: Fix a memory leak in nr_heartbeat_expiry()
	ipv6: prevent possible NULL deref in fib6_nh_init()
	ipv6: prevent possible NULL dereference in rt6_probe()
	xfrm6: check ip6_dst_idev() return value in xfrm6_get_saddr()
	netns: Make get_net_ns() handle zero refcount net
	net/sched: act_api: rely on rcu in tcf_idr_check_alloc
	net/sched: act_api: fix possible infinite loop in tcf_idr_check_alloc()
	virtio_net: checksum offloading handling fix
	netfilter: ipset: Fix suspicious rcu_dereference_protected()
	net: usb: rtl8150 fix unintiatilzed variables in rtl8150_get_link_ksettings
	regulator: core: Fix modpost error "regulator_get_regmap" undefined
	dmaengine: ioatdma: Fix missing kmem_cache_destroy()
	ACPICA: Revert "ACPICA: avoid Info: mapping multiple BARs. Your kernel is fine."
	drm/radeon: fix UBSAN warning in kv_dpm.c
	gcov: add support for GCC 14
	i2c: ocores: set IACK bit after core is enabled
	ARM: dts: samsung: smdkv310: fix keypad no-autorepeat
	ARM: dts: samsung: exynos4412-origen: fix keypad no-autorepeat
	ARM: dts: samsung: smdk4412: fix keypad no-autorepeat
	arm64: dts: qcom: qcs404: fix bluetooth device address
	tracing: Add MODULE_DESCRIPTION() to preemptirq_delay_test
	Revert "kheaders: substituting --sort in archive creation"
	kheaders: explicitly define file modes for archived headers
	perf/core: Fix missing wakeup when waiting for context reference
	PCI: Add PCI_ERROR_RESPONSE and related definitions
	x86/amd_nb: Check for invalid SMN reads
	iio: dac: ad5592r-base: Replace indio_dev->mlock with own device lock
	iio: dac: ad5592r: un-indent code-block for scale read
	iio: dac: ad5592r: fix temperature channel scaling value
	pinctrl: fix deadlock in create_pinctrl() when handling -EPROBE_DEFER
	pinctrl: rockchip: fix pinmux bits for RK3328 GPIO2-B pins
	pinctrl: rockchip: fix pinmux bits for RK3328 GPIO3-B pins
	pinctrl: rockchip: fix pinmux reset in rockchip_pmx_set
	drm/amdgpu: fix UBSAN warning in kv_dpm.c
	netfilter: nf_tables: validate family when identifying table via handle
	ASoC: fsl-asoc-card: set priv->pdev before using it
	net: dsa: microchip: fix initial port flush problem
	net: phy: mchp: Add support for LAN8814 QUAD PHY
	net: phy: micrel: add Microchip KSZ 9477 to the device table
	sparc: fix old compat_sys_select()
	parisc: use correct compat recv/recvfrom syscalls
	netfilter: nf_tables: fully validate NFT_DATA_VALUE on store to data registers
	drm/panel: ilitek-ili9881c: Fix warning with GPIO controllers that sleep
	mtd: partitions: redboot: Added conversion of operands to a larger type
	net/iucv: Avoid explicit cpumask var allocation on stack
	net/dpaa2: Avoid explicit cpumask var allocation on stack
	ALSA: emux: improve patch ioctl data validation
	media: dvbdev: Initialize sbuf
	soc: ti: wkup_m3_ipc: Send NULL dummy message instead of pointer message
	nvme: fixup comment for nvme RDMA Provider Type
	gpio: davinci: Validate the obtained number of IRQs
	x86: stop playing stack games in profile_pc()
	mmc: sdhci-pci: Convert PCIBIOS_* return codes to errnos
	mmc: sdhci: Do not invert write-protect twice
	mmc: sdhci: Do not lock spinlock around mmc_gpio_get_ro()
	iio: adc: ad7266: Fix variable checking bug
	iio: chemical: bme680: Fix pressure value output
	iio: chemical: bme680: Fix calibration data variable
	iio: chemical: bme680: Fix overflows in compensate() functions
	iio: chemical: bme680: Fix sensor data read operation
	net: usb: ax88179_178a: improve link status logs
	usb: gadget: printer: SS+ support
	usb: musb: da8xx: fix a resource leak in probe()
	usb: atm: cxacru: fix endpoint checking in cxacru_bind()
	tty: mcf: MCF54418 has 10 UARTS
	net: can: j1939: Initialize unused data in j1939_send_one()
	net: can: j1939: recover socket queue on CAN bus error during BAM transmission
	net: can: j1939: enhanced error handling for tightly received RTS messages in xtp_rx_rts_session_new
	csky, hexagon: fix broken sys_sync_file_range
	hexagon: fix fadvise64_64 calling conventions
	drm/nouveau/dispnv04: fix null pointer dereference in nv17_tv_get_ld_modes
	drm/nouveau/dispnv04: fix null pointer dereference in nv17_tv_get_hd_modes
	batman-adv: Don't accept TT entries for out-of-spec VIDs
	ata: libata-core: Fix double free on error
	ftruncate: pass a signed offset
	mtd: spinand: macronix: Add support for serial NAND flash
	pwm: stm32: Refuse too small period requests
	nfs: Leave pages in the pagecache if readpage failed
	ipv6: annotate some data-races around sk->sk_prot
	ipv6: Fix data races around sk->sk_prot.
	tcp: Fix data races around icsk->icsk_af_ops.
	ARM: dts: rockchip: rk3066a: add #sound-dai-cells to hdmi node
	arm64: dts: rockchip: Add sound-dai-cells for RK3368
	Linux 5.4.279

Change-Id: Ifcf570b7d23466607fe4283c33089efdc5d83dc2
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-07-08 13:55:50 +00:00
Haifeng Xu
5bbf6ad532 perf/core: Fix missing wakeup when waiting for context reference
[ Upstream commit 74751ef5c1912ebd3e65c3b65f45587e05ce5d36 ]

In our production environment, we found many hung tasks which are
blocked for more than 18 hours. Their call traces are like this:

[346278.191038] __schedule+0x2d8/0x890
[346278.191046] schedule+0x4e/0xb0
[346278.191049] perf_event_free_task+0x220/0x270
[346278.191056] ? init_wait_var_entry+0x50/0x50
[346278.191060] copy_process+0x663/0x18d0
[346278.191068] kernel_clone+0x9d/0x3d0
[346278.191072] __do_sys_clone+0x5d/0x80
[346278.191076] __x64_sys_clone+0x25/0x30
[346278.191079] do_syscall_64+0x5c/0xc0
[346278.191083] ? syscall_exit_to_user_mode+0x27/0x50
[346278.191086] ? do_syscall_64+0x69/0xc0
[346278.191088] ? irqentry_exit_to_user_mode+0x9/0x20
[346278.191092] ? irqentry_exit+0x19/0x30
[346278.191095] ? exc_page_fault+0x89/0x160
[346278.191097] ? asm_exc_page_fault+0x8/0x30
[346278.191102] entry_SYSCALL_64_after_hwframe+0x44/0xae

The task was waiting for the refcount become to 1, but from the vmcore,
we found the refcount has already been 1. It seems that the task didn't
get woken up by perf_event_release_kernel() and got stuck forever. The
below scenario may cause the problem.

Thread A					Thread B
...						...
perf_event_free_task				perf_event_release_kernel
						   ...
						   acquire event->child_mutex
						   ...
						   get_ctx
   ...						   release event->child_mutex
   acquire ctx->mutex
   ...
   perf_free_event (acquire/release event->child_mutex)
   ...
   release ctx->mutex
   wait_var_event
						   acquire ctx->mutex
						   acquire event->child_mutex
						   # move existing events to free_list
						   release event->child_mutex
						   release ctx->mutex
						   put_ctx
...						...

In this case, all events of the ctx have been freed, so we couldn't
find the ctx in free_list and Thread A will miss the wakeup. It's thus
necessary to add a wakeup after dropping the reference.

Fixes: 1cf8dfe8a6 ("perf/core: Fix race between close() and fork()")
Signed-off-by: Haifeng Xu <haifeng.xu@shopee.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Cc: stable@vger.kernel.org
Link: https://lkml.kernel.org/r/20240513103948.33570-1-haifeng.xu@shopee.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-07-05 09:08:25 +02:00
Greg Kroah-Hartman
46cf330263 Merge 5.4.274 into android11-5.4-lts
Changes in 5.4.274
	amdkfd: use calloc instead of kzalloc to avoid integer overflow
	Documentation/hw-vuln: Update spectre doc
	x86/cpu: Support AMD Automatic IBRS
	x86/bugs: Use sysfs_emit()
	timers: Update kernel-doc for various functions
	timers: Use del_timer_sync() even on UP
	timers: Rename del_timer_sync() to timer_delete_sync()
	wifi: brcmfmac: Fix use-after-free bug in brcmf_cfg80211_detach
	media: staging: ipu3-imgu: Set fields before media_entity_pads_init()
	clk: qcom: gcc-sdm845: Add soft dependency on rpmhpd
	smack: Set SMACK64TRANSMUTE only for dirs in smack_inode_setxattr()
	smack: Handle SMACK64TRANSMUTE in smack_inode_setsecurity()
	ARM: dts: mmp2-brownstone: Don't redeclare phandle references
	arm: dts: marvell: Fix maxium->maxim typo in brownstone dts
	serial: max310x: fix NULL pointer dereference in I2C instantiation
	media: xc4000: Fix atomicity violation in xc4000_get_frequency
	KVM: Always flush async #PF workqueue when vCPU is being destroyed
	sparc64: NMI watchdog: fix return value of __setup handler
	sparc: vDSO: fix return value of __setup handler
	crypto: qat - fix double free during reset
	crypto: qat - resolve race condition during AER recovery
	selftests/mqueue: Set timeout to 180 seconds
	ext4: correct best extent lstart adjustment logic
	fat: fix uninitialized field in nostale filehandles
	ubifs: Set page uptodate in the correct place
	ubi: Check for too small LEB size in VTBL code
	ubi: correct the calculation of fastmap size
	mtd: rawnand: meson: fix scrambling mode value in command macro
	parisc: Do not hardcode registers in checksum functions
	parisc: Fix ip_fast_csum
	parisc: Fix csum_ipv6_magic on 32-bit systems
	parisc: Fix csum_ipv6_magic on 64-bit systems
	parisc: Strip upper 32 bit of sum in csum_ipv6_magic for 64-bit builds
	PM: suspend: Set mem_sleep_current during kernel command line setup
	clk: qcom: gcc-ipq8074: fix terminating of frequency table arrays
	clk: qcom: mmcc-apq8084: fix terminating of frequency table arrays
	clk: qcom: mmcc-msm8974: fix terminating of frequency table arrays
	powerpc/fsl: Fix mfpmr build errors with newer binutils
	USB: serial: ftdi_sio: add support for GMC Z216C Adapter IR-USB
	USB: serial: add device ID for VeriFone adapter
	USB: serial: cp210x: add ID for MGP Instruments PDS100
	USB: serial: option: add MeiG Smart SLM320 product
	USB: serial: cp210x: add pid/vid for TDK NC0110013M and MM0110113M
	PM: sleep: wakeirq: fix wake irq warning in system suspend
	mmc: tmio: avoid concurrent runs of mmc_request_done()
	fuse: don't unhash root
	btrfs: fix off-by-one chunk length calculation at contains_pending_extent()
	PCI: Drop pci_device_remove() test of pci_dev->driver
	PCI/PM: Drain runtime-idle callbacks before driver removal
	Revert "Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d""
	dm-raid: fix lockdep waring in "pers->hot_add_disk"
	mmc: core: Fix switch on gp3 partition
	hwmon: (amc6821) add of_match table
	ext4: fix corruption during on-line resize
	firmware: meson_sm: Rework driver as a proper platform driver
	nvmem: meson-efuse: fix function pointer type mismatch
	slimbus: core: Remove usage of the deprecated ida_simple_xx() API
	speakup: Fix 8bit characters from direct synth
	kbuild: Move -Wenum-{compare-conditional,enum-conversion} into W=1
	vfio/platform: Disable virqfds on cleanup
	ring-buffer: Fix resetting of shortest_full
	ring-buffer: Fix full_waiters_pending in poll
	soc: fsl: qbman: Always disable interrupts when taking cgr_lock
	soc: fsl: qbman: Add helper for sanity checking cgr ops
	soc: fsl: qbman: Add CGR update function
	soc: fsl: qbman: Use raw spinlock for cgr_lock
	s390/zcrypt: fix reference counting on zcrypt card objects
	drm/exynos: do not return negative values from .get_modes()
	drm/imx/ipuv3: do not return negative values from .get_modes()
	drm/vc4: hdmi: do not return negative values from .get_modes()
	memtest: use {READ,WRITE}_ONCE in memory scanning
	nilfs2: fix failure to detect DAT corruption in btree and direct mappings
	nilfs2: use a more common logging style
	nilfs2: prevent kernel bug at submit_bh_wbc()
	x86/CPU/AMD: Update the Zenbleed microcode revisions
	ahci: asm1064: correct count of reported ports
	ahci: asm1064: asm1166: don't limit reported ports
	dm snapshot: fix lockup in dm_exception_table_exit
	comedi: comedi_test: Prevent timers rescheduling during deletion
	netfilter: nf_tables: mark set as dead when unbinding anonymous set with timeout
	netfilter: nf_tables: disallow anonymous set with timeout flag
	netfilter: nf_tables: reject constant set with timeout
	xfrm: Avoid clang fortify warning in copy_to_user_tmpl()
	ALSA: hda/realtek - Fix headset Mic no show at resume back for Lenovo ALC897 platform
	USB: usb-storage: Prevent divide-by-0 error in isd200_ata_command
	usb: gadget: ncm: Fix handling of zero block length packets
	usb: port: Don't try to peer unused USB ports based on location
	tty: serial: fsl_lpuart: avoid idle preamble pending if CTS is enabled
	vt: fix unicode buffer corruption when deleting characters
	fs/aio: Check IOCB_AIO_RW before the struct aio_kiocb conversion
	objtool: is_fentry_call() crashes if call has no destination
	objtool: Add support for intra-function calls
	x86/speculation: Support intra-function call validation
	xen/events: close evtchn after mapping cleanup
	printk: Update @console_may_schedule in console_trylock_spinning()
	btrfs: allocate btrfs_ioctl_defrag_range_args on stack
	Revert "loop: Check for overflow while configuring loop"
	loop: Call loop_config_discard() only after new config is applied
	loop: Remove sector_t truncation checks
	loop: Factor out setting loop device size
	loop: Refactor loop_set_status() size calculation
	loop: Factor out configuring loop from status
	loop: Check for overflow while configuring loop
	loop: loop_set_status_from_info() check before assignment
	perf/core: Fix reentry problem in perf_output_read_group()
	efivarfs: Request at most 512 bytes for variable names
	powerpc: xor_vmx: Add '-mhard-float' to CFLAGS
	bounds: support non-power-of-two CONFIG_NR_CPUS
	vt: fix memory overlapping when deleting chars in the buffer
	mm/memory-failure: fix an incorrect use of tail pages
	mm/migrate: set swap entry values of THP tail pages properly.
	wifi: mac80211: check/clear fast rx for non-4addr sta VLAN changes
	exec: Fix NOMMU linux_binprm::exec in transfer_args_to_stack()
	mmc: core: Initialize mmc_blk_ioc_data
	mmc: core: Avoid negative index with array access
	usb: cdc-wdm: close race between read and workqueue
	ALSA: sh: aica: reorder cleanup operations to avoid UAF bugs
	scsi: core: Fix unremoved procfs host directory regression
	usb: dwc2: host: Fix remote wakeup from hibernation
	usb: dwc2: host: Fix hibernation flow
	usb: dwc2: host: Fix ISOC flow in DDMA mode
	usb: dwc2: gadget: LPM flow fix
	usb: udc: remove warning when queue disabled ep
	scsi: qla2xxx: Fix command flush on cable pull
	x86/cpu: Enable STIBP on AMD if Automatic IBRS is enabled
	scsi: lpfc: Correct size for wqe for memset()
	USB: core: Fix deadlock in usb_deauthorize_interface()
	nfc: nci: Fix uninit-value in nci_dev_up and nci_ntf_packet
	ixgbe: avoid sleeping allocation in ixgbe_ipsec_vf_add_sa()
	tcp: properly terminate timers for kernel sockets
	dm integrity: fix out-of-range warning
	r8169: fix issue caused by buggy BIOS on certain boards with RTL8168d
	x86/cpufeatures: Add new word for scattered features
	Bluetooth: hci_event: set the conn encrypted before conn establishes
	Bluetooth: Fix TOCTOU in HCI debugfs implementation
	netfilter: nf_tables: disallow timeout for anonymous sets
	net/rds: fix possible cp null dereference
	vfio/pci: Disable auto-enable of exclusive INTx IRQ
	vfio/pci: Lock external INTx masking ops
	vfio: Introduce interface to flush virqfd inject workqueue
	vfio/pci: Create persistent INTx handler
	vfio/platform: Create persistent IRQ handlers
	Revert "x86/mm/ident_map: Use gbpages only where full GB page should be mapped."
	mm, vmscan: prevent infinite loop for costly GFP_NOIO | __GFP_RETRY_MAYFAIL allocations
	netfilter: nf_tables: flush pending destroy work before exit_net release
	netfilter: nf_tables: Fix potential data-race in __nft_flowtable_type_get()
	bpf, sockmap: Prevent lock inversion deadlock in map delete elem
	net/sched: act_skbmod: prevent kernel-infoleak
	net: stmmac: fix rx queue priority assignment
	selftests: reuseaddr_conflict: add missing new line at the end of the output
	ipv6: Fix infinite recursion in fib6_dump_done().
	i40e: fix vf may be used uninitialized in this function warning
	staging: mmal-vchiq: Allocate and free components as required
	staging: mmal-vchiq: Fix client_component for 64 bit kernel
	staging: vc04_services: changen strncpy() to strscpy_pad()
	staging: vc04_services: fix information leak in create_component()
	fs: add a vfs_fchown helper
	fs: add a vfs_fchmod helper
	initramfs: switch initramfs unpacking to struct file based APIs
	init: open /initrd.image with O_LARGEFILE
	erspan: Add type I version 0 support.
	erspan: make sure erspan_base_hdr is present in skb->head
	net: ravb: Always process TX descriptor ring
	ASoC: ops: Fix wraparound for mask in snd_soc_get_volsw
	ata: sata_sx4: fix pdc20621_get_from_dimm() on 64-bit
	scsi: mylex: Fix sysfs buffer lengths
	ata: sata_mv: Fix PCI device ID table declaration compilation warning
	ALSA: hda/realtek: Update Panasonic CF-SZ6 quirk to support headset with microphone
	x86/mce: Make sure to grab mce_sysfs_mutex in set_bank()
	s390/entry: align system call table on 8 bytes
	wifi: ath9k: fix LNA selection in ath_ant_try_scan()
	VMCI: Fix memcpy() run-time warning in dg_dispatch_as_host()
	panic: Flush kernel log buffer at the end
	arm64: dts: rockchip: fix rk3328 hdmi ports node
	arm64: dts: rockchip: fix rk3399 hdmi ports node
	ionic: set adminq irq affinity
	tools/power x86_energy_perf_policy: Fix file leak in get_pkg_num()
	btrfs: handle chunk tree lookup error in btrfs_relocate_sys_chunks()
	btrfs: export: handle invalid inode or root reference in btrfs_get_parent()
	btrfs: send: handle path ref underflow in header iterate_inode_ref()
	Bluetooth: btintel: Fix null ptr deref in btintel_read_version
	Input: synaptics-rmi4 - fail probing if memory allocation for "phys" fails
	sysv: don't call sb_bread() with pointers_lock held
	scsi: lpfc: Fix possible memory leak in lpfc_rcv_padisc()
	isofs: handle CDs with bad root inode but good Joliet root directory
	media: sta2x11: fix irq handler cast
	drm/amd/display: Fix nanosec stat overflow
	SUNRPC: increase size of rpc_wait_queue.qlen from unsigned short to unsigned int
	Revert "ACPI: PM: Block ASUS B1400CEAE from suspend to idle by default"
	block: prevent division by zero in blk_rq_stat_sum()
	Input: allocate keycode for Display refresh rate toggle
	ktest: force $buildonly = 1 for 'make_warnings_file' test type
	tools: iio: replace seekdir() in iio_generic_buffer
	usb: typec: tcpci: add generic tcpci fallback compatible
	usb: sl811-hcd: only defined function checkdone if QUIRK2 is defined
	fbdev: viafb: fix typo in hw_bitblt_1 and hw_bitblt_2
	fbmon: prevent division by zero in fb_videomode_from_videomode()
	netfilter: nf_tables: reject new basechain after table flag update
	netfilter: nf_tables: release batch on table validation from abort path
	netfilter: nf_tables: release mutex after nft_gc_seq_end from abort path
	netfilter: nf_tables: discard table flag update with pending basechain deletion
	tty: n_gsm: require CAP_NET_ADMIN to attach N_GSM0710 ldisc
	drm/vkms: call drm_atomic_helper_shutdown before drm_dev_put()
	virtio: reenable config if freezing device failed
	x86/mm/pat: fix VM_PAT handling in COW mappings
	drm/i915/gt: Reset queue_priority_hint on parking
	x86/alternative: Don't call text_poke() in lazy TLB mode
	Bluetooth: btintel: Fixe build regression
	VMCI: Fix possible memcpy() run-time warning in vmci_datagram_invoke_guest_handler()
	erspan: Check IFLA_GRE_ERSPAN_VER is set.
	ip_gre: do not report erspan version on GRE interface
	firmware: meson_sm: fix to avoid potential NULL pointer dereference
	Linux 5.4.274

Change-Id: I759c99412f0d27d194308663aa08ab3682a1c43c
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-04-18 07:23:10 +00:00
Yang Jihong
37a65df6a9 perf/core: Fix reentry problem in perf_output_read_group()
commit 6b959ba22d34ca793ffdb15b5715457c78e38b1a upstream.

perf_output_read_group may respond to IPI request of other cores and invoke
__perf_install_in_context function. As a result, hwc configuration is modified.
causing inconsistency and unexpected consequences.

Interrupts are not disabled when perf_output_read_group reads PMU counter.
In this case, IPI request may be received from other cores.
As a result, PMU configuration is modified and an error occurs when
reading PMU counter:

		     CPU0                                         CPU1
						      __se_sys_perf_event_open
							perf_install_in_context
  perf_output_read_group                                  smp_call_function_single
    for_each_sibling_event(sub, leader) {                   generic_exec_single
      if ((sub != event) &&                                   remote_function
	  (sub->state == PERF_EVENT_STATE_ACTIVE))                    |
  <enter IPI handler: __perf_install_in_context>   <----RAISE IPI-----+
  __perf_install_in_context
    ctx_resched
      event_sched_out
	armpmu_del
	  ...
	  hwc->idx = -1; // event->hwc.idx is set to -1
  ...
  <exit IPI>
	      sub->pmu->read(sub);
		armpmu_read
		  armv8pmu_read_counter
		    armv8pmu_read_hw_counter
		      int idx = event->hw.idx; // idx = -1
		      u64 val = armv8pmu_read_evcntr(idx);
			u32 counter = ARMV8_IDX_TO_COUNTER(idx); // invalid counter = 30
			read_pmevcntrn(counter) // undefined instruction

Signed-off-by: Yang Jihong <yangjihong1@huawei.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20220902082918.179248-1-yangjihong1@huawei.com
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@igalia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-04-13 12:51:30 +02:00
Greg Kroah-Hartman
806fb883ea This is the 5.4.269 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmXYSHgACgkQONu9yGCS
 aT74ag/6AqWJBzK/2xvUCYjfBU5+4ApFWQt47Ly9MKFhFX7YBjQGXS6av1YFA9Kw
 i01R9SCpIv2eaDrM7/J0wvXGybemfvQ8VyNngG30QC/0jTc4ZAj0PEbtyHpUaz4F
 HWOFfAlHAYcLQWhmjhXitoGUfeyhchWnQZpn45mkT0i3DSAEFc5gsiMlO+jaM8No
 hOaAHEpGsd7zlH32NYpWrFI0i54HSCwlaHlQFJ7U+rbWyG935RdLjMAX+488R8oc
 KccOj+xb4zQyASdC7qdgPz02U7Tm3UB5s0lLrviDiBrYVxSe77vw2TBEeejF+7ZE
 oYqjsygRYmRbKuI55rxyxph7cT93ZctL48DZJ4fT4zVIT9kak3S/NtFs0Hyr3TkY
 N6ZlDnd10cj8QsnXXtTd9QgT7Ind+3KySv7sr4a/gLO/N39EYpztrMCc/lKfG/Bu
 MPDMXBrEtKkjMelcnISwac9QcOb/MAJaepCWtYgcXbEcaBP+/Or8OM0yZPOEk7SA
 3CamE+ou0Ds/c6gnsBw6WDMTJd+sX6sw6+4cMEaWzaWiE12Ryc0gscCDJXjEAYzc
 +47PiPijNJ+iPjsos8ZaNnTQHALemgJ4cjolHivsEvAYU1s5cyKjVEgMB1MJN8ib
 y19D9L8T9BtG2ukWBxtIXMIt51VZ7B8fXodcYXbyqtV25JZj/k8=
 =cJfu
 -----END PGP SIGNATURE-----

Merge 5.4.269 into android11-5.4-lts

Changes in 5.4.269
	PCI: mediatek: Clear interrupt status before dispatching handler
	include/linux/units.h: add helpers for kelvin to/from Celsius conversion
	units: Add Watt units
	units: change from 'L' to 'UL'
	units: add the HZ macros
	serial: sc16is7xx: set safe default SPI clock frequency
	spi: introduce SPI_MODE_X_MASK macro
	serial: sc16is7xx: add check for unsupported SPI modes during probe
	ext4: allow for the last group to be marked as trimmed
	crypto: api - Disallow identical driver names
	PM: hibernate: Enforce ordering during image compression/decompression
	hwrng: core - Fix page fault dead lock on mmap-ed hwrng
	rpmsg: virtio: Free driver_override when rpmsg_remove()
	parisc/firmware: Fix F-extend for PDC addresses
	arm64: dts: qcom: sdm845: fix USB wakeup interrupt types
	mmc: core: Use mrq.sbc in close-ended ffu
	nouveau/vmm: don't set addr on the fail path to avoid warning
	ubifs: ubifs_symlink: Fix memleak of inode->i_link in error path
	rename(): fix the locking of subdirectories
	block: Remove special-casing of compound pages
	mtd: spinand: macronix: Fix MX35LFxGE4AD page size
	fs: add mode_strip_sgid() helper
	fs: move S_ISGID stripping into the vfs_*() helpers
	powerpc: Use always instead of always-y in for crtsavres.o
	x86/CPU/AMD: Fix disabling XSAVES on AMD family 0x17 due to erratum
	net/smc: fix illegal rmb_desc access in SMC-D connection dump
	vlan: skip nested type that is not IFLA_VLAN_QOS_MAPPING
	llc: make llc_ui_sendmsg() more robust against bonding changes
	llc: Drop support for ETH_P_TR_802_2.
	net/rds: Fix UBSAN: array-index-out-of-bounds in rds_cmsg_recv
	tracing: Ensure visibility when inserting an element into tracing_map
	afs: Hide silly-rename files from userspace
	tcp: Add memory barrier to tcp_push()
	netlink: fix potential sleeping issue in mqueue_flush_file
	net/mlx5: DR, Use the right GVMI number for drop action
	net/mlx5: Use kfree(ft->g) in arfs_create_groups()
	net/mlx5e: fix a double-free in arfs_create_groups
	netfilter: nf_tables: restrict anonymous set and map names to 16 bytes
	netfilter: nf_tables: validate NFPROTO_* family
	fjes: fix memleaks in fjes_hw_setup
	net: fec: fix the unhandled context fault from smmu
	btrfs: ref-verify: free ref cache before clearing mount opt
	btrfs: tree-checker: fix inline ref size in error messages
	btrfs: don't warn if discard range is not aligned to sector
	btrfs: defrag: reject unknown flags of btrfs_ioctl_defrag_range_args
	rbd: don't move requests to the running list on errors
	netfilter: nf_tables: reject QUEUE/DROP verdict parameters
	gpiolib: acpi: Ignore touchpad wakeup on GPD G1619-04
	drm: Don't unref the same fb many times by mistake due to deadlock handling
	drm/bridge: nxp-ptn3460: fix i2c_master_send() error checking
	drm/bridge: nxp-ptn3460: simplify some error checking
	drm/exynos: fix accidental on-stack copy of exynos_drm_plane
	drm/exynos: gsc: minor fix for loop iteration in gsc_runtime_resume
	gpio: eic-sprd: Clear interrupt after set the interrupt type
	spi: bcm-qspi: fix SFDP BFPT read by usig mspi read
	mips: Call lose_fpu(0) before initializing fcr31 in mips_set_personality_nan
	tick/sched: Preserve number of idle sleeps across CPU hotplug events
	x86/entry/ia32: Ensure s32 is sign extended to s64
	powerpc/mm: Fix null-pointer dereference in pgtable_cache_add
	powerpc: Fix build error due to is_valid_bugaddr()
	powerpc/mm: Fix build failures due to arch_reserved_kernel_pages()
	powerpc: pmd_move_must_withdraw() is only needed for CONFIG_TRANSPARENT_HUGEPAGE
	powerpc/lib: Validate size for vector operations
	x86/mce: Mark fatal MCE's page as poison to avoid panic in the kdump kernel
	perf/core: Fix narrow startup race when creating the perf nr_addr_filters sysfs file
	regulator: core: Only increment use_count when enable_count changes
	audit: Send netlink ACK before setting connection in auditd_set
	ACPI: video: Add quirk for the Colorful X15 AT 23 Laptop
	PNP: ACPI: fix fortify warning
	ACPI: extlog: fix NULL pointer dereference check
	FS:JFS:UBSAN:array-index-out-of-bounds in dbAdjTree
	UBSAN: array-index-out-of-bounds in dtSplitRoot
	jfs: fix slab-out-of-bounds Read in dtSearch
	jfs: fix array-index-out-of-bounds in dbAdjTree
	jfs: fix uaf in jfs_evict_inode
	pstore/ram: Fix crash when setting number of cpus to an odd number
	crypto: stm32/crc32 - fix parsing list of devices
	afs: fix the usage of read_seqbegin_or_lock() in afs_find_server*()
	rxrpc_find_service_conn_rcu: fix the usage of read_seqbegin_or_lock()
	jfs: fix array-index-out-of-bounds in diNewExt
	s390/ptrace: handle setting of fpc register correctly
	KVM: s390: fix setting of fpc register
	SUNRPC: Fix a suspicious RCU usage warning
	ecryptfs: Reject casefold directory inodes
	ext4: fix inconsistent between segment fstrim and full fstrim
	ext4: unify the type of flexbg_size to unsigned int
	ext4: remove unnecessary check from alloc_flex_gd()
	ext4: avoid online resizing failures due to oversized flex bg
	wifi: rt2x00: restart beacon queue when hardware reset
	selftests/bpf: satisfy compiler by having explicit return in btf test
	selftests/bpf: Fix pyperf180 compilation failure with clang18
	scsi: lpfc: Fix possible file string name overflow when updating firmware
	PCI: Add no PM reset quirk for NVIDIA Spectrum devices
	bonding: return -ENOMEM instead of BUG in alb_upper_dev_walk
	ARM: dts: imx7d: Fix coresight funnel ports
	ARM: dts: imx7s: Fix lcdif compatible
	ARM: dts: imx7s: Fix nand-controller #size-cells
	wifi: ath9k: Fix potential array-index-out-of-bounds read in ath9k_htc_txstatus()
	bpf: Add map and need_defer parameters to .map_fd_put_ptr()
	scsi: libfc: Don't schedule abort twice
	scsi: libfc: Fix up timeout error in fc_fcp_rec_error()
	ARM: dts: rockchip: fix rk3036 hdmi ports node
	ARM: dts: imx25/27-eukrea: Fix RTC node name
	ARM: dts: imx: Use flash@0,0 pattern
	ARM: dts: imx27: Fix sram node
	ARM: dts: imx1: Fix sram node
	ARM: dts: imx25/27: Pass timing0
	ARM: dts: imx27-apf27dev: Fix LED name
	ARM: dts: imx23-sansa: Use preferred i2c-gpios properties
	ARM: dts: imx23/28: Fix the DMA controller node name
	block: prevent an integer overflow in bvec_try_merge_hw_page
	md: Whenassemble the array, consult the superblock of the freshest device
	arm64: dts: qcom: msm8996: Fix 'in-ports' is a required property
	arm64: dts: qcom: msm8998: Fix 'out-ports' is a required property
	wifi: rtl8xxxu: Add additional USB IDs for RTL8192EU devices
	wifi: rtlwifi: rtl8723{be,ae}: using calculate_bit_shift()
	wifi: cfg80211: free beacon_ies when overridden from hidden BSS
	f2fs: fix to check return value of f2fs_reserve_new_block()
	ASoC: doc: Fix undefined SND_SOC_DAPM_NOPM argument
	fast_dput(): handle underflows gracefully
	RDMA/IPoIB: Fix error code return in ipoib_mcast_join
	drm/drm_file: fix use of uninitialized variable
	drm/framebuffer: Fix use of uninitialized variable
	drm/mipi-dsi: Fix detach call without attach
	media: stk1160: Fixed high volume of stk1160_dbg messages
	media: rockchip: rga: fix swizzling for RGB formats
	PCI: add INTEL_HDA_ARL to pci_ids.h
	ALSA: hda: Intel: add HDA_ARL PCI ID support
	drm/exynos: Call drm_atomic_helper_shutdown() at shutdown/unbind time
	IB/ipoib: Fix mcast list locking
	media: ddbridge: fix an error code problem in ddb_probe
	drm/msm/dpu: Ratelimit framedone timeout msgs
	clk: hi3620: Fix memory leak in hi3620_mmc_clk_init()
	clk: mmp: pxa168: Fix memory leak in pxa168_clk_init()
	drm/amdgpu: Let KFD sync with VM fences
	drm/amdgpu: Drop 'fence' check in 'to_amdgpu_amdkfd_fence()'
	leds: trigger: panic: Don't register panic notifier if creating the trigger failed
	um: Fix naming clash between UML and scheduler
	um: Don't use vfprintf() for os_info()
	um: net: Fix return type of uml_net_start_xmit()
	i3c: master: cdns: Update maximum prescaler value for i2c clock
	mfd: ti_am335x_tscadc: Fix TI SoC dependencies
	PCI: Only override AMD USB controller if required
	PCI: switchtec: Fix stdev_release() crash after surprise hot remove
	usb: hub: Replace hardcoded quirk value with BIT() macro
	fs/kernfs/dir: obey S_ISGID
	PCI/AER: Decode Requester ID when no error info found
	libsubcmd: Fix memory leak in uniq()
	virtio_net: Fix "‘%d’ directive writing between 1 and 11 bytes into a region of size 10" warnings
	blk-mq: fix IO hang from sbitmap wakeup race
	ceph: fix deadlock or deadcode of misusing dget()
	drm/amdgpu: Release 'adev->pm.fw' before return in 'amdgpu_device_need_post()'
	perf: Fix the nr_addr_filters fix
	wifi: cfg80211: fix RCU dereference in __cfg80211_bss_update
	scsi: isci: Fix an error code problem in isci_io_request_build()
	net: remove unneeded break
	ixgbe: Remove non-inclusive language
	ixgbe: Refactor returning internal error codes
	ixgbe: Refactor overtemp event handling
	ixgbe: Fix an error handling path in ixgbe_read_iosf_sb_reg_x550()
	ipv6: Ensure natural alignment of const ipv6 loopback and router addresses
	llc: call sock_orphan() at release time
	netfilter: nf_log: replace BUG_ON by WARN_ON_ONCE when putting logger
	netfilter: nft_ct: sanitize layer 3 and 4 protocol number in custom expectations
	net: ipv4: fix a memleak in ip_setup_cork
	af_unix: fix lockdep positive in sk_diag_dump_icons()
	net: sysfs: Fix /sys/class/net/<iface> path
	HID: apple: Add support for the 2021 Magic Keyboard
	HID: apple: Swap the Fn and Left Control keys on Apple keyboards
	HID: apple: Add 2021 magic keyboard FN key mapping
	bonding: remove print in bond_verify_device_path
	dmaengine: fsl-qdma: Fix a memory leak related to the status queue DMA
	dmaengine: fsl-qdma: Fix a memory leak related to the queue command DMA
	phy: renesas: rcar-gen3-usb2: Fix returning wrong error code
	dmaengine: fix is_slave_direction() return false when DMA_DEV_TO_DEV
	phy: ti: phy-omap-usb2: Fix NULL pointer dereference for SRP
	net: stmmac: xgmac: fix handling of DPP safety error for DMA channels
	selftests: net: avoid just another constant wait
	atm: idt77252: fix a memleak in open_card_ubr0
	hwmon: (aspeed-pwm-tacho) mutex for tach reading
	hwmon: (coretemp) Fix out-of-bounds memory access
	hwmon: (coretemp) Fix bogus core_id to attr name mapping
	inet: read sk->sk_family once in inet_recv_error()
	rxrpc: Fix response to PING RESPONSE ACKs to a dead call
	tipc: Check the bearer type before calling tipc_udp_nl_bearer_add()
	ppp_async: limit MRU to 64K
	netfilter: nft_compat: reject unused compat flag
	netfilter: nft_compat: restrict match/target protocol to u16
	netfilter: nft_ct: reject direction for ct id
	net/af_iucv: clean up a try_then_request_module()
	USB: serial: qcserial: add new usb-id for Dell Wireless DW5826e
	USB: serial: option: add Fibocom FM101-GL variant
	USB: serial: cp210x: add ID for IMST iM871A-USB
	hrtimer: Report offline hrtimer enqueue
	Input: atkbd - skip ATKBD_CMD_SETLEDS when skipping ATKBD_CMD_GETID
	vhost: use kzalloc() instead of kmalloc() followed by memset()
	net: stmmac: xgmac: use #define for string constants
	net: stmmac: xgmac: fix a typo of register name in DPP safety handling
	netfilter: nft_set_rbtree: skip end interval element from gc
	btrfs: forbid creating subvol qgroups
	btrfs: forbid deleting live subvol qgroup
	btrfs: send: return EOPNOTSUPP on unknown flags
	of: unittest: add overlay gpio test to catch gpio hog problem
	of: unittest: Fix compile in the non-dynamic case
	spi: ppc4xx: Drop write-only variable
	ASoC: rt5645: Fix deadlock in rt5645_jack_detect_work()
	MIPS: Add 'memory' clobber to csum_ipv6_magic() inline assembler
	i40e: Fix waiting for queues of all VSIs to be disabled
	tracing/trigger: Fix to return error if failed to alloc snapshot
	mm/writeback: fix possible divide-by-zero in wb_dirty_limits(), again
	HID: wacom: generic: Avoid reporting a serial of '0' to userspace
	HID: wacom: Do not register input devices until after hid_hw_start
	USB: hub: check for alternate port before enabling A_ALT_HNP_SUPPORT
	usb: f_mass_storage: forbid async queue when shutdown happen
	i2c: i801: Remove i801_set_block_buffer_mode
	i2c: i801: Fix block process call transactions
	scsi: Revert "scsi: fcoe: Fix potential deadlock on &fip->ctlr_lock"
	firewire: core: correct documentation of fw_csr_string() kernel API
	kbuild: Fix changing ELF file type for output of gen_btf for big endian
	nfc: nci: free rx_data_reassembly skb on NCI device cleanup
	xen-netback: properly sync TX responses
	ALSA: hda/realtek: Enable headset mic on Vaio VJFE-ADL
	binder: signal epoll threads of self-work
	misc: fastrpc: Mark all sessions as invalid in cb_remove
	ext4: fix double-free of blocks due to wrong extents moved_len
	tracing: Fix wasted memory in saved_cmdlines logic
	staging: iio: ad5933: fix type mismatch regression
	iio: magnetometer: rm3100: add boundary check for the value read from RM3100_REG_TMRC
	ring-buffer: Clean ring_buffer_poll_wait() error return
	serial: max310x: set default value when reading clock ready bit
	serial: max310x: improve crystal stable clock detection
	x86/Kconfig: Transmeta Crusoe is CPU family 5, not 6
	x86/mm/ident_map: Use gbpages only where full GB page should be mapped.
	mmc: slot-gpio: Allow non-sleeping GPIO ro
	ALSA: hda/conexant: Add quirk for SWS JS201D
	nilfs2: fix data corruption in dsync block recovery for small block sizes
	nilfs2: fix hang in nilfs_lookup_dirty_data_buffers()
	nfp: use correct macro for LengthSelect in BAR config
	nfp: flower: prevent re-adding mac index for bonded port
	irqchip/irq-brcmstb-l2: Add write memory barrier before exit
	can: j1939: Fix UAF in j1939_sk_match_filter during setsockopt(SO_J1939_FILTER)
	pmdomain: core: Move the unused cleanup to a _sync initcall
	tracing: Inform kmemleak of saved_cmdlines allocation
	Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d"
	bus: moxtet: Add spi device table
	arch, mm: remove stale mentions of DISCONIGMEM
	mips: Fix max_mapnr being uninitialized on early stages
	KVM: arm64: vgic-its: Avoid potential UAF in LPI translation cache
	netfilter: ipset: fix performance regression in swap operation
	netfilter: ipset: Missing gc cancellations fixed
	net: prevent mss overflow in skb_segment()
	sched/membarrier: reduce the ability to hammer on sys_membarrier
	nilfs2: fix potential bug in end_buffer_async_write
	PM: runtime: add devm_pm_runtime_enable helper
	PM: runtime: Have devm_pm_runtime_enable() handle pm_runtime_dont_use_autosuspend()
	drm/msm/dsi: Enable runtime PM
	lsm: new security_file_ioctl_compat() hook
	netfilter: nf_tables: fix pointer math issue in nft_byteorder_eval()
	Revert "Revert "mtd: rawnand: gpmi: Fix setting busy timeout setting""
	net: bcmgenet: Fix EEE implementation
	of: unittest: fix EXPECT text for gpio hog errors
	of: gpio unittest kfree() wrong object
	Linux 5.4.269

Change-Id: Iedabcdbe95a83593f102e237f2a80d2fc7206669
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-02-24 15:47:08 +00:00
Peter Zijlstra
ad2bd6cd17 perf: Fix the nr_addr_filters fix
[ Upstream commit 388a1fb7da6aaa1970c7e2a7d7fcd983a87a8484 ]

Thomas reported that commit 652ffc2104ec ("perf/core: Fix narrow
startup race when creating the perf nr_addr_filters sysfs file") made
the entire attribute group vanish, instead of only the nr_addr_filters
attribute.

Additionally a stray return.

Insufficient coffee was involved with both writing and merging the
patch.

Fixes: 652ffc2104ec ("perf/core: Fix narrow startup race when creating the perf nr_addr_filters sysfs file")
Reported-by: Thomas Richter <tmricht@linux.ibm.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Thomas Richter <tmricht@linux.ibm.com>
Link: https://lkml.kernel.org/r/20231122100756.GP8262@noisy.programming.kicks-ass.net
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-02-23 08:25:03 +01:00
Greg KH
aed181fbc2 perf/core: Fix narrow startup race when creating the perf nr_addr_filters sysfs file
[ Upstream commit 652ffc2104ec1f69dd4a46313888c33527145ccf ]

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/2023061204-decal-flyable-6090@gregkh
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-02-23 08:24:54 +01:00
Greg Kroah-Hartman
78f2cf25b1 Reapply "perf: Fix perf_event_validate_size()"
This reverts commit 8eb4011508 which is
commit 382c27f4ed28f803b1f1473ac2d8db0afc795a1b upstream.

Bug: 316932704
Change-Id: I69bfbf5180f57592ce285ea14f6f7b7c1b2b0f8f
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-02-02 03:32:37 +00:00
Greg Kroah-Hartman
a34cc1dcf7 Reapply "perf: Disallow mis-matched inherited group reads"
This reverts commit 4934e8f7a8.

Keeps the ABI stable by taking advantage of a hole in the structure!

Bug: 307236803
Change-Id: Ic5f7ebeb3a9b13afdb3bfff7e54c4a93b863dab6
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-01-31 15:17:06 +00:00
Mark Rutland
404902216b perf: Fix perf_event_validate_size() lockdep splat
commit 7e2c1e4b34f07d9aa8937fab88359d4a0fce468e upstream.

When lockdep is enabled, the for_each_sibling_event(sibling, event)
macro checks that event->ctx->mutex is held. When creating a new group
leader event, we call perf_event_validate_size() on a partially
initialized event where event->ctx is NULL, and so when
for_each_sibling_event() attempts to check event->ctx->mutex, we get a
splat, as reported by Lucas De Marchi:

  WARNING: CPU: 8 PID: 1471 at kernel/events/core.c:1950 __do_sys_perf_event_open+0xf37/0x1080

This only happens for a new event which is its own group_leader, and in
this case there cannot be any sibling events. Thus it's safe to skip the
check for siblings, which avoids having to make invasive and ugly
changes to for_each_sibling_event().

Avoid the splat by bailing out early when the new event is its own
group_leader.

Fixes: 382c27f4ed28f803 ("perf: Fix perf_event_validate_size()")
Closes: https://lore.kernel.org/lkml/20231214000620.3081018-1-lucas.demarchi@intel.com/
Closes: https://lore.kernel.org/lkml/ZXpm6gQ%2Fd59jGsuW@xpf.sh.intel.com/
Reported-by: Lucas De Marchi <lucas.demarchi@intel.com>
Reported-by: Pengfei Xu <pengfei.xu@intel.com>
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20231215112450.3972309-1-mark.rutland@arm.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-12-20 15:41:23 +01:00
Greg Kroah-Hartman
50aa4f43a9 Revert "perf/core: Add a new read format to get a number of lost samples"
This reverts commit 84ca356ec8 which is
commit 119a784c81270eb88e573174ed2209225d646656 upstream.

It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.

Bug: 161946584
Change-Id: I9f973774a99437a3dcfecf32eff8e7ddcfd418ed
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-12-18 19:08:26 +00:00
Greg Kroah-Hartman
8eb4011508 Revert "perf: Fix perf_event_validate_size()"
This reverts commit 152f51d159 which is
commit 382c27f4ed28f803b1f1473ac2d8db0afc795a1b upstream.

It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.

Bug: 161946584
Change-Id: I7db90bfbe74a408b807480c811382e38731f0c53
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-12-18 19:00:55 +00:00
Greg Kroah-Hartman
af6deae771 This is the 5.4.264 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmV5528ACgkQONu9yGCS
 aT7+DxAAl/t4oGT1Di8mIhCfqsezTj/SQ6HAMaAFpKjGXdgTBX9QavwTHp35qLpv
 xZtibdl611oEDT2B3//cvJu9Qs8sJGlDWxpJF8fkF/NED2EHLRwUAOmhc4fyBCBq
 01GfPRefU9G5E0Nw2g3o07dD0otKQzENh74iAzUr/cyju5TBgS4NC7CljiD6GXP8
 DtCcbz2UMmHF5icyasjw7WoCqKaWUn7KLqU3RyQfmDgnh3z0vSXKs17CFoNk1+R6
 EAkZJkrUsIDO3N6aRkJGvwtbEFDws4S7onpcthckXt6IF/OQ+h8LcHvyTpblVeWH
 qVBXmj1QZD+SwfP5qVtM+RwHHTE3GVJI3+MVTInu0vzgEz6lhNPILzWwso+AIhHM
 +SBZkx4/pO2LbrSgqn+NYWRcBTn4fXNURPd+zLXNJ1ZSnhamWm7kuFK8B36lz0s8
 CB5ngLld1wg6m2NVPneqAeEcD54msGd18iNZvnxfx3c28sb27RgLqLJQKdSrtFMH
 tZj0+3KGkYHzWQmt07iLmg1DPAmZSNzMW7MDJRHlqDCKS2gBKO/LKxWiri2WPh+o
 IvgrfGzEJsyYXi5+JcGC9+RkoPcGaous4VA2kWFJSjXiXPrJC4jknQm3mtdMiTf3
 V9DEOMvot9ELGI9RODaNsk59C2RhOuVimm2XWV9n88UcX38reAQ=
 =gOna
 -----END PGP SIGNATURE-----

Merge 5.4.264 into android11-5.4-lts

Changes in 5.4.264
	hrtimers: Push pending hrtimers away from outgoing CPU earlier
	netfilter: ipset: fix race condition between swap/destroy and kernel side add/del/test
	tg3: Move the [rt]x_dropped counters to tg3_napi
	tg3: Increment tx_dropped in tg3_tso_bug()
	kconfig: fix memory leak from range properties
	drm/amdgpu: correct chunk_ptr to a pointer to chunk.
	of: base: Add of_get_cpu_state_node() to get idle states for a CPU node
	ACPI/IORT: Make iort_get_device_domain IRQ domain agnostic
	ACPI/IORT: Make iort_msi_map_rid() PCI agnostic
	of/iommu: Make of_map_rid() PCI agnostic
	of/irq: make of_msi_map_get_device_domain() bus agnostic
	of/irq: Make of_msi_map_rid() PCI bus agnostic
	of: base: Fix some formatting issues and provide missing descriptions
	of: Fix kerneldoc output formatting
	of: Add missing 'Return' section in kerneldoc comments
	of: dynamic: Fix of_reconfig_get_state_change() return value documentation
	ipv6: fix potential NULL deref in fib6_add()
	hv_netvsc: rndis_filter needs to select NLS
	net: arcnet: Fix RESET flag handling
	net: arcnet: com20020 fix error handling
	arcnet: restoring support for multiple Sohard Arcnet cards
	ipv4: ip_gre: Avoid skb_pull() failure in ipgre_xmit()
	net: hns: fix fake link up on xge port
	netfilter: xt_owner: Fix for unsafe access of sk->sk_socket
	tcp: do not accept ACK of bytes we never sent
	bpf: sockmap, updating the sg structure should also update curr
	RDMA/bnxt_re: Correct module description string
	hwmon: (acpi_power_meter) Fix 4.29 MW bug
	ASoC: wm_adsp: fix memleak in wm_adsp_buffer_populate
	tracing: Fix a warning when allocating buffered events fails
	scsi: be2iscsi: Fix a memleak in beiscsi_init_wrb_handle()
	ARM: imx: Check return value of devm_kasprintf in imx_mmdc_perf_init
	ARM: dts: imx: make gpt node name generic
	ARM: dts: imx7: Declare timers compatible with fsl,imx6dl-gpt
	ALSA: pcm: fix out-of-bounds in snd_pcm_state_names
	nilfs2: prevent WARNING in nilfs_sufile_set_segment_usage()
	tracing: Always update snapshot buffer size
	tracing: Fix incomplete locking when disabling buffered events
	tracing: Fix a possible race when disabling buffered events
	packet: Move reference count in packet_sock to atomic_long_t
	arm64: dts: mediatek: mt7622: fix memory node warning check
	arm64: dts: mediatek: mt8173-evb: Fix regulator-fixed node names
	perf/core: Add a new read format to get a number of lost samples
	perf: Fix perf_event_validate_size()
	gpiolib: sysfs: Fix error handling on failed export
	mmc: core: add helpers mmc_regulator_enable/disable_vqmmc
	mmc: sdhci-sprd: Fix vqmmc not shutting down after the card was pulled
	usb: gadget: f_hid: fix report descriptor allocation
	parport: Add support for Brainboxes IX/UC/PX parallel cards
	usb: typec: class: fix typec_altmode_put_partner to put plugs
	ARM: PL011: Fix DMA support
	serial: sc16is7xx: address RX timeout interrupt errata
	serial: 8250_omap: Add earlycon support for the AM654 UART controller
	x86/CPU/AMD: Check vendor in the AMD microcode callback
	KVM: s390/mm: Properly reset no-dat
	nilfs2: fix missing error check for sb_set_blocksize call
	io_uring/af_unix: disable sending io_uring over sockets
	netlink: don't call ->netlink_bind with table lock held
	genetlink: add CAP_NET_ADMIN test for multicast bind
	psample: Require 'CAP_NET_ADMIN' when joining "packets" group
	drop_monitor: Require 'CAP_SYS_ADMIN' when joining "events" group
	tools headers UAPI: Sync linux/perf_event.h with the kernel sources
	Revert "btrfs: add dmesg output for first mount and last unmount of a filesystem"
	cifs: Fix non-availability of dedup breaking generic/304
	smb: client: fix potential NULL deref in parse_dfs_referrals()
	devcoredump : Serialize devcd_del work
	devcoredump: Send uevent once devcd is ready
	Linux 5.4.264

Change-Id: I32d19db2a0ff0cf6d061fa9c8ca527d0b61dd158
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-12-14 13:03:30 +00:00
Peter Zijlstra
152f51d159 perf: Fix perf_event_validate_size()
[ Upstream commit 382c27f4ed28f803b1f1473ac2d8db0afc795a1b ]

Budimir noted that perf_event_validate_size() only checks the size of
the newly added event, even though the sizes of all existing events
can also change due to not all events having the same read_format.

When we attach the new event, perf_group_attach(), we do re-compute
the size for all events.

Fixes: a723968c0e ("perf: Fix u16 overflows")
Reported-by: Budimir Markovic <markovicbudimir@gmail.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-12-13 18:18:15 +01:00
Namhyung Kim
84ca356ec8 perf/core: Add a new read format to get a number of lost samples
[ Upstream commit 119a784c81270eb88e573174ed2209225d646656 ]

Sometimes we want to know an accurate number of samples even if it's
lost.  Currenlty PERF_RECORD_LOST is generated for a ring-buffer which
might be shared with other events.  So it's hard to know per-event
lost count.

Add event->lost_samples field and PERF_FORMAT_LOST to retrieve it from
userspace.

Original-patch-by: Jiri Olsa <jolsa@redhat.com>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20220616180623.1358843-1-namhyung@kernel.org
Stable-dep-of: 382c27f4ed28 ("perf: Fix perf_event_validate_size()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-12-13 18:18:15 +01:00
Greg Kroah-Hartman
a3aeec7ab8 This is the 5.4.262 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmVmGmUACgkQONu9yGCS
 aT4V7A//YzFdP4ANGVpZ7tBob7OxpgGgvEu32zCDx51LQ8n2uJRJ8WBWW6kVOBUZ
 YyUEXzjPPaS7JRS1O7TpCGYFWrH0ue9c/xzyvUQyyHEBZvZVj0P3O1iHlAk2FWSG
 pOTEfW1cFp8vtHwGn82rmIDETu56LMWd+aeVhg6psb2L6ho2LPipCkxN79kbBGSB
 DLfD71O2Pb3mw8ZYHVC5KKIlfODLqjq9N6T+3VsG4uQCEMHTVAHjjoIvYFeSi1cR
 MqPXS4/3GUyYUDTe2tjYznkSfPbdARfD1aKKPEXLuq1+q6WqvHCAG7nwgtPT/gd9
 JPCxm+9DPN9+YhmEsCJpMSq3pD2eTrD5ZXhYFNc5sOsNw0L4oFRLtrB782snerw+
 ogQ8DED4qATn1+x7jfRD7hwMzHih4nAL7zqy32s8knKHfp1+rOOkXfIohfc9qrUI
 svUjb1B+guuGHwFq6YDzxpUxmhdGqOo262cnU4jfH8lxH+w03vyNxxyQn0ZUUe2I
 gkvJ5wNpq4QhD/++B/DaCptw0l5AzfjOO+0xlp20xMzn5qW/BS8W26zUXhGeLOAd
 MHu+fv9DU0mzs3V1MxRvbBQ5gI9TngRWXJSIBCJx5YhZ8gGIhfrzoIzY+IeF6l3F
 idjruirbfujAQv0vQHuz7JmhHrTG+T90slQ/R8pPud73WGz5BMI=
 =A+DX
 -----END PGP SIGNATURE-----

Merge 5.4.262 into android11-5.4-lts

Changes in 5.4.262
	locking/ww_mutex/test: Fix potential workqueue corruption
	perf/core: Bail out early if the request AUX area is out of bound
	clocksource/drivers/timer-imx-gpt: Fix potential memory leak
	clocksource/drivers/timer-atmel-tcb: Fix initialization on SAM9 hardware
	x86/mm: Drop the 4 MB restriction on minimal NUMA node memory size
	wifi: mac80211_hwsim: fix clang-specific fortify warning
	wifi: mac80211: don't return unset power in ieee80211_get_tx_power()
	wifi: ath9k: fix clang-specific fortify warnings
	wifi: ath10k: fix clang-specific fortify warning
	net: annotate data-races around sk->sk_tx_queue_mapping
	net: annotate data-races around sk->sk_dst_pending_confirm
	wifi: ath10k: Don't touch the CE interrupt registers after power up
	Bluetooth: Fix double free in hci_conn_cleanup
	platform/x86: thinkpad_acpi: Add battery quirk for Thinkpad X120e
	drm/komeda: drop all currently held locks if deadlock happens
	drm/amd: Fix UBSAN array-index-out-of-bounds for SMU7
	drm/amd: Fix UBSAN array-index-out-of-bounds for Polaris and Tonga
	drm/amdgpu: Fix a null pointer access when the smc_rreg pointer is NULL
	selftests/efivarfs: create-read: fix a resource leak
	crypto: pcrypt - Fix hungtask for PADATA_RESET
	RDMA/hfi1: Use FIELD_GET() to extract Link Width
	fs/jfs: Add check for negative db_l2nbperpage
	fs/jfs: Add validity check for db_maxag and db_agpref
	jfs: fix array-index-out-of-bounds in dbFindLeaf
	jfs: fix array-index-out-of-bounds in diAlloc
	ARM: 9320/1: fix stack depot IRQ stack filter
	ALSA: hda: Fix possible null-ptr-deref when assigning a stream
	PCI: tegra194: Use FIELD_GET()/FIELD_PREP() with Link Width fields
	atm: iphase: Do PCI error checks on own line
	scsi: libfc: Fix potential NULL pointer dereference in fc_lport_ptp_setup()
	HID: Add quirk for Dell Pro Wireless Keyboard and Mouse KM5221W
	tty: vcc: Add check for kstrdup() in vcc_probe()
	usb: gadget: f_ncm: Always set current gadget in ncm_bind()
	i2c: sun6i-p2wi: Prevent potential division by zero
	media: gspca: cpia1: shift-out-of-bounds in set_flicker
	media: vivid: avoid integer overflow
	gfs2: ignore negated quota changes
	media: cobalt: Use FIELD_GET() to extract Link Width
	drm/amd/display: Avoid NULL dereference of timing generator
	kgdb: Flush console before entering kgdb on panic
	ASoC: ti: omap-mcbsp: Fix runtime PM underflow warnings
	pwm: Fix double shift bug
	wifi: iwlwifi: Use FW rate for non-data frames
	NFSv4.1: fix SP4_MACH_CRED protection for pnfs IO
	ipvlan: add ipvlan_route_v6_outbound() helper
	tty: Fix uninit-value access in ppp_sync_receive()
	net: hns3: fix variable may not initialized problem in hns3_init_mac_addr()
	tipc: Fix kernel-infoleak due to uninitialized TLV value
	ppp: limit MRU to 64K
	xen/events: fix delayed eoi list handling
	ptp: annotate data-race around q->head and q->tail
	bonding: stop the device in bond_setup_by_slave()
	net: ethernet: cortina: Fix max RX frame define
	net: ethernet: cortina: Handle large frames
	net: ethernet: cortina: Fix MTU max setting
	netfilter: nf_conntrack_bridge: initialize err to 0
	net: stmmac: Rework stmmac_rx()
	net: stmmac: fix rx budget limit check
	net/mlx5e: fix double free of encap_header
	net/mlx5_core: Clean driver version and name
	net/mlx5e: Check return value of snprintf writing to fw_version buffer for representors
	macvlan: Don't propagate promisc change to lower dev in passthru
	tools/power/turbostat: Fix a knl bug
	cifs: spnego: add ';' in HOST_KEY_LEN
	media: venus: hfi: add checks to perform sanity on queue pointers
	randstruct: Fix gcc-plugin performance mode to stay in group
	bpf: Fix precision tracking for BPF_ALU | BPF_TO_BE | BPF_END
	scsi: megaraid_sas: Increase register read retry rount from 3 to 30 for selected registers
	x86/cpu/hygon: Fix the CPU topology evaluation for real
	KVM: x86: hyper-v: Don't auto-enable stimer on write from user-space
	KVM: x86: Ignore MSR_AMD64_TW_CFG access
	audit: don't take task_lock() in audit_exe_compare() code path
	audit: don't WARN_ON_ONCE(!current->mm) in audit_exe_compare()
	hvc/xen: fix error path in xen_hvc_init() to always register frontend driver
	PCI/sysfs: Protect driver's D3cold preference from user space
	ACPI: resource: Do IRQ override on TongFang GMxXGxx
	mmc: meson-gx: Remove setting of CMD_CFG_ERROR
	genirq/generic_chip: Make irq_remove_generic_chip() irqdomain aware
	PCI: keystone: Don't discard .remove() callback
	PCI: keystone: Don't discard .probe() callback
	parisc/pdc: Add width field to struct pdc_model
	clk: qcom: ipq8074: drop the CLK_SET_RATE_PARENT flag from PLL clocks
	mmc: vub300: fix an error code
	PM: hibernate: Use __get_safe_page() rather than touching the list
	PM: hibernate: Clean up sync_read handling in snapshot_write_next()
	btrfs: don't arbitrarily slow down delalloc if we're committing
	jbd2: fix potential data lost in recovering journal raced with synchronizing fs bdev
	quota: explicitly forbid quota files from being encrypted
	kernel/reboot: emergency_restart: Set correct system_state
	i2c: core: Run atomic i2c xfer when !preemptible
	mcb: fix error handling for different scenarios when parsing
	dmaengine: stm32-mdma: correct desc prep when channel running
	mm/cma: use nth_page() in place of direct struct page manipulation
	i3c: master: cdns: Fix reading status register
	parisc: Prevent booting 64-bit kernels on PA1.x machines
	parisc/pgtable: Do not drop upper 5 address bits of physical address
	ALSA: info: Fix potential deadlock at disconnection
	ALSA: hda/realtek - Enable internal speaker of ASUS K6500ZC
	serial: meson: remove redundant initialization of variable id
	tty: serial: meson: retrieve port FIFO size from DT
	serial: meson: Use platform_get_irq() to get the interrupt
	tty: serial: meson: fix hard LOCKUP on crtscts mode
	Bluetooth: btusb: Add flag to define wideband speech capability
	Bluetooth: btusb: add Realtek 8822CE to usb_device_id table
	Bluetooth: btusb: Add Realtek RTL8852BE support ID 0x0cb8:0xc559
	bluetooth: Add device 0bda:887b to device tables
	bluetooth: Add device 13d3:3571 to device tables
	Bluetooth: btusb: Add RTW8852BE device 13d3:3570 to device tables
	Bluetooth: btusb: Add 0bda:b85b for Fn-Link RTL8852BE
	Revert ncsi: Propagate carrier gain/loss events to the NCSI controller
	net: dsa: lan9303: consequently nested-lock physical MDIO
	i2c: i801: fix potential race in i801_block_transaction_byte_by_byte
	media: lirc: drop trailing space from scancode transmit
	media: sharp: fix sharp encoding
	media: venus: hfi_parser: Add check to keep the number of codecs within range
	media: venus: hfi: fix the check to handle session buffer requirement
	media: venus: hfi: add checks to handle capabilities from firmware
	nfsd: fix file memleak on client_opens_release
	Revert "net: r8169: Disable multicast filter for RTL8168H and RTL8107E"
	ext4: apply umask if ACL support is disabled
	ext4: correct offset of gdb backup in non meta_bg group to update_backups
	ext4: correct return value of ext4_convert_meta_bg
	ext4: correct the start block of counting reserved clusters
	ext4: remove gdb backup copy for meta bg in setup_new_flex_group_blocks
	drm/amdgpu: fix error handling in amdgpu_bo_list_get()
	tracing: Have trace_event_file have ref counters
	netfilter: nf_tables: pass context to nft_set_destroy()
	netfilter: nftables: rename set element data activation/deactivation functions
	netfilter: nf_tables: drop map element references from preparation phase
	netfilter: nft_set_rbtree: Switch to node list walk for overlap detection
	netfilter: nft_set_rbtree: fix null deref on element insertion
	netfilter: nft_set_rbtree: fix overlap expiration walk
	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: 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_hash: try later when GC hits EAGAIN on iteration
	netfilter: nf_tables: fix memleak when more than 255 elements expired
	netfilter: nf_tables: unregister flowtable hooks on netns exit
	netfilter: nf_tables: double hook unregistration in netns path
	netfilter: nftables: update table flags from the commit phase
	netfilter: nf_tables: fix table flag updates
	netfilter: nf_tables: disable toggling dormant table state more than once
	netfilter: nf_tables: bogus EBUSY when deleting flowtable after flush (for 5.4)
	Linux 5.4.262

Change-Id: I93e0070751c904fd8a44800ce1756e6e93c1a95b
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-11-29 10:18:14 +00:00
Shuai Xue
788c0b3442 perf/core: Bail out early if the request AUX area is out of bound
[ Upstream commit 54aee5f15b83437f23b2b2469bcf21bdd9823916 ]

When perf-record with a large AUX area, e.g 4GB, it fails with:

    #perf record -C 0 -m ,4G -e arm_spe_0// -- sleep 1
    failed to mmap with 12 (Cannot allocate memory)

and it reveals a WARNING with __alloc_pages():

	------------[ cut here ]------------
	WARNING: CPU: 44 PID: 17573 at mm/page_alloc.c:5568 __alloc_pages+0x1ec/0x248
	Call trace:
	 __alloc_pages+0x1ec/0x248
	 __kmalloc_large_node+0xc0/0x1f8
	 __kmalloc_node+0x134/0x1e8
	 rb_alloc_aux+0xe0/0x298
	 perf_mmap+0x440/0x660
	 mmap_region+0x308/0x8a8
	 do_mmap+0x3c0/0x528
	 vm_mmap_pgoff+0xf4/0x1b8
	 ksys_mmap_pgoff+0x18c/0x218
	 __arm64_sys_mmap+0x38/0x58
	 invoke_syscall+0x50/0x128
	 el0_svc_common.constprop.0+0x58/0x188
	 do_el0_svc+0x34/0x50
	 el0_svc+0x34/0x108
	 el0t_64_sync_handler+0xb8/0xc0
	 el0t_64_sync+0x1a4/0x1a8

'rb->aux_pages' allocated by kcalloc() is a pointer array which is used to
maintains AUX trace pages. The allocated page for this array is physically
contiguous (and virtually contiguous) with an order of 0..MAX_ORDER. If the
size of pointer array crosses the limitation set by MAX_ORDER, it reveals a
WARNING.

So bail out early with -ENOMEM if the request AUX area is out of bound,
e.g.:

    #perf record -C 0 -m ,4G -e arm_spe_0// -- sleep 1
    failed to mmap with 12 (Cannot allocate memory)

Signed-off-by: Shuai Xue <xueshuai@linux.alibaba.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-11-28 16:50:13 +00:00
Peter Zijlstra
511f3e9bbb perf/core: Fix potential NULL deref
commit a71ef31485bb51b846e8db8b3a35e432cc15afb5 upstream.

Smatch is awesome.

Fixes: 32671e3799ca ("perf: Disallow mis-matched inherited group reads")
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-11-08 11:23:37 +01:00
Greg Kroah-Hartman
4934e8f7a8 Revert "perf: Disallow mis-matched inherited group reads"
This reverts commit 7252c8b981 which is
commit 32671e3799ca2e4590773fd0e63aaa4229e50c06 upstream.

It breaks the android ABI and if this is needed in the future, can be
brought back in an abi-safe way.

Bug: 161946584
Change-Id: Ia00890aeeef6153c7f3462a2a2189149734ac28a
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-10-26 10:18:51 +00:00
Greg Kroah-Hartman
6b5f21afc2 Merge 5.4.259 into android11-5.4-lts
Changes in 5.4.259
	RDMA/cxgb4: Check skb value for failure to allocate
	lib/test_meminit: fix off-by-one error in test_pages()
	pwm: hibvt: Explicitly set .polarity in .get_state()
	HID: logitech-hidpp: Fix kernel crash on receiver USB disconnect
	quota: Fix slow quotaoff
	net: prevent address rewrite in kernel_bind()
	drm: etvnaviv: fix bad backport leading to warning
	drm/msm/dsi: skip the wait for video mode done if not applicable
	ravb: Fix up dma_free_coherent() call in ravb_remove()
	ieee802154: ca8210: Fix a potential UAF in ca8210_probe
	mlxsw: fix mlxsw_sp2_nve_vxlan_learning_set() return type
	xen-netback: use default TX queue size for vifs
	drm/vmwgfx: fix typo of sizeof argument
	ixgbe: fix crash with empty VF macvlan list
	net: nfc: fix races in nfc_llcp_sock_get() and nfc_llcp_sock_get_sn()
	nfc: nci: assert requested protocol is valid
	workqueue: Override implicit ordered attribute in workqueue_apply_unbound_cpumask()
	dmaengine: stm32-mdma: abort resume if no ongoing transfer
	usb: xhci: xhci-ring: Use sysdev for mapping bounce buffer
	net: usb: dm9601: fix uninitialized variable use in dm9601_mdio_read
	usb: dwc3: Soft reset phy on probe for host
	usb: musb: Get the musb_qh poniter after musb_giveback
	usb: musb: Modify the "HWVers" register address
	iio: pressure: bmp280: Fix NULL pointer exception
	iio: pressure: dps310: Adjust Timeout Settings
	iio: pressure: ms5611: ms5611_prom_is_valid false negative bug
	mcb: remove is_added flag from mcb_device struct
	libceph: use kernel_connect()
	ceph: fix incorrect revoked caps assert in ceph_fill_file_size()
	Input: powermate - fix use-after-free in powermate_config_complete
	Input: psmouse - fix fast_reconnect function for PS/2 mode
	Input: xpad - add PXN V900 support
	cgroup: Remove duplicates in cgroup v1 tasks file
	pinctrl: avoid unsafe code pattern in find_pinctrl()
	usb: gadget: udc-xilinx: replace memcpy with memcpy_toio
	usb: gadget: ncm: Handle decoding of multiple NTB's in unwrap call
	x86/cpu: Fix AMD erratum #1485 on Zen4-based CPUs
	dmaengine: mediatek: Fix deadlock caused by synchronize_irq()
	powerpc/8xx: Fix pte_access_permitted() for PAGE_NONE
	powerpc/64e: Fix wrong test in __ptep_test_and_clear_young()
	ravb: Fix use-after-free issue in ravb_tx_timeout_work()
	dev_forward_skb: do not scrub skb mark within the same name space
	Documentation: sysctl: align cells in second content column
	usb: hub: Guard against accesses to uninitialized BOS descriptors
	Bluetooth: hci_event: Ignore NULL link key
	Bluetooth: Reject connection with the device which has same BD_ADDR
	Bluetooth: Fix a refcnt underflow problem for hci_conn
	Bluetooth: vhci: Fix race when opening vhci device
	Bluetooth: hci_event: Fix coding style
	Bluetooth: avoid memcmp() out of bounds warning
	ice: fix over-shifted variable
	nfc: nci: fix possible NULL pointer dereference in send_acknowledge()
	regmap: fix NULL deref on lookup
	KVM: x86: Mask LVTPC when handling a PMI
	netfilter: nft_payload: fix wrong mac header matching
	qed: fix LL2 RX buffer allocation
	xfrm: fix a data-race in xfrm_gen_index()
	xfrm: interface: use DEV_STATS_INC()
	net: ipv4: fix return value check in esp_remove_trailer
	net: ipv6: fix return value check in esp_remove_trailer
	net: rfkill: gpio: prevent value glitch during probe
	tcp: fix excessive TLP and RACK timeouts from HZ rounding
	tcp: tsq: relax tcp_small_queue_check() when rtx queue contains a single skb
	tun: prevent negative ifindex
	ipv4: fib: annotate races around nh->nh_saddr_genid and nh->nh_saddr
	net: usb: smsc95xx: Fix an error code in smsc95xx_reset()
	i40e: prevent crash on probe if hw registers have invalid values
	net/sched: sch_hfsc: upgrade 'rt' to 'sc' when it becomes a inner curve
	neighbor: tracing: Move pin6 inside CONFIG_IPV6=y section
	netfilter: nft_set_rbtree: .deactivate fails if element has expired
	net: pktgen: Fix interface flags printing
	resource: Add irqresource_disabled()
	ACPI: Drop acpi_dev_irqresource_disabled()
	ACPI: resources: Add DMI-based legacy IRQ override quirk
	ACPI: resource: Skip IRQ override on Asus Vivobook K3402ZA/K3502ZA
	ACPI: resource: Add ASUS model S5402ZA to quirks
	ACPI: resource: Skip IRQ override on Asus Vivobook S5602ZA
	ACPI: resource: Add Asus ExpertBook B2502 to Asus quirks
	ACPI: resource: Skip IRQ override on Asus Expertbook B2402CBA
	ACPI: resource: Skip IRQ override on ASUS ExpertBook B1502CBA
	ACPI: resource: Skip IRQ override on ASUS ExpertBook B1402CBA
	ARM: dts: ti: omap: Fix noisy serial with overrun-throttle-ms for mapphone
	btrfs: return -EUCLEAN for delayed tree ref with a ref count not equals to 1
	btrfs: initialize start_slot in btrfs_log_prealloc_extents
	i2c: mux: Avoid potential false error message in i2c_mux_add_adapter
	overlayfs: set ctime when setting mtime and atime
	gpio: timberdale: Fix potential deadlock on &tgpio->lock
	ata: libata-eh: Fix compilation warning in ata_eh_link_report()
	tracing: relax trace_event_eval_update() execution with cond_resched()
	HID: holtek: fix slab-out-of-bounds Write in holtek_kbd_input_event
	Bluetooth: Avoid redundant authentication
	Bluetooth: hci_core: Fix build warnings
	wifi: mac80211: allow transmitting EAPOL frames with tainted key
	wifi: cfg80211: avoid leaking stack data into trace
	regulator/core: Revert "fix kobject release warning and memory leak in regulator_register()"
	sky2: Make sure there is at least one frag_addr available
	drm: panel-orientation-quirks: Add quirk for One Mix 2S
	btrfs: fix some -Wmaybe-uninitialized warnings in ioctl.c
	HID: multitouch: Add required quirk for Synaptics 0xcd7e device
	Bluetooth: hci_event: Fix using memcmp when comparing keys
	mtd: rawnand: qcom: Unmap the right resource upon probe failure
	mtd: spinand: micron: correct bitmask for ecc status
	mtd: physmap-core: Restore map_rom fallback
	mmc: core: sdio: hold retuning if sdio in 1-bit mode
	mmc: core: Capture correct oemid-bits for eMMC cards
	Revert "pinctrl: avoid unsafe code pattern in find_pinctrl()"
	ACPI: irq: Fix incorrect return value in acpi_register_gsi()
	USB: serial: option: add Telit LE910C4-WWX 0x1035 composition
	USB: serial: option: add entry for Sierra EM9191 with new firmware
	USB: serial: option: add Fibocom to DELL custom modem FM101R-GL
	perf: Disallow mis-matched inherited group reads
	s390/pci: fix iommu bitmap allocation
	gpio: vf610: set value before the direction to avoid a glitch
	ASoC: pxa: fix a memory leak in probe()
	phy: mapphone-mdm6600: Fix runtime disable on probe
	phy: mapphone-mdm6600: Fix runtime PM for remove
	phy: mapphone-mdm6600: Fix pinctrl_pm handling for sleep pins
	Bluetooth: hci_sock: fix slab oob read in create_monitor_event
	Bluetooth: hci_sock: Correctly bounds check and pad HCI_MON_NEW_INDEX name
	xfrm6: fix inet6_dev refcount underflow problem
	Linux 5.4.259

Change-Id: I413388a8527327650b234e3f14fce5ca6137c6c8
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-10-26 09:18:00 +00:00
Peter Zijlstra
7252c8b981 perf: Disallow mis-matched inherited group reads
commit 32671e3799ca2e4590773fd0e63aaa4229e50c06 upstream.

Because group consistency is non-atomic between parent (filedesc) and children
(inherited) events, it is possible for PERF_FORMAT_GROUP read() to try and sum
non-matching counter groups -- with non-sensical results.

Add group_generation to distinguish the case where a parent group removes and
adds an event and thus has the same number, but a different configuration of
events as inherited groups.

This became a problem when commit fa8c269353 ("perf/core: Invert
perf_read_group() loops") flipped the order of child_list and sibling_list.
Previously it would iterate the group (sibling_list) first, and for each
sibling traverse the child_list. In this order, only the group composition of
the parent is relevant. By flipping the order the group composition of the
child (inherited) events becomes an issue and the mis-match in group
composition becomes evident.

That said; even prior to this commit, while reading of a group that is not
equally inherited was not broken, it still made no sense.

(Ab)use ECHILD as error return to indicate issues with child process group
composition.

Fixes: fa8c269353 ("perf/core: Invert perf_read_group() loops")
Reported-by: Budimir Markovic <markovicbudimir@gmail.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20231018115654.GK33217@noisy.programming.kicks-ass.net
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-10-25 11:53:24 +02:00
Greg Kroah-Hartman
279267442f This is the 5.4.253 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmTWBWgACgkQONu9yGCS
 aT66Iw//TwAjMECCqJ84moMMA7/fC8QrRiBLWz24f6sVGqMb3vZCiQ91Z4zEZID6
 qV06RRlk08aJqhhllWYE6mqZJZTfmGgjEWjM0OL/bHFgU3TtHC0mR5mCtoUzFTzD
 bIZb6mj8egPDgAP55Sn0/Va0jR5Y4Mp2IFdbtu68J4jy/N4aDE1nTljQamMjhoiV
 JuUVf5XZsZ+4k6kSF01TIaJCDLjij9aSBbNltC0BrfzVIEj19leBb7x4slu6VGIp
 QGkPTySjRw1xRdBUTZ/uJzXqMIqBM0A0x9M9cd97vDNWrp6Qi9G6YeBh6D7X9x++
 zy+Y1CusgH7M/nE/hOFPmgcqfJZfyf1Fa3fIa31+cMKIANg7G2dg+Gd4xxnL0FgA
 BSR2oSC5rzUK8X2/nMaduwQNMPQr8Q0vX5+KRnJB964swBvbPLplC5+NpYf0RKHD
 +bgkwN7Yxn2JqBWLkoGR9u6Mtyx0UclEVU0wKYAEwph3FLKlbiZjRPJdSa2p6gdd
 UZiMgVyTSGOlpbM31fG52RyLoePFxc7vfR/jmyVaYMUPB5xjMi355Rzxcm8VgmIi
 DArs/XUHeHeIyHRr6l6xlsx/2ihrENbO8ux9v07/jWMN/tzc5qEKZ1RmLRaaWwf7
 3A+cTGMpRwznf3DxJoAFRiC6VhezJsa/BUHaTvSYki0OSxOJ/BM=
 =Bk55
 -----END PGP SIGNATURE-----

Merge 5.4.253 into android11-5.4-lts

Changes in 5.4.253
	jbd2: fix incorrect code style
	jbd2: fix kernel-doc markups
	jbd2: remove redundant buffer io error checks
	jbd2: recheck chechpointing non-dirty buffer
	jbd2: Fix wrongly judgement for buffer head removing while doing checkpoint
	gpio: tps68470: Make tps68470_gpio_output() always set the initial value
	bcache: remove 'int n' from parameter list of bch_bucket_alloc_set()
	bcache: Fix __bch_btree_node_alloc to make the failure behavior consistent
	btrfs: qgroup: catch reserved space leaks at unmount time
	btrfs: fix race between quota disable and relocation
	btrfs: fix extent buffer leak after tree mod log failure at split_node()
	ext4: rename journal_dev to s_journal_dev inside ext4_sb_info
	ext4: Fix reusing stale buffer heads from last failed mounting
	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
	ftrace: Add information on number of page groups allocated
	ftrace: Check if pages were allocated before calling free_pages()
	ftrace: Store the order of pages allocated in ftrace_page
	ftrace: Fix possible warning on checking all pages used in ftrace_process_locs()
	pwm: meson: Remove redundant assignment to variable fin_freq
	pwm: meson: Simplify duplicated per-channel tracking
	pwm: meson: fix handling of period/duty if greater than UINT_MAX
	scsi: qla2xxx: Fix inconsistent format argument type in qla_os.c
	scsi: qla2xxx: Array index may go out of bound
	uapi: General notification queue definitions
	keys: Fix linking a duplicate key to a keyring's assoc_array
	ext4: fix to check return value of freeze_bdev() in ext4_shutdown()
	i40e: Fix an NULL vs IS_ERR() bug for debugfs_create_dir()
	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().
	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
	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()
	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
	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
	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()
	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()
	hwmon: (nct7802) Fix for temp6 (PECI1) processed even if PECI1 disabled
	btrfs: check for commit error at btrfs_attach_transaction_barrier()
	tpm_tis: Explicitly check for error code
	irq-bcm6345-l1: Do not assume a fixed block to cpu mapping
	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
	dm cache policy smq: ensure IO doesn't prevent cleaner policy progress
	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
	btrfs: qgroup: remove one-time use variables for quota_root checks
	btrfs: qgroup: return ENOTCONN instead of EINVAL when quotas are not enabled
	btrfs: fix race between quota disable and quota assign ioctls
	net/sched: sch_qfq: account for stab overhead in qfq_enqueue
	ASoC: cs42l51: fix driver to properly autoload with automatic module loading
	arm64: Add AMPERE1 to the Spectre-BHB affected list
	arm64: Fix bit-shifting UB in the MIDR_CPU_MODEL() macro
	perf: Fix function pointer case
	loop: Select I/O scheduler 'none' from inside add_disk()
	word-at-a-time: use the same return type for has_zero regardless of endianness
	KVM: s390: fix sthyi error handling
	net/mlx5: DR, fix memory leak in mlx5dr_cmd_create_reformat_ctx
	net/mlx5e: fix return value check in mlx5e_ipsec_remove_trailer()
	rtnetlink: let rtnl_bridge_setlink checks IFLA_BRIDGE_MODE length
	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
	driver core: add device probe log helper
	net: ll_temac: Switch to use dev_err_probe() helper
	net: ll_temac: fix error checking of irq_of_parse_and_map()
	net: dcb: choose correct policy to parse DCB_ATTR_BCN
	ip6mr: Fix skb_under_panic in ip6mr_cache_report()
	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
	mtd: spinand: toshiba: Fix ecc_get_status
	mtd: rawnand: meson: fix OOB available bytes for ECC
	net: tun_chr_open(): set sk_uid from current_fsuid()
	net: tap_open(): set sk_uid from current_fsuid()
	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
	test_firmware: prevent race conditions by a correct implementation of locking
	test_firmware: return ENOMEM instead of ENOSPC on failed memory allocation
	mtd: rawnand: omap_elm: Fix incorrect type in assignment
	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+
	PM / wakeirq: support enabling wake-up irq after runtime_suspend called
	PM: sleep: wakeirq: fix wake irq arming
	ceph: show tasks waiting on caps in debugfs caps file
	ceph: use kill_anon_super helper
	ceph: defer stopping mdsc delayed_work
	arm64: dts: stratix10: fix incorrect I2C property for SCL signal
	ARM: dts: imx6sll: Make ssi node name same as other platforms
	ARM: dts: imx: Align L2 cache-controller nodename with dtschema
	ARM: dts: imx: add usb alias
	ARM: dts: imx6sll: fixup of operating points
	ARM: dts: nxp/imx6sll: fix wrong property name in usbphy node
	driver core: Annotate dev_err_probe() with __must_check
	driver code: print symbolic error code
	drivers: core: fix kernel-doc markup for dev_err_probe()
	Revert "driver core: Annotate dev_err_probe() with __must_check"
	Linux 5.4.253

Change-Id: I9c8d2b7250a3bcd3cb368c9d9e362a82c2fa5159
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-08-23 15:06:20 +00:00
Peter Zijlstra
11e929c380 perf: Fix function pointer case
commit 1af6239d1d3e61d33fd2f0ba53d3d1a67cc50574 upstream.

With the advent of CFI it is no longer acceptible to cast function
pointers.

The robot complains thusly:

  kernel-events-core.c⚠️cast-from-int-(-)(struct-perf_cpu_pmu_context-)-to-remote_function_f-(aka-int-(-)(void-)-)-converts-to-incompatible-function-type

Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Cixi Geng <cixi.geng1@unisoc.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-11 11:53:54 +02:00
Greg Kroah-Hartman
6d6982b563 Merge 5.4.246 into android11-5.4-lts
Changes in 5.4.246
	RDMA/efa: Fix unsupported page sizes in device
	RDMA/bnxt_re: Enable SRIOV VF support on Broadcom's 57500 adapter series
	RDMA/bnxt_re: Refactor queue pair creation code
	RDMA/bnxt_re: Fix return value of bnxt_re_process_raw_qp_pkt_rx
	iommu/rockchip: Fix unwind goto issue
	iommu/amd: Don't block updates to GATag if guest mode is on
	dmaengine: pl330: rename _start to prevent build error
	net/mlx5: fw_tracer, Fix event handling
	netrom: fix info-leak in nr_write_internal()
	af_packet: Fix data-races of pkt_sk(sk)->num.
	amd-xgbe: fix the false linkup in xgbe_phy_status
	mtd: rawnand: ingenic: fix empty stub helper definitions
	af_packet: do not use READ_ONCE() in packet_bind()
	tcp: deny tcp_disconnect() when threads are waiting
	tcp: Return user_mss for TCP_MAXSEG in CLOSE/LISTEN state if user_mss set
	net/sched: sch_ingress: Only create under TC_H_INGRESS
	net/sched: sch_clsact: Only create under TC_H_CLSACT
	net/sched: Reserve TC_H_INGRESS (TC_H_CLSACT) for ingress (clsact) Qdiscs
	net/sched: Prohibit regrafting ingress or clsact Qdiscs
	net: sched: fix NULL pointer dereference in mq_attach
	ocfs2/dlm: move BITS_TO_BYTES() to bitops.h for wider use
	net/netlink: fix NETLINK_LIST_MEMBERSHIPS length report
	udp6: Fix race condition in udp6_sendmsg & connect
	net/sched: flower: fix possible OOB write in fl_set_geneve_opt()
	net: dsa: mv88e6xxx: Increase wait after reset deactivation
	mtd: rawnand: marvell: ensure timing values are written
	mtd: rawnand: marvell: don't set the NAND frequency select
	watchdog: menz069_wdt: fix watchdog initialisation
	mailbox: mailbox-test: Fix potential double-free in mbox_test_message_write()
	ARM: 9295/1: unwind:fix unwind abort for uleb128 case
	media: rcar-vin: Select correct interrupt mode for V4L2_FIELD_ALTERNATE
	fbdev: modedb: Add 1920x1080 at 60 Hz video mode
	fbdev: stifb: Fix info entry in sti_struct on error path
	nbd: Fix debugfs_create_dir error checking
	ASoC: dwc: limit the number of overrun messages
	xfrm: Check if_id in inbound policy/secpath match
	ASoC: ssm2602: Add workaround for playback distortions
	media: dvb_demux: fix a bug for the continuity counter
	media: dvb-usb: az6027: fix three null-ptr-deref in az6027_i2c_xfer()
	media: dvb-usb-v2: ec168: fix null-ptr-deref in ec168_i2c_xfer()
	media: dvb-usb-v2: ce6230: fix null-ptr-deref in ce6230_i2c_master_xfer()
	media: dvb-usb-v2: rtl28xxu: fix null-ptr-deref in rtl28xxu_i2c_xfer
	media: dvb-usb: digitv: fix null-ptr-deref in digitv_i2c_xfer()
	media: dvb-usb: dw2102: fix uninit-value in su3000_read_mac_address
	media: netup_unidvb: fix irq init by register it at the end of probe
	media: dvb_ca_en50221: fix a size write bug
	media: ttusb-dec: fix memory leak in ttusb_dec_exit_dvb()
	media: mn88443x: fix !CONFIG_OF error by drop of_match_ptr from ID table
	media: dvb-core: Fix use-after-free due on race condition at dvb_net
	media: dvb-core: Fix kernel WARNING for blocking operation in wait_event*()
	media: dvb-core: Fix use-after-free due to race condition at dvb_ca_en50221
	wifi: rtl8xxxu: fix authentication timeout due to incorrect RCR value
	ARM: dts: stm32: add pin map for CAN controller on stm32f7
	arm64/mm: mark private VM_FAULT_X defines as vm_fault_t
	scsi: core: Decrease scsi_device's iorequest_cnt if dispatch failed
	wifi: b43: fix incorrect __packed annotation
	netfilter: conntrack: define variables exp_nat_nla_policy and any_addr with CONFIG_NF_NAT
	ALSA: oss: avoid missing-prototype warnings
	atm: hide unused procfs functions
	mailbox: mailbox-test: fix a locking issue in mbox_test_message_write()
	iio: adc: mxs-lradc: fix the order of two cleanup operations
	HID: google: add jewel USB id
	HID: wacom: avoid integer overflow in wacom_intuos_inout()
	iio: light: vcnl4035: fixed chip ID check
	iio: dac: mcp4725: Fix i2c_master_send() return value handling
	iio: dac: build ad5758 driver when AD5758 is selected
	net: usb: qmi_wwan: Set DTR quirk for BroadMobi BM818
	usb: gadget: f_fs: Add unbind event before functionfs_unbind
	misc: fastrpc: return -EPIPE to invocations on device removal
	misc: fastrpc: reject new invocations during device removal
	scsi: stex: Fix gcc 13 warnings
	ata: libata-scsi: Use correct device no in ata_find_dev()
	flow_dissector: work around stack frame size warning
	x86/boot: Wrap literal addresses in absolute_pointer()
	ACPI: thermal: drop an always true check
	gcc-12: disable '-Wdangling-pointer' warning for now
	eth: sun: cassini: remove dead code
	kernel/extable.c: use address-of operator on section symbols
	treewide: Remove uninitialized_var() usage
	lib/dynamic_debug.c: use address-of operator on section symbols
	wifi: rtlwifi: remove always-true condition pointed out by GCC 12
	mmc: vub300: fix invalid response handling
	tty: serial: fsl_lpuart: use UARTCTRL_TXINV to send break instead of UARTCTRL_SBK
	selinux: don't use make's grouped targets feature yet
	tracing/probe: trace_probe_primary_from_call(): checked list_first_entry
	ext4: add EA_INODE checking to ext4_iget()
	ext4: set lockdep subclass for the ea_inode in ext4_xattr_inode_cache_find()
	ext4: disallow ea_inodes with extended attributes
	ext4: add lockdep annotations for i_data_sem for ea_inode's
	fbcon: Fix null-ptr-deref in soft_cursor
	test_firmware: fix the memory leak of the allocated firmware buffer
	regmap: Account for register length when chunking
	scsi: dpt_i2o: Remove broken pass-through ioctl (I2OUSERCMD)
	scsi: dpt_i2o: Do not process completions with invalid addresses
	RDMA/bnxt_re: Remove set but not used variable 'dev_attr'
	RDMA/bnxt_re: Remove the qp from list only if the qp destroy succeeds
	drm/edid: Fix uninitialized variable in drm_cvt_modes()
	wifi: rtlwifi: 8192de: correct checking of IQK reload
	drm/edid: fix objtool warning in drm_cvt_modes()
	Linux 5.4.246

Change-Id: I8721e40543af31c56dbbd47910dd3b474e3a79ab
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-06-20 19:13:58 +00:00
Greg Kroah-Hartman
88ac2d9193 This is the 5.4.243 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmRkoEsACgkQONu9yGCS
 aT6nbBAAxLX8QMuKuA8fcSFqQTZwrGAW/x7aOih1Sgkw/pttE8t8/q9sxlPZHljK
 UnZWzy/xjBayWA4aEskkd8pvZh7uXqcQH56UuiuzTiZwNtKQfAlvbVjsibzOk8mt
 leuNP1F/Kod7CFYi/o8yoo4tUrWPmNLgc5ZaAvR/FYapanpYLB/6I9u2mf8HPjRP
 tF1PwYPl9V7NdiAx5Liw6mczBI+v05FY7+G2tsUrnE/XM3SFOg8mwKNTksBeiZ8a
 vZxCwQgTohUR2yKMjSrsKnZ2sQAoskOlpc8YpdwSk2s7KZKf+QcI6Y2BhneK/A7+
 BU9vQr8Y0qrciBrpZvBGLcBhcmXUQwgZBh4VKUwJCUWijSQRSjhs/3+rAyvj74rF
 w8hP6EDgyAb5fKSU//MAZiFqdQfzowGne2Uin/rgyhyK9l+zxRCRtY1Ra+T75Jvl
 2MNU+VwvfRzzGJtP4BiuA2qoHsTqmLK2SUUrqmhyRm2D3cK17NuIJeGMwt3BXDzw
 g+FpXoVGmkmfl+HHQLWdqpJ654APpJgxjhK6Hjca5608V+FIW7FGScAWX2CRmpUK
 rTAUPloptXIuo41CI+z7hdmYSfFtJymOgd650p5ntmro+7tMRQkhhjnEDDF8y1Jr
 703VIa3QkRWRE5/xGi2KM2GgEH81j0s2Nyo/7JQtiitOjqtpgJ4=
 =SrzM
 -----END PGP SIGNATURE-----

Merge 5.4.243 into android11-5.4-lts

Changes in 5.4.243
	counter: 104-quad-8: Fix race condition between FLAG and CNTR reads
	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()
	USB: serial: option: add UNISOC vendor and TOZED LT70C product
	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()
	USB: dwc3: fix runtime pm imbalance on probe errors
	USB: dwc3: fix runtime pm imbalance on unbind
	perf sched: Cast PTHREAD_STACK_MIN to int as it may turn into sysconf(__SC_THREAD_STACK_MIN_VALUE)
	staging: iio: resolver: ads1210: fix config mode
	debugfs: regset32: Add Runtime PM support
	xhci: fix debugfs register accesses while suspended
	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
	reiserfs: Add security prefix to xattr name in reiserfs_security_write()
	KVM: nVMX: Emulate NOPs in L2, and PAUSE if it's not intercepted
	i2c: omap: Fix standard mode false ACK readings
	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
	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
	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
	arm64: dts: renesas: r8a77990: Remove bogus voltages from OPP table
	arm64: dts: renesas: r8a774c0: Remove bogus voltages from OPP table
	EDAC/skx: Fix overflows on the DRAM row address mapping arrays
	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
	media: bdisp: Add missing check for create_workqueue
	media: uapi: add MEDIA_BUS_FMT_METADATA_FIXED media bus format.
	media: av7110: prevent underflow in write_ts_to_decoder()
	firmware: qcom_scm: Clear download bit during reboot
	drm/msm: fix unbalanced pm_runtime_enable in adreno_gpu_{init, cleanup}
	drm/msm/adreno: Defer enabling runpm until hw_init()
	drm/msm/adreno: drop bogus pm_runtime_set_active()
	mmc: sdhci-of-esdhc: fix quirk to ignore command inhibit for data
	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: 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
	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
	timekeeping: Split jiffies seqlock
	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()
	scm: fix MSG_CTRUNC setting condition for SO_PASSSEC
	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: 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()
	rtlwifi: Start changing RT_TRACE into rtl_dbg
	rtlwifi: Replace RT_TRACE with rtl_dbg
	wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_rfreg()
	wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_reg()
	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
	scsi: lpfc: Fix ioremap issues in lpfc_sli4_pci_mem_setup()
	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: update the optimal I/O size on reshape
	md/raid10: fix memleak of md thread
	wifi: iwlwifi: make the loop for card preparation effective
	wifi: iwlwifi: mvm: check firmware response size
	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
	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.
	pstore: Revert pmsg_lock back to a normal mutex
	usb: host: xhci-rcar: remove leftover quirk handling
	fpga: bridge: fix kernel-doc parameter description
	iio: light: max44009: add missing OF device matching
	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
	genirq: Add IRQF_NO_AUTOEN for request_irq/nmi()
	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
	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
	PM: domains: Fix up terminology with parent/child
	scripts/gdb: bail early if there are no generic PD
	mtd: spi-nor: cadence-quadspi: Make driver independent of flash geometry
	mtd: spi-nor: cadence-quadspi: Provide a way to disable DAC mode
	mtd: spi-nor: cadence-quadspi: Don't initialize rx_dma_complete on failure
	mtd: spi-nor: cadence-quadspi: Handle probe deferral while requesting DMA channel
	spi: cadence-quadspi: fix suspend-resume implementations
	uapi/linux/const.h: prefer ISO-friendly __typeof__
	sh: sq: Fix incorrect element size for allocating bitmap buffer
	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
	RDMA/siw: Fix potential page_array out of range access
	RDMA/rdmavt: Delete unnecessary NULL check
	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()
	IB/hfi1: Fix SDMA mmu_rb_node not being evicted in LRU order
	NFSv4.1: Always send a RECLAIM_COMPLETE after establishing lease
	firmware: raspberrypi: Keep count of all consumers
	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
	SUNRPC: remove the maximum number of retries in call_bind_status
	RDMA/mlx5: Use correct device num_ports when modify DC
	clocksource/drivers/davinci: Avoid trailing '\n' hidden in pr_fmt()
	clocksource: davinci: axe a pointless __GFP_NOFAIL
	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.
	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
	afs: Fix updating of i_size with dv jump from server
	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
	scripts/gdb: fix lx-timerlist for Python3
	btrfs: scrub: reject unsupported scrub flags
	s390/dasd: fix hanging blockdevice after request requeue
	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
	debugobject: Ensure pool refill (again)
	netfilter: nf_tables: deactivate anonymous set from preparation phase
	nohz: Add TICK_DEP_BIT_RCU
	tick/nohz: Fix cpu_is_hotpluggable() by checking with nohz subsystem
	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
	crypto: inside-secure - irq balance
	crypto: safexcel - Cleanup ring IRQ workqueues on load failure
	kernel/relay.c: fix read_pos error when multiple readers
	relayfs: fix out-of-bounds access in relay_file_read
	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
	net/sched: act_mirred: Add carrier check
	rxrpc: Fix hard call timeout units
	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
	perf vendor events power9: Remove UTF-8 characters from JSON files
	perf map: Delete two variable initialisations before null pointer checks in sort__sym_from_cmp()
	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 info for the Dexp Ursus KX210i
	inotify: Avoid reporting event with invalid wd
	sh: math-emu: fix macro redefined warning
	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
	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: 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()
	tty: Prevent writing chars during tcsetattr TCSADRAIN/FLUSH
	serial: 8250: Fix serial8250_tx_empty() race with DMA Tx
	drbd: correctly submit flush bio on barrier
	PCI: pciehp: Use down_read/write_nested(reset_lock) to fix lockdep errors
	PCI: pciehp: Fix AB-BA deadlock between reset_lock and device_lock
	printk: declare printk_deferred_{enter,safe}() in include/linux/printk.h
	PM: domains: Restore comment indentation for generic_pm_domain.child_links
	drm/msm: Fix double pm_runtime_disable() call
	firmware: raspberrypi: fix possible memory leak in rpi_firmware_probe()
	drm/msm/adreno: Fix null ptr access in adreno_gpu_cleanup()
	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.4.243

Change-Id: I103e06e639a82ddc7ca60ffed98c898946b81542
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-06-15 10:57:33 +00:00
Kees Cook
0638dcc7e7 treewide: Remove uninitialized_var() usage
commit 3f649ab728cda8038259d8f14492fe400fbab911 upstream.

Using uninitialized_var() is dangerous as it papers over real bugs[1]
(or can in the future), and suppresses unrelated compiler warnings
(e.g. "unused variable"). If the compiler thinks it is uninitialized,
either simply initialize the variable or make compiler changes.

In preparation for removing[2] the[3] macro[4], remove all remaining
needless uses with the following script:

git grep '\buninitialized_var\b' | cut -d: -f1 | sort -u | \
	xargs perl -pi -e \
		's/\buninitialized_var\(([^\)]+)\)/\1/g;
		 s:\s*/\* (GCC be quiet|to make compiler happy) \*/$::g;'

drivers/video/fbdev/riva/riva_hw.c was manually tweaked to avoid
pathological white-space.

No outstanding warnings were found building allmodconfig with GCC 9.3.0
for x86_64, i386, arm64, arm, powerpc, powerpc64le, s390x, mips, sparc64,
alpha, and m68k.

[1] https://lore.kernel.org/lkml/20200603174714.192027-1-glider@google.com/
[2] https://lore.kernel.org/lkml/CA+55aFw+Vbj0i=1TGqCR5vQkCzWJ0QxK6CernOU6eedsudAixw@mail.gmail.com/
[3] https://lore.kernel.org/lkml/CA+55aFwgbgqhbp1fkxvRKEpzyR5J8n1vKT1VZdz9knmPuXhOeg@mail.gmail.com/
[4] https://lore.kernel.org/lkml/CA+55aFz2500WfbKXAx8s67wrm9=yVJu65TpLgN_ybYNv0VEOKA@mail.gmail.com/

Reviewed-by: Leon Romanovsky <leonro@mellanox.com> # drivers/infiniband and mlx4/mlx5
Acked-by: Jason Gunthorpe <jgg@mellanox.com> # IB
Acked-by: Kalle Valo <kvalo@codeaurora.org> # wireless drivers
Reviewed-by: Chao Yu <yuchao0@huawei.com> # erofs
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-06-09 10:29:01 +02:00
Greg Kroah-Hartman
3b9196f720 Merge tag 'android11-5.4.242_r00' into android11-5.4
This is the merge of the upstream LTS release of 5.4.242 into the
android11-5.4 branch.

It contains the following commits:

b57981e17b4b Merge tag 'android11-5.4.242_r00' into android11-5.4
734577d21e Merge 5.4.242 into android11-5.4-lts
ea7862c507 Linux 5.4.242
d54a9f999e ASN.1: Fix check for strdup() success
2500d7edeb iio: adc: at91-sama5d2_adc: fix an error code in at91_adc_allocate_trigger()
760c2e6dee pwm: meson: Explicitly set .polarity in .get_state()
7f2b8046da xfs: fix forkoff miscalculation related to XFS_LITINO(mp)
c27a6bb178 sctp: Call inet6_destroy_sock() via sk->sk_destruct().
97ce6cde1f dccp: Call inet6_destroy_sock() via sk->sk_destruct().
a01b75620e inet6: Remove inet6_destroy_sock() in sk->sk_prot->destroy().
9374db5bd1 tcp/udp: Call inet6_destroy_sock() in IPv6 sk->sk_destruct().
2ac4697b77 udp: Call inet6_destroy_sock() in setsockopt(IPV6_ADDRFORM).
5a62248c58 ext4: fix use-after-free in ext4_xattr_set_entry
3b0044cb28 ext4: remove duplicate definition of ext4_xattr_ibody_inline_set()
3c4fdbf368 Revert "ext4: fix use-after-free in ext4_xattr_set_entry"
ef2aab86c3 x86/purgatory: Don't generate debug info for purgatory.ro
c22aefaef8 MIPS: Define RUNTIME_DISCARD_EXIT in LD script
a5167e902b mmc: sdhci_am654: Set HIGH_SPEED_ENA for SDR12 and SDR25
1b8b54fc55 memstick: fix memory leak if card device is never registered
5ad61a5268 nilfs2: initialize unused bytes in segment summary blocks
988766b9d1 iio: light: tsl2772: fix reading proximity-diodes from device tree
5cb867f1ec xen/netback: use same error messages for same errors
903f82b1a6 nvme-tcp: fix a possible UAF when failing to allocate an io queue
34b74c32ff s390/ptrace: fix PTRACE_GET_LAST_BREAK error handling
64cd99da25 net: dsa: b53: mmap: add phy ops
89dcf0dd7a scsi: core: Improve scsi_vpd_inquiry() checks
f729b74bb4 scsi: megaraid_sas: Fix fw_crash_buffer_show()
4f4ef354f9 selftests: sigaltstack: fix -Wuninitialized
a725dddf21 Input: i8042 - add quirk for Fujitsu Lifebook A574/H
9df3f502e3 f2fs: Fix f2fs_truncate_partial_nodes ftrace event
2f3730f182 e1000e: Disable TSO on i219-LM card to increase speed
0f0a291cc5 bpf: Fix incorrect verifier pruning due to missing register precision taints
ba610df83b mlxfw: fix null-ptr-deref in mlxfw_mfa2_tlv_next()
d8e120057c i40e: fix i40e_setup_misc_vector() error handling
59fba01b6c i40e: fix accessing vsi->active_filters without holding lock
01125379e2 netfilter: nf_tables: fix ifdef to also consider nf_tables=m
7c1019391b virtio_net: bugfix overflow inside xdp_linearize_page()
35dceaeab9 net: sched: sch_qfq: prevent slab-out-of-bounds in qfq_activate_agg
d61f24a454 regulator: fan53555: Explicitly include bits header
36f098e1e4 netfilter: br_netfilter: fix recent physdev match breakage
375e445b10 arm64: dts: meson-g12-common: specify full DMC range
cb1f89fe93 ARM: dts: rockchip: fix a typo error for rk3288 spdif node
da8b283c08 Merge 5.4.241 into android11-5.4-lts
58f42ed1cd Linux 5.4.241
8795936437 xfs: force log and push AIL to clear pinned inodes when aborting mount
c76dd36875 xfs: don't reuse busy extents on extent trim
4679b73a8e xfs: consider shutdown in bmapbt cursor delete assert
9355fd118b xfs: shut down the filesystem if we screw up quota reservation
48f75df5b3 xfs: report corruption only as a regular error
3cce34ceb2 xfs: set inode size after creating symlink
e76bd6da51 xfs: fix up non-directory creation in SGID directories
ad6613c984 xfs: remove the di_version field from struct icdinode
ca4533c951 xfs: simplify a check in xfs_ioctl_setattr_check_cowextsize
e078b3de3e xfs: simplify di_flags2 inheritance in xfs_ialloc
0c553917b6 xfs: only check the superblock version for dinode size calculation
90aab52d06 xfs: add a new xfs_sb_version_has_v3inode helper
edd36a57b4 xfs: remove the kuid/kgid conversion wrappers
3ef81874f7 xfs: remove the icdinode di_uid/di_gid members
cc508a41ae xfs: ensure that the inode uid/gid match values match the icdinode ones
7a9dc79771 xfs: merge the projid fields in struct xfs_icdinode
4f3252e7e1 xfs: show the proper user quota options
799cafa4f3 coresight-etm4: Fix for() loop drvdata->nr_addr_cmp range bug
440bdc49f7 watchdog: sbsa_wdog: Make sure the timeout programming is within the limits
70ca826d3d i2c: ocores: generate stop condition after timeout in polling mode
5fb5bdcdcd ubi: Fix deadlock caused by recursively holding work_sem
0b27716f2d mtd: ubi: wl: Fix a couple of kernel-doc issues
e55588c442 ubi: Fix failure attaching when vid_hdr offset equals to (sub)page size
a652c30fa2 asymmetric_keys: log on fatal failures in PE/pkcs7
5809dbacc4 verify_pefile: relax wrapper length check
0213f027d0 drm: panel-orientation-quirks: Add quirk for Lenovo Yoga Book X90F
b3052e5d46 efi: sysfb_efi: Add quirk for Lenovo Yoga Book X91F/L
02a78e6539 i2c: imx-lpi2c: clean rx/tx buffers upon new message
1ef5639744 power: supply: cros_usbpd: reclassify "default case!" as debug
7169d16388 net: macb: fix a memory corruption in extended buffer descriptor mode
c39fa0398a udp6: fix potential access to stale information
9c46c49ad3 RDMA/core: Fix GID entry ref leak when create_ah fails
ad831a7079 sctp: fix a potential overflow in sctp_ifwdtsn_skip
afffe0d1e6 qlcnic: check pci_reset_function result
a841f6a0a3 niu: Fix missing unwind goto in niu_alloc_channels()
fcd084e199 9p/xen : Fix use after free bug in xen_9pfs_front_remove due to race condition
1b77cb6f5e mtd: rawnand: stm32_fmc2: remove unsupported EDO mode
4c1d882b53 mtd: rawnand: meson: fix bitmask for length in command word
2667460034 mtdblock: tolerate corrected bit-flips
50dbfd9dac btrfs: fix fast csum implementation detection
c6db5f2a31 btrfs: print checksum type and implementation at mount time
8a99e6200c Bluetooth: Fix race condition in hidp_session_thread
c024219925 Bluetooth: L2CAP: Fix use-after-free in l2cap_disconnect_{req,rsp}
9025cea8e0 ALSA: hda/sigmatel: fix S/PDIF out on Intel D*45* motherboards
4d419195d6 ALSA: firewire-tascam: add missing unwind goto in snd_tscm_stream_start_duplex()
fe158eeccc ALSA: i2c/cs8427: fix iec958 mixer control deactivation
aa23fa32e5 ALSA: hda/sigmatel: add pin overrides for Intel DP45SG motherboard
62ccf2e0b1 ALSA: emu10k1: fix capture interrupt handler unlinking
9a3ba7b24d Revert "pinctrl: amd: Disable and mask interrupts on resume"
2945f948aa irqdomain: Fix mapping-creation race
e8f3aea716 irqdomain: Refactor __irq_domain_alloc_irqs()
3804f265c1 irqdomain: Look for existing mapping only once
e7bba7ddb4 mm/swap: fix swap_info_struct race between swapoff and get_swap_pages()
fd644712bc ring-buffer: Fix race while reader and writer are on the same page
c208b4321e drm/panfrost: Fix the panfrost_mmu_map_fault_addr() error path
c381527918 net_sched: prevent NULL dereference if default qdisc setup failed
987f599fc5 tracing: Free error logs of tracing instances
d2136f0569 can: j1939: j1939_tp_tx_dat_new(): fix out-of-bounds memory access
5a74a75fc3 ftrace: Mark get_lock_parent_ip() __always_inline
95bbfeb4ff perf/core: Fix the same task check in perf_event_set_output
666c25d35e ALSA: hda/realtek: Add quirk for Clevo X370SNW
83b16a60e4 nilfs2: fix sysfs interface lifetime
613bf23c07 nilfs2: fix potential UAF of struct nilfs_sc_info in nilfs_segctor_thread()
aa8e50688d tty: serial: fsl_lpuart: avoid checking for transfer complete when UARTCTRL_SBK is asserted in lpuart32_tx_empty
aabba44404 tty: serial: sh-sci: Fix Rx on RZ/G2L SCI
209ab5c234 tty: serial: sh-sci: Fix transmit end interrupt handler
9a2a6443d6 iio: dac: cio-dac: Fix max DAC write value check for 12-bit
e469ebb28d iio: adc: ti-ads7950: Set `can_sleep` flag for GPIO chip
abc5b4f8cd USB: serial: option: add Quectel RM500U-CN modem
b9c11537ef USB: serial: option: add Telit FE990 compositions
38c00a22d6 usb: typec: altmodes/displayport: Fix configure initial pin assignment
f417d3fea3 USB: serial: cp210x: add Silicon Labs IFS-USB-DATACABLE IDs
47132be17d xhci: also avoid the XHCI_ZERO_64B_REGS quirk with a passthrough iommu
5fccf2c546 NFSD: callback request does not use correct credential for AUTH_SYS
3686380d9d sunrpc: only free unix grouplist after RCU settles
1627119153 gpio: davinci: Add irq chip flag to skip set wake
0cf600ca1b ipv6: Fix an uninit variable access bug in __ip6_make_skb()
0443fff49d sctp: check send stream number after wait_for_sndbuf
93f3885211 net: don't let netpoll invoke NAPI if in xmit context
0d2fa30078 icmp: guard against too small mtu
a3593082e0 wifi: mac80211: fix invalid drv_sta_pre_rcu_remove calls for non-uploaded sta
4220f83b9f pwm: sprd: Explicitly set .polarity in .get_state()
6e1f29397d pwm: cros-ec: Explicitly set .polarity in .get_state()
dbd764e9d4 pinctrl: amd: Disable and mask interrupts on resume
dd7e19f97f pinctrl: amd: disable and mask interrupts on probe
3f3e4bd3f0 pinctrl: amd: Use irqchip template
387236b9e0 smb3: fix problem with null cifs super block with previous patch
2e64d7b182 treewide: Replace DECLARE_TASKLET() with DECLARE_TASKLET_OLD()
199197660b Revert "treewide: Replace DECLARE_TASKLET() with DECLARE_TASKLET_OLD()"
522af69af2 cgroup/cpuset: Wake up cpuset_attach_wq tasks in cpuset_cancel_attach()
4311ae04b3 x86/PCI: Add quirk for AMD XHCI controller that loses MSI-X state in D3hot
110d425cdf scsi: ses: Handle enclosure with just a primary component gracefully
974e2ad014 Merge 5.4.240 into android11-5.4-lts
32bea3bac5 Linux 5.4.240
4d4cb76636 gfs2: Always check inode size of inline inodes
928240c368 firmware: arm_scmi: Fix device node validation for mailbox transport
0f5c0e0a4c net: sched: fix race condition in qdisc_graft()
22d95b5449 net_sched: add __rcu annotation to netdev->qdisc
14b6ad56df ext4: fix kernel BUG in 'ext4_write_inline_data_end()'
9b189af357 btrfs: scan device in non-exclusive mode
45a9877d6c s390/uaccess: add missing earlyclobber annotations to __clear_user()
0c6df53647 drm/etnaviv: fix reference leak when mmaping imported buffer
37958ac31f ALSA: usb-audio: Fix regression on detection of Roland VS-100
6dabafd829 ALSA: hda/conexant: Partial revert of a quirk for Lenovo
f3a6726878 NFSv4: Fix hangs when recovering open state after a server reboot
c81e2965a9 pinctrl: at91-pio4: fix domain name assignment
82c25ac3a2 xen/netback: don't do grant copy across page boundary
99c8ba920f Input: goodix - add Lenovo Yoga Book X90F to nine_bytes_report DMI table
657d7c215c cifs: fix DFS traversal oops without CONFIG_CIFS_DFS_UPCALL
03af69bd67 cifs: prevent infinite recursion in CIFSGetDFSRefer()
51d6573711 Input: focaltech - use explicitly signed char type
f0f85f5e40 Input: alps - fix compatibility with -funsigned-char
7e71d4d190 pinctrl: ocelot: Fix alt mode for ocelot
70728d639e net: mvneta: make tx buffer array agnostic
704e06b979 net: dsa: mv88e6xxx: Enable IGMP snooping on user ports only
fd7cff5066 bnxt_en: Fix typo in PCI id to device description string mapping
58279cea0b i40e: fix registers dump after run ethtool adapter self test
5195de1d5f s390/vfio-ap: fix memory leak in vfio_ap device driver
78bc7f0ab9 can: bcm: bcm_tx_setup(): fix KMSAN uninit-value in vfs_write
105cc26832 net/net_failover: fix txq exceeding warning
e633fd26ab regulator: Handle deferred clk
be7b622cd6 regulator: fix spelling mistake "Cant" -> "Can't"
46c4993a15 ptp_qoriq: fix memory leak in probe()
c122daa0fa scsi: megaraid_sas: Fix crash after a double completion
317c07d382 mtd: rawnand: meson: invalidate cache on polling ECC bit
d65de5ee8b mips: bmips: BCM6358: disable RAC flush for TP1
9690e34f22 dma-mapping: drop the dev argument to arch_sync_dma_for_*
f6e2d76aa3 ca8210: Fix unsigned mac_len comparison with zero in ca8210_skb_tx()
856fb74f60 fbdev: au1200fb: Fix potential divide by zero
deef33c081 fbdev: lxfb: Fix potential divide by zero
4f5cc5ffa8 fbdev: intelfb: Fix potential divide by zero
868f247e47 fbdev: nvidia: Fix potential divide by zero
f3359f5fc9 sched_getaffinity: don't assume 'cpumask_size()' is fully initialized
521877bf26 fbdev: tgafb: Fix potential divide by zero
7f12f99b80 ALSA: hda/ca0132: fixup buffer overrun at tuning_ctl_set()
9155a5958e ALSA: asihpi: check pao in control_message()
88a3c63a96 md: avoid signed overflow in slot_store()
9966fc59d3 bus: imx-weim: fix branch condition evaluates to a garbage value
d121f7883a fsverity: don't drop pagecache at end of FS_IOC_ENABLE_VERITY
4c24eb49ab ocfs2: fix data corruption after failed write
0c0e566f03 tun: avoid double free in tun_free_netdev
d253120a58 sched/fair: Sanitize vruntime of entity being migrated
c23928c70b sched/fair: sanitize vruntime of entity being placed
885c28ceae dm crypt: add cond_resched() to dmcrypt_write()
4a32a9a818 dm stats: check for and propagate alloc_percpu failure
f8cbad984b i2c: xgene-slimpro: Fix out-of-bounds bug in xgene_slimpro_i2c_xfer()
8f5cbf6a8c nilfs2: fix kernel-infoleak in nilfs_ioctl_wrap_copy()
4ae966a7f6 wifi: mac80211: fix qos on mesh interfaces
f558789a88 usb: chipidea: core: fix possible concurrent when switch role
6b3287b147 usb: chipdea: core: fix return -EINVAL if request role is the same with current role
0b2a56fe46 usb: cdns3: Fix issue with using incorrect PCI device function
e9e93fdfce dm thin: fix deadlock when swapping to thin device
cd1e320ac0 igb: revert rtnl_lock() that causes deadlock
123698a5c6 fsverity: Remove WQ_UNBOUND from fsverity read workqueue
0eda2004f3 usb: gadget: u_audio: don't let userspace block driver unbind
44f080d7d7 scsi: core: Add BLIST_SKIP_VPD_PAGES for SKhynix H28U74301AMR
223274d5c3 cifs: empty interface list when server doesn't support query interfaces
299a309b98 sh: sanitize the flags on sigreturn
f4c610f6ca net: usb: qmi_wwan: add Telit 0x1080 composition
e6b1fa6d06 net: usb: cdc_mbim: avoid altsetting toggling for Telit FE990
04f4a1aa94 scsi: lpfc: Avoid usage of list iterator variable after loop
11cdced6a0 scsi: ufs: core: Add soft dependency on governor_simpleondemand
54ec697e3c scsi: target: iscsi: Fix an error message in iscsi_check_key()
9711522191 selftests/bpf: check that modifier resolves after pointer
2100e37425 m68k: Only force 030 bus error if PC not in exception table
d2b3bd0d4c ca8210: fix mac_len negative array access
9e7723b684 riscv: Bump COMMAND_LINE_SIZE value to 1024
32518cd0fc thunderbolt: Use const qualifier for `ring_interrupt_index`
b40fe2e1f9 uas: Add US_FL_NO_REPORT_OPCODES for JMicron JMS583Gen 2
9189f20b4c scsi: qla2xxx: Perform lockless command completion in abort path
da0383f0e8 hwmon (it87): Fix voltage scaling for chips with 10.9mV ADCs
13493ad6a2 platform/chrome: cros_ec_chardev: fix kernel data leak from ioctl
a18fb433ce Bluetooth: btsdio: fix use after free bug in btsdio_remove due to unfinished work
b517808795 Bluetooth: btqcomsmd: Fix command timeout after setting BD address
dcd4d36462 net: mdio: thunder: Add missing fwnode_handle_put()
707335918f hvc/xen: prevent concurrent accesses to the shared ring
83e442eba3 nvme-tcp: fix nvme_tcp_term_pdu to match spec
d673ae1840 net/sonic: use dma_mapping_error() for error check
b72f453e88 erspan: do not use skb_mac_header() in ndo_start_xmit()
82e07cc5a6 atm: idt77252: fix kmemleak when rmmod idt77252
fd6f643dea net/mlx5: Read the TC mapping of all priorities on ETS query
d69c2ded95 bpf: Adjust insufficient default bpf_jit_limit
97674f4cd0 keys: Do not cache key in task struct if key is requested from kernel thread
f8ee2c8b0d net/ps3_gelic_net: Use dma_mapping_error
6d7e18b1d0 net/ps3_gelic_net: Fix RX sk_buff length
0e5c7d00ec net: qcom/emac: Fix use after free bug in emac_remove due to race condition
a07ec453e8 xirc2ps_cs: Fix use after free bug in xirc2ps_detach
42d72c6d1e qed/qed_sriov: guard against NULL derefs from qed_iov_get_vf_info
f2111c791d net: usb: smsc95xx: Limit packet length to skb->len
5c4d71424d scsi: scsi_dh_alua: Fix memleak for 'qdata' in alua_activate()
283fdc5cfb i2c: imx-lpi2c: check only for enabled interrupt flags
90116b8289 igbvf: Regard vf reset nack as success
584771762c intel/igbvf: free irq on the error path in igbvf_request_msix()
6999f85418 iavf: fix non-tunneled IPv6 UDP packet type and hashing
4e752d2bae iavf: fix inverted Rx hash condition leading to disabled hash
6fe078c286 power: supply: da9150: Fix use after free bug in da9150_charger_remove due to race condition
754838aa02 net: tls: fix possible race condition between do_tls_getsockopt_conf() and do_tls_setsockopt_conf()
a03da9c9ae Merge 5.4.239 into android11-5.4-lts
09b1a76e78 Linux 5.4.239
f0c95f229a selftests: Fix the executable permissions for fib_tests.sh
1221512b02 BACKPORT: mac80211_hwsim: notify wmediumd of used MAC addresses
8ac436fa26 FROMGIT: mac80211_hwsim: add concurrent channels scanning support over virtio
b6d6caabaf Merge branch 'android11-5.4' into android11-5.4-lts
5fd4376e12 Revert "HID: core: Provide new max_buffer_size attribute to over-ride the default"
6efc429d3f Revert "HID: uhid: Over-ride the default maximum data buffer value with our own"
1e58c0c8e9 Merge 5.4.238 into android11-5.4-lts
6849d8c4a6 Linux 5.4.238
eb7716a054 HID: uhid: Over-ride the default maximum data buffer value with our own
b687ac70e6 HID: core: Provide new max_buffer_size attribute to over-ride the default
144019e813 PCI: Unify delay handling for reset and resume
d2130f37a4 s390/ipl: add missing intersection check to ipl_report handling
3f5a833dca serial: 8250_em: Fix UART port type
c5afb97d1b drm/i915: Don't use stolen memory for ring buffers with LLC
8d26a4fecc x86/mm: Fix use of uninitialized buffer in sme_enable()
a976ff743e fbdev: stifb: Provide valid pixelclock and add fb_check_var() checks
ac58b88ccb ftrace: Fix invalid address access in lookup_rec() when index is 0
65e4c9a6d0 KVM: nVMX: add missing consistency checks for CR0 and CR4
6fe55dce9d tracing: Make tracepoint lockdep check actually test something
780f69a268 tracing: Check field value in hist_field_name()
f1e3a20c60 interconnect: fix mem leak when freeing nodes
325608ab60 tty: serial: fsl_lpuart: skip waiting for transmission complete when UARTCTRL_SBK is asserted
c16cbd8233 ext4: fix possible double unlock when moving a directory
6a1bd14d5e sh: intc: Avoid spurious sizeof-pointer-div warning
bbf5eada43 drm/amdkfd: Fix an illegal memory access
2c96c52aea ext4: fix task hung in ext4_xattr_delete_inode
20ba6f8a80 ext4: fail ext4_iget if special inode unallocated
ab519e2989 jffs2: correct logic when creating a hole in jffs2_write_begin
00bfc67c65 mmc: atmel-mci: fix race between stop command and start of next command
75f6faae2d media: m5mols: fix off-by-one loop termination error
9eb394919c hwmon: (ina3221) return prober error code
26c176ce90 hwmon: (xgene) Fix use after free bug in xgene_hwmon_remove due to race condition
13efd488d3 hwmon: (adt7475) Fix masking of hysteresis registers
0d3095e958 hwmon: (adt7475) Display smoothing attributes in correct order
674fce59d6 ethernet: sun: add check for the mdesc_grab()
71da5991b6 net/iucv: Fix size of interrupt data
e0d07a3203 net: usb: smsc75xx: Move packet length check to prevent kernel panic in skb_pull
5c06bd3de1 ipv4: Fix incorrect table ID in IOCTL path
c4fcfbf80c block: sunvdc: add check for mdesc_grab() returning NULL
04c3942088 nvmet: avoid potential UAF in nvmet_req_complete()
9fabdd7905 net: usb: smsc75xx: Limit packet length to skb->len
b0c202a8dc nfc: st-nci: Fix use after free bug in ndlc_remove due to race condition
668de67d41 net: phy: smsc: bail out in lan87xx_read_status if genphy_read_status fails
5aaab217c8 net: tunnels: annotate lockless accesses to dev->needed_headroom
cba20ade78 qed/qed_dev: guard against a possible division by zero
6e18f66b70 i40e: Fix kernel crash during reboot when adapter is in recovery mode
f0216046ae ipvlan: Make skb->skb_iif track skb->dev for l3s mode
0f9c1f26d4 nfc: pn533: initialize struct pn533_out_arg properly
442aa78ed7 tcp: tcp_make_synack() can be called from process context
88c3d3bb64 scsi: core: Fix a procfs host directory removal regression
4b4f5e34f0 scsi: core: Fix a comment in function scsi_host_dev_release()
0d59732f2a netfilter: nft_redir: correct value of inet type `.maxattrs`
90279211e9 ALSA: hda: Match only Intel devices with CONTROLLER_IN_GPU()
0b7057c523 ALSA: hda: Add Intel DG2 PCI ID and HDMI codec vid
5bb9fcaadb ALSA: hda: Add Alderlake-S PCI ID and HDMI codec vid
9efbdc743d ALSA: hda - controller is in GPU on the DG1
fc52e51c2c ALSA: hda - add Intel DG1 PCI and HDMI ids
090305c361 scsi: mpt3sas: Fix NULL pointer access in mpt3sas_transport_port_add()
b8849e31a0 docs: Correct missing "d_" prefix for dentry_operations member d_weak_revalidate
9e45e45715 clk: HI655X: select REGMAP instead of depending on it
dac08e46f0 drm/meson: fix 1px pink line on GXM when scaling video overlay
d7e48aa17a cifs: Move the in_send statistic to __smb_send_rqst()
06c208002d drm/panfrost: Don't sync rpm suspension after mmu flushing
c9900d1d86 xfrm: Allow transport-mode states with AF_UNSPEC selector
4008fb9ad4 ext4: fix cgroup writeback accounting with fs-layer encryption
6eb1bfc752 ANDROID: preserve CRC for __irq_domain_add()
812963276d Merge 5.4.237 into android11-5.4-lts
fd02046fbd Merge 5.4.236 into android11-5.4-lts
48b8328041 Revert "drm/exynos: Don't reset bridge->next"
7edc66298a Revert "drm/bridge: Rename bridge helpers targeting a bridge chain"
8d15e5fac1 Revert "drm/bridge: Introduce drm_bridge_get_next_bridge()"
aac98e0c73 Revert "drm: Initialize struct drm_crtc_state.no_vblank from device settings"
af8848e0d9 Revert "drm/msm/mdp5: Add check for kzalloc"
e4b5c766f5 Linux 5.4.237
6a16810068 s390/dasd: add missing discipline function
7a934a77f1 UML: define RUNTIME_DISCARD_EXIT
87fcce7a6f sh: define RUNTIME_DISCARD_EXIT
eb9dbb70cd s390: define RUNTIME_DISCARD_EXIT to fix link error with GNU ld < 2.36
219cc98501 powerpc/vmlinux.lds: Don't discard .rela* for relocatable builds
4eede1173f powerpc/vmlinux.lds: Define RUNTIME_DISCARD_EXIT
d0fcf59038 arch: fix broken BuildID for arm64 and riscv
a4bd6d4df3 x86, vmlinux.lds: Add RUNTIME_DISCARD_EXIT to generic DISCARDS
1aed78cfda drm/i915: Don't use BAR mappings for ring buffers with LLC
52fc917855 ipmi:watchdog: Set panic count to proper value on a panic
dbfae25b01 ipmi/watchdog: replace atomic_add() and atomic_sub()
f266cdd679 media: ov5640: Fix analogue gain control
fc9bc83150 PCI: Add SolidRun vendor ID
094a073605 macintosh: windfarm: Use unsigned type for 1-bit bitfields
737985dbcb alpha: fix R_ALPHA_LITERAL reloc for large modules
2fea235ef0 MIPS: Fix a compilation issue
6b06c4ae64 ext4: Fix deadlock during directory rename
a99a61d9e1 riscv: Use READ_ONCE_NOCHECK in imprecise unwinding stack mode
1a517302db net/smc: fix fallback failed while sendmsg with fastopen
3a747490f9 scsi: megaraid_sas: Update max supported LD IDs to 240
d800996fcf btf: fix resolving BTF_KIND_VAR after ARRAY, STRUCT, UNION, PTR
9f2e063dcb netfilter: tproxy: fix deadlock due to missing BH disable
16f3aae1aa bnxt_en: Avoid order-5 memory allocation for TPA data
9dc16be373 net: caif: Fix use-after-free in cfusbl_device_notify()
8018aa0863 net: lan78xx: fix accessing the LAN7800's internal phy specific registers from the MAC driver
1c618f150c net: usb: lan78xx: Remove lots of set but unused 'ret' variables
e4e5006c13 selftests: nft_nat: ensuring the listening side is up before starting the client
783f218940 ila: do not generate empty messages in ila_xlat_nl_cmd_get_mapping()
0a3664a105 nfc: fdp: add null check of devm_kmalloc_array in fdp_nci_i2c_read_device_properties
43f33642f2 drm/msm/a5xx: fix setting of the CP_PREEMPT_ENABLE_LOCAL register
8dac5a63cf ext4: Fix possible corruption when moving a directory
891a3cba42 scsi: core: Remove the /proc/scsi/${proc_name} directory earlier
57f78226b1 cifs: Fix uninitialized memory read in smb3_qfs_tcon()
a6e44cb215 SMB3: Backup intent flag missing from some more ops
1b48c70fee iommu/vt-d: Fix PASID directory pointer coherency
985d9fa06b irqdomain: Fix domain registration race
01ed8ff22a irqdomain: Change the type of 'size' in __irq_domain_add() to be consistent
36c5682cbb ipmi:ssif: Add a timer between request retries
e8ba1b693a ipmi:ssif: Increase the message retry time
89fb3fa848 ipmi:ssif: Remove rtc_us_timer
d1a7f56b20 ipmi:ssif: resend_msg() cannot fail
59349bfcff ipmi:ssif: make ssif_i2c_send() void
5e97dc748d iommu/amd: Add a length limitation for the ivrs_acpihid command-line parameter
774c63f536 iommu/amd: Fix ill-formed ivrs_ioapic, ivrs_hpet and ivrs_acpihid options
11852cc78f iommu/amd: Add PCI segment support for ivrs_[ioapic/hpet/acpihid] commands
3cdf19a29c nfc: change order inside nfc_se_io error path
0d8a6c9a64 ext4: zero i_disksize when initializing the bootloader inode
74d775083e ext4: fix WARNING in ext4_update_inline_data
b36093c6f7 ext4: move where set the MAY_INLINE_DATA flag is set
c24f838493 ext4: fix another off-by-one fsmap error on 1k block filesystems
aee90b0278 ext4: fix RENAME_WHITEOUT handling for inline directories
1277ba3db6 drm/connector: print max_requested_bpc in state debugfs
e40c1e9da1 x86/CPU/AMD: Disable XSAVES on AMD family 0x17
6631c8da02 fs: prevent out-of-bounds array speculation when closing a file descriptor
b829e8b6e1 Linux 5.4.236
6e55d84223 staging: rtl8192e: Remove call_usermodehelper starting RadioPower.sh
9498448b9e staging: rtl8192e: Remove function ..dm_check_ac_dc_power calling a script
6ee84b8b79 wifi: cfg80211: Partial revert "wifi: cfg80211: Fix use after free for wext"
0d9d32f54c Merge 5.4.235 into android11-5.4-lts
126ee8982b Linux 5.4.235
d03bc164f3 dt-bindings: rtc: sun6i-a31-rtc: Loosen the requirements on the clocks
6ab6705463 media: uvcvideo: Fix race condition with usb_kill_urb
0b8962c64b media: uvcvideo: Provide sync and async uvc_ctrl_status_event
2b1c5145b0 tcp: Fix listen() regression in 5.4.229.
800a1c4c8a Bluetooth: hci_sock: purge socket queues in the destruct() callback
27c64d90d9 x86/resctl: fix scheduler confusion with 'current'
81da72aaf5 x86/resctrl: Apply READ_ONCE/WRITE_ONCE to task_struct.{rmid,closid}
bde541a57b net: tls: avoid hanging tasks on the tx_lock
d94fbfcd9a phy: rockchip-typec: Fix unsigned comparison with less than zero
f0ee43d61d PCI: Add ACS quirk for Wangxun NICs
f6d3aee1c6 kernel/fail_function: fix memory leak with using debugfs_lookup()
195c1e9f45 usb: uvc: Enumerate valid values for color matching
da4e715a46 USB: ene_usb6250: Allocate enough memory for full object
1170979668 usb: host: xhci: mvebu: Iterate over array indexes instead of using pointer math
f5b76a8166 iio: accel: mma9551_core: Prevent uninitialized variable in mma9551_read_config_word()
11b4b3b769 iio: accel: mma9551_core: Prevent uninitialized variable in mma9551_read_status_word()
b854c66dd7 tools/iio/iio_utils:fix memory leak
ea9b587896 mei: bus-fixup:upon error print return values of send and receive
c7ca2ca12a tty: serial: fsl_lpuart: disable the CTS when send break signal
953a4a352a tty: fix out-of-bounds access in tty_driver_lookup_tty()
70369a1117 staging: emxx_udc: Add checks for dma_alloc_coherent()
2072ed7c1a media: uvcvideo: Silence memcpy() run-time false positive warnings
e2cc773f1f media: uvcvideo: Quirk for autosuspend in Logitech B910 and C910
e4c535ecce media: uvcvideo: Handle errors from calls to usb_string
4e4e6ca62e media: uvcvideo: Handle cameras with invalid descriptors
7195e642b4 mfd: arizona: Use pm_runtime_resume_and_get() to prevent refcnt leak
fde59e273b firmware/efi sysfb_efi: Add quirk for Lenovo IdeaPad Duet 3
2cc6a3e98f tracing: Add NULL checks for buffer in ring_buffer_free_read_page()
4cfeb55a10 thermal: intel: BXT_PMIC: select REGMAP instead of depending on it
e23f1d9e6e thermal: intel: quark_dts: fix error pointer dereference
584f664c57 scsi: ipr: Work around fortify-string warning
e93bda4ebb rtc: sun6i: Always export the internal oscillator
728b047f4c rtc: sun6i: Make external 32k oscillator optional
9c7c1cf29f vc_screen: modify vcs_size() handling in vcs_read()
821362a2df tcp: tcp_check_req() can be called from process context
77606e383e ARM: dts: spear320-hmi: correct STMPE GPIO compatible
dda4f0a424 net/sched: act_sample: fix action bind logic
271eed1736 nfc: fix memory leak of se_io context in nfc_genl_se_io
f81af781f9 net/mlx5: Geneve, Fix handling of Geneve object id as error code
4b71f2b543 9p/rdma: unmap receive dma buffer in rdma_request()/post_recv()
7cc9dbae8a 9p/xen: fix connection sequence
9d1c625c99 9p/xen: fix version parsing
edfba7b322 net: fix __dev_kfree_skb_any() vs drop monitor
cec326443f sctp: add a refcnt in sctp_stream_priorities to avoid a nested loop
aba298b356 ipv6: Add lwtunnel encap size of all siblings in nexthop calculation
5d0d38805d netfilter: ctnetlink: fix possible refcount leak in ctnetlink_create_conntrack()
fe65d6f26b watchdog: pcwd_usb: Fix attempting to access uninitialized memory
59e391b3fc watchdog: Fix kmemleak in watchdog_cdev_register
7c428fc974 watchdog: at91sam9_wdt: use devm_request_irq to avoid missing free_irq() in error path
a8816afcaf x86: um: vdso: Add '%rcx' and '%r11' to the syscall clobber list
b5be23f6ae ubi: ubi_wl_put_peb: Fix infinite loop when wear-leveling work failed
1cb14c06d6 ubi: Fix UAF wear-leveling entry in eraseblk_count_seq_show()
7fcbc41d76 ubifs: ubifs_writepage: Mark page dirty after writing inode failed
510b80abe8 ubifs: dirty_cow_znode: Fix memleak in error handling path
0875edcad4 ubifs: Re-statistic cleaned znode count if commit failed
234c53e574 ubi: Fix possible null-ptr-deref in ubi_free_volume()
1f206002c6 ubifs: Fix memory leak in alloc_wbufs()
07b60f7452 ubi: Fix unreferenced object reported by kmemleak in ubi_resize_volume()
9c8be1f165 ubi: Fix use-after-free when volume resizing failed
e86d1b2bb7 ubifs: Reserve one leb for each journal head while doing budget
82c096d0c9 ubifs: do_rename: Fix wrong space budget when target inode's nlink > 1
bf8f549584 ubifs: Fix wrong dirty space budget for dirty inode
f29168fb52 ubifs: Rectify space budget for ubifs_xrename()
8666030627 ubifs: Rectify space budget for ubifs_symlink() if symlink is encrypted
4ca0d74622 ubifs: Fix build errors as symbol undefined
f7adb740f9 ubi: ensure that VID header offset + VID header size <= alloc, size
6480c3a127 um: vector: Fix memory leak in vector_config
01c92f033b fs: f2fs: initialize fsdata in pagecache_write()
c4a89ebe92 f2fs: use memcpy_{to,from}_page() where possible
b915fac020 pwm: stm32-lp: fix the check on arr and cmp registers update
1abd385802 pwm: sifive: Always let the first pwm_apply_state succeed
30a3636fe6 pwm: sifive: Reduce time the controller lock is held
62462a5b4f fs/jfs: fix shift exponent db_agl2size negative
7a6fb69bbc net/sched: Retire tcindex classifier
b3d346ece9 kbuild: Port silent mode detection to future gnu make.
68b0cdcfa1 wifi: ath9k: use proper statements in conditionals
96a8424a27 drm/radeon: Fix eDP for single-display iMac11,2
6e6173886f drm/i915/quirks: Add inverted backlight quirk for HP 14-r206nv
efc72cceb7 PCI: Avoid FLR for AMD FCH AHCI adapters
bcc1bafb06 PCI: hotplug: Allow marking devices as disconnected during bind/unbind
2a50583117 PCI/PM: Observe reset delay irrespective of bridge_d3
40af9a6dee scsi: ses: Fix slab-out-of-bounds in ses_intf_remove()
79ec5dd5fb scsi: ses: Fix possible desc_ptr out-of-bounds accesses
8e454aba72 scsi: ses: Fix possible addl_desc_ptr out-of-bounds accesses
467afb1dd6 scsi: ses: Fix slab-out-of-bounds in ses_enclosure_data_process()
6069e04a92 scsi: ses: Don't attach if enclosure has no components
70e9a93f09 scsi: qla2xxx: Fix erroneous link down
3a564de3a2 scsi: qla2xxx: Fix DMA-API call trace on NVMe LS requests
05a0f6fa52 scsi: qla2xxx: Fix link failure in NPIV environment
18d347d1b0 ktest.pl: Add RUN_TIMEOUT option with default unlimited
150ee1fc90 ktest.pl: Fix missing "end_monitor" when machine check fails
2f42bfc54d ktest.pl: Give back console on Ctrt^C on monitor
b53d209d71 mm/thp: check and bail out if page in deferred queue already
24900f3596 mm: memcontrol: deprecate charge moving
964e9e1288 media: ipu3-cio2: Fix PM runtime usage_count in driver unbind
58c0d0b2d4 mips: fix syscall_get_nr
229edf8d7b alpha: fix FEN fault handling
9787b328c4 rbd: avoid use-after-free in do_rbd_add() when rbd_dev_create() fails
7055754dd0 ARM: dts: exynos: correct TMU phandle in Odroid XU
7b6707d66e ARM: dts: exynos: correct TMU phandle in Exynos4
3c4a56ef7c dm flakey: don't corrupt the zero page
a2be4225c3 dm flakey: fix logic when corrupting a bio
64fbe39232 thermal: intel: powerclamp: Fix cur_state for multi package system
6f1959c17d wifi: cfg80211: Fix use after free for wext
342cb34c52 wifi: rtl8xxxu: Use a longer retry limit of 48
a92b67e768 ext4: refuse to create ea block when umounted
3b28c799a1 ext4: optimize ea_inode block expansion
87005d0ab5 ALSA: hda/realtek: Add quirk for HP EliteDesk 800 G6 Tower PC
84ed1ade54 ALSA: ice1712: Do not left ice->gpio_mutex locked in aureon_add_controls()
df129eaa2b irqdomain: Drop bogus fwspec-mapping error handling
72232dbe14 irqdomain: Fix disassociation race
2101663687 irqdomain: Fix association race
f9d9320189 ima: Align ima_file_mmap() parameters with mmap_file LSM hook
4d47cba074 Documentation/hw-vuln: Document the interaction between IBRS and STIBP
34c1b60e7a x86/speculation: Allow enabling STIBP with legacy IBRS
979e197968 x86/microcode/AMD: Fix mixed steppings support
727bc2c285 x86/microcode/AMD: Add a @cpu parameter to the reloading functions
4c26edf2ea x86/microcode/amd: Remove load_microcode_amd()'s bsp parameter
a0415b79dd x86/kprobes: Fix arch_check_optimized_kprobe check within optimized_kprobe range
ec206a38d3 x86/kprobes: Fix __recover_optprobed_insn check optimizing logic
e4ce333cc6 x86/reboot: Disable SVM, not just VMX, when stopping CPUs
37459195d9 x86/reboot: Disable virtualization in an emergency if SVM is supported
87459b9fce x86/crash: Disable virt in core NMI crash handler to avoid double shootdown
ee80fb1dca x86/virt: Force GIF=1 prior to disabling SVM (for reboot flows)
4c9812d989 KVM: s390: disable migration mode when dirty tracking is disabled
10c2a20d73 KVM: Destroy target device if coalesced MMIO unregistration fails
38a1f5e9fc udf: Fix file corruption when appending just after end of preallocated extent
d747b31e29 udf: Detect system inodes linked into directory hierarchy
ce17ef97de udf: Preserve link count of system files
7bd8d9e1cf udf: Do not update file length for failed writes to inline files
3d20e3b768 udf: Do not bother merging very long extents
4e41b1c5a2 udf: Truncate added extents on failed expansion
dee96928d8 ocfs2: fix non-auto defrag path not working issue
669134a66d ocfs2: fix defrag path triggering jbd2 ASSERT
68a47ca958 f2fs: fix cgroup writeback accounting with fs-layer encryption
2bef8314fc f2fs: fix information leak in f2fs_move_inline_dirents()
3776ef785e fs: hfsplus: fix UAF issue in hfsplus_put_super
eda6879272 hfs: fix missing hfs_bnode_get() in __hfs_bnode_create
8ecde537ed ARM: dts: exynos: correct HDMI phy compatible in Exynos4
e71e6fa07f s390/kprobes: fix current_kprobe never cleared after kprobes reenter
18075c0dc3 s390/kprobes: fix irq mask clobbering on kprobe reenter from post_handler
c5db76fcdd s390: discard .interp section
a9391f8bc9 ipmi_ssif: Rename idle state and check
0ff4c222bd rtc: pm8xxx: fix set-alarm race
69b8af77ef firmware: coreboot: framebuffer: Ignore reserved pixel color bits
791402dd05 wifi: rtl8xxxu: fixing transmisison failure for rtl8192eu
3132aa35cf nfsd: zero out pointers after putting nfsd_files on COPY setup error
38b4d3eacb dm cache: add cond_resched() to various workqueue loops
3b46b2cb91 dm thin: add cond_resched() to various workqueue loops
2c055b6a07 drm: panel-orientation-quirks: Add quirk for Lenovo IdeaPad Duet 3 10IGL5
718ce68b3a pinctrl: at91: use devm_kasprintf() to avoid potential leaks
4000384684 hwmon: (coretemp) Simplify platform device handling
5026260ac2 regulator: s5m8767: Bounds check id indexing into arrays
12527ae49d regulator: max77802: Bounds check regulator id against opmode
7fae534a30 ASoC: kirkwood: Iterate over array indexes instead of using pointer math
90c278c6d0 docs/scripts/gdb: add necessary make scripts_gdb step
3a9a4a9725 drm/msm/dsi: Add missing check for alloc_ordered_workqueue
f9f55fc649 drm/radeon: free iio for atombios when driver shutdown
5ccd8d09fe HID: Add Mapping for System Microphone Mute
341a4c04ed drm/omap: dsi: Fix excessive stack usage
d236103782 drm/amd/display: Fix potential null-deref in dm_resume
5bc391944d uaccess: Add minimum bounds check on kernel buffer size
0467681f09 coda: Avoid partial allocation of sig_inputArgs
1a98c4d926 net/mlx5: fw_tracer: Fix debug print
21856d5615 ACPI: video: Fix Lenovo Ideapad Z570 DMI match
c727c1eb58 wifi: mt76: dma: free rx_head in mt76_dma_rx_cleanup
51c0dca573 m68k: Check syscall_trace_enter() return code
87363d1ab5 net: bcmgenet: Add a check for oversized packets
fe00ab1eb3 ACPI: Don't build ACPICA with '-Os'
8ec82cfe4e ice: add missing checks for PF vsi type
f81c0d484a inet: fix fast path in __inet_hash_connect()
67e4519afb wifi: mt7601u: fix an integer underflow
423a1297ea wifi: brcmfmac: ensure CLM version is null-terminated to prevent stack-out-of-bounds
f3a324362b x86/bugs: Reset speculation control settings on init
c8157f67b0 timers: Prevent union confusion from unexpected restart_syscall()
f570968d01 thermal: intel: Fix unsigned comparison with less than zero
596d1fea05 rcu: Suppress smp_processor_id() complaint in synchronize_rcu_expedited_wait()
17dbe90e13 wifi: brcmfmac: Fix potential stack-out-of-bounds in brcmf_c_preinit_dcmds()
9e8bf9f95f blk-iocost: fix divide by 0 error in calc_lcoefs()
f10001af0f ARM: dts: exynos: Use Exynos5420 compatible for the MIPI video phy
dae4d5ae6b udf: Define EFSCORRUPTED error code
824b167fa8 rpmsg: glink: Avoid infinite loop on intent for missing channel
a41bb59eff media: usb: siano: Fix use after free bugs caused by do_submit_urb
2a72e3b6bb media: i2c: ov7670: 0 instead of -EINVAL was returned
d120334278 media: rc: Fix use-after-free bugs caused by ene_tx_irqsim()
448ce1cd50 media: i2c: ov772x: Fix memleak in ov772x_probe()
086a80b842 media: ov5675: Fix memleak in ov5675_init_controls()
ec6bd0dccd powerpc: Remove linker flag from KBUILD_AFLAGS
44aef56083 media: platform: ti: Add missing check for devm_regulator_get
fc85fb5763 remoteproc: qcom_q6v5_mss: Use a carveout to authenticate modem headers
3acbec356d MIPS: vpe-mt: drop physical_memsize
a3c9200405 MIPS: SMP-CPS: fix build error when HOTPLUG_CPU not set
1abc7be57c powerpc/eeh: Set channel state after notifying the drivers
7719aba7a3 powerpc/eeh: Small refactor of eeh_handle_normal_event()
a39becb905 powerpc/rtas: ensure 4KB alignment for rtas_data_buf
0616586eef powerpc/rtas: make all exports GPL
d8ca498591 powerpc/pseries/lparcfg: add missing RTAS retry status handling
421c59c23a powerpc/pseries/lpar: add missing RTAS retry status handling
2c5ad2d642 clk: Honor CLK_OPS_PARENT_ENABLE in clk_core_is_enabled()
4d178dc25f powerpc/powernv/ioda: Skip unallocated resources when mapping to PE
b1c1b6da5a clk: qcom: gpucc-sdm845: fix clk_dis_wait being programmed for CX GDSC
e3617778eb Input: ads7846 - don't check penirq immediately for 7845
ea9c4fbfda Input: ads7846 - don't report pressure for ads7845
17761a1c7f clk: renesas: cpg-mssr: Remove superfluous check in resume code
8ff19db903 clk: renesas: cpg-mssr: Use enum clk_reg_layout instead of a boolean flag
330b70949c clk: renesas: cpg-mssr: Fix use after free if cpg_mssr_common_init() failed
f34eb1e433 mtd: rawnand: sunxi: Fix the size of the last OOB region
cdfdd882fa clk: qcom: gcc-qcs404: fix names of the DSI clocks used as parents
b419e91378 clk: qcom: gcc-qcs404: disable gpll[04]_out_aux parents
588edb4fb1 mfd: pcf50633-adc: Fix potential memleak in pcf50633_adc_async_read()
6e0a0eb18e selftests/ftrace: Fix bash specific "==" operator
16a35042ff sparc: allow PM configs for sparc32 COMPILE_TEST
090a22f599 perf tools: Fix auto-complete on aarch64
5d32f3e922 perf llvm: Fix inadvertent file creation
ce43565a6c gfs2: jdata writepage fix
3524d6da0f cifs: Fix warning and UAF when destroy the MR list
324c0c34ff cifs: Fix lost destroy smbd connection when MR allocate failed
a22f1ecab6 nfsd: fix race to check ls_layouts
5a195fa41d hid: bigben_probe(): validate report count
9f525559ea HID: asus: Fix mute and touchpad-toggle keys on Medion Akoya E1239T
bc786dfeb7 HID: asus: Add support for multi-touch touchpad on Medion Akoya E1239T
bad4a822a1 HID: asus: Add report_size to struct asus_touchpad_info
63792d0ae9 HID: asus: Only set EV_REP if we are adding a mapping
25e14bf0c8 HID: bigben: use spinlock to safely schedule workers
715edb0109 HID: bigben_worker() remove unneeded check on report_field
12533ad854 HID: bigben: use spinlock to protect concurrent accesses
05cb432c09 ASoC: soc-dapm.h: fixup warning struct snd_pcm_substream not declared
84beaa3e2e ASoC: dapm: declare missing structure prototypes
d6250e00bf spi: synquacer: Fix timeout handling in synquacer_spi_transfer_one()
b89d2ed564 dm: remove flush_scheduled_work() during local_exit()
e6d9a876d9 hwmon: (mlxreg-fan) Return zero speed for broken fan
870a0f519a spi: bcm63xx-hsspi: Fix multi-bit mode setting
dd271f1798 spi: bcm63xx-hsspi: fix pm_runtime
904b717bb5 scsi: aic94xx: Add missing check for dma_map_single()
3414be1c8c hwmon: (ltc2945) Handle error case in ltc2945_value_store
75a1c3f822 gpio: vf610: connect GPIO label to dev name
584cb84e2c ASoC: soc-compress.c: fixup private_data on snd_soc_new_compress()
a161f1d92a drm/mediatek: Clean dangling pointer on bind error path
b8b166db78 drm/mediatek: Drop unbalanced obj unref
367c80fb34 drm/mediatek: Use NULL instead of 0 for NULL pointer
a0555f90d8 drm/mediatek: remove cast to pointers passed to kfree
2b59e87c92 gpu: host1x: Don't skip assigning syncpoints to channels
3975ea6eaf drm/msm/mdp5: Add check for kzalloc
2a8bb9dce7 drm: Initialize struct drm_crtc_state.no_vblank from device settings
9b2f584490 drm/bridge: Introduce drm_bridge_get_next_bridge()
bb08be7232 drm/bridge: Rename bridge helpers targeting a bridge chain
2c33a6141d drm/exynos: Don't reset bridge->next
dadd30fcc7 drm/msm/dpu: Add check for pstates
a6afb8293e drm/msm/dpu: Add check for cstate
8f9fdc830d drm/msm: use strscpy instead of strncpy
d7ea84cddf drm/mipi-dsi: Fix byte order of 16-bit DCS set/get brightness
a9eafb0448 ALSA: hda/ca0132: minor fix for allocation size
a80767caed ASoC: fsl_sai: initialize is_dsp_mode flag
95ab6d7905 pinctrl: stm32: Fix refcount leak in stm32_pctrl_get_irq_domain
fc34608fa2 drm/msm/hdmi: Add missing check for alloc_ordered_workqueue
62430b3210 gpu: ipu-v3: common: Add of_node_put() for reference returned by of_graph_get_port_by_id()
31701e54d3 drm/vc4: dpi: Fix format mapping for RGB565
d66f26b93c drm/vc4: dpi: Add option for inverting pixel clock and output enable
7ddd8a5ecf drm/bridge: megachips: Fix error handling in i2c_register_driver()
d56e589f8b drm: mxsfb: DRM_MXSFB should depend on ARCH_MXS || ARCH_MXC
c879003a6f drm/fourcc: Add missing big-endian XRGB1555 and RGB565 formats
c82ca67ca0 selftest: fib_tests: Always cleanup before exit
c31985922e selftests/net: Interpret UDP_GRO cmsg data as an int value
6165747888 irqchip/irq-bcm7120-l2: Set IRQ_LEVEL for level triggered interrupts
3947b16613 irqchip/irq-brcmstb-l2: Set IRQ_LEVEL for level triggered interrupts
d772090078 can: esd_usb: Move mislocated storage of SJA1000_ECC_SEG bits in case of a bus error
3cf2181e43 thermal/drivers/hisi: Drop second sensor hi3660
21c701cbc8 wifi: mac80211: make rate u32 in sta_set_rate_info_rx()
b70d56e728 crypto: crypto4xx - Call dma_unmap_page when done
a3b75b1e76 wifi: mwifiex: fix loop iterator in mwifiex_update_ampdu_txwinsize()
c002d27414 wifi: iwl4965: Add missing check for create_singlethread_workqueue()
7e594abc04 wifi: iwl3945: Add missing check for create_singlethread_workqueue
5de7a4254e treewide: Replace DECLARE_TASKLET() with DECLARE_TASKLET_OLD()
9198eefd10 usb: gadget: udc: Avoid tasklet passing a global
cf04507f42 RISC-V: time: initialize hrtimer based broadcast clock event device
142bcf7240 m68k: /proc/hardware should depend on PROC_FS
c4d8c23efe crypto: rsa-pkcs1pad - Use akcipher_request_complete
8c1447495f rds: rds_rm_zerocopy_callback() correct order for list_add_tail()
291e6a6820 libbpf: Fix alen calculation in libbpf_nla_dump_errormsg()
60aaccf16d Bluetooth: L2CAP: Fix potential user-after-free
d19bd48535 OPP: fix error checking in opp_migrate_dentry()
522d319cda tap: tap_open(): correctly initialize socket uid
d92d87000e tun: tun_chr_open(): correctly initialize socket uid
11c9c72272 net: add sock_init_data_uid()
276ccbc15f mptcp: add sk_stop_timer_sync helper
07fceab320 irqchip/ti-sci: Fix refcount leak in ti_sci_intr_irq_domain_probe
c7d78d36e1 irqchip/irq-mvebu-gicp: Fix refcount leak in mvebu_gicp_probe
9e79ac4f70 irqchip/alpine-msi: Fix refcount leak in alpine_msix_init_domains
7cce0c9fdd net/mlx5: Enhance debug print in page allocation failure
dbd6ae0956 powercap: fix possible name leak in powercap_register_zone()
63551e4b7c crypto: seqiv - Handle EBUSY correctly
c61e7d182e crypto: essiv - Handle EBUSY correctly
bfef5e3e73 crypto: essiv - remove redundant null pointer check before kfree
2d1ac2f2e2 crypto: ccp - Failure on re-initialization due to duplicate sysfs filename
40627e6e29 ACPI: battery: Fix missing NUL-termination with large strings
bf6dc175a2 wifi: ath9k: Fix potential stack-out-of-bounds write in ath9k_wmi_rsp_callback()
cd83167670 wifi: ath9k: hif_usb: clean up skbs if ath9k_hif_usb_rx_stream() fails
c3ff385b94 ath9k: htc: clean up statistics macros
a49c13ecce ath9k: hif_usb: simplify if-if to if-else
564bc2222b wifi: ath9k: htc_hst: free skb in ath9k_htc_rx_msg() if there is no callback function
17a0e61cd9 wifi: orinoco: check return value of hermes_write_wordrec()
573dfeba2d ACPICA: nsrepair: handle cases without a return value correctly
987b0ff1b9 lib/mpi: Fix buffer overrun when SG is too long
b55ada30b5 genirq: Fix the return type of kstat_cpu_irqs_sum()
6b9f61c8b8 ACPICA: Drop port I/O validation for some regions
c300697690 crypto: x86/ghash - fix unaligned access in ghash_setkey()
0c4f20c8fc wifi: wl3501_cs: don't call kfree_skb() under spin_lock_irqsave()
14ba31bb1b wifi: libertas: cmdresp: don't call kfree_skb() under spin_lock_irqsave()
38ef777203 wifi: libertas: main: don't call kfree_skb() under spin_lock_irqsave()
1879fe9e40 wifi: libertas: if_usb: don't call kfree_skb() under spin_lock_irqsave()
0b7b734744 wifi: libertas_tf: don't call kfree_skb() under spin_lock_irqsave()
318005127c wifi: brcmfmac: unmap dma buffer in brcmf_msgbuf_alloc_pktid()
d869a18950 wifi: brcmfmac: fix potential memory leak in brcmf_netdev_start_xmit()
a12610e837 wifi: wilc1000: fix potential memory leak in wilc_mac_xmit()
a6059cf02a wilc1000: let wilc_mac_xmit() return NETDEV_TX_OK
112c1af02b wifi: ipw2200: fix memory leak in ipw_wdev_init()
ba1d3623fe wifi: ipw2x00: don't call dev_kfree_skb() under spin_lock_irqsave()
0d438ae7ba ipw2x00: switch from 'pci_' to 'dma_' API
28ea268d95 wifi: rtlwifi: Fix global-out-of-bounds bug in _rtl8812ae_phy_set_txpower_limit()
5d171ab48b rtlwifi: fix -Wpointer-sign warning
5dd30d1acc wifi: rtl8xxxu: don't call dev_kfree_skb() under spin_lock_irqsave()
23b34e08de wifi: libertas: fix memory leak in lbs_init_adapter()
1864b22e23 wifi: iwlegacy: common: don't call dev_kfree_skb() under spin_lock_irqsave()
9004aa391a net/wireless: Delete unnecessary checks before the macro call “dev_kfree_skb”
fe4d7280cf wifi: rsi: Fix memory leak in rsi_coex_attach()
82d68c3244 block: bio-integrity: Copy flags when bio_integrity_payload is cloned
084cd75643 sched/rt: pick_next_rt_entity(): check list_entry
0ff7ba5e8b sched/deadline,rt: Remove unused parameter from pick_next_[rt|dl]_entity()
ee986d80ac s390/dasd: Fix potential memleak in dasd_eckd_init()
8bc5a76268 s390/dasd: Prepare for additional path event handling
946515fad4 blk-mq: correct stale comment of .get_budget
2dc5f68fe6 blk-mq: wait on correct sbitmap_queue in blk_mq_mark_tag_wait
8c225150ea blk-mq: remove stale comment for blk_mq_sched_mark_restart_hctx
260dcf1ccd block: Limit number of items taken from the I/O scheduler in one go
578c8f09c0 Revert "scsi: core: run queue if SCSI device queue isn't ready and queue is idle"
2d3c3aa412 arm64: dts: mediatek: mt7622: Add missing pwm-cells to pwm node
38af86810d ARM: dts: imx7s: correct iomuxc gpr mux controller cells
7fe5dc2fee arm64: dts: amlogic: meson-gxl-s905d-phicomm-n1: fix led node name
8b7aa62f4a arm64: dts: amlogic: meson-gxl: add missing unit address to eth-phy-mux node name
d5fbeae6d6 arm64: dts: amlogic: meson-gx: add missing unit address to rng node name
c5cd41bd10 arm64: dts: amlogic: meson-gx: add missing SCPI sensors compatible
1e3ec4d1d7 arm64: dts: amlogic: meson-axg: fix SCPI clock dvfs node name
e515d41185 arm64: dts: amlogic: meson-gx: fix SCPI clock dvfs node name
1e1b84b022 ARM: imx: Call ida_simple_remove() for ida_simple_get
b0a1b2f3ef ARM: dts: exynos: correct wr-active property in Exynos3250 Rinato
91ac4bf35a ARM: OMAP1: call platform_device_put() in error case in omap1_dm_timer_init()
af3352c16e arm64: dts: meson: remove CPU opps below 1GHz for G12A boards
9dd61d9542 arm64: dts: meson-gx: Fix the SCPI DVFS node name and unit address
cba890c4bd arm64: dts: meson-g12a: Fix internal Ethernet PHY unit name
69bdc5d014 arm64: dts: meson-gx: Fix Ethernet MAC address unit name
ede0334bf4 ARM: zynq: Fix refcount leak in zynq_early_slcr_init
45b44ba5df arm64: dts: qcom: qcs404: use symbol names for PCIe resets
8041f9a2a9 ARM: OMAP2+: Fix memory leak in realtime_counter_init()
dd08e68d04 HID: asus: use spinlock to safely schedule workers
136a9bcc0e HID: asus: use spinlock to protect concurrent accesses
9a25b22fd5 HID: asus: Remove check for same LED brightness on set
f9c844d00d Merge 5.4.234 into android11-5.4-lts
a103859aaa Linux 5.4.234
a1e89c8b29 USB: core: Don't hold device lock while reading the "descriptors" sysfs file
96d380d2ae USB: serial: option: add support for VW/Skoda "Carstick LTE"
91c877d431 dmaengine: sh: rcar-dmac: Check for error num after dma_set_max_seg_size
465ce31a2b vc_screen: don't clobber return value in vcs_read
ee8cd3abe7 net: Remove WARN_ON_ONCE(sk->sk_forward_alloc) from sk_stream_kill_queues().
db25b41eb5 bpf: bpf_fib_lookup should not return neigh in NUD_FAILED state
23affaed76 HID: core: Fix deadloop in hid_apply_multiplier.
93b17c7e1e neigh: make sure used and confirmed times are valid
bc4601ad97 IB/hfi1: Assign npages earlier
98e626c115 btrfs: send: limit number of clones and allocated memory size
ae03fa7ad3 ACPI: NFIT: fix a potential deadlock during NFIT teardown
785bde8459 ARM: dts: rockchip: add power-domains property to dp node on rk3288
da2bba879e arm64: dts: rockchip: drop unused LED mode property from rk3328-roc-cc

And update the .xml file due to the __irq_domain_add() change that came
into this branch.

Change-Id: Ia973c369a8bb9da89df14007cd6b820c9a7a2155
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-05-25 17:49:55 +00:00
Yang Jihong
318bc22dec perf/core: Fix hardlockup failure caused by perf throttle
[ Upstream commit 15def34e2635ab7e0e96f1bc32e1b69609f14942 ]

commit e050e3f0a7 ("perf: Fix broken interrupt rate throttling")
introduces a change in throttling threshold judgment. Before this,
compare hwc->interrupts and max_samples_per_tick, then increase
hwc->interrupts by 1, but this commit reverses order of these two
behaviors, causing the semantics of max_samples_per_tick to change.
In literal sense of "max_samples_per_tick", if hwc->interrupts ==
max_samples_per_tick, it should not be throttled, therefore, the judgment
condition should be changed to "hwc->interrupts > max_samples_per_tick".

In fact, this may cause the hardlockup to fail, The minimum value of
max_samples_per_tick may be 1, in this case, the return value of
__perf_event_account_interrupt function is 1.
As a result, nmi_watchdog gets throttled, which would stop PMU (Use x86
architecture as an example, see x86_pmu_handle_irq).

Fixes: e050e3f0a7 ("perf: Fix broken interrupt rate throttling")
Signed-off-by: Yang Jihong <yangjihong1@huawei.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20230227023508.102230-1-yangjihong1@huawei.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-05-17 11:35:50 +02:00
Namhyung Kim
35093f38c4 UPSTREAM: perf/core: Call LSM hook after copying perf_event_attr
It passes the attr struct to the security_perf_event_open() but it's
not initialized yet.

Bug: 254441685
Fixes: da97e18458fb ("perf_event: Add support for LSM and SELinux checks")
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Cc: stable@vger.kernel.org
Link: https://lkml.kernel.org/r/20221220223140.4020470-1-namhyung@kernel.org
(cherry picked from commit 0a041ebca4956292cadfb14a63ace3a9c1dcb0a3)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I99add105e7ef0a34b201e970c6a938f799aefdc1
2023-05-04 16:25:21 +01:00
Greg Kroah-Hartman
da8b283c08 This is the 5.4.241 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmRBDvQACgkQONu9yGCS
 aT58+g/+PmTvsCcjSlTvpHw+kFsIu2F2pIjlJNlX+YHSzEYMG/G2mn7XD1rUE7JB
 mQQ7hFXEeQZTuN4zsFnviotzn1xd6bV26Od598m+yFZ3Fty07NXy3OD1/08ZdP0G
 k+U9u4TDr47BV3WdokGWIdXAjnlvC0kwjc+EWznOmXquhW8hSrGvz0IUJQWgDue1
 IpOkuRs60T85dUHoPYEL8T23XRyhFhdeIrlx6Hqzlp1fGg7dSpfh0yYJmDLF6Y21
 CXO2WcADhMMszk+CFEXgfWVem5mheUuVsfmBUg34ZGzzNos0rPyHG+VmwZxnsPYE
 SVLVxLL649CzAuJdpXflTghdBUU/WKT/ZZ0aQddohPjij55My2oCV6/FpHXg7kuo
 ZTXN0ByyeAbV4DlY2+ooY6Vhr5lzQG1l15Ap9xj4ioQO8U3jeCCQ5wT9L01ig6a9
 /9U9wb6CYp3thrY94x1WapJF5utiIigbiS+rioRfAwHAzj5JiLfQvdH1nVgBNz+9
 DWCEGIiUONmHMRrt+X6Nnu8KkHWOkDFF2lisphXUsaY140gFG0+d3xnRArsU4ZDi
 j1zT0ErqigV6vzA39ic898EW8wkNqVCWPwYRLVRSBuPCDKK7SjnOuStGi7eIoYp2
 zI2NV9UUMm5Qxub5zUNktpWDFFn9knN3E7Gc4wAKWkHkWc/DJ+U=
 =ffeb
 -----END PGP SIGNATURE-----

Merge 5.4.241 into android11-5.4-lts

Changes in 5.4.241
	scsi: ses: Handle enclosure with just a primary component gracefully
	x86/PCI: Add quirk for AMD XHCI controller that loses MSI-X state in D3hot
	cgroup/cpuset: Wake up cpuset_attach_wq tasks in cpuset_cancel_attach()
	Revert "treewide: Replace DECLARE_TASKLET() with DECLARE_TASKLET_OLD()"
	treewide: Replace DECLARE_TASKLET() with DECLARE_TASKLET_OLD()
	smb3: fix problem with null cifs super block with previous patch
	pinctrl: amd: Use irqchip template
	pinctrl: amd: disable and mask interrupts on probe
	pinctrl: amd: Disable and mask interrupts on resume
	pwm: cros-ec: Explicitly set .polarity in .get_state()
	pwm: sprd: Explicitly set .polarity in .get_state()
	wifi: mac80211: fix invalid drv_sta_pre_rcu_remove calls for non-uploaded sta
	icmp: guard against too small mtu
	net: don't let netpoll invoke NAPI if in xmit context
	sctp: check send stream number after wait_for_sndbuf
	ipv6: Fix an uninit variable access bug in __ip6_make_skb()
	gpio: davinci: Add irq chip flag to skip set wake
	sunrpc: only free unix grouplist after RCU settles
	NFSD: callback request does not use correct credential for AUTH_SYS
	xhci: also avoid the XHCI_ZERO_64B_REGS quirk with a passthrough iommu
	USB: serial: cp210x: add Silicon Labs IFS-USB-DATACABLE IDs
	usb: typec: altmodes/displayport: Fix configure initial pin assignment
	USB: serial: option: add Telit FE990 compositions
	USB: serial: option: add Quectel RM500U-CN modem
	iio: adc: ti-ads7950: Set `can_sleep` flag for GPIO chip
	iio: dac: cio-dac: Fix max DAC write value check for 12-bit
	tty: serial: sh-sci: Fix transmit end interrupt handler
	tty: serial: sh-sci: Fix Rx on RZ/G2L SCI
	tty: serial: fsl_lpuart: avoid checking for transfer complete when UARTCTRL_SBK is asserted in lpuart32_tx_empty
	nilfs2: fix potential UAF of struct nilfs_sc_info in nilfs_segctor_thread()
	nilfs2: fix sysfs interface lifetime
	ALSA: hda/realtek: Add quirk for Clevo X370SNW
	perf/core: Fix the same task check in perf_event_set_output
	ftrace: Mark get_lock_parent_ip() __always_inline
	can: j1939: j1939_tp_tx_dat_new(): fix out-of-bounds memory access
	tracing: Free error logs of tracing instances
	net_sched: prevent NULL dereference if default qdisc setup failed
	drm/panfrost: Fix the panfrost_mmu_map_fault_addr() error path
	ring-buffer: Fix race while reader and writer are on the same page
	mm/swap: fix swap_info_struct race between swapoff and get_swap_pages()
	irqdomain: Look for existing mapping only once
	irqdomain: Refactor __irq_domain_alloc_irqs()
	irqdomain: Fix mapping-creation race
	Revert "pinctrl: amd: Disable and mask interrupts on resume"
	ALSA: emu10k1: fix capture interrupt handler unlinking
	ALSA: hda/sigmatel: add pin overrides for Intel DP45SG motherboard
	ALSA: i2c/cs8427: fix iec958 mixer control deactivation
	ALSA: firewire-tascam: add missing unwind goto in snd_tscm_stream_start_duplex()
	ALSA: hda/sigmatel: fix S/PDIF out on Intel D*45* motherboards
	Bluetooth: L2CAP: Fix use-after-free in l2cap_disconnect_{req,rsp}
	Bluetooth: Fix race condition in hidp_session_thread
	btrfs: print checksum type and implementation at mount time
	btrfs: fix fast csum implementation detection
	mtdblock: tolerate corrected bit-flips
	mtd: rawnand: meson: fix bitmask for length in command word
	mtd: rawnand: stm32_fmc2: remove unsupported EDO mode
	9p/xen : Fix use after free bug in xen_9pfs_front_remove due to race condition
	niu: Fix missing unwind goto in niu_alloc_channels()
	qlcnic: check pci_reset_function result
	sctp: fix a potential overflow in sctp_ifwdtsn_skip
	RDMA/core: Fix GID entry ref leak when create_ah fails
	udp6: fix potential access to stale information
	net: macb: fix a memory corruption in extended buffer descriptor mode
	power: supply: cros_usbpd: reclassify "default case!" as debug
	i2c: imx-lpi2c: clean rx/tx buffers upon new message
	efi: sysfb_efi: Add quirk for Lenovo Yoga Book X91F/L
	drm: panel-orientation-quirks: Add quirk for Lenovo Yoga Book X90F
	verify_pefile: relax wrapper length check
	asymmetric_keys: log on fatal failures in PE/pkcs7
	ubi: Fix failure attaching when vid_hdr offset equals to (sub)page size
	mtd: ubi: wl: Fix a couple of kernel-doc issues
	ubi: Fix deadlock caused by recursively holding work_sem
	i2c: ocores: generate stop condition after timeout in polling mode
	watchdog: sbsa_wdog: Make sure the timeout programming is within the limits
	coresight-etm4: Fix for() loop drvdata->nr_addr_cmp range bug
	xfs: show the proper user quota options
	xfs: merge the projid fields in struct xfs_icdinode
	xfs: ensure that the inode uid/gid match values match the icdinode ones
	xfs: remove the icdinode di_uid/di_gid members
	xfs: remove the kuid/kgid conversion wrappers
	xfs: add a new xfs_sb_version_has_v3inode helper
	xfs: only check the superblock version for dinode size calculation
	xfs: simplify di_flags2 inheritance in xfs_ialloc
	xfs: simplify a check in xfs_ioctl_setattr_check_cowextsize
	xfs: remove the di_version field from struct icdinode
	xfs: fix up non-directory creation in SGID directories
	xfs: set inode size after creating symlink
	xfs: report corruption only as a regular error
	xfs: shut down the filesystem if we screw up quota reservation
	xfs: consider shutdown in bmapbt cursor delete assert
	xfs: don't reuse busy extents on extent trim
	xfs: force log and push AIL to clear pinned inodes when aborting mount
	Linux 5.4.241

Change-Id: I428eec45c4ac9796104683d40b7cb0d38d4c8015
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-04-21 13:34:52 +00:00
Kan Liang
95bbfeb4ff perf/core: Fix the same task check in perf_event_set_output
[ Upstream commit 24d3ae2f37d8bc3c14b31d353c5d27baf582b6a6 ]

The same task check in perf_event_set_output has some potential issues
for some usages.

For the current perf code, there is a problem if using of
perf_event_open() to have multiple samples getting into the same mmap’d
memory when they are both attached to the same process.
https://lore.kernel.org/all/92645262-D319-4068-9C44-2409EF44888E@gmail.com/
Because the event->ctx is not ready when the perf_event_set_output() is
invoked in the perf_event_open().

Besides the above issue, before the commit bd2756811766 ("perf: Rewrite
core context handling"), perf record can errors out when sampling with
a hardware event and a software event as below.
 $ perf record -e cycles,dummy --per-thread ls
 failed to mmap with 22 (Invalid argument)
That's because that prior to the commit a hardware event and a software
event are from different task context.

The problem should be a long time issue since commit c3f00c7027
("perk: Separate find_get_context() from event initialization").

The task struct is stored in the event->hw.target for each per-thread
event. It is a more reliable way to determine whether two events are
attached to the same task.

The event->hw.target was also introduced several years ago by the
commit 50f16a8bf9 ("perf: Remove type specific target pointers"). It
can not only be used to fix the issue with the current code, but also
back port to fix the issues with an older kernel.

Note: The event->hw.target was introduced later than commit
c3f00c7027. The patch may cannot be applied between the commit
c3f00c7027 and commit 50f16a8bf9. Anybody that wants to back-port
this at that period may have to find other solutions.

Fixes: c3f00c7027 ("perf: Separate find_get_context() from event initialization")
Signed-off-by: Kan Liang <kan.liang@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Zhengjun Xing <zhengjun.xing@linux.intel.com>
Link: https://lkml.kernel.org/r/20230322202449.512091-1-kan.liang@linux.intel.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-04-20 12:07:34 +02:00
Greg Kroah-Hartman
68fdd20442 This is the 5.4.229 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmPHzUQACgkQONu9yGCS
 aT7QohAAtxV33qGSKGUdKMZk1JzIYuc8tAa+CHZhTi6xjTsoy1a5MlQGrj8a9YQ7
 /5VvwslGSn29h/ThO/ai04CfeOsWugMtnuo4mT4+198DgH0CNQMlfWq2c25cCvY6
 dIrrMTA7B2YhpdbjM4vkX8QIAxBVCHOVkseSammhMnujP7d+k4LtC6rRV4uiF+lD
 cKtsIJn8h+pezBeo5+pjvcTwndaAoApVOES4uOjJcf9pYOOoHxyi+8StpiO+j2Pv
 sRvkbvvmpS+IWAH+DMa3SAFI3C3AihX2Fu0rIFzUZByAviB1NmyWluX5mU54wW3R
 P80fl0rQFwuygEBU1UqTXe4hQ8YYwpJGAQzbLR22a11IT2MSO+vMRINdqG1un2BE
 T9hHix5R0JMeIN9AP7nKGBLrEZ3V6DqxEBz6ZC1sOUIIVQv93twtiwb0rNM0e7pq
 PpkIXpwXPIgqFDGXrd0y5ksRT08jJUKCRttuRVWkcGX8adotngWnrl0WBI5zqSuo
 B+x8X9Dw7YblJ6yQ+8mAZGk0Mj3j+cb4uhuRaz/6rqHmFOrbHm+JDXvPzZY65xy3
 k8Ebtq5CxINLDwahfb/o13MgbmzMPPNPPp0cz23zOhm88OmwVzB4hAoB/1CfHZvF
 XhSbZMVBhhP9hYr2gYl902EQeZGE5yjk5xhFT5Wrh7QoZaPW2XM=
 =as6n
 -----END PGP SIGNATURE-----

Merge 5.4.229 into android11-5.4-lts

Changes in 5.4.229
	tracing/ring-buffer: Only do full wait when cpu != RING_BUFFER_ALL_CPUS
	udf: Discard preallocation before extending file with a hole
	udf: Fix preallocation discarding at indirect extent boundary
	udf: Do not bother looking for prealloc extents if i_lenExtents matches i_size
	udf: Fix extending file within last block
	usb: gadget: uvc: Prevent buffer overflow in setup handler
	USB: serial: option: add Quectel EM05-G modem
	USB: serial: cp210x: add Kamstrup RF sniffer PIDs
	USB: serial: f81232: fix division by zero on line-speed change
	USB: serial: f81534: fix division by zero on line-speed change
	igb: Initialize mailbox message for VF reset
	xen-netback: move removal of "hotplug-status" to the right place
	HID: ite: Add support for Acer S1002 keyboard-dock
	HID: ite: Enable QUIRK_TOUCHPAD_ON_OFF_REPORT on Acer Aspire Switch 10E
	HID: ite: Enable QUIRK_TOUCHPAD_ON_OFF_REPORT on Acer Aspire Switch V 10
	HID: uclogic: Add HID_QUIRK_HIDINPUT_FORCE quirk
	Bluetooth: L2CAP: Fix u8 overflow
	net: loopback: use NET_NAME_PREDICTABLE for name_assign_type
	usb: musb: remove extra check in musb_gadget_vbus_draw
	ARM: dts: qcom: apq8064: fix coresight compatible
	arm64: dts: qcom: sdm845-cheza: fix AP suspend pin bias
	drivers: soc: ti: knav_qmss_queue: Mark knav_acc_firmwares as static
	arm: dts: spear600: Fix clcd interrupt
	soc: ti: knav_qmss_queue: Use pm_runtime_resume_and_get instead of pm_runtime_get_sync
	soc: ti: knav_qmss_queue: Fix PM disable depth imbalance in knav_queue_probe
	soc: ti: smartreflex: Fix PM disable depth imbalance in omap_sr_probe
	perf: arm_dsu: Fix hotplug callback leak in dsu_pmu_init()
	perf/smmuv3: Fix hotplug callback leak in arm_smmu_pmu_init()
	arm64: dts: mt2712e: Fix unit_address_vs_reg warning for oscillators
	arm64: dts: mt2712e: Fix unit address for pinctrl node
	arm64: dts: mt2712-evb: Fix vproc fixed regulators unit names
	arm64: dts: mt2712-evb: Fix usb vbus regulators unit names
	arm64: dts: mediatek: mt6797: Fix 26M oscillator unit name
	ARM: dts: dove: Fix assigned-addresses for every PCIe Root Port
	ARM: dts: armada-370: Fix assigned-addresses for every PCIe Root Port
	ARM: dts: armada-xp: Fix assigned-addresses for every PCIe Root Port
	ARM: dts: armada-375: Fix assigned-addresses for every PCIe Root Port
	ARM: dts: armada-38x: Fix assigned-addresses for every PCIe Root Port
	ARM: dts: armada-39x: Fix assigned-addresses for every PCIe Root Port
	ARM: dts: turris-omnia: Add ethernet aliases
	ARM: dts: turris-omnia: Add switch port 6 node
	arm64: dts: armada-3720-turris-mox: Add missing interrupt for RTC
	pstore/ram: Fix error return code in ramoops_probe()
	ARM: mmp: fix timer_read delay
	pstore: Avoid kcore oops by vmap()ing with VM_IOREMAP
	tpm/tpm_crb: Fix error message in __crb_relinquish_locality()
	cpuidle: dt: Return the correct numbers of parsed idle states
	alpha: fix syscall entry in !AUDUT_SYSCALL case
	PM: hibernate: Fix mistake in kerneldoc comment
	fs: don't audit the capability check in simple_xattr_list()
	selftests/ftrace: event_triggers: wait longer for test_event_enable
	perf: Fix possible memleak in pmu_dev_alloc()
	timerqueue: Use rb_entry_safe() in timerqueue_getnext()
	proc: fixup uptime selftest
	lib/fonts: fix undefined behavior in bit shift for get_default_font
	ocfs2: fix memory leak in ocfs2_stack_glue_init()
	MIPS: vpe-mt: fix possible memory leak while module exiting
	MIPS: vpe-cmp: fix possible memory leak while module exiting
	selftests/efivarfs: Add checking of the test return value
	PNP: fix name memory leak in pnp_alloc_dev()
	perf/x86/intel/uncore: Fix reference count leak in hswep_has_limit_sbox()
	irqchip: gic-pm: Use pm_runtime_resume_and_get() in gic_probe()
	EDAC/i10nm: fix refcount leak in pci_get_dev_wrapper()
	nfsd: don't call nfsd_file_put from client states seqfile display
	genirq/irqdesc: Don't try to remove non-existing sysfs files
	cpufreq: amd_freq_sensitivity: Add missing pci_dev_put()
	libfs: add DEFINE_SIMPLE_ATTRIBUTE_SIGNED for signed value
	lib/notifier-error-inject: fix error when writing -errno to debugfs file
	docs: fault-injection: fix non-working usage of negative values
	debugfs: fix error when writing negative value to atomic_t debugfs file
	ocfs2: ocfs2_mount_volume does cleanup job before return error
	ocfs2: rewrite error handling of ocfs2_fill_super
	ocfs2: fix memory leak in ocfs2_mount_volume()
	rapidio: fix possible name leaks when rio_add_device() fails
	rapidio: rio: fix possible name leak in rio_register_mport()
	clocksource/drivers/sh_cmt: Make sure channel clock supply is enabled
	ACPICA: Fix use-after-free in acpi_ut_copy_ipackage_to_ipackage()
	uprobes/x86: Allow to probe a NOP instruction with 0x66 prefix
	xen/events: only register debug interrupt for 2-level events
	x86/xen: Fix memory leak in xen_smp_intr_init{_pv}()
	x86/xen: Fix memory leak in xen_init_lock_cpu()
	xen/privcmd: Fix a possible warning in privcmd_ioctl_mmap_resource()
	PM: runtime: Improve path in rpm_idle() when no callback
	PM: runtime: Do not call __rpm_callback() from rpm_idle()
	platform/x86: mxm-wmi: fix memleak in mxm_wmi_call_mx[ds|mx]()
	MIPS: BCM63xx: Add check for NULL for clk in clk_enable
	MIPS: OCTEON: warn only once if deprecated link status is being used
	fs: sysv: Fix sysv_nblocks() returns wrong value
	rapidio: fix possible UAF when kfifo_alloc() fails
	eventfd: change int to __u64 in eventfd_signal() ifndef CONFIG_EVENTFD
	relay: fix type mismatch when allocating memory in relay_create_buf()
	hfs: Fix OOB Write in hfs_asc2mac
	rapidio: devices: fix missing put_device in mport_cdev_open
	wifi: ath9k: hif_usb: fix memory leak of urbs in ath9k_hif_usb_dealloc_tx_urbs()
	wifi: ath9k: hif_usb: Fix use-after-free in ath9k_hif_usb_reg_in_cb()
	wifi: rtl8xxxu: Fix reading the vendor of combo chips
	pata_ipx4xx_cf: Fix unsigned comparison with less than zero
	media: i2c: ad5820: Fix error path
	can: kvaser_usb: do not increase tx statistics when sending error message frames
	can: kvaser_usb: kvaser_usb_leaf: Get capabilities from device
	can: kvaser_usb: kvaser_usb_leaf: Rename {leaf,usbcan}_cmd_error_event to {leaf,usbcan}_cmd_can_error_event
	can: kvaser_usb: kvaser_usb_leaf: Handle CMD_ERROR_EVENT
	can: kvaser_usb_leaf: Set Warning state even without bus errors
	can: kvaser_usb_leaf: Fix improved state not being reported
	can: kvaser_usb_leaf: Fix wrong CAN state after stopping
	can: kvaser_usb_leaf: Fix bogus restart events
	can: kvaser_usb: Add struct kvaser_usb_busparams
	can: kvaser_usb: Compare requested bittiming parameters with actual parameters in do_set_{,data}_bittiming
	clk: renesas: r9a06g032: Repair grave increment error
	spi: Update reference to struct spi_controller
	drm/panel/panel-sitronix-st7701: Remove panel on DSI attach failure
	ima: Rename internal filter rule functions
	ima: Fix fall-through warnings for Clang
	ima: Handle -ESTALE returned by ima_filter_rule_match()
	media: vivid: fix compose size exceed boundary
	bpf: propagate precision in ALU/ALU64 operations
	mtd: Fix device name leak when register device failed in add_mtd_device()
	wifi: rsi: Fix handling of 802.3 EAPOL frames sent via control port
	media: camss: Clean up received buffers on failed start of streaming
	net, proc: Provide PROC_FS=n fallback for proc_create_net_single_write()
	rxrpc: Fix ack.bufferSize to be 0 when generating an ack
	drm/radeon: Add the missed acpi_put_table() to fix memory leak
	drm/mediatek: Modify dpi power on/off sequence.
	ASoC: pxa: fix null-pointer dereference in filter()
	regulator: core: fix unbalanced of node refcount in regulator_dev_lookup()
	amdgpu/pm: prevent array underflow in vega20_odn_edit_dpm_table()
	integrity: Fix memory leakage in keyring allocation error path
	ima: Fix misuse of dereference of pointer in template_desc_init_fields()
	wifi: ath10k: Fix return value in ath10k_pci_init()
	mtd: lpddr2_nvm: Fix possible null-ptr-deref
	Input: elants_i2c - properly handle the reset GPIO when power is off
	media: solo6x10: fix possible memory leak in solo_sysfs_init()
	media: platform: exynos4-is: Fix error handling in fimc_md_init()
	media: videobuf-dma-contig: use dma_mmap_coherent
	bpf: Move skb->len == 0 checks into __bpf_redirect
	HID: hid-sensor-custom: set fixed size for custom attributes
	ALSA: pcm: fix undefined behavior in bit shift for SNDRV_PCM_RATE_KNOT
	ALSA: seq: fix undefined behavior in bit shift for SNDRV_SEQ_FILTER_USE_EVENT
	regulator: core: use kfree_const() to free space conditionally
	clk: rockchip: Fix memory leak in rockchip_clk_register_pll()
	bonding: Export skip slave logic to function
	bonding: Rename slave_arr to usable_slaves
	bonding: fix link recovery in mode 2 when updelay is nonzero
	mtd: maps: pxa2xx-flash: fix memory leak in probe
	media: imon: fix a race condition in send_packet()
	clk: imx8mn: correct the usb1_ctrl parent to be usb_bus
	clk: imx: replace osc_hdmi with dummy
	pinctrl: pinconf-generic: add missing of_node_put()
	media: dvb-core: Fix ignored return value in dvb_register_frontend()
	media: dvb-usb: az6027: fix null-ptr-deref in az6027_i2c_xfer()
	media: s5p-mfc: Add variant data for MFC v7 hardware for Exynos 3250 SoC
	drm/tegra: Add missing clk_disable_unprepare() in tegra_dc_probe()
	ASoC: dt-bindings: wcd9335: fix reset line polarity in example
	ASoC: mediatek: mtk-btcvsd: Add checks for write and read of mtk_btcvsd_snd
	NFSv4.2: Clear FATTR4_WORD2_SECURITY_LABEL when done decoding
	NFSv4.2: Fix a memory stomp in decode_attr_security_label
	NFSv4.2: Fix initialisation of struct nfs4_label
	NFSv4: Fix a deadlock between nfs4_open_recover_helper() and delegreturn
	ALSA: asihpi: fix missing pci_disable_device()
	wifi: iwlwifi: mvm: fix double free on tx path.
	ASoC: mediatek: mt8173: Enable IRQ when pdata is ready
	drm/radeon: Fix PCI device refcount leak in radeon_atrm_get_bios()
	drm/amdgpu: Fix PCI device refcount leak in amdgpu_atrm_get_bios()
	ASoC: pcm512x: Fix PM disable depth imbalance in pcm512x_probe
	netfilter: conntrack: set icmpv6 redirects as RELATED
	bpf, sockmap: Fix repeated calls to sock_put() when msg has more_data
	bpf, sockmap: Fix data loss caused by using apply_bytes on ingress redirect
	bonding: uninitialized variable in bond_miimon_inspect()
	spi: spidev: mask SPI_CS_HIGH in SPI_IOC_RD_MODE
	wifi: cfg80211: Fix not unregister reg_pdev when load_builtin_regdb_keys() fails
	regulator: core: fix module refcount leak in set_supply()
	clk: qcom: clk-krait: fix wrong div2 functions
	hsr: Avoid double remove of a node.
	configfs: fix possible memory leak in configfs_create_dir()
	regulator: core: fix resource leak in regulator_register()
	bpf, sockmap: fix race in sock_map_free()
	media: saa7164: fix missing pci_disable_device()
	ALSA: mts64: fix possible null-ptr-defer in snd_mts64_interrupt
	xprtrdma: Fix regbuf data not freed in rpcrdma_req_create()
	SUNRPC: Fix missing release socket in rpc_sockname()
	NFSv4.x: Fail client initialisation if state manager thread can't run
	mmc: alcor: fix return value check of mmc_add_host()
	mmc: moxart: fix return value check of mmc_add_host()
	mmc: mxcmmc: fix return value check of mmc_add_host()
	mmc: pxamci: fix return value check of mmc_add_host()
	mmc: rtsx_usb_sdmmc: fix return value check of mmc_add_host()
	mmc: toshsd: fix return value check of mmc_add_host()
	mmc: vub300: fix return value check of mmc_add_host()
	mmc: wmt-sdmmc: fix return value check of mmc_add_host()
	mmc: atmel-mci: fix return value check of mmc_add_host()
	mmc: omap_hsmmc: fix return value check of mmc_add_host()
	mmc: meson-gx: fix return value check of mmc_add_host()
	mmc: via-sdmmc: fix return value check of mmc_add_host()
	mmc: wbsd: fix return value check of mmc_add_host()
	mmc: mmci: fix return value check of mmc_add_host()
	media: c8sectpfe: Add of_node_put() when breaking out of loop
	media: coda: Add check for dcoda_iram_alloc
	media: coda: Add check for kmalloc
	clk: samsung: Fix memory leak in _samsung_clk_register_pll()
	spi: spi-gpio: Don't set MOSI as an input if not 3WIRE mode
	wifi: rtl8xxxu: Add __packed to struct rtl8723bu_c2h
	wifi: brcmfmac: Fix error return code in brcmf_sdio_download_firmware()
	blktrace: Fix output non-blktrace event when blk_classic option enabled
	clk: socfpga: clk-pll: Remove unused variable 'rc'
	clk: socfpga: use clk_hw_register for a5/c5
	clk: socfpga: Fix memory leak in socfpga_gate_init()
	net: vmw_vsock: vmci: Check memcpy_from_msg()
	net: defxx: Fix missing err handling in dfx_init()
	net: stmmac: selftests: fix potential memleak in stmmac_test_arpoffload()
	drivers: net: qlcnic: Fix potential memory leak in qlcnic_sriov_init()
	of: overlay: fix null pointer dereferencing in find_dup_cset_node_entry() and find_dup_cset_prop()
	ethernet: s2io: don't call dev_kfree_skb() under spin_lock_irqsave()
	net: farsync: Fix kmemleak when rmmods farsync
	net/tunnel: wait until all sk_user_data reader finish before releasing the sock
	net: apple: mace: don't call dev_kfree_skb() under spin_lock_irqsave()
	net: apple: bmac: don't call dev_kfree_skb() under spin_lock_irqsave()
	net: emaclite: don't call dev_kfree_skb() under spin_lock_irqsave()
	net: ethernet: dnet: don't call dev_kfree_skb() under spin_lock_irqsave()
	hamradio: don't call dev_kfree_skb() under spin_lock_irqsave()
	net: amd: lance: don't call dev_kfree_skb() under spin_lock_irqsave()
	net: amd-xgbe: Fix logic around active and passive cables
	net: amd-xgbe: Check only the minimum speed for active/passive cables
	can: tcan4x5x: Remove invalid write in clear_interrupts
	net: lan9303: Fix read error execution path
	ntb_netdev: Use dev_kfree_skb_any() in interrupt context
	Bluetooth: btusb: don't call kfree_skb() under spin_lock_irqsave()
	Bluetooth: hci_qca: don't call kfree_skb() under spin_lock_irqsave()
	Bluetooth: hci_ll: don't call kfree_skb() under spin_lock_irqsave()
	Bluetooth: hci_h5: don't call kfree_skb() under spin_lock_irqsave()
	Bluetooth: hci_bcsp: don't call kfree_skb() under spin_lock_irqsave()
	Bluetooth: hci_core: don't call kfree_skb() under spin_lock_irqsave()
	Bluetooth: RFCOMM: don't call kfree_skb() under spin_lock_irqsave()
	stmmac: fix potential division by 0
	apparmor: fix a memleak in multi_transaction_new()
	apparmor: fix lockdep warning when removing a namespace
	apparmor: Fix abi check to include v8 abi
	apparmor: Use pointer to struct aa_label for lbs_cred
	RDMA/core: Fix order of nldev_exit call
	f2fs: fix normal discard process
	RDMA/siw: Fix immediate work request flush to completion queue
	RDMA/nldev: Return "-EAGAIN" if the cm_id isn't from expected port
	RDMA/siw: Set defined status for work completion with undefined status
	scsi: scsi_debug: Fix a warning in resp_write_scat()
	crypto: ccree - swap SHA384 and SHA512 larval hashes at build time
	crypto: ccree - Remove debugfs when platform_driver_register failed
	PCI: Check for alloc failure in pci_request_irq()
	RDMA/hfi: Decrease PCI device reference count in error path
	crypto: ccree - Make cc_debugfs_global_fini() available for module init function
	RDMA/rxe: Fix NULL-ptr-deref in rxe_qp_do_cleanup() when socket create failed
	scsi: hpsa: Fix possible memory leak in hpsa_init_one()
	crypto: tcrypt - Fix multibuffer skcipher speed test mem leak
	scsi: mpt3sas: Fix possible resource leaks in mpt3sas_transport_port_add()
	scsi: hpsa: Fix error handling in hpsa_add_sas_host()
	scsi: hpsa: Fix possible memory leak in hpsa_add_sas_device()
	scsi: fcoe: Fix possible name leak when device_register() fails
	scsi: ipr: Fix WARNING in ipr_init()
	scsi: fcoe: Fix transport not deattached when fcoe_if_init() fails
	scsi: snic: Fix possible UAF in snic_tgt_create()
	RDMA/nldev: Add checks for nla_nest_start() in fill_stat_counter_qps()
	f2fs: avoid victim selection from previous victim section
	crypto: omap-sham - Use pm_runtime_resume_and_get() in omap_sham_probe()
	RDMA/hfi1: Fix error return code in parse_platform_config()
	orangefs: Fix sysfs not cleanup when dev init failed
	crypto: img-hash - Fix variable dereferenced before check 'hdev->req'
	hwrng: amd - Fix PCI device refcount leak
	hwrng: geode - Fix PCI device refcount leak
	IB/IPoIB: Fix queue count inconsistency for PKEY child interfaces
	drivers: dio: fix possible memory leak in dio_init()
	tty: serial: tegra: Activate RX DMA transfer by request
	serial: tegra: Read DMA status before terminating
	class: fix possible memory leak in __class_register()
	vfio: platform: Do not pass return buffer to ACPI _RST method
	uio: uio_dmem_genirq: Fix missing unlock in irq configuration
	uio: uio_dmem_genirq: Fix deadlock between irq config and handling
	usb: fotg210-udc: Fix ages old endianness issues
	staging: vme_user: Fix possible UAF in tsi148_dma_list_add
	usb: typec: Check for ops->exit instead of ops->enter in altmode_exit
	usb: typec: tcpci: fix of node refcount leak in tcpci_register_port()
	serial: amba-pl011: avoid SBSA UART accessing DMACR register
	serial: pl011: Do not clear RX FIFO & RX interrupt in unthrottle.
	serial: pch: Fix PCI device refcount leak in pch_request_dma()
	tty: serial: clean up stop-tx part in altera_uart_tx_chars()
	tty: serial: altera_uart_{r,t}x_chars() need only uart_port
	serial: altera_uart: fix locking in polling mode
	serial: sunsab: Fix error handling in sunsab_init()
	test_firmware: fix memory leak in test_firmware_init()
	misc: ocxl: fix possible name leak in ocxl_file_register_afu()
	misc: tifm: fix possible memory leak in tifm_7xx1_switch_media()
	misc: sgi-gru: fix use-after-free error in gru_set_context_option, gru_fault and gru_handle_user_call_os
	cxl: fix possible null-ptr-deref in cxl_guest_init_afu|adapter()
	cxl: fix possible null-ptr-deref in cxl_pci_init_afu|adapter()
	counter: stm32-lptimer-cnt: fix the check on arr and cmp registers update
	usb: roles: fix of node refcount leak in usb_role_switch_is_parent()
	usb: gadget: f_hid: optional SETUP/SET_REPORT mode
	usb: gadget: f_hid: fix f_hidg lifetime vs cdev
	usb: gadget: f_hid: fix refcount leak on error path
	drivers: mcb: fix resource leak in mcb_probe()
	mcb: mcb-parse: fix error handing in chameleon_parse_gdd()
	chardev: fix error handling in cdev_device_add()
	i2c: pxa-pci: fix missing pci_disable_device() on error in ce4100_i2c_probe
	staging: rtl8192u: Fix use after free in ieee80211_rx()
	staging: rtl8192e: Fix potential use-after-free in rtllib_rx_Monitor()
	vme: Fix error not catched in fake_init()
	i2c: ismt: Fix an out-of-bounds bug in ismt_access()
	usb: storage: Add check for kcalloc
	tracing/hist: Fix issue of losting command info in error_log
	samples: vfio-mdev: Fix missing pci_disable_device() in mdpy_fb_probe()
	fbdev: ssd1307fb: Drop optional dependency
	fbdev: pm2fb: fix missing pci_disable_device()
	fbdev: via: Fix error in via_core_init()
	fbdev: vermilion: decrease reference count in error path
	fbdev: uvesafb: Fixes an error handling path in uvesafb_probe()
	HSI: omap_ssi_core: fix unbalanced pm_runtime_disable()
	HSI: omap_ssi_core: fix possible memory leak in ssi_probe()
	power: supply: fix residue sysfs file in error handle route of __power_supply_register()
	perf trace: Return error if a system call doesn't exist
	perf trace: Separate 'struct syscall_fmt' definition from syscall_fmts variable
	perf trace: Factor out the initialization of syscal_arg_fmt->scnprintf
	perf trace: Add the syscall_arg_fmt pointer to syscall_arg
	perf trace: Allow associating scnprintf routines with well known arg names
	perf trace: Add a strtoul() method to 'struct syscall_arg_fmt'
	perf trace: Use macro RAW_SYSCALL_ARGS_NUM to replace number
	perf trace: Handle failure when trace point folder is missed
	perf symbol: correction while adjusting symbol
	HSI: omap_ssi_core: Fix error handling in ssi_init()
	power: supply: fix null pointer dereferencing in power_supply_get_battery_info
	RDMA/siw: Fix pointer cast warning
	include/uapi/linux/swab: Fix potentially missing __always_inline
	rtc: snvs: Allow a time difference on clock register read
	rtc: pcf85063: Fix reading alarm
	iommu/amd: Fix pci device refcount leak in ppr_notifier()
	iommu/fsl_pamu: Fix resource leak in fsl_pamu_probe()
	macintosh: fix possible memory leak in macio_add_one_device()
	macintosh/macio-adb: check the return value of ioremap()
	powerpc/52xx: Fix a resource leak in an error handling path
	cxl: Fix refcount leak in cxl_calc_capp_routing
	powerpc/xive: add missing iounmap() in error path in xive_spapr_populate_irq_data()
	powerpc/perf: callchain validate kernel stack pointer bounds
	powerpc/83xx/mpc832x_rdb: call platform_device_put() in error case in of_fsl_spi_probe()
	powerpc/hv-gpci: Fix hv_gpci event list
	selftests/powerpc: Fix resource leaks
	pwm: sifive: Call pwm_sifive_update_clock() while mutex is held
	remoteproc: sysmon: fix memory leak in qcom_add_sysmon_subdev()
	remoteproc: qcom_q6v5_pas: Fix missing of_node_put() in adsp_alloc_memory_region()
	rtc: st-lpc: Add missing clk_disable_unprepare in st_rtc_probe()
	rtc: pic32: Move devm_rtc_allocate_device earlier in pic32_rtc_probe()
	nfsd: Define the file access mode enum for tracing
	NFSD: Add tracepoints to NFSD's duplicate reply cache
	nfsd: under NFSv4.1, fix double svc_xprt_put on rpc_create failure
	mISDN: hfcsusb: don't call dev_kfree_skb/kfree_skb() under spin_lock_irqsave()
	mISDN: hfcpci: don't call dev_kfree_skb/kfree_skb() under spin_lock_irqsave()
	mISDN: hfcmulti: don't call dev_kfree_skb/kfree_skb() under spin_lock_irqsave()
	nfc: pn533: Clear nfc_target before being used
	r6040: Fix kmemleak in probe and remove
	rtc: mxc_v2: Add missing clk_disable_unprepare()
	openvswitch: Fix flow lookup to use unmasked key
	skbuff: Account for tail adjustment during pull operations
	mailbox: zynq-ipi: fix error handling while device_register() fails
	net_sched: reject TCF_EM_SIMPLE case for complex ematch module
	rxrpc: Fix missing unlock in rxrpc_do_sendmsg()
	myri10ge: Fix an error handling path in myri10ge_probe()
	net: stream: purge sk_error_queue in sk_stream_kill_queues()
	rcu: Fix __this_cpu_read() lockdep warning in rcu_force_quiescent_state()
	binfmt_misc: fix shift-out-of-bounds in check_special_flags
	fs: jfs: fix shift-out-of-bounds in dbAllocAG
	udf: Avoid double brelse() in udf_rename()
	fs: jfs: fix shift-out-of-bounds in dbDiscardAG
	ACPICA: Fix error code path in acpi_ds_call_control_method()
	nilfs2: fix shift-out-of-bounds/overflow in nilfs_sb2_bad_offset()
	acct: fix potential integer overflow in encode_comp_t()
	hfs: fix OOB Read in __hfs_brec_find
	drm/etnaviv: add missing quirks for GC300
	brcmfmac: return error when getting invalid max_flowrings from dongle
	wifi: ath9k: verify the expected usb_endpoints are present
	wifi: ar5523: Fix use-after-free on ar5523_cmd() timed out
	ASoC: codecs: rt298: Add quirk for KBL-R RVP platform
	ipmi: fix memleak when unload ipmi driver
	bpf: make sure skb->len != 0 when redirecting to a tunneling device
	net: ethernet: ti: Fix return type of netcp_ndo_start_xmit()
	hamradio: baycom_epp: Fix return type of baycom_send_packet()
	wifi: brcmfmac: Fix potential shift-out-of-bounds in brcmf_fw_alloc_request()
	igb: Do not free q_vector unless new one was allocated
	s390/ctcm: Fix return type of ctc{mp,}m_tx()
	s390/netiucv: Fix return type of netiucv_tx()
	s390/lcs: Fix return type of lcs_start_xmit()
	drm/rockchip: Use drm_mode_copy()
	drm/sti: Use drm_mode_copy()
	drivers/md/md-bitmap: check the return value of md_bitmap_get_counter()
	md/raid1: stop mdx_raid1 thread when raid1 array run failed
	net: add atomic_long_t to net_device_stats fields
	mrp: introduce active flags to prevent UAF when applicant uninit
	ppp: associate skb with a device at tx
	bpf: Prevent decl_tag from being referenced in func_proto arg
	media: dvb-frontends: fix leak of memory fw
	media: dvbdev: adopts refcnt to avoid UAF
	media: dvb-usb: fix memory leak in dvb_usb_adapter_init()
	blk-mq: fix possible memleak when register 'hctx' failed
	regulator: core: fix use_count leakage when handling boot-on
	mmc: f-sdh30: Add quirks for broken timeout clock capability
	media: si470x: Fix use-after-free in si470x_int_in_callback()
	clk: st: Fix memory leak in st_of_quadfs_setup()
	hugetlbfs: fix null-ptr-deref in hugetlbfs_parse_param()
	drm/fsl-dcu: Fix return type of fsl_dcu_drm_connector_mode_valid()
	drm/sti: Fix return type of sti_{dvo,hda,hdmi}_connector_mode_valid()
	orangefs: Fix kmemleak in orangefs_prepare_debugfs_help_string()
	orangefs: Fix kmemleak in orangefs_{kernel,client}_debug_init()
	ALSA/ASoC: hda: move/rename snd_hdac_ext_stop_streams to hdac_stream.c
	ALSA: hda: add snd_hdac_stop_streams() helper
	ASoC: Intel: Skylake: Fix driver hang during shutdown
	ASoC: mediatek: mt8173-rt5650-rt5514: fix refcount leak in mt8173_rt5650_rt5514_dev_probe()
	ASoC: audio-graph-card: fix refcount leak of cpu_ep in __graph_for_each_link()
	ASoC: rockchip: pdm: Add missing clk_disable_unprepare() in rockchip_pdm_runtime_resume()
	ASoC: wm8994: Fix potential deadlock
	ASoC: rockchip: spdif: Add missing clk_disable_unprepare() in rk_spdif_runtime_resume()
	ASoC: rt5670: Remove unbalanced pm_runtime_put()
	pstore: Switch pmsg_lock to an rt_mutex to avoid priority inversion
	pstore: Make sure CONFIG_PSTORE_PMSG selects CONFIG_RT_MUTEXES
	ALSA: hda/realtek: Add quirk for Lenovo TianYi510Pro-14IOB
	ALSA: hda/hdmi: Add HP Device 0x8711 to force connect list
	usb: dwc3: core: defer probe on ulpi_read_id timeout
	HID: wacom: Ensure bootloader PID is usable in hidraw mode
	reiserfs: Add missing calls to reiserfs_security_free()
	iio: adc: ad_sigma_delta: do not use internal iio_dev lock
	iio: adc128s052: add proper .data members in adc128_of_match table
	regulator: core: fix deadlock on regulator enable
	gcov: add support for checksum field
	media: dvbdev: fix build warning due to comments
	media: dvbdev: fix refcnt bug
	cifs: fix oops during encryption
	nvme-pci: fix doorbell buffer value endianness
	ata: ahci: Fix PCS quirk application for suspend
	nvme: resync include/linux/nvme.h with nvmecli
	nvme: fix the NVME_CMD_EFFECTS_CSE_MASK definition
	objtool: Fix SEGFAULT
	powerpc/rtas: avoid device tree lookups in rtas_os_term()
	powerpc/rtas: avoid scheduling in rtas_os_term()
	HID: multitouch: fix Asus ExpertBook P2 P2451FA trackpoint
	HID: plantronics: Additional PIDs for double volume key presses quirk
	hfsplus: fix bug causing custom uid and gid being unable to be assigned with mount
	ovl: Use ovl mounter's fsuid and fsgid in ovl_link()
	ALSA: line6: correct midi status byte when receiving data from podxt
	ALSA: line6: fix stack overflow in line6_midi_transmit
	pnode: terminate at peers of source
	md: fix a crash in mempool_free
	mm, compaction: fix fast_isolate_around() to stay within boundaries
	f2fs: should put a page when checking the summary info
	mmc: vub300: fix warning - do not call blocking ops when !TASK_RUNNING
	tpm: tpm_crb: Add the missed acpi_put_table() to fix memory leak
	tpm: tpm_tis: Add the missed acpi_put_table() to fix memory leak
	SUNRPC: Don't leak netobj memory when gss_read_proxy_verf() fails
	net/af_packet: add VLAN support for AF_PACKET SOCK_RAW GSO
	net/af_packet: make sure to pull mac header
	media: stv0288: use explicitly signed char
	soc: qcom: Select REMAP_MMIO for LLCC driver
	kest.pl: Fix grub2 menu handling for rebooting
	ktest.pl minconfig: Unset configs instead of just removing them
	mmc: sdhci-sprd: Disable CLK_AUTO when the clock is less than 400K
	btrfs: fix resolving backrefs for inline extent followed by prealloc
	ARM: ux500: do not directly dereference __iomem
	arm64: dts: qcom: sdm850-lenovo-yoga-c630: correct I2C12 pins drive strength
	selftests: Use optional USERCFLAGS and USERLDFLAGS
	cpufreq: Init completion before kobject_init_and_add()
	binfmt: Move install_exec_creds after setup_new_exec to match binfmt_elf
	binfmt: Fix error return code in load_elf_fdpic_binary()
	dm cache: Fix ABBA deadlock between shrink_slab and dm_cache_metadata_abort
	dm thin: Fix ABBA deadlock between shrink_slab and dm_pool_abort_metadata
	dm thin: Use last transaction's pmd->root when commit failed
	dm thin: Fix UAF in run_timer_softirq()
	dm integrity: Fix UAF in dm_integrity_dtr()
	dm clone: Fix UAF in clone_dtr()
	dm cache: Fix UAF in destroy()
	dm cache: set needs_check flag after aborting metadata
	tracing/hist: Fix out-of-bound write on 'action_data.var_ref_idx'
	x86/microcode/intel: Do not retry microcode reloading on the APs
	tracing/hist: Fix wrong return value in parse_action_params()
	tracing: Fix infinite loop in tracing_read_pipe on overflowed print_trace_line
	ARM: 9256/1: NWFPE: avoid compiler-generated __aeabi_uldivmod
	media: dvb-core: Fix double free in dvb_register_device()
	media: dvb-core: Fix UAF due to refcount races at releasing
	cifs: fix confusing debug message
	cifs: fix missing display of three mount options
	md/bitmap: Fix bitmap chunk size overflow issues
	efi: Add iMac Pro 2017 to uefi skip cert quirk
	ipmi: fix long wait in unload when IPMI disconnect
	mtd: spi-nor: Check for zero erase size in spi_nor_find_best_erase_type()
	ima: Fix a potential NULL pointer access in ima_restore_measurement_list
	ipmi: fix use after free in _ipmi_destroy_user()
	PCI: Fix pci_device_is_present() for VFs by checking PF
	PCI/sysfs: Fix double free in error path
	crypto: n2 - add missing hash statesize
	iommu/amd: Fix ivrs_acpihid cmdline parsing code
	parisc: led: Fix potential null-ptr-deref in start_task()
	device_cgroup: Roll back to original exceptions after copy failure
	drm/connector: send hotplug uevent on connector cleanup
	drm/vmwgfx: Validate the box size for the snooped cursor
	ext4: add inode table check in __ext4_get_inode_loc to aovid possible infinite loop
	ext4: fix undefined behavior in bit shift for ext4_check_flag_values
	ext4: add EXT4_IGET_BAD flag to prevent unexpected bad inode
	ext4: add helper to check quota inums
	ext4: fix reserved cluster accounting in __es_remove_extent()
	ext4: fix bug_on in __es_tree_search caused by bad boot loader inode
	ext4: init quota for 'old.inode' in 'ext4_rename'
	ext4: fix delayed allocation bug in ext4_clu_mapped for bigalloc + inline
	ext4: fix corruption when online resizing a 1K bigalloc fs
	ext4: fix error code return to user-space in ext4_get_branch()
	ext4: avoid BUG_ON when creating xattrs
	ext4: fix inode leak in ext4_xattr_inode_create() on an error path
	ext4: initialize quota before expanding inode in setproject ioctl
	ext4: avoid unaccounted block allocation when expanding inode
	ext4: allocate extended attribute value in vmalloc area
	btrfs: replace strncpy() with strscpy()
	PM/devfreq: governor: Add a private governor_data for governor
	media: s5p-mfc: Fix to handle reference queue during finishing
	media: s5p-mfc: Clear workbit to handle error condition
	media: s5p-mfc: Fix in register read and write for H264
	dm thin: resume even if in FAIL mode
	perf probe: Use dwarf_attr_integrate as generic DWARF attr accessor
	perf probe: Fix to get the DW_AT_decl_file and DW_AT_call_file as unsinged data
	KVM: x86: optimize more exit handlers in vmx.c
	KVM: retpolines: x86: eliminate retpoline from vmx.c exit handlers
	KVM: VMX: Rename INTERRUPT_PENDING to INTERRUPT_WINDOW
	KVM: VMX: Rename NMI_PENDING to NMI_WINDOW
	KVM: VMX: Fix the spelling of CPU_BASED_USE_TSC_OFFSETTING
	KVM: nVMX: Properly expose ENABLE_USR_WAIT_PAUSE control to L1
	ravb: Fix "failed to switch device to config mode" message during unbind
	ext4: goto right label 'failed_mount3a'
	ext4: correct inconsistent error msg in nojournal mode
	mm/highmem: Lift memcpy_[to|from]_page to core
	ext4: use memcpy_to_page() in pagecache_write()
	fs: ext4: initialize fsdata in pagecache_write()
	ext4: use kmemdup() to replace kmalloc + memcpy
	mbcache: don't reclaim used entries
	mbcache: add functions to delete entry if unused
	ext4: remove EA inode entry from mbcache on inode eviction
	ext4: unindent codeblock in ext4_xattr_block_set()
	ext4: fix race when reusing xattr blocks
	mbcache: automatically delete entries from cache on freeing
	ext4: fix deadlock due to mbcache entry corruption
	SUNRPC: ensure the matching upcall is in-flight upon downcall
	bpf: pull before calling skb_postpull_rcsum()
	nfsd: shut down the NFSv4 state objects before the filecache
	net: hns3: add interrupts re-initialization while doing VF FLR
	net: sched: fix memory leak in tcindex_set_parms
	qlcnic: prevent ->dcb use-after-free on qlcnic_dcb_enable() failure
	nfc: Fix potential resource leaks
	vhost: fix range used in translate_desc()
	net: amd-xgbe: add missed tasklet_kill
	net: phy: xgmiitorgmii: Fix refcount leak in xgmiitorgmii_probe
	RDMA/uverbs: Silence shiftTooManyBitsSigned warning
	RDMA/mlx5: Fix validation of max_rd_atomic caps for DC
	net: sched: atm: dont intepret cls results when asked to drop
	net: sched: cbq: dont intepret cls results when asked to drop
	perf tools: Fix resources leak in perf_data__open_dir()
	drivers/net/bonding/bond_3ad: return when there's no aggregator
	usb: rndis_host: Secure rndis_query check against int overflow
	drm/i915: unpin on error in intel_vgpu_shadow_mm_pin()
	caif: fix memory leak in cfctrl_linkup_request()
	udf: Fix extension of the last extent in the file
	ASoC: Intel: bytcr_rt5640: Add quirk for the Advantech MICA-071 tablet
	x86/bugs: Flush IBP in ib_prctl_set()
	nfsd: fix handling of readdir in v4root vs. mount upcall timeout
	riscv: uaccess: fix type of 0 variable on error in get_user()
	ext4: don't allow journal inode to have encrypt flag
	hfs/hfsplus: use WARN_ON for sanity check
	hfs/hfsplus: avoid WARN_ON() for sanity check, use proper error handling
	mbcache: Avoid nesting of cache->c_list_lock under bit locks
	parisc: Align parisc MADV_XXX constants with all other architectures
	selftests: Fix kselftest O=objdir build from cluttering top level objdir
	selftests: set the BUILD variable to absolute path
	driver core: Fix bus_type.match() error handling in __driver_attach()
	net: sched: disallow noqueue for qdisc classes
	KVM: arm64: Fix S1PTW handling on RO memslots
	efi: tpm: Avoid READ_ONCE() for accessing the event log
	docs: Fix the docs build with Sphinx 6.0
	perf auxtrace: Fix address filter duplicate symbol selection
	s390/kexec: fix ipl report address for kdump
	s390/percpu: add READ_ONCE() to arch_this_cpu_to_op_simple()
	net/ulp: prevent ULP without clone op from entering the LISTEN status
	ALSA: pcm: Move rwsem lock inside snd_ctl_elem_read to prevent UAF
	ALSA: hda/hdmi: Add a HP device 0x8715 to force connect list
	cifs: Fix uninitialized memory read for smb311 posix symlink create
	drm/msm/adreno: Make adreno quirks not overwrite each other
	platform/x86: sony-laptop: Don't turn off 0x153 keyboard backlight during probe
	ixgbe: fix pci device refcount leak
	ipv6: raw: Deduct extension header length in rawv6_push_pending_frames
	wifi: wilc1000: sdio: fix module autoloading
	usb: ulpi: defer ulpi_register on ulpi_read_id timeout
	jbd2: use the correct print format
	quota: Factor out setup of quota inode
	ext4: fix bug_on in __es_tree_search caused by bad quota inode
	ext4: lost matching-pair of trace in ext4_truncate
	ext4: fix use-after-free in ext4_orphan_cleanup
	ext4: fix uninititialized value in 'ext4_evict_inode'
	netfilter: ipset: Fix overflow before widen in the bitmap_ip_create() function.
	powerpc/imc-pmu: Fix use of mutex in IRQs disabled section
	x86/boot: Avoid using Intel mnemonics in AT&T syntax asm
	EDAC/device: Fix period calculation in edac_device_reset_delay_period()
	regulator: da9211: Use irq handler when ready
	tipc: improve throughput between nodes in netns
	tipc: eliminate checking netns if node established
	tipc: fix unexpected link reset due to discovery messages
	hvc/xen: lock console list traversal
	nfc: pn533: Wait for out_urb's completion in pn533_usb_send_frame()
	net/sched: act_mpls: Fix warning during failed attribute validation
	net/mlx5: Rename ptp clock info
	net/mlx5: Fix ptp max frequency adjustment range
	iommu/mediatek-v1: Add error handle for mtk_iommu_probe
	iommu/mediatek-v1: Fix an error handling path in mtk_iommu_v1_probe()
	x86/resctrl: Use task_curr() instead of task_struct->on_cpu to prevent unnecessary IPI
	x86/resctrl: Fix task CLOSID/RMID update race
	drm/virtio: Fix GEM handle creation UAF
	arm64: atomics: format whitespace consistently
	arm64: atomics: remove LL/SC trampolines
	arm64: cmpxchg_double*: hazard against entire exchange variable
	efi: fix NULL-deref in init error path
	mm: Always release pages to the buddy allocator in memblock_free_late().
	Revert "usb: ulpi: defer ulpi_register on ulpi_read_id timeout"
	tipc: fix use-after-free in tipc_disc_rcv()
	tty: serial: tegra: Handle RX transfer in PIO mode if DMA wasn't started
	tipc: Add a missing case of TIPC_DIRECT_MSG type
	ocfs2: fix freeing uninitialized resource on ocfs2_dlm_shutdown
	tipc: call tipc_lxc_xmit without holding node_read_lock
	Linux 5.4.229

Change-Id: If8e35d5d3e707352766ae3e4b665fd2369d9382b
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-01-18 12:21:41 +00:00
Chen Zhongjin
248fa44cde perf: Fix possible memleak in pmu_dev_alloc()
[ Upstream commit e8d7a90c08ce963c592fb49845f2ccc606a2ac21 ]

In pmu_dev_alloc(), when dev_set_name() failed, it will goto free_dev
and call put_device(pmu->dev) to release it.
However pmu->dev->release is assigned after this, which makes warning
and memleak.
Call dev_set_name() after pmu->dev->release = pmu_dev_release to fix it.

  Device '(null)' does not have a release() function...
  WARNING: CPU: 2 PID: 441 at drivers/base/core.c:2332 device_release+0x1b9/0x240
  ...
  Call Trace:
    <TASK>
    kobject_put+0x17f/0x460
    put_device+0x20/0x30
    pmu_dev_alloc+0x152/0x400
    perf_pmu_register+0x96b/0xee0
    ...
  kmemleak: 1 new suspected memory leaks (see /sys/kernel/debug/kmemleak)
  unreferenced object 0xffff888014759000 (size 2048):
    comm "modprobe", pid 441, jiffies 4294931444 (age 38.332s)
    backtrace:
      [<0000000005aed3b4>] kmalloc_trace+0x27/0x110
      [<000000006b38f9b8>] pmu_dev_alloc+0x50/0x400
      [<00000000735f17be>] perf_pmu_register+0x96b/0xee0
      [<00000000e38477f1>] 0xffffffffc0ad8603
      [<000000004e162216>] do_one_initcall+0xd0/0x4e0
      ...

Fixes: abe4340057 ("perf: Sysfs enumeration")
Signed-off-by: Chen Zhongjin <chenzhongjin@huawei.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20221111103653.91058-1-chenzhongjin@huawei.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-01-18 11:40:53 +01:00
Greg Kroah-Hartman
b1e3be07f2 This is the 5.4.208 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmLj+VAACgkQONu9yGCS
 aT4kpQ//YdoyxUW1lOvPk9PIRm67ZADUXUwKKTTTO9hvOt886YkOaYghZj+nfTQ/
 SKsEFCh+jKRSG2bvnwUBh/sTTBBwUZeMpvfZZl2polhQT6JhJbBOt9+P/5enXN1O
 9grqt2i2QWA4+l52vnDAA7v5UD+td310GiyKmxiKqzAGaVte29kNLPwujZJM7J+Y
 8PUMI9gGEI8skCtjz7VsSIdvqB+p4B67iNnrDRKubOVUlXdr9f8xKj02DbiQxcnR
 TWc1+h7GIjD/Uibsne+pxAi90/V9A3RsNviZ7U3Igf3kCQ+HS7RH4hcSlU0v6GKy
 HDQrr/BHhGtPFtVCR0HJLbHVYmp/J+7H8V7LFY2mTd0lfkT1q58NRfUuGgRmDETI
 Ug3Dx8uxtUHgBPD1hsbyoSo0nYnleoCQZV+DFWTOF26nb1/85fyC+16U6uvagNw5
 Cdpt8ZVW9/qD8WnxnOuP6yvqw4MFZ0pFyhdQxxsyZpBj2sp5gLz6wRKLgUJX3a8q
 hrbWuR17cg+EA86EKZHxa5y4Wzv02FvljfTD60KvXqY67L4iPzrZWDV+ql9FVm/0
 wEYTLCjfDgDG9iY1e7Ns8ajD6KsBGfs0zO0vUFU4/LmX+EsJzJhfJ3c3zJhwrnDA
 ys2N1tvuSoef/4+JKhVfuxuGGl+mFdT+2yzKYCv3g16sX1OVcbA=
 =UvEH
 -----END PGP SIGNATURE-----

Merge 5.4.208 into android11-5.4-lts

Changes in 5.4.208
	pinctrl: stm32: fix optional IRQ support to gpios
	riscv: add as-options for modules with assembly compontents
	mlxsw: spectrum_router: Fix IPv4 nexthop gateway indication
	lockdown: Fix kexec lockdown bypass with ima policy
	xen/gntdev: Ignore failure to unmap INVALID_GRANT_HANDLE
	PCI: hv: Fix multi-MSI to allow more than one MSI vector
	PCI: hv: Fix hv_arch_irq_unmask() for multi-MSI
	PCI: hv: Reuse existing IRTE allocation in compose_msi_msg()
	PCI: hv: Fix interrupt mapping for multi-MSI
	serial: mvebu-uart: correctly report configured baudrate value
	xfrm: xfrm_policy: fix a possible double xfrm_pols_put() in xfrm_bundle_lookup()
	power/reset: arm-versatile: Fix refcount leak in versatile_reboot_probe
	pinctrl: ralink: Check for null return of devm_kcalloc
	perf/core: Fix data race between perf_event_set_output() and perf_mmap_close()
	igc: Reinstate IGC_REMOVED logic and implement it properly
	ip: Fix data-races around sysctl_ip_no_pmtu_disc.
	ip: Fix data-races around sysctl_ip_fwd_use_pmtu.
	ip: Fix data-races around sysctl_ip_nonlocal_bind.
	ip: Fix a data-race around sysctl_fwmark_reflect.
	tcp/dccp: Fix a data-race around sysctl_tcp_fwmark_accept.
	tcp: Fix data-races around sysctl_tcp_mtu_probing.
	tcp: Fix data-races around sysctl_tcp_base_mss.
	tcp: Fix data-races around sysctl_tcp_min_snd_mss.
	tcp: Fix a data-race around sysctl_tcp_mtu_probe_floor.
	tcp: Fix a data-race around sysctl_tcp_probe_threshold.
	tcp: Fix a data-race around sysctl_tcp_probe_interval.
	i2c: cadence: Change large transfer count reset logic to be unconditional
	net: stmmac: fix dma queue left shift overflow issue
	net/tls: Fix race in TLS device down flow
	igmp: Fix data-races around sysctl_igmp_llm_reports.
	igmp: Fix a data-race around sysctl_igmp_max_memberships.
	tcp: Fix data-races around sysctl_tcp_syncookies.
	tcp: Fix data-races around sysctl_tcp_reordering.
	tcp: Fix data-races around some timeout sysctl knobs.
	tcp: Fix a data-race around sysctl_tcp_notsent_lowat.
	tcp: Fix a data-race around sysctl_tcp_tw_reuse.
	tcp: Fix data-races around sysctl_max_syn_backlog.
	tcp: Fix data-races around sysctl_tcp_fastopen.
	iavf: Fix handling of dummy receive descriptors
	i40e: Fix erroneous adapter reinitialization during recovery process
	ixgbe: Add locking to prevent panic when setting sriov_numvfs to zero
	gpio: pca953x: only use single read/write for No AI mode
	be2net: Fix buffer overflow in be_get_module_eeprom
	ipv4: Fix a data-race around sysctl_fib_multipath_use_neigh.
	udp: Fix a data-race around sysctl_udp_l3mdev_accept.
	tcp: Fix data-races around sysctl knobs related to SYN option.
	tcp: Fix a data-race around sysctl_tcp_early_retrans.
	tcp: Fix data-races around sysctl_tcp_recovery.
	tcp: Fix a data-race around sysctl_tcp_thin_linear_timeouts.
	tcp: Fix data-races around sysctl_tcp_slow_start_after_idle.
	tcp: Fix a data-race around sysctl_tcp_retrans_collapse.
	tcp: Fix a data-race around sysctl_tcp_stdurg.
	tcp: Fix a data-race around sysctl_tcp_rfc1337.
	tcp: Fix data-races around sysctl_tcp_max_reordering.
	spi: bcm2835: bcm2835_spi_handle_err(): fix NULL pointer deref for non DMA transfers
	mm/mempolicy: fix uninit-value in mpol_rebind_policy()
	bpf: Make sure mac_header was set before using it
	dlm: fix pending remove if msg allocation fails
	ima: remove the IMA_TEMPLATE Kconfig option
	locking/refcount: Define constants for saturation and max refcount values
	locking/refcount: Ensure integer operands are treated as signed
	locking/refcount: Remove unused refcount_*_checked() variants
	locking/refcount: Move the bulk of the REFCOUNT_FULL implementation into the <linux/refcount.h> header
	locking/refcount: Improve performance of generic REFCOUNT_FULL code
	locking/refcount: Move saturation warnings out of line
	locking/refcount: Consolidate REFCOUNT_{MAX,SATURATED} definitions
	locking/refcount: Consolidate implementations of refcount_t
	x86: get rid of small constant size cases in raw_copy_{to,from}_user()
	x86/uaccess: Implement macros for CMPXCHG on user addresses
	mmap locking API: initial implementation as rwsem wrappers
	x86/mce: Deduplicate exception handling
	bitfield.h: Fix "type of reg too small for mask" test
	ALSA: memalloc: Align buffer allocations in page size
	Bluetooth: Add bt_skb_sendmsg helper
	Bluetooth: Add bt_skb_sendmmsg helper
	Bluetooth: SCO: Replace use of memcpy_from_msg with bt_skb_sendmsg
	Bluetooth: RFCOMM: Replace use of memcpy_from_msg with bt_skb_sendmmsg
	Bluetooth: Fix passing NULL to PTR_ERR
	Bluetooth: SCO: Fix sco_send_frame returning skb->len
	Bluetooth: Fix bt_skb_sendmmsg not allocating partial chunks
	tty: drivers/tty/, stop using tty_schedule_flip()
	tty: the rest, stop using tty_schedule_flip()
	tty: drop tty_schedule_flip()
	tty: extract tty_flip_buffer_commit() from tty_flip_buffer_push()
	tty: use new tty_insert_flip_string_and_push_buffer() in pty_write()
	net: usb: ax88179_178a needs FLAG_SEND_ZLP
	x86: drop bogus "cc" clobber from __try_cmpxchg_user_asm()
	Linux 5.4.208

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ia53caf9bc847b0bb332a5b14972142d46ae5a740
2022-07-30 14:33:25 +02:00
Peter Zijlstra
98c3c8fd0d perf/core: Fix data race between perf_event_set_output() and perf_mmap_close()
[ Upstream commit 68e3c69803dada336893640110cb87221bb01dcf ]

Yang Jihing reported a race between perf_event_set_output() and
perf_mmap_close():

	CPU1					CPU2

	perf_mmap_close(e2)
	  if (atomic_dec_and_test(&e2->rb->mmap_count)) // 1 - > 0
	    detach_rest = true

						ioctl(e1, IOC_SET_OUTPUT, e2)
						  perf_event_set_output(e1, e2)

	  ...
	  list_for_each_entry_rcu(e, &e2->rb->event_list, rb_entry)
	    ring_buffer_attach(e, NULL);
	    // e1 isn't yet added and
	    // therefore not detached

						    ring_buffer_attach(e1, e2->rb)
						      list_add_rcu(&e1->rb_entry,
								   &e2->rb->event_list)

After this; e1 is attached to an unmapped rb and a subsequent
perf_mmap() will loop forever more:

	again:
		mutex_lock(&e->mmap_mutex);
		if (event->rb) {
			...
			if (!atomic_inc_not_zero(&e->rb->mmap_count)) {
				...
				mutex_unlock(&e->mmap_mutex);
				goto again;
			}
		}

The loop in perf_mmap_close() holds e2->mmap_mutex, while the attach
in perf_event_set_output() holds e1->mmap_mutex. As such there is no
serialization to avoid this race.

Change perf_event_set_output() to take both e1->mmap_mutex and
e2->mmap_mutex to alleviate that problem. Additionally, have the loop
in perf_mmap() detach the rb directly, this avoids having to wait for
the concurrent perf_mmap_close() to get around to doing it to make
progress.

Fixes: 9bb5d40cd9 ("perf: Fix mmap() accounting hole")
Reported-by: Yang Jihong <yangjihong1@huawei.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Yang Jihong <yangjihong1@huawei.com>
Link: https://lkml.kernel.org/r/YsQ3jm2GR38SW7uD@worktop.programming.kicks-ass.net
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-07-29 17:14:10 +02:00