Ralph Siemsen
eebfb64c62
usb: cdns3: Fix deadlock when using NCM gadget
...
commit a1059896f2bfdcebcdc7153c3be2307ea319501f upstream.
The cdns3 driver has the same NCM deadlock as fixed in cdnsp by commit
58f2fcb3a845 ("usb: cdnsp: Fix deadlock issue during using NCM gadget").
Under PREEMPT_RT the deadlock can be readily triggered by heavy network
traffic, for example using "iperf --bidir" over NCM ethernet link.
The deadlock occurs because the threaded interrupt handler gets
preempted by a softirq, but both are protected by the same spinlock.
Prevent deadlock by disabling softirq during threaded irq handler.
Cc: stable <stable@kernel.org>
Fixes: 7733f6c32e ("usb: cdns3: Add Cadence USB3 DRD Driver")
Signed-off-by: Ralph Siemsen <ralph.siemsen@linaro.org>
Acked-by: Peter Chen <peter.chen@kernel.org>
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Link: https://lore.kernel.org/r/20250318-rfs-cdns3-deadlock-v2-1-bfd9cfcee732@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-02 07:39:27 +02:00
..
accessibility
acpi
ACPI: resource: Skip IRQ override on ASUS Vivobook 14 X1404VAP
2025-04-10 14:29:43 +02:00
amba
android
ata
ahci: add PCI ID for Marvell 88SE9215 SATA Controller
2025-05-02 07:39:10 +02:00
atm
auxdisplay
base
PM: sleep: Fix handling devices with direct_complete set on errors
2025-04-10 14:29:40 +02:00
bcma
block
nbd: don't allow reconnect after disconnect
2025-03-13 12:42:52 +01:00
bluetooth
Bluetooth: btrtl: Prevent potential NULL dereference
2025-05-02 07:39:19 +02:00
bus
cdrom
char
virtio_console: fix missing byte order handling for cols and rows
2025-05-02 07:39:26 +02:00
clk
clk: amlogic: g12a: fix mmc A peripheral clock
2025-04-10 14:29:41 +02:00
clocksource
clockevents/drivers/i8253: Fix stop sequence for timer 0
2025-04-10 14:29:34 +02:00
connector
counter
counter: stm32-lptimer-cnt: fix error handling when enabling
2025-04-10 14:29:39 +02:00
cpufreq
cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate()
2025-05-02 07:39:25 +02:00
cpuidle
crypto
crypto: ccp - Fix check for the primary ASP device
2025-05-02 07:39:16 +02:00
dax
dca
devfreq
dio
dma
dmaengine: ti: edma: fix OF node reference leaks in edma_driver
2025-03-13 12:42:59 +01:00
dma-buf
edac
EDAC/ie31200: Fix the error path order of ie31200_init()
2025-04-10 14:29:39 +02:00
eisa
extcon
firewire
firmware
firmware: imx-scu: fix OF node leak in .probe()
2025-04-10 14:29:37 +02:00
fpga
fsi
gnss
gpio
gpio: zynq: Fix wakeup source leaks on device unbind
2025-05-02 07:39:17 +02:00
gpu
drm/amd/pm: Prevent division by zero
2025-05-02 07:39:25 +02:00
greybus
hid
HID: pidff: Fix null pointer dereference in pidff_find_fields
2025-05-02 07:39:09 +02:00
hsi
HSI: ssi_protocol: Fix use after free vulnerability in ssi_protocol Driver Due to Race Condition
2025-05-02 07:39:18 +02:00
hv
Drivers: hv: vmbus: Don't release fb_mmio resource in vmbus_free_mmio()
2025-04-10 14:29:35 +02:00
hwmon
hwmon: (nct6775-core) Fix out of bounds access for NCT679{8,9}
2025-04-10 14:29:42 +02:00
hwspinlock
hwtracing
coresight: catu: Fix number of pages while using 64k pages
2025-04-10 14:29:41 +02:00
i2c
i2c: cros-ec-tunnel: defer probe if parent EC is not present
2025-05-02 07:39:20 +02:00
i3c
i3c: Add NULL pointer check in i3c_master_queue_ibi()
2025-05-02 07:39:15 +02:00
ide
idle
iio
iio: adc: ad7768-1: Fix conversion result sign
2025-05-02 07:39:25 +02:00
infiniband
RDMA/srpt: Support specifying the srpt_service_guid parameter
2025-05-02 07:39:23 +02:00
input
Input: xpad - add support for wooting two he (arm)
2025-02-01 18:18:54 +01:00
interconnect
iommu
ipack
irqchip
irqchip/sunxi-nmi: Add missing SKIP_WAKE flag
2025-02-01 18:18:52 +01:00
isdn
leds
leds: lp8860: Write full EEPROM, not only half of it
2025-03-13 12:43:06 +01:00
lightnvm
macintosh
mailbox
mcb
mcb: fix a double free bug in chameleon_parse_gdd()
2025-05-02 07:39:26 +02:00
md
dm-integrity: set ti->error on memory allocation failure
2025-05-02 07:39:16 +02:00
media
media: vim2m: print device name after registering device
2025-05-02 07:39:24 +02:00
memory
memstick
memstick: rtsx_usb_ms: Fix slab-use-after-free in rtsx_usb_ms_drv_remove
2025-04-10 14:29:39 +02:00
message
mfd
mfd: sm501: Switch to BIT() to mitigate integer overflows
2025-04-10 14:29:41 +02:00
misc
misc: pci_endpoint_test: Fix displaying 'irq_type' after 'request_irq' error
2025-05-02 07:39:25 +02:00
mmc
mmc: cqhci: Fix checking of CQHCI_HALT state
2025-05-02 07:39:22 +02:00
mtd
mtd: rawnand: Add status chack in r852_ready()
2025-05-02 07:39:16 +02:00
mux
net
net: phy: leds: fix memory leak
2025-05-02 07:39:25 +02:00
nfc
ntb
ntb: use 64-bit arithmetic for the MSI doorbell mask
2025-05-02 07:39:17 +02:00
nubus
nvdimm
nvme
nvmet-fc: Remove unused functions
2025-05-02 07:39:22 +02:00
nvmem
nvmem: core: improve range check for nvmem_cell_write()
2025-03-13 12:43:10 +01:00
of
of/irq: Fix device node refcount leakages in of_irq_init()
2025-05-02 07:39:17 +02:00
opp
oprofile
parisc
parport
parport_pc: add support for ASIX AX99100
2025-03-13 12:43:19 +01:00
pci
PCI: Fix reference leak in pci_alloc_child_bus()
2025-05-02 07:39:17 +02:00
pcmcia
perf
perf: arm_pmu: Don't disable counter in armpmu_add()
2025-05-02 07:39:09 +02:00
phy
phy: exynos5-usbdrd: fix MPLL_MULTIPLIER and SSC_REFCLKSEL masks in refclk
2025-03-13 12:43:25 +01:00
pinctrl
pinctrl: renesas: rza2: Fix missing of_node_put() call
2025-04-10 14:29:40 +02:00
platform
platform/x86: ISST: Correct command storage data length
2025-05-02 07:39:23 +02:00
pnp
power
power: supply: max77693: Fix wrong conversion of charge input threshold value
2025-04-10 14:29:41 +02:00
powercap
powercap: call put_device() on an error path in powercap_register_control_type()
2025-04-10 14:29:36 +02:00
pps
pps: Fix a use-after-free
2025-03-13 12:43:19 +01:00
ps3
ptp
ptp: Ensure info->enable callback is always set
2025-03-13 12:43:11 +01:00
pwm
pwm: mediatek: always use bus clock for PWM on MT7622
2025-05-02 07:39:18 +02:00
rapidio
rapidio: fix an API misues when rio_add_net() fails
2025-03-13 12:43:28 +01:00
ras
regulator
regulator: of: Implement the unwind path of of_regulator_match()
2025-03-13 12:42:54 +01:00
remoteproc
reset
rpmsg
rtc
rtc: pcf85063: fix potential OOB write in PCF85063 NVMEM read
2025-03-13 12:42:59 +01:00
s390
s390/cio: Fix CHPID "configure" attribute caching
2025-04-10 14:29:36 +02:00
sbus
scsi
scsi: iscsi: Fix missing scsi_host_put() in error path
2025-05-02 07:39:18 +02:00
sfi
sh
siox
slimbus
slimbus: messaging: Free transaction ID in delayed interrupt scenario
2025-03-13 12:43:33 +01:00
soc
soc: qcom: smem_state: fix missing of_node_put in error path
2025-03-13 12:43:09 +01:00
soundwire
spi
spi-mxs: Fix chipselect glitch
2025-03-13 12:43:03 +01:00
spmi
ssb
staging
staging: media: imx: fix OF node leak in imx_media_add_of_subdevs()
2025-03-13 12:42:58 +01:00
target
tc
tee
tee: optee: Fix supplicant wait loop
2025-03-13 12:43:23 +01:00
thermal
thermal/drivers/rockchip: Add missing rk3328 mapping entry
2025-05-02 07:39:16 +02:00
thunderbolt
tty
serial: sifive: lock port in startup()/shutdown() callbacks
2025-05-02 07:39:26 +02:00
uio
usb
usb: cdns3: Fix deadlock when using NCM gadget
2025-05-02 07:39:27 +02:00
vfio
vfio/pci: Enable iowrite64 and ioread64 for vfio pci
2025-03-13 12:43:13 +01:00
vhost
video
fbdev: omapfb: Add 'plane' value check
2025-05-02 07:39:12 +02:00
virt
virtio
visorbus
vlynq
vme
w1
watchdog
xen
xenfs/xensyms: respect hypervisor's "next" indication
2025-05-02 07:39:14 +02:00
zorro
Kconfig
Makefile