* [PATCH 5.4 000/187] 5.4.302-rc1 review
@ 2025-12-01 11:21 Greg Kroah-Hartman
2025-12-01 11:22 ` [PATCH 5.4 019/187] devcoredump: Fix circular locking dependency with devcd->mutex Greg Kroah-Hartman
` (6 more replies)
0 siblings, 7 replies; 10+ messages in thread
From: Greg Kroah-Hartman @ 2025-12-01 11:21 UTC (permalink / raw)
To: stable
Cc: Greg Kroah-Hartman, patches, linux-kernel, torvalds, akpm, linux,
shuah, patches, lkft-triage, pavel, jonathanh, f.fainelli,
sudipm.mukherjee, rwarsow, conor, hargar, broonie, achill, sr
This is the start of the stable review cycle for the 5.4.302 release.
There are 187 patches in this series, all will be posted as a response
to this one. If anyone has any issues with these being applied, please
let me know.
Responses should be made by Wed, 03 Dec 2025 11:22:11 +0000.
Anything received after that time might be too late.
The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.4.302-rc1.gz
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.4.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Linux 5.4.302-rc1
Hugh Dickins <hughd@google.com>
mm/mprotect: delete pmd_none_or_clear_bad_unless_trans_huge()
Peter Xu <peterx@redhat.com>
mm/mprotect: use long for page accountings and retval
Vlastimil Babka <vbabka@suse.cz>
mm/mempool: fix poisoning order>0 pages with HIGHMEM
Fabio M. De Francesco <fabio.maria.de.francesco@linux.intel.com>
mm/mempool: replace kmap_atomic() with kmap_local_page()
Seungjin Bae <eeodqql09@gmail.com>
Input: pegasus-notetaker - fix potential out-of-bounds access
Vincent Mailhol <mailhol.vincent@wanadoo.fr>
Input: remove third argument of usb_maxpacket()
Vincent Mailhol <mailhol.vincent@wanadoo.fr>
usb: deprecate the third argument of usb_maxpacket()
Niklas Cassel <cassel@kernel.org>
ata: libata-scsi: Fix system suspend for a security locked drive
Wei Yang <albinwyang@tencent.com>
fs/proc: fix uaf in proc_readdir_de()
Miaoqian Lin <linmq006@gmail.com>
pmdomain: imx: Fix reference count leak in imx_gpc_remove
Sudeep Holla <sudeep.holla@arm.com>
pmdomain: arm: scmi: Fix genpd leak on provider registration failure
Breno Leitao <leitao@debian.org>
net: netpoll: fix incorrect refcount handling causing incorrect cleanup
Nathan Chancellor <nathan@kernel.org>
net: qede: Initialize qede_ll_ops with designated initializer
Long Li <longli@microsoft.com>
uio_hv_generic: Set event for all channels on the device
Nishanth Menon <nm@ti.com>
net: ethernet: ti: netcp: Standardize knav_dma_open_channel to return NULL on error
René Rebe <rene@exactco.de>
ALSA: usb-audio: fix uac2 clock source at terminal parser
Isaac J. Manjarres <isaacmanjarres@google.com>
mm/page_alloc: fix hash table order logging in alloc_large_system_hash()
Jakub Horký <jakub.git@horky.net>
kconfig/nconf: Initialize the default locale at startup
Jakub Horký <jakub.git@horky.net>
kconfig/mconf: Initialize the default locale at startup
Michal Luczaj <mhal@rbox.co>
vsock: Ignore signal/timeout on connect() if already established
Aleksei Nikiforov <aleksei.nikiforov@linux.ibm.com>
s390/ctcm: Fix double-kfree
Ilya Maximets <i.maximets@ovn.org>
net: openvswitch: remove never-working support for setting nsh fields
Zilin Guan <zilin@seu.edu.cn>
mlxsw: spectrum: Fix memory leak in mlxsw_sp_flower_stats()
Maciej W. Rozycki <macro@orcam.me.uk>
MIPS: Malta: Fix !EVA SOC-it PCI MMIO
Hamza Mahfooz <hamzamahfooz@linux.microsoft.com>
scsi: target: tcm_loop: Fix segfault in tcm_loop_tpg_address_show()
Bart Van Assche <bvanassche@acm.org>
scsi: sg: Do not sleep in atomic context
Tzung-Bi Shih <tzungbi@kernel.org>
Input: cros_ec_keyb - fix an invalid memory access
Andrey Vatoropin <a.vatoropin@crpt.ru>
be2net: pass wrb_params in case of OS2BMC
Zhang Heng <zhangheng@kylinos.cn>
HID: quirks: work around VID/PID conflict for 0x4c4a/0x4155
Abdun Nihaal <nihaal@cse.iitm.ac.in>
isdn: mISDN: hfcsusb: fix memory leak in hfcsusb_probe()
Niravkumar L Rabara <niravkumarlaxmidas.rabara@altera.com>
EDAC/altera: Use INTTEST register for Ethernet and USB SBE injection
Niravkumar L Rabara <niravkumarlaxmidas.rabara@altera.com>
EDAC/altera: Handle OCRAM ECC enable after warm reset
Hans de Goede <hansg@kernel.org>
spi: Try to get ACPI GPIO IRQ earlier
Chuang Wang <nashuiliang@gmail.com>
ipv4: route: Prevent rt_bind_exception() from rebinding stale fnhe
Nate Karstens <nate.karstens@garmin.com>
strparser: Fix signed/unsigned mismatch bug
Peter Oberparleiter <oberpar@linux.ibm.com>
gcov: add support for GCC 15
Jakub Acs <acsjakub@amazon.de>
mm/ksm: fix flag-dropping behavior in ksm_madvise
Haein Lee <lhi0729@kaist.ac.kr>
ALSA: usb-audio: Fix NULL pointer dereference in snd_usb_mixer_controls_badd
Ian Forbes <ian.forbes@broadcom.com>
drm/vmwgfx: Validate command header size against SVGA_CMD_MAX_DATASIZE
Haotian Zhang <vulab@iscas.ac.cn>
ASoC: cs4271: Fix regulator leak on probe failure
Haotian Zhang <vulab@iscas.ac.cn>
regulator: fixed: fix GPIO descriptor leak on register failure
Chris Morgan <macromorgan@hotmail.com>
regulator: fixed: use dev_err_probe for register
Pauli Virtanen <pav@iki.fi>
Bluetooth: L2CAP: export l2cap_chan_hold for modules
Eric Dumazet <edumazet@google.com>
net_sched: limit try_bulk_dequeue_skb() batches
Eric Dumazet <edumazet@google.com>
net_sched: remove need_resched() from qdisc_run()
Gal Pressman <gal@nvidia.com>
net/mlx5e: Fix wraparound in rate limiting for values above 255 Gbps
Gal Pressman <gal@nvidia.com>
net/mlx5e: Fix maxrate wraparound in threshold between units
Ranganath V N <vnranganath.20@gmail.com>
net: sched: act_ife: initialize struct tc_ife to fix KMSAN kernel-infoleak
Benjamin Berg <benjamin.berg@intel.com>
wifi: mac80211: skip rate verification for not captured PSDUs
Buday Csaba <buday.csaba@prolan.hu>
net: mdio: fix resource leak in mdiobus_register_device()
Kuniyuki Iwashima <kuniyu@google.com>
tipc: Fix use-after-free in tipc_mon_reinit_self().
Xin Long <lucien.xin@gmail.com>
tipc: simplify the finalize work queue
Eric Dumazet <edumazet@google.com>
sctp: prevent possible shift-out-of-bounds in sctp_transport_update_rto
Xin Long <lucien.xin@gmail.com>
sctp: get netns from asoc and ep base
Pauli Virtanen <pav@iki.fi>
Bluetooth: 6lowpan: Don't hold spin lock over sleeping functions
Pauli Virtanen <pav@iki.fi>
Bluetooth: 6lowpan: fix BDADDR_LE vs ADDR_LE_DEV address type confusion
Pauli Virtanen <pav@iki.fi>
Bluetooth: 6lowpan: reset link-local header on ipv6 recv path
Raphael Pinsonneault-Thibeault <rpthibeault@gmail.com>
Bluetooth: btusb: reorder cleanup in btusb_disconnect to avoid UAF
Wei Fang <wei.fang@nxp.com>
net: fec: correct rx_bytes statistic for the case SHIFT16 is set
Sharique Mohammad <sharq0406@gmail.com>
ASoC: max98090/91: fixed max98091 ALSA widget powering up/down
Tristan Lobb <tristan.lobb@it-lobb.de>
HID: quirks: avoid Cooler Master MM712 dongle wakeup bug
Joshua Watt <jpewhacker@gmail.com>
NFS4: Fix state renewals missing after boot
Peter Zijlstra <peterz@infradead.org>
compiler_types: Move unused static inline functions warning to W=2
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
extcon: adc-jack: Cleanup wakeup source only if it was enabled
Zilin Guan <zilin@seu.edu.cn>
tracing: Fix memory leaks in create_field_var()
Qendrim Maxhuni <qendrim.maxhuni@garderos.com>
net: usb: qmi_wwan: initialize MAC header offset in qmimux_rx_fixup
Stefan Wiehler <stefan.wiehler@nokia.com>
sctp: Prevent TOCTOU out-of-bounds write
Stefan Wiehler <stefan.wiehler@nokia.com>
sctp: Hold RCU read lock while iterating over address list
Jonas Gorski <jonas.gorski@gmail.com>
net: dsa: b53: stop reading ARL entries if search is done
Jonas Gorski <jonas.gorski@gmail.com>
net: dsa: b53: fix enabling ip multicast
Jonas Gorski <jonas.gorski@gmail.com>
net: dsa: b53: fix resetting speed and pause on forced link
Álvaro Fernández Rojas <noltari@gmail.com>
net: dsa: b53: prevent GMII_PORT_OVERRIDE_CTRL access on BCM5325
Russell King <rmk+kernel@armlinux.org.uk>
net: dsa/b53: change b53_force_port_config() pause argument
Hangbin Liu <liuhangbin@gmail.com>
net: vlan: sync VLAN features with lower device
Viacheslav Dubeyko <Slava.Dubeyko@ibm.com>
ceph: add checking of wait_for_completion_killable() return value
Albin Babu Varghese <albinbabuvarghese20@gmail.com>
fbdev: Add bounds checking in bit_putcs to fix vmalloc-out-of-bounds
Ian Rogers <irogers@google.com>
tools bitmap: Add missing asm-generic/bitsperlong.h include
Sakari Ailus <sakari.ailus@linux.intel.com>
ACPI: property: Return present device nodes only on fwnode interface
Randall P. Embry <rpembry@gmail.com>
9p: sysfs_init: don't hardcode error to ENOMEM
Randall P. Embry <rpembry@gmail.com>
9p: fix /sys/fs/9p/caches overwriting itself
Yikang Yue <yikangy2@illinois.edu>
fs/hpfs: Fix error code for new_inode() failure in mkdir/create/mknod/symlink
Saket Dumbre <saket.dumbre@intel.com>
ACPICA: Update dsmethod.c to get rid of unused variable warning
Mike Marshall <hubcap@omnibond.com>
orangefs: fix xattr related buffer overflow...
Dragos Tatulea <dtatulea@nvidia.com>
page_pool: Clamp pool size to max 16K pages
Ivan Pravdin <ipravdin.official@gmail.com>
Bluetooth: bcsp: receive data only if registered
Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Bluetooth: SCO: Fix UAF on sco_conn_free
Théo Lebrun <theo.lebrun@bootlin.com>
net: macb: avoid dealing with endianness in macb_set_hwaddr()
Al Viro <viro@zeniv.linux.org.uk>
nfs4_setup_readdir(): insufficient locking for ->d_parent->d_inode dereferencing
Anthony Iliopoulos <ailiop@suse.com>
NFSv4.1: fix mount hang after CREATE_SESSION failure
Olga Kornievskaia <okorniev@redhat.com>
NFSv4: handle ERR_GRACE on delegation recalls
Stephan Gerhold <stephan.gerhold@linaro.org>
remoteproc: qcom: q6v5: Avoid handling handover twice
Koakuma <koachan@protonmail.com>
sparc/module: Add R_SPARC_UA64 relocation handling
Brahmajit Das <listout@listout.xyz>
net: intel: fm10k: Fix parameter idx set but not used
Shaurya Rane <ssrane_b23@ee.vjti.ac.in>
jfs: fix uninitialized waitqueue in transaction manager
Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
jfs: Verify inode mode when loading from disk
Eric Dumazet <edumazet@google.com>
ipv6: np->rxpmtu race annotation
Krishna Kurapati <krishna.kurapati@oss.qualcomm.com>
usb: xhci: plat: Facilitate using autosuspend for xhci plat devices
Forest Crossman <cyrozap@gmail.com>
usb: mon: Increase BUFF_MAX to 64 MiB to support multi-MB URBs
Al Viro <viro@zeniv.linux.org.uk>
allow finish_no_open(file, ERR_PTR(-E...))
Justin Tee <justin.tee@broadcom.com>
scsi: lpfc: Define size of debugfs entry for xri rebalancing
Justin Tee <justin.tee@broadcom.com>
scsi: lpfc: Check return status of lpfc_reset_flush_io_context during TGT_RESET
Nai-Chen Cheng <bleach1827@gmail.com>
selftests/Makefile: include $(INSTALL_DEP_TARGETS) in clean target to clean net/lib dependency
Yafang Shao <laoar.shao@gmail.com>
net/cls_cgroup: Fix task_get_classid() during qdisc run
David Ahern <dsahern@kernel.org>
selftests: Replace sleep with slowwait
David Ahern <dsahern@kernel.org>
selftests: Disable dad for ipv6 in fcnal-test.sh
Qianfeng Rong <rongqianfeng@vivo.com>
media: redrat3: use int type to store negative error codes
Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
net: sh_eth: Disable WoL if system can not suspend
Harikrishna Shenoy <h-shenoy@ti.com>
phy: cadence: cdns-dphy: Enable lower resolutions in dphy
William Wu <william.wu@rock-chips.com>
usb: gadget: f_hid: Fix zero length packet transfer
Eric Dumazet <edumazet@google.com>
net: call cond_resched() less often in __release_sock()
Cryolitia PukNgae <cryolitia@uniontech.com>
ALSA: usb-audio: apply quirk for MOONDROP Quark2
Juraj Šarinay <juraj@sarinay.com>
net: nfc: nci: Increase NCI_DATA_TIMEOUT to 3000 ms
Devendra K Verma <devverma@amd.com>
dmaengine: dw-edma: Set status for callback_result
Rosen Penev <rosenp@gmail.com>
dmaengine: mv_xor: match alloc_wc and free_wc
Thomas Andreatta <thomasandreatta2000@gmail.com>
dmaengine: sh: setup_xref error handling
Qianfeng Rong <rongqianfeng@vivo.com>
scsi: pm8001: Use int instead of u32 to store error codes
Aleksander Jan Bajkowski <olek2@wp.pl>
mips: lantiq: xway: sysctrl: rename stp clock
Aleksander Jan Bajkowski <olek2@wp.pl>
mips: lantiq: danube: add missing device_type in pci node
Aleksander Jan Bajkowski <olek2@wp.pl>
mips: lantiq: danube: add missing properties to cpu node
Chelsy Ratnawat <chelsyratnawat2001@gmail.com>
media: fix uninitialized symbol warnings
Amber Lin <Amber.Lin@amd.com>
drm/amdkfd: Tie UNMAP_LATENCY to queue_preemption
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
extcon: adc-jack: Fix wakeup source leaks on device unbind
Ujwal Kundur <ujwal.kundur@gmail.com>
rds: Fix endianness annotation for RDS_MPATH_HASH
Sungho Kim <sungho.kim@furiosa.ai>
PCI/P2PDMA: Fix incorrect pointer usage in devm_kfree() call
Kuniyuki Iwashima <kuniyu@google.com>
net: Call trace_sock_exceed_buf_limit() for memcg failure with SK_MEM_RECV.
Christoph Paasch <cpaasch@openai.com>
net: When removing nexthops, don't call synchronize_net if it is not necessary
Zijun Hu <zijun.hu@oss.qualcomm.com>
char: misc: Does not request module for miscdevice with dynamic minor
raub camaioni <raubcameo@gmail.com>
usb: gadget: f_ncm: Fix MAC assignment NCM ethernet
Rodrigo Gobbi <rodrigo.gobbi.7@gmail.com>
iio: adc: spear_adc: mask SPEAR_ADC_STATUS channel and avg sample before setting register
Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
media: imon: make send_packet() more robust
Charalampos Mitrodimas <charmitro@posteo.net>
net: ipv6: fix field-spanning memcpy warning in AH output
Ido Schimmel <idosch@nvidia.com>
bridge: Redirect to backup port when port is administratively down
Niklas Schnelle <schnelle@linux.ibm.com>
powerpc/eeh: Use result of error_detected() in uevent
Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
x86/vsyscall: Do not require X86_PF_INSTR to emulate vsyscall
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
media: pci: ivtv: Don't create fake v4l2_fh
Geoffrey McRae <geoffrey.mcrae@amd.com>
drm/amdkfd: return -ENOTTY for unsupported IOCTLs
Wake Liu <wakel@google.com>
selftests/net: Ensure assert() triggers in psock_tpacket.c
Wake Liu <wakel@google.com>
selftests/net: Replace non-standard __WORDSIZE with sizeof(long) * 8
Marcos Del Sol Vives <marcos@orca.pet>
PCI: Disable MSI on RDC PCI to PCIe bridges
Seyediman Seyedarab <imandevel@gmail.com>
drm/nouveau: replace snprintf() with scnprintf() in nvkm_snprintbf()
Arnd Bergmann <arnd@arndb.de>
mfd: madera: Work around false-positive -Wininitialized warning
Alexander Stein <alexander.stein@ew.tq-group.com>
mfd: stmpe-i2c: Add missing MODULE_LICENSE
Alexander Stein <alexander.stein@ew.tq-group.com>
mfd: stmpe: Remove IRQ domain upon removal
Len Brown <len.brown@intel.com>
tools/power x86_energy_perf_policy: Prefer driver HWP limits
Len Brown <len.brown@intel.com>
tools/power x86_energy_perf_policy: Enhance HWP enable
Kaushlendra Kumar <kaushlendra.kumar@intel.com>
tools/cpupower: Fix incorrect size in cpuidle_state_disable()
Armin Wolf <W_Armin@gmx.de>
hwmon: (dell-smm) Add support for Dell OptiPlex 7040
Jiri Olsa <jolsa@kernel.org>
uprobe: Do not emulate/sstep original instruction when ip is changed
Daniel Lezcano <daniel.lezcano@linaro.org>
clocksource/drivers/vf-pit: Replace raw_readl/writel to readl/writel
Svyatoslav Ryhel <clamor95@gmail.com>
video: backlight: lp855x_bl: Set correct EPROM start for LP8556
Amirreza Zarrabi <amirreza.zarrabi@oss.qualcomm.com>
tee: allow a driver to allocate a tee_device without a pool
Hans de Goede <hansg@kernel.org>
ACPICA: dispatcher: Use acpi_ds_clear_operands() in acpi_ds_call_control_method()
Sarthak Garg <quic_sartgarg@quicinc.com>
mmc: sdhci-msm: Enable tuning for SDR50 mode for SD card
Christian Bruel <christian.bruel@foss.st.com>
irqchip/gic-v2m: Handle Multiple MSI base IRQ Alignment
Kees Cook <kees@kernel.org>
arc: Fix __fls() const-foldability via __builtin_clzl()
Dennis Beier <nanovim@gmail.com>
cpufreq/longhaul: handle NULL policy in longhaul_exit
Ricardo B. Marlière <rbm@suse.com>
selftests/bpf: Fix bpf_prog_detach2 usage in test_lirc_mode2
Mario Limonciello (AMD) <superm1@kernel.org>
ACPI: video: force native for Lenovo 82K8
Jiayi Li <lijiayi@kylinos.cn>
memstick: Add timeout to prevent indefinite waiting
Biju Das <biju.das.jz@bp.renesas.com>
mmc: host: renesas_sdhi: Fix the actual clock
Thomas Weißschuh <thomas.weissschuh@linutronix.de>
bpf: Don't use %pK through printk
Thomas Weißschuh <thomas.weissschuh@linutronix.de>
spi: loopback-test: Don't use %pK through printk
Jens Reidel <adrian@mainlining.org>
soc: qcom: smem: Fix endian-unaware access of num_entries
Owen Gu <guhuinan@xiaomi.com>
usb: gadget: f_fs: Fix epfile null pointer access after ep enable.
Artem Shimko <a.shimko.dev@gmail.com>
serial: 8250_dw: handle reset control deassert error
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
serial: 8250_dw: Use devm_add_action_or_reset()
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
serial: 8250_dw: Use devm_clk_get_optional() to get the input clock
Celeste Liu <uwu@coelacanthus.name>
can: gs_usb: increase max interface to U8_MAX
Maarten Lankhorst <dev@lankhorst.se>
devcoredump: Fix circular locking dependency with devcd->mutex.
Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
net: ravb: Enforce descriptor type ordering
Babu Moger <babu.moger@amd.com>
x86/resctrl: Fix miscount of bandwidth event when reactivating previously unavailable RMID
Gokul Sivakumar <gokulkumar.sivakumar@infineon.com>
wifi: brcmfmac: fix crash while sending Action Frames in standalone AP Mode
Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
net: phy: dp83867: Disable EEE support as not implemented
Alexey Klimov <alexey.klimov@linaro.org>
regmap: slimbus: fix bus_context pointer in regmap init calls
Tomeu Vizoso <tomeu@tomeuvizoso.net>
drm/etnaviv: fix flush sequence logic
Lizhi Xu <lizhi.xu@windriver.com>
usbnet: Prevents free active kevent
Loic Poulain <loic.poulain@oss.qualcomm.com>
wifi: ath10k: Fix memory leak on unsupported WMI command
Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
ASoC: qdsp6: q6asm: do not sleep while atomic
Miaoqian Lin <linmq006@gmail.com>
fbdev: valkyriefb: Fix reference count leak in valkyriefb_init
Florian Fuchs <fuchsfl@gmail.com>
fbdev: pvr2fb: Fix leftover reference to ONCHIP_NR_DMA_CHANNELS
Junjie Cao <junjie.cao@intel.com>
fbdev: bitblit: bound-check glyph index in bit_putcs*
Yuhao Jiang <danisjiang@gmail.com>
ACPI: video: Fix use-after-free in acpi_video_switch_brightness()
Daniel Palmer <daniel@0x0f.com>
fbdev: atyfb: Check if pll_ops->init_pll failed
Miaoqian Lin <linmq006@gmail.com>
net: usb: asix_devices: Check return value of usbnet_get_endpoints
Filipe Manana <fdmanana@suse.com>
btrfs: use smp_mb__after_atomic() when forcing COW in create_pending_snapshot()
David Kaplan <david.kaplan@amd.com>
x86/bugs: Fix reporting of LFENCE retpoline
Xiang Mei <xmei5@asu.edu>
net/sched: sch_qfq: Fix null-deref in agg_dequeue
-------------
Diffstat:
Makefile | 4 +-
arch/arc/include/asm/bitops.h | 2 +
arch/mips/boot/dts/lantiq/danube.dtsi | 6 +
arch/mips/lantiq/xway/sysctrl.c | 2 +-
arch/mips/mti-malta/malta-init.c | 20 +--
arch/powerpc/kernel/eeh_driver.c | 2 +-
arch/sparc/include/asm/elf_64.h | 1 +
arch/sparc/kernel/module.c | 1 +
arch/x86/entry/vsyscall/vsyscall_64.c | 17 ++-
arch/x86/kernel/cpu/bugs.c | 5 +-
arch/x86/kernel/cpu/resctrl/monitor.c | 10 +-
drivers/acpi/acpi_video.c | 4 +-
drivers/acpi/acpica/dsmethod.c | 10 +-
drivers/acpi/property.c | 24 +++-
drivers/acpi/video_detect.c | 8 ++
drivers/ata/libata-scsi.c | 8 ++
drivers/base/devcoredump.c | 138 +++++++++++++--------
drivers/base/regmap/regmap-slimbus.c | 6 +-
drivers/bluetooth/btusb.c | 13 +-
drivers/bluetooth/hci_bcsp.c | 3 +
drivers/char/misc.c | 8 +-
drivers/clocksource/timer-vf-pit.c | 22 ++--
drivers/cpufreq/longhaul.c | 3 +
drivers/dma/dw-edma/dw-edma-core.c | 22 ++++
drivers/dma/mv_xor.c | 4 +-
drivers/dma/sh/shdma-base.c | 25 +++-
drivers/dma/sh/shdmac.c | 17 ++-
drivers/edac/altera_edac.c | 22 +++-
drivers/extcon/extcon-adc-jack.c | 2 +
drivers/firmware/arm_scmi/scmi_pm_domain.c | 13 +-
drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 8 +-
drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 9 +-
drivers/gpu/drm/etnaviv/etnaviv_buffer.c | 2 +-
drivers/gpu/drm/nouveau/nvkm/core/enum.c | 2 +-
drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c | 5 +
drivers/hid/hid-ids.h | 7 +-
drivers/hid/hid-quirks.c | 14 ++-
drivers/hwmon/dell-smm-hwmon.c | 7 ++
drivers/iio/adc/spear_adc.c | 9 +-
drivers/input/keyboard/cros_ec_keyb.c | 6 +
drivers/input/misc/ati_remote2.c | 2 +-
drivers/input/misc/cm109.c | 2 +-
drivers/input/misc/powermate.c | 2 +-
drivers/input/misc/yealink.c | 2 +-
drivers/input/tablet/acecad.c | 2 +-
drivers/input/tablet/pegasus_notetaker.c | 11 +-
drivers/irqchip/irq-gic-v2m.c | 13 +-
drivers/isdn/hardware/mISDN/hfcsusb.c | 18 ++-
drivers/media/i2c/ir-kbd-i2c.c | 6 +-
drivers/media/pci/ivtv/ivtv-alsa-pcm.c | 2 -
drivers/media/pci/ivtv/ivtv-driver.h | 3 +-
drivers/media/pci/ivtv/ivtv-fileops.c | 18 +--
drivers/media/pci/ivtv/ivtv-irq.c | 4 +-
drivers/media/rc/imon.c | 61 +++++----
drivers/media/rc/redrat3.c | 2 +-
drivers/media/tuners/xc4000.c | 8 +-
drivers/media/tuners/xc5000.c | 12 +-
drivers/memstick/core/memstick.c | 8 +-
drivers/mfd/madera-core.c | 4 +-
drivers/mfd/stmpe-i2c.c | 1 +
drivers/mfd/stmpe.c | 3 +
drivers/mmc/host/renesas_sdhi_core.c | 6 +-
drivers/mmc/host/sdhci-msm.c | 15 +++
drivers/net/can/usb/gs_usb.c | 23 ++--
drivers/net/dsa/b53/b53_common.c | 57 ++++++---
drivers/net/dsa/b53/b53_regs.h | 4 +-
drivers/net/ethernet/cadence/macb_main.c | 4 +-
drivers/net/ethernet/emulex/benet/be_main.c | 7 +-
drivers/net/ethernet/freescale/fec_main.c | 2 +
drivers/net/ethernet/intel/fm10k/fm10k_common.c | 5 +-
drivers/net/ethernet/intel/fm10k/fm10k_common.h | 2 +-
drivers/net/ethernet/intel/fm10k/fm10k_pf.c | 2 +-
drivers/net/ethernet/intel/fm10k/fm10k_vf.c | 2 +-
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c | 15 ++-
.../net/ethernet/mellanox/mlxsw/spectrum_flower.c | 6 +-
drivers/net/ethernet/qlogic/qede/qede_main.c | 2 +-
drivers/net/ethernet/renesas/ravb_main.c | 16 ++-
drivers/net/ethernet/renesas/sh_eth.c | 4 +
drivers/net/ethernet/ti/netcp_core.c | 10 +-
drivers/net/phy/dp83867.c | 6 +
drivers/net/phy/mdio_bus.c | 5 +-
drivers/net/usb/asix_devices.c | 12 +-
drivers/net/usb/qmi_wwan.c | 6 +
drivers/net/usb/usbnet.c | 2 +
drivers/net/wireless/ath/ath10k/wmi.c | 1 +
.../broadcom/brcm80211/brcmfmac/cfg80211.c | 3 +-
.../net/wireless/broadcom/brcm80211/brcmfmac/p2p.c | 21 ++--
.../net/wireless/broadcom/brcm80211/brcmfmac/p2p.h | 3 +-
drivers/pci/p2pdma.c | 2 +-
drivers/pci/quirks.c | 1 +
drivers/phy/cadence/cdns-dphy.c | 4 +-
drivers/regulator/fixed.c | 6 +-
drivers/remoteproc/qcom_q6v5.c | 5 +
drivers/s390/net/ctcm_mpc.c | 1 -
drivers/scsi/lpfc/lpfc_debugfs.h | 3 +
drivers/scsi/lpfc/lpfc_scsi.c | 14 ++-
drivers/scsi/pm8001/pm8001_ctl.c | 2 +-
drivers/scsi/sg.c | 10 +-
drivers/soc/imx/gpc.c | 2 +
drivers/soc/qcom/smem.c | 2 +-
drivers/soc/ti/knav_dma.c | 14 +--
drivers/spi/spi-loopback-test.c | 12 +-
drivers/spi/spi.c | 10 ++
drivers/target/loopback/tcm_loop.c | 3 +
drivers/tee/tee_core.c | 2 +-
drivers/tty/serial/8250/8250_dw.c | 128 +++++++++----------
drivers/uio/uio_hv_generic.c | 21 +++-
drivers/usb/gadget/function/f_fs.c | 8 +-
drivers/usb/gadget/function/f_hid.c | 4 +-
drivers/usb/gadget/function/f_ncm.c | 3 +-
drivers/usb/host/xhci-plat.c | 1 +
drivers/usb/mon/mon_bin.c | 14 ++-
drivers/video/backlight/lp855x_bl.c | 2 +-
drivers/video/fbdev/aty/atyfb_base.c | 8 +-
drivers/video/fbdev/core/bitblit.c | 33 ++++-
drivers/video/fbdev/pvr2fb.c | 2 +-
drivers/video/fbdev/valkyriefb.c | 2 +
fs/9p/v9fs.c | 9 +-
fs/btrfs/transaction.c | 2 +-
fs/ceph/locks.c | 5 +-
fs/hpfs/namei.c | 18 ++-
fs/jfs/inode.c | 8 +-
fs/jfs/jfs_txnmgr.c | 9 +-
fs/nfs/nfs4client.c | 1 +
fs/nfs/nfs4proc.c | 6 +-
fs/nfs/nfs4state.c | 3 +
fs/open.c | 10 +-
fs/orangefs/xattr.c | 12 +-
fs/proc/generic.c | 12 +-
include/linux/ata.h | 1 +
include/linux/compiler_types.h | 5 +-
include/linux/filter.h | 2 +-
include/linux/hugetlb.h | 4 +-
include/linux/mm.h | 4 +-
include/linux/shdma-base.h | 2 +-
include/linux/usb.h | 16 +--
include/net/cls_cgroup.h | 2 +-
include/net/nfc/nci_core.h | 2 +-
include/net/pkt_sched.h | 25 +++-
kernel/events/uprobes.c | 7 ++
kernel/gcov/gcc_4_7.c | 4 +-
kernel/trace/trace_events_hist.c | 6 +-
mm/hugetlb.c | 4 +-
mm/mempolicy.c | 2 +-
mm/mempool.c | 32 ++++-
mm/mprotect.c | 124 ++++++++----------
mm/page_alloc.c | 2 +-
net/8021q/vlan.c | 2 +
net/bluetooth/6lowpan.c | 103 ++++++++++-----
net/bluetooth/l2cap_core.c | 1 +
net/bluetooth/sco.c | 7 ++
net/bridge/br_forward.c | 3 +-
net/core/netpoll.c | 7 +-
net/core/page_pool.c | 6 +-
net/core/sock.c | 15 ++-
net/ipv4/nexthop.c | 6 +
net/ipv4/route.c | 5 +
net/ipv6/ah6.c | 50 +++++---
net/ipv6/raw.c | 2 +-
net/ipv6/udp.c | 2 +-
net/mac80211/rx.c | 10 +-
net/openvswitch/actions.c | 68 +---------
net/openvswitch/flow_netlink.c | 64 ++--------
net/openvswitch/flow_netlink.h | 2 -
net/rds/rds.h | 2 +-
net/sched/act_ife.c | 12 +-
net/sched/sch_api.c | 10 --
net/sched/sch_generic.c | 24 ++--
net/sched/sch_hfsc.c | 16 ---
net/sched/sch_qfq.c | 2 +-
net/sctp/associola.c | 10 +-
net/sctp/chunk.c | 2 +-
net/sctp/diag.c | 7 ++
net/sctp/endpointola.c | 6 +-
net/sctp/input.c | 5 +-
net/sctp/output.c | 2 +-
net/sctp/outqueue.c | 6 +-
net/sctp/sm_make_chunk.c | 7 +-
net/sctp/sm_sideeffect.c | 16 +--
net/sctp/sm_statefuns.c | 2 +-
net/sctp/socket.c | 12 +-
net/sctp/stream.c | 3 +-
net/sctp/stream_interleave.c | 23 ++--
net/sctp/transport.c | 15 ++-
net/sctp/ulpqueue.c | 15 ++-
net/strparser/strparser.c | 2 +-
net/tipc/core.c | 4 +-
net/tipc/core.h | 8 +-
net/tipc/discover.c | 4 +-
net/tipc/link.c | 5 +
net/tipc/link.h | 1 +
net/tipc/net.c | 17 +--
net/vmw_vsock/af_vsock.c | 40 ++++--
scripts/kconfig/mconf.c | 3 +
scripts/kconfig/nconf.c | 3 +
sound/soc/codecs/cs4271.c | 10 +-
sound/soc/codecs/max98090.c | 6 +-
sound/soc/qcom/qdsp6/q6asm.c | 2 +-
sound/usb/mixer.c | 11 +-
tools/include/linux/bitmap.h | 1 +
tools/power/cpupower/lib/cpuidle.c | 5 +-
.../x86_energy_perf_policy.c | 26 ++--
tools/testing/selftests/Makefile | 2 +-
tools/testing/selftests/bpf/test_lirc_mode2_user.c | 2 +-
tools/testing/selftests/net/fcnal-test.sh | 4 +-
tools/testing/selftests/net/psock_tpacket.c | 4 +-
206 files changed, 1385 insertions(+), 899 deletions(-)
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 5.4 019/187] devcoredump: Fix circular locking dependency with devcd->mutex.
2025-12-01 11:21 [PATCH 5.4 000/187] 5.4.302-rc1 review Greg Kroah-Hartman
@ 2025-12-01 11:22 ` Greg Kroah-Hartman
2025-12-01 18:59 ` [PATCH 5.4 000/187] 5.4.302-rc1 review Brett A C Sheffield
` (5 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Greg Kroah-Hartman @ 2025-12-01 11:22 UTC (permalink / raw)
To: stable
Cc: Greg Kroah-Hartman, patches, Mukesh Ojha, Johannes Berg,
Rafael J. Wysocki, Danilo Krummrich, linux-kernel,
Maarten Lankhorst, Matthew Brost, Mukesh Ojha, Sasha Levin
5.4-stable review patch. If anyone has any objections, please let me know.
------------------
From: Maarten Lankhorst <dev@lankhorst.se>
[ Upstream commit a91c8096590bd7801a26454789f2992094fe36da ]
The original code causes a circular locking dependency found by lockdep.
======================================================
WARNING: possible circular locking dependency detected
6.16.0-rc6-lgci-xe-xe-pw-151626v3+ #1 Tainted: G S U
------------------------------------------------------
xe_fault_inject/5091 is trying to acquire lock:
ffff888156815688 ((work_completion)(&(&devcd->del_wk)->work)){+.+.}-{0:0}, at: __flush_work+0x25d/0x660
but task is already holding lock:
ffff888156815620 (&devcd->mutex){+.+.}-{3:3}, at: dev_coredump_put+0x3f/0xa0
which lock already depends on the new lock.
the existing dependency chain (in reverse order) is:
-> #2 (&devcd->mutex){+.+.}-{3:3}:
mutex_lock_nested+0x4e/0xc0
devcd_data_write+0x27/0x90
sysfs_kf_bin_write+0x80/0xf0
kernfs_fop_write_iter+0x169/0x220
vfs_write+0x293/0x560
ksys_write+0x72/0xf0
__x64_sys_write+0x19/0x30
x64_sys_call+0x2bf/0x2660
do_syscall_64+0x93/0xb60
entry_SYSCALL_64_after_hwframe+0x76/0x7e
-> #1 (kn->active#236){++++}-{0:0}:
kernfs_drain+0x1e2/0x200
__kernfs_remove+0xae/0x400
kernfs_remove_by_name_ns+0x5d/0xc0
remove_files+0x54/0x70
sysfs_remove_group+0x3d/0xa0
sysfs_remove_groups+0x2e/0x60
device_remove_attrs+0xc7/0x100
device_del+0x15d/0x3b0
devcd_del+0x19/0x30
process_one_work+0x22b/0x6f0
worker_thread+0x1e8/0x3d0
kthread+0x11c/0x250
ret_from_fork+0x26c/0x2e0
ret_from_fork_asm+0x1a/0x30
-> #0 ((work_completion)(&(&devcd->del_wk)->work)){+.+.}-{0:0}:
__lock_acquire+0x1661/0x2860
lock_acquire+0xc4/0x2f0
__flush_work+0x27a/0x660
flush_delayed_work+0x5d/0xa0
dev_coredump_put+0x63/0xa0
xe_driver_devcoredump_fini+0x12/0x20 [xe]
devm_action_release+0x12/0x30
release_nodes+0x3a/0x120
devres_release_all+0x8a/0xd0
device_unbind_cleanup+0x12/0x80
device_release_driver_internal+0x23a/0x280
device_driver_detach+0x14/0x20
unbind_store+0xaf/0xc0
drv_attr_store+0x21/0x50
sysfs_kf_write+0x4a/0x80
kernfs_fop_write_iter+0x169/0x220
vfs_write+0x293/0x560
ksys_write+0x72/0xf0
__x64_sys_write+0x19/0x30
x64_sys_call+0x2bf/0x2660
do_syscall_64+0x93/0xb60
entry_SYSCALL_64_after_hwframe+0x76/0x7e
other info that might help us debug this:
Chain exists of: (work_completion)(&(&devcd->del_wk)->work) --> kn->active#236 --> &devcd->mutex
Possible unsafe locking scenario:
CPU0 CPU1
---- ----
lock(&devcd->mutex);
lock(kn->active#236);
lock(&devcd->mutex);
lock((work_completion)(&(&devcd->del_wk)->work));
*** DEADLOCK ***
5 locks held by xe_fault_inject/5091:
#0: ffff8881129f9488 (sb_writers#5){.+.+}-{0:0}, at: ksys_write+0x72/0xf0
#1: ffff88810c755078 (&of->mutex#2){+.+.}-{3:3}, at: kernfs_fop_write_iter+0x123/0x220
#2: ffff8881054811a0 (&dev->mutex){....}-{3:3}, at: device_release_driver_internal+0x55/0x280
#3: ffff888156815620 (&devcd->mutex){+.+.}-{3:3}, at: dev_coredump_put+0x3f/0xa0
#4: ffffffff8359e020 (rcu_read_lock){....}-{1:2}, at: __flush_work+0x72/0x660
stack backtrace:
CPU: 14 UID: 0 PID: 5091 Comm: xe_fault_inject Tainted: G S U 6.16.0-rc6-lgci-xe-xe-pw-151626v3+ #1 PREEMPT_{RT,(lazy)}
Tainted: [S]=CPU_OUT_OF_SPEC, [U]=USER
Hardware name: Micro-Star International Co., Ltd. MS-7D25/PRO Z690-A DDR4(MS-7D25), BIOS 1.10 12/13/2021
Call Trace:
<TASK>
dump_stack_lvl+0x91/0xf0
dump_stack+0x10/0x20
print_circular_bug+0x285/0x360
check_noncircular+0x135/0x150
? register_lock_class+0x48/0x4a0
__lock_acquire+0x1661/0x2860
lock_acquire+0xc4/0x2f0
? __flush_work+0x25d/0x660
? mark_held_locks+0x46/0x90
? __flush_work+0x25d/0x660
__flush_work+0x27a/0x660
? __flush_work+0x25d/0x660
? trace_hardirqs_on+0x1e/0xd0
? __pfx_wq_barrier_func+0x10/0x10
flush_delayed_work+0x5d/0xa0
dev_coredump_put+0x63/0xa0
xe_driver_devcoredump_fini+0x12/0x20 [xe]
devm_action_release+0x12/0x30
release_nodes+0x3a/0x120
devres_release_all+0x8a/0xd0
device_unbind_cleanup+0x12/0x80
device_release_driver_internal+0x23a/0x280
? bus_find_device+0xa8/0xe0
device_driver_detach+0x14/0x20
unbind_store+0xaf/0xc0
drv_attr_store+0x21/0x50
sysfs_kf_write+0x4a/0x80
kernfs_fop_write_iter+0x169/0x220
vfs_write+0x293/0x560
ksys_write+0x72/0xf0
__x64_sys_write+0x19/0x30
x64_sys_call+0x2bf/0x2660
do_syscall_64+0x93/0xb60
? __f_unlock_pos+0x15/0x20
? __x64_sys_getdents64+0x9b/0x130
? __pfx_filldir64+0x10/0x10
? do_syscall_64+0x1a2/0xb60
? clear_bhb_loop+0x30/0x80
? clear_bhb_loop+0x30/0x80
entry_SYSCALL_64_after_hwframe+0x76/0x7e
RIP: 0033:0x76e292edd574
Code: c7 00 16 00 00 00 b8 ff ff ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 f3 0f 1e fa 80 3d d5 ea 0e 00 00 74 13 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 54 c3 0f 1f 00 55 48 89 e5 48 83 ec 20 48 89
RSP: 002b:00007fffe247a828 EFLAGS: 00000202 ORIG_RAX: 0000000000000001
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 000076e292edd574
RDX: 000000000000000c RSI: 00006267f6306063 RDI: 000000000000000b
RBP: 000000000000000c R08: 000076e292fc4b20 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000202 R12: 00006267f6306063
R13: 000000000000000b R14: 00006267e6859c00 R15: 000076e29322a000
</TASK>
xe 0000:03:00.0: [drm] Xe device coredump has been deleted.
Fixes: 01daccf74832 ("devcoredump : Serialize devcd_del work")
Cc: Mukesh Ojha <quic_mojha@quicinc.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Johannes Berg <johannes@sipsolutions.net>
Cc: Rafael J. Wysocki <rafael@kernel.org>
Cc: Danilo Krummrich <dakr@kernel.org>
Cc: linux-kernel@vger.kernel.org
Cc: stable@vger.kernel.org # v6.1+
Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>
Cc: Matthew Brost <matthew.brost@intel.com>
Acked-by: Mukesh Ojha <mukesh.ojha@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250723142416.1020423-1-dev@lankhorst.se
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
[ replaced disable_delayed_work_sync() with cancel_delayed_work_sync() ]
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
drivers/base/devcoredump.c | 138 +++++++++++++++++++++++++++------------------
1 file changed, 84 insertions(+), 54 deletions(-)
--- a/drivers/base/devcoredump.c
+++ b/drivers/base/devcoredump.c
@@ -30,50 +30,46 @@ struct devcd_entry {
void *data;
size_t datalen;
/*
- * Here, mutex is required to serialize the calls to del_wk work between
- * user/kernel space which happens when devcd is added with device_add()
- * and that sends uevent to user space. User space reads the uevents,
- * and calls to devcd_data_write() which try to modify the work which is
- * not even initialized/queued from devcoredump.
+ * There are 2 races for which mutex is required.
*
+ * The first race is between device creation and userspace writing to
+ * schedule immediately destruction.
*
+ * This race is handled by arming the timer before device creation, but
+ * when device creation fails the timer still exists.
*
- * cpu0(X) cpu1(Y)
+ * To solve this, hold the mutex during device_add(), and set
+ * init_completed on success before releasing the mutex.
*
- * dev_coredump() uevent sent to user space
- * device_add() ======================> user space process Y reads the
- * uevents writes to devcd fd
- * which results into writes to
+ * That way the timer will never fire until device_add() is called,
+ * it will do nothing if init_completed is not set. The timer is also
+ * cancelled in that case.
*
- * devcd_data_write()
- * mod_delayed_work()
- * try_to_grab_pending()
- * del_timer()
- * debug_assert_init()
- * INIT_DELAYED_WORK()
- * schedule_delayed_work()
- *
- *
- * Also, mutex alone would not be enough to avoid scheduling of
- * del_wk work after it get flush from a call to devcd_free()
- * mentioned as below.
- *
- * disabled_store()
- * devcd_free()
- * mutex_lock() devcd_data_write()
- * flush_delayed_work()
- * mutex_unlock()
- * mutex_lock()
- * mod_delayed_work()
- * mutex_unlock()
- * So, delete_work flag is required.
+ * The second race involves multiple parallel invocations of devcd_free(),
+ * add a deleted flag so only 1 can call the destructor.
*/
struct mutex mutex;
- bool delete_work;
+ bool init_completed, deleted;
struct module *owner;
ssize_t (*read)(char *buffer, loff_t offset, size_t count,
void *data, size_t datalen);
void (*free)(void *data);
+ /*
+ * If nothing interferes and device_add() was returns success,
+ * del_wk will destroy the device after the timer fires.
+ *
+ * Multiple userspace processes can interfere in the working of the timer:
+ * - Writing to the coredump will reschedule the timer to run immediately,
+ * if still armed.
+ *
+ * This is handled by using "if (cancel_delayed_work()) {
+ * schedule_delayed_work() }", to prevent re-arming after having
+ * been previously fired.
+ * - Writing to /sys/class/devcoredump/disabled will destroy the
+ * coredump synchronously.
+ * This is handled by using disable_delayed_work_sync(), and then
+ * checking if deleted flag is set with &devcd->mutex held.
+ */
struct delayed_work del_wk;
struct device *failing_dev;
};
@@ -102,14 +98,27 @@ static void devcd_dev_release(struct dev
kfree(devcd);
}
+static void __devcd_del(struct devcd_entry *devcd)
+{
+ devcd->deleted = true;
+ device_del(&devcd->devcd_dev);
+ put_device(&devcd->devcd_dev);
+}
+
static void devcd_del(struct work_struct *wk)
{
struct devcd_entry *devcd;
+ bool init_completed;
devcd = container_of(wk, struct devcd_entry, del_wk.work);
- device_del(&devcd->devcd_dev);
- put_device(&devcd->devcd_dev);
+ /* devcd->mutex serializes against dev_coredumpm_timeout */
+ mutex_lock(&devcd->mutex);
+ init_completed = devcd->init_completed;
+ mutex_unlock(&devcd->mutex);
+
+ if (init_completed)
+ __devcd_del(devcd);
}
static ssize_t devcd_data_read(struct file *filp, struct kobject *kobj,
@@ -129,12 +138,12 @@ static ssize_t devcd_data_write(struct f
struct device *dev = kobj_to_dev(kobj);
struct devcd_entry *devcd = dev_to_devcd(dev);
- mutex_lock(&devcd->mutex);
- if (!devcd->delete_work) {
- devcd->delete_work = true;
- mod_delayed_work(system_wq, &devcd->del_wk, 0);
- }
- mutex_unlock(&devcd->mutex);
+ /*
+ * Although it's tempting to use mod_delayed work here,
+ * that will cause a reschedule if the timer already fired.
+ */
+ if (cancel_delayed_work(&devcd->del_wk))
+ schedule_delayed_work(&devcd->del_wk, 0);
return count;
}
@@ -162,11 +171,21 @@ static int devcd_free(struct device *dev
{
struct devcd_entry *devcd = dev_to_devcd(dev);
+ /*
+ * To prevent a race with devcd_data_write(), cancel work and
+ * complete manually instead.
+ *
+ * We cannot rely on the return value of
+ * cancel_delayed_work_sync() here, because it might be in the
+ * middle of a cancel_delayed_work + schedule_delayed_work pair.
+ *
+ * devcd->mutex here guards against multiple parallel invocations
+ * of devcd_free().
+ */
+ cancel_delayed_work_sync(&devcd->del_wk);
mutex_lock(&devcd->mutex);
- if (!devcd->delete_work)
- devcd->delete_work = true;
-
- flush_delayed_work(&devcd->del_wk);
+ if (!devcd->deleted)
+ __devcd_del(devcd);
mutex_unlock(&devcd->mutex);
return 0;
}
@@ -190,12 +209,10 @@ static ssize_t disabled_show(struct clas
* put_device() <- last reference
* error = fn(dev, data) devcd_dev_release()
* devcd_free(dev, data) kfree(devcd)
- * mutex_lock(&devcd->mutex);
*
*
- * In the above diagram, It looks like disabled_store() would be racing with parallely
- * running devcd_del() and result in memory abort while acquiring devcd->mutex which
- * is called after kfree of devcd memory after dropping its last reference with
+ * In the above diagram, it looks like disabled_store() would be racing with parallelly
+ * running devcd_del() and result in memory abort after dropping its last reference with
* put_device(). However, this will not happens as fn(dev, data) runs
* with its own reference to device via klist_node so it is not its last reference.
* so, above situation would not occur.
@@ -357,7 +374,7 @@ void dev_coredumpm(struct device *dev, s
devcd->read = read;
devcd->free = free;
devcd->failing_dev = get_device(dev);
- devcd->delete_work = false;
+ devcd->deleted = false;
mutex_init(&devcd->mutex);
device_initialize(&devcd->devcd_dev);
@@ -366,8 +383,14 @@ void dev_coredumpm(struct device *dev, s
atomic_inc_return(&devcd_count));
devcd->devcd_dev.class = &devcd_class;
- mutex_lock(&devcd->mutex);
dev_set_uevent_suppress(&devcd->devcd_dev, true);
+
+ /* devcd->mutex prevents devcd_del() completing until init finishes */
+ mutex_lock(&devcd->mutex);
+ devcd->init_completed = false;
+ INIT_DELAYED_WORK(&devcd->del_wk, devcd_del);
+ schedule_delayed_work(&devcd->del_wk, DEVCD_TIMEOUT);
+
if (device_add(&devcd->devcd_dev))
goto put_device;
@@ -381,13 +404,20 @@ void dev_coredumpm(struct device *dev, s
dev_set_uevent_suppress(&devcd->devcd_dev, false);
kobject_uevent(&devcd->devcd_dev.kobj, KOBJ_ADD);
- INIT_DELAYED_WORK(&devcd->del_wk, devcd_del);
- schedule_delayed_work(&devcd->del_wk, DEVCD_TIMEOUT);
+
+ /*
+ * Safe to run devcd_del() now that we are done with devcd_dev.
+ * Alternatively we could have taken a ref on devcd_dev before
+ * dropping the lock.
+ */
+ devcd->init_completed = true;
mutex_unlock(&devcd->mutex);
return;
put_device:
- put_device(&devcd->devcd_dev);
mutex_unlock(&devcd->mutex);
+ cancel_delayed_work_sync(&devcd->del_wk);
+ put_device(&devcd->devcd_dev);
+
put_module:
module_put(owner);
free:
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 5.4 000/187] 5.4.302-rc1 review
2025-12-01 11:21 [PATCH 5.4 000/187] 5.4.302-rc1 review Greg Kroah-Hartman
2025-12-01 11:22 ` [PATCH 5.4 019/187] devcoredump: Fix circular locking dependency with devcd->mutex Greg Kroah-Hartman
@ 2025-12-01 18:59 ` Brett A C Sheffield
2025-12-01 19:22 ` Florian Fainelli
` (4 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Brett A C Sheffield @ 2025-12-01 18:59 UTC (permalink / raw)
To: gregkh
Cc: stable, patches, linux-kernel, torvalds, akpm, linux, shuah,
patches, lkft-triage, pavel, jonathanh, f.fainelli,
sudipm.mukherjee, rwarsow, conor, hargar, broonie, achill, sr,
Brett A C Sheffield
# Librecast Test Results
Build and boots without error. No network tests run.
020/020 [ OK ] liblcrq
010/010 [ OK ] libmld
120/120 [ OK ] liblibrecast
CPU/kernel: Linux auntie 5.4.302-rc1-00188-g9ffc25b9d59d #2 SMP Mon Dec 1 18:49:20 -00 2025 x86_64 AMD Ryzen 9 9950X 16-Core Processor AuthenticAMD GNU/Linux
Tested-by: Brett A C Sheffield <bacs@librecast.net>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 5.4 000/187] 5.4.302-rc1 review
2025-12-01 11:21 [PATCH 5.4 000/187] 5.4.302-rc1 review Greg Kroah-Hartman
2025-12-01 11:22 ` [PATCH 5.4 019/187] devcoredump: Fix circular locking dependency with devcd->mutex Greg Kroah-Hartman
2025-12-01 18:59 ` [PATCH 5.4 000/187] 5.4.302-rc1 review Brett A C Sheffield
@ 2025-12-01 19:22 ` Florian Fainelli
2025-12-01 22:06 ` Slade Watkins
` (3 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Florian Fainelli @ 2025-12-01 19:22 UTC (permalink / raw)
To: Greg Kroah-Hartman, stable
Cc: patches, linux-kernel, torvalds, akpm, linux, shuah, patches,
lkft-triage, pavel, jonathanh, sudipm.mukherjee, rwarsow, conor,
hargar, broonie, achill, sr
On 12/1/25 03:21, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 5.4.302 release.
> There are 187 patches in this series, all will be posted as a response
> to this one. If anyone has any issues with these being applied, please
> let me know.
>
> Responses should be made by Wed, 03 Dec 2025 11:22:11 +0000.
> Anything received after that time might be too late.
>
> The whole patch series can be found in one patch at:
> https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.4.302-rc1.gz
> or in the git tree and branch at:
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.4.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h
On ARCH_BRCMSTB using 32-bit and 64-bit ARM kernels, build tested on
BMIPS_GENERIC:
Tested-by: Florian Fainelli <florian.fainelli@broadcom.com>
--
Florian
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 5.4 000/187] 5.4.302-rc1 review
2025-12-01 11:21 [PATCH 5.4 000/187] 5.4.302-rc1 review Greg Kroah-Hartman
` (2 preceding siblings ...)
2025-12-01 19:22 ` Florian Fainelli
@ 2025-12-01 22:06 ` Slade Watkins
2025-12-01 23:57 ` Shuah Khan
` (2 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Slade Watkins @ 2025-12-01 22:06 UTC (permalink / raw)
To: Greg Kroah-Hartman
Cc: stable, patches, linux-kernel, torvalds, akpm, linux, shuah,
patches, lkft-triage, pavel, jonathanh, f.fainelli,
sudipm.mukherjee, rwarsow, conor, hargar, broonie, achill
On Mon, Dec 01, 2025 at 12:21:48PM +0100, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 5.4.302 release.
> There are 187 patches in this series, all will be posted as a response
> to this one. If anyone has any issues with these being applied, please
> let me know.
>
> Responses should be made by Wed, 03 Dec 2025 11:22:11 +0000.
> Anything received after that time might be too late.
5.4.302-rc1 built and run on x86_64 test system. No errors or regressions.
Tested-by: Slade Watkins <sr@sladewatkins.com>
Thanks,
Slade
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 5.4 000/187] 5.4.302-rc1 review
2025-12-01 11:21 [PATCH 5.4 000/187] 5.4.302-rc1 review Greg Kroah-Hartman
` (3 preceding siblings ...)
2025-12-01 22:06 ` Slade Watkins
@ 2025-12-01 23:57 ` Shuah Khan
2025-12-02 3:57 ` [External] : " ALOK TIWARI
2025-12-02 6:24 ` Jon Hunter
6 siblings, 0 replies; 10+ messages in thread
From: Shuah Khan @ 2025-12-01 23:57 UTC (permalink / raw)
To: Greg Kroah-Hartman, stable
Cc: patches, linux-kernel, torvalds, akpm, linux, shuah, patches,
lkft-triage, pavel, jonathanh, f.fainelli, sudipm.mukherjee,
rwarsow, conor, hargar, broonie, achill, sr, Shuah Khan
On 12/1/25 04:21, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 5.4.302 release.
> There are 187 patches in this series, all will be posted as a response
> to this one. If anyone has any issues with these being applied, please
> let me know.
>
> Responses should be made by Wed, 03 Dec 2025 11:22:11 +0000.
> Anything received after that time might be too late.
>
> The whole patch series can be found in one patch at:
> https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.4.302-rc1.gz
> or in the git tree and branch at:
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.4.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h
>
Compiled and booted on my test system. No dmesg regressions.
Tested-by: Shuah Khan <skhan@linuxfoundation.org>
thanks,
-- Shuah
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [External] : [PATCH 5.4 000/187] 5.4.302-rc1 review
2025-12-01 11:21 [PATCH 5.4 000/187] 5.4.302-rc1 review Greg Kroah-Hartman
` (4 preceding siblings ...)
2025-12-01 23:57 ` Shuah Khan
@ 2025-12-02 3:57 ` ALOK TIWARI
2025-12-02 9:29 ` Greg Kroah-Hartman
2025-12-02 6:24 ` Jon Hunter
6 siblings, 1 reply; 10+ messages in thread
From: ALOK TIWARI @ 2025-12-02 3:57 UTC (permalink / raw)
To: Greg Kroah-Hartman, stable
Cc: patches, linux-kernel, torvalds, akpm, linux, shuah, patches,
lkft-triage, pavel, jonathanh, f.fainelli, sudipm.mukherjee,
rwarsow, conor, hargar, broonie, achill, sr
On 12/1/2025 4:51 PM, Greg Kroah-Hartman wrote:
> Ian Rogers<irogers@google.com>
> tools bitmap: Add missing asm-generic/bitsperlong.h include
f38ce0209ab455 "tools bitmap: Add missing asm-generic/bitsperlong.h include"
We are getting a build failure due to this commit.
----
CC util/bitmap.o
CC util/hweight.o
BUILDSTDERR: In file included from
/builddir/build/BUILD/kernel-5.4.302/linux-5.4.302-master.20251201.el8.v1/tools/include/linux/bitmap.h:6,
BUILDSTDERR: from ../lib/bitmap.c:6:
BUILDSTDERR:
/builddir/build/BUILD/kernel-5.4.302/linux-5.4.302-master.20251201.el8.v1/tools/include/asm-generic/bitsperlong.h:14:2:
error: #error Inconsistent word size. Check asm/bitsperlong.h
BUILDSTDERR: 14 | #error Inconsistent word size. Check asm/bitsperlong.h
BUILDSTDERR: | ^~~~~
CC util/smt.o
CC util/strbuf.o
CC util/string.o
CC util/strlist.o
CC util/strfilter.o
CC util/top.o
CC util/usage.o
CC util/dso.o
BUILDSTDERR: make[4]: *** [util/Build:227: util/bitmap.o] Error 1
BUILDSTDERR: make[4]: *** Waiting for unfinished jobs....
LD tests/perf-in.o
LD arch/x86/util/perf-in.o
LD arch/x86/perf-in.o
LD arch/perf-in.o
LD bench/perf-in.o
LD ui/perf-in.o
BUILDSTDERR: make[3]: ***
[/builddir/build/BUILD/kernel-5.4.302/linux-5.4.302-master.20251201.el8.v1/tools/build/Makefile.build:143:
util] Error 2
BUILDSTDERR: make[3]: *** Waiting for unfinished jobs....
BUILDSTDERR: make[2]: *** [Makefile.perf:593: perf-in.o] Error 2
BUILDSTDERR: make[1]: *** [Makefile.perf:217: sub-make] Error 2
BUILDSTDERR: make: *** [Makefile:70: all] Error 2
BUILDSTDERR: error: Bad exit status from /var/tmp/rpm-tmp.blrvNZ (%build)
Thanks,
Alok
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 5.4 000/187] 5.4.302-rc1 review
2025-12-01 11:21 [PATCH 5.4 000/187] 5.4.302-rc1 review Greg Kroah-Hartman
` (5 preceding siblings ...)
2025-12-02 3:57 ` [External] : " ALOK TIWARI
@ 2025-12-02 6:24 ` Jon Hunter
2025-12-02 9:21 ` Greg Kroah-Hartman
6 siblings, 1 reply; 10+ messages in thread
From: Jon Hunter @ 2025-12-02 6:24 UTC (permalink / raw)
To: Greg Kroah-Hartman, stable
Cc: patches, linux-kernel, torvalds, akpm, linux, shuah, patches,
lkft-triage, pavel, f.fainelli, sudipm.mukherjee, rwarsow, conor,
hargar, broonie, achill, sr, linux-tegra@vger.kernel.org
Hi Greg,
On 01/12/2025 11:21, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 5.4.302 release.
> There are 187 patches in this series, all will be posted as a response
> to this one. If anyone has any issues with these being applied, please
> let me know.
>
> Responses should be made by Wed, 03 Dec 2025 11:22:11 +0000.
> Anything received after that time might be too late.
>
> The whole patch series can be found in one patch at:
> https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.4.302-rc1.gz
> or in the git tree and branch at:
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.4.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h
...
> Fabio M. De Francesco <fabio.maria.de.francesco@linux.intel.com>
> mm/mempool: replace kmap_atomic() with kmap_local_page()
The above commit is causing the following build errors ...
kernel/mm/mempool.c: In function 'check_element':
kernel/mm/mempool.c:69:17: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
69 | for (int i = 0; i < (1 << order); i++) {
| ^~~
kernel/mm/mempool.c:69:17: note: use option '-std=c99', '-std=gnu99', '-std=c11' or '-std=gnu11' to compile your code
kernel/mm/mempool.c:71:38: error: implicit declaration of function 'kmap_local_page'; did you mean 'kmap_to_page'? [-Werror=implicit-function-declaration]
71 | void *addr = kmap_local_page(page + i);
| ^~~~~~~~~~~~~~~
| kmap_to_page
kernel/mm/mempool.c:71:38: warning: initialization of 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
kernel/mm/mempool.c:74:25: error: implicit declaration of function 'kunmap_local' [-Werror=implicit-function-declaration]
74 | kunmap_local(addr);
| ^~~~~~~~~~~~
kernel/mm/mempool.c: In function 'poison_element':
kernel/mm/mempool.c:103:17: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
103 | for (int i = 0; i < (1 << order); i++) {
| ^~~
kernel/mm/mempool.c:105:38: warning: initialization of 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
105 | void *addr = kmap_local_page(page + i);
| ^~~~~~~~~~~~~~~
I am seeing this with ARM builds using the tegra_defconfig.
Jon
--
nvpublic
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 5.4 000/187] 5.4.302-rc1 review
2025-12-02 6:24 ` Jon Hunter
@ 2025-12-02 9:21 ` Greg Kroah-Hartman
0 siblings, 0 replies; 10+ messages in thread
From: Greg Kroah-Hartman @ 2025-12-02 9:21 UTC (permalink / raw)
To: Jon Hunter
Cc: stable, patches, linux-kernel, torvalds, akpm, linux, shuah,
patches, lkft-triage, pavel, f.fainelli, sudipm.mukherjee,
rwarsow, conor, hargar, broonie, achill, sr,
linux-tegra@vger.kernel.org
On Tue, Dec 02, 2025 at 06:24:08AM +0000, Jon Hunter wrote:
> Hi Greg,
>
> On 01/12/2025 11:21, Greg Kroah-Hartman wrote:
> > This is the start of the stable review cycle for the 5.4.302 release.
> > There are 187 patches in this series, all will be posted as a response
> > to this one. If anyone has any issues with these being applied, please
> > let me know.
> >
> > Responses should be made by Wed, 03 Dec 2025 11:22:11 +0000.
> > Anything received after that time might be too late.
> >
> > The whole patch series can be found in one patch at:
> > https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.4.302-rc1.gz
> > or in the git tree and branch at:
> > git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.4.y
> > and the diffstat can be found below.
> >
> > thanks,
> >
> > greg k-h
>
> ...
>
> > Fabio M. De Francesco <fabio.maria.de.francesco@linux.intel.com>
> > mm/mempool: replace kmap_atomic() with kmap_local_page()
>
>
> The above commit is causing the following build errors ...
>
> kernel/mm/mempool.c: In function 'check_element':
> kernel/mm/mempool.c:69:17: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
> 69 | for (int i = 0; i < (1 << order); i++) {
> | ^~~
> kernel/mm/mempool.c:69:17: note: use option '-std=c99', '-std=gnu99', '-std=c11' or '-std=gnu11' to compile your code
> kernel/mm/mempool.c:71:38: error: implicit declaration of function 'kmap_local_page'; did you mean 'kmap_to_page'? [-Werror=implicit-function-declaration]
> 71 | void *addr = kmap_local_page(page + i);
> | ^~~~~~~~~~~~~~~
> | kmap_to_page
> kernel/mm/mempool.c:71:38: warning: initialization of 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
> kernel/mm/mempool.c:74:25: error: implicit declaration of function 'kunmap_local' [-Werror=implicit-function-declaration]
> 74 | kunmap_local(addr);
> | ^~~~~~~~~~~~
> kernel/mm/mempool.c: In function 'poison_element':
> kernel/mm/mempool.c:103:17: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
> 103 | for (int i = 0; i < (1 << order); i++) {
> | ^~~
> kernel/mm/mempool.c:105:38: warning: initialization of 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
> 105 | void *addr = kmap_local_page(page + i);
> | ^~~~~~~~~~~~~~~
>
>
> I am seeing this with ARM builds using the tegra_defconfig.
Ah, odd I missed this, looks like it needs HIGHMEM enabled. I'll go
drop 2 of these patches that cause this and will push out a -rc2, thanks
for testing!
greg k-h
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [External] : [PATCH 5.4 000/187] 5.4.302-rc1 review
2025-12-02 3:57 ` [External] : " ALOK TIWARI
@ 2025-12-02 9:29 ` Greg Kroah-Hartman
0 siblings, 0 replies; 10+ messages in thread
From: Greg Kroah-Hartman @ 2025-12-02 9:29 UTC (permalink / raw)
To: ALOK TIWARI
Cc: stable, patches, linux-kernel, torvalds, akpm, linux, shuah,
patches, lkft-triage, pavel, jonathanh, f.fainelli,
sudipm.mukherjee, rwarsow, conor, hargar, broonie, achill, sr
On Tue, Dec 02, 2025 at 09:27:10AM +0530, ALOK TIWARI wrote:
>
>
> On 12/1/2025 4:51 PM, Greg Kroah-Hartman wrote:
> > Ian Rogers<irogers@google.com>
> > tools bitmap: Add missing asm-generic/bitsperlong.h include
>
> f38ce0209ab455 "tools bitmap: Add missing asm-generic/bitsperlong.h include"
>
> We are getting a build failure due to this commit.
>
> ----
> CC util/bitmap.o
> CC util/hweight.o
> BUILDSTDERR: In file included from /builddir/build/BUILD/kernel-5.4.302/linux-5.4.302-master.20251201.el8.v1/tools/include/linux/bitmap.h:6,
> BUILDSTDERR: from ../lib/bitmap.c:6:
> BUILDSTDERR: /builddir/build/BUILD/kernel-5.4.302/linux-5.4.302-master.20251201.el8.v1/tools/include/asm-generic/bitsperlong.h:14:2:
> error: #error Inconsistent word size. Check asm/bitsperlong.h
> BUILDSTDERR: 14 | #error Inconsistent word size. Check asm/bitsperlong.h
> BUILDSTDERR: | ^~~~~
> CC util/smt.o
> CC util/strbuf.o
> CC util/string.o
> CC util/strlist.o
> CC util/strfilter.o
> CC util/top.o
> CC util/usage.o
> CC util/dso.o
> BUILDSTDERR: make[4]: *** [util/Build:227: util/bitmap.o] Error 1
> BUILDSTDERR: make[4]: *** Waiting for unfinished jobs....
> LD tests/perf-in.o
> LD arch/x86/util/perf-in.o
> LD arch/x86/perf-in.o
> LD arch/perf-in.o
> LD bench/perf-in.o
> LD ui/perf-in.o
> BUILDSTDERR: make[3]: *** [/builddir/build/BUILD/kernel-5.4.302/linux-5.4.302-master.20251201.el8.v1/tools/build/Makefile.build:143:
> util] Error 2
> BUILDSTDERR: make[3]: *** Waiting for unfinished jobs....
> BUILDSTDERR: make[2]: *** [Makefile.perf:593: perf-in.o] Error 2
> BUILDSTDERR: make[1]: *** [Makefile.perf:217: sub-make] Error 2
> BUILDSTDERR: make: *** [Makefile:70: all] Error 2
> BUILDSTDERR: error: Bad exit status from /var/tmp/rpm-tmp.blrvNZ (%build)
I can't get any tools/ targets to build on 5.4 and have not for quite
some time, so I'll have to trust you on this. I'll go drop this commit
and push out a -rc2.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2025-12-02 9:29 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-01 11:21 [PATCH 5.4 000/187] 5.4.302-rc1 review Greg Kroah-Hartman
2025-12-01 11:22 ` [PATCH 5.4 019/187] devcoredump: Fix circular locking dependency with devcd->mutex Greg Kroah-Hartman
2025-12-01 18:59 ` [PATCH 5.4 000/187] 5.4.302-rc1 review Brett A C Sheffield
2025-12-01 19:22 ` Florian Fainelli
2025-12-01 22:06 ` Slade Watkins
2025-12-01 23:57 ` Shuah Khan
2025-12-02 3:57 ` [External] : " ALOK TIWARI
2025-12-02 9:29 ` Greg Kroah-Hartman
2025-12-02 6:24 ` Jon Hunter
2025-12-02 9:21 ` Greg Kroah-Hartman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox