linux-stable/drivers
Sreekanth Reddy 0a9bacfdaa scsi: mpi3mr: Fix deadlock while canceling the fw event
[ Upstream commit 580e674220 ]

During controller reset, the driver tries to flush all the pending firmware
event works from worker queue that are queued prior to the reset. However,
if any work is waiting for device addition/removal operation to be
completed at the SML, then a deadlock is observed. This is due to the
controller reset waiting for the device addition/removal to be completed
and the device/addition removal is waiting for the controller reset to be
completed.

To limit this deadlock, continue with the controller reset handling without
canceling the work which is waiting for device addition/removal operation
to complete at SML.

Link: https://lore.kernel.org/r/20220210095817.22828-2-sreekanth.reddy@broadcom.com
Signed-off-by: Sreekanth Reddy <sreekanth.reddy@broadcom.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-04-13 19:27:14 +02:00
..
accessibility
acpi ACPI: CPPC: Avoid out of bounds access when parsing _CPC data 2022-04-08 13:58:58 +02:00
amba
android
ata ata: pata_hpt37x: disable primary channel on HPT371 2022-02-23 09:39:37 +09:00
atm atm: eni: Add check for dma_map_single 2022-03-15 11:01:52 +00:00
auxdisplay auxdisplay: lcd2s: Use proper API to free the instance of charlcd object 2022-03-03 00:30:31 +01:00
base PM: core: keep irq flags in device_pm_check_callbacks() 2022-04-08 13:58:38 +02:00
bcma
block Revert "nbd: fix possible overflow on 'first_minor' in nbd_dev_add()" 2022-04-08 13:59:04 +02:00
bluetooth Bluetooth: btmtksdio: Fix kernel oops in btmtksdio_interrupt 2022-04-08 13:58:20 +02:00
bus mips: cdmm: Fix refcount leak in mips_cdmm_phys_base 2022-04-08 13:58:17 +02:00
cdrom
char hwrng: cavium - fix NULL but dereferenced coccicheck error 2022-04-08 13:58:37 +02:00
clk clk: Initialize orphan req_rate 2022-04-08 13:58:32 +02:00
clocksource clocksource: acpi_pm: fix return value of __setup handler 2022-04-08 13:57:38 +02:00
comedi
connector
counter counter: Stop using dev_get_drvdata() to get the counter device 2022-03-15 19:24:13 +01:00
cpufreq cpufreq: qcom-cpufreq-nvmem: fix reading of PVS Valid fuse 2022-04-08 13:58:24 +02:00
cpuidle cpuidle: qcom-spm: Check if any CPU is managed by SPM 2022-04-08 13:57:46 +02:00
crypto crypto: hisilicon/sec - not need to enable sm4 extra mode at HW V3 2022-04-08 13:58:36 +02:00
cxl cxl/port: Hold port reference until decoder release 2022-04-08 13:58:07 +02:00
dax dax: make sure inodes are flushed before destroy cache 2022-04-08 13:58:07 +02:00
dca
devfreq
dio
dma dmaengine: hisi_dma: fix MSI allocate fail when reload hisi_dma 2022-04-08 13:58:27 +02:00
dma-buf udmabuf: validate ubuf->pagecount 2022-04-08 13:57:56 +02:00
edac
eisa
extcon
firewire
firmware firmware: google: Properly state IOMEM dependency 2022-04-08 13:58:30 +02:00
fpga
fsi fsi: Aspeed: Fix a potential double free 2022-04-08 13:58:24 +02:00
gnss
gpio Revert "gpio: Revert regression in sysfs-gpio (gpiolib.c)" 2022-03-15 09:59:08 -07:00
gpu drm/amdgpu: Fix recursive locking warning 2022-04-13 19:27:12 +02:00
greybus greybus: svc: fix an error handling bug in gb_svc_hello() 2022-04-08 13:57:16 +02:00
hid HID: i2c-hid: fix GET/SET_REPORT for unnumbered reports 2022-04-08 13:58:06 +02:00
hsi
hv hv_balloon: rate-limit "Unhandled message" warning 2022-04-08 13:58:14 +02:00
hwmon hwmon: (pmbus) Add Vin unit off handling 2022-04-08 13:57:38 +02:00
hwspinlock
hwtracing coresight: syscfg: Fix memleak on registration failure in cscfg_create_device 2022-04-08 13:57:14 +02:00
i2c i2c: mux: demux-pinctrl: do not deactivate a master that is not active 2022-04-08 13:58:21 +02:00
i3c
idle
iio iio: adc: Add check for devm_request_threaded_irq 2022-04-08 13:58:26 +02:00
infiniband RDMA/rtrs-clt: Do stop and failover outside reconnect work. 2022-04-13 19:27:10 +02:00
input Revert "Input: clear BTN_RIGHT/MIDDLE on buttonpads" 2022-04-08 13:57:21 +02:00
interconnect
iommu iommu/arm-smmu-v3: fix event handling soft lockup 2022-04-13 19:27:13 +02:00
ipack
irqchip irqchip/nvic: Release nvic_base upon failure 2022-04-08 13:58:37 +02:00
isdn isdn: hfcpci: check the return value of dma_set_mask() in setup_hw() 2022-03-07 11:27:12 +00:00
leds
macintosh
mailbox mailbox: imx: fix wakeup failure from freeze mode 2022-04-08 13:58:55 +02:00
mcb
md dm crypt: fix get_key_size compiler warning if !CONFIG_KEYS 2022-04-08 13:58:10 +02:00
media media: ov6650: Fix crop rectangle affected by set format 2022-04-08 13:59:02 +02:00
memory memory: emif: check the pointer temp in get_device_details() 2022-04-08 13:57:50 +02:00
memstick memstick/mspro_block: fix handling of read-only devices 2022-04-08 13:58:36 +02:00
message
mfd mfd: asic3: Add missing iounmap() on error asic3_mfd_probe 2022-04-08 13:58:22 +02:00
misc kgdbts: fix return value of __setup handler 2022-04-08 13:58:30 +02:00
mmc mmc: rtsx: Fix build errors/warnings for unused variable 2022-04-08 13:59:04 +02:00
most
mtd ubi: fastmap: Return error code if memory allocation fails in add_aeb() 2022-04-08 13:59:02 +02:00
mux
net i40e: Add sending commands in atomic context 2022-04-13 19:27:11 +02:00
nfc NFC: port100: fix use-after-free in port100_send_complete 2022-03-09 19:59:34 -08:00
ntb
nubus
nvdimm nvdimm/region: Fix default alignment for small regions 2022-04-08 13:58:27 +02:00
nvme nvme: fix the read-only state for zoned namespaces with unsupposed features 2022-04-08 13:58:53 +02:00
nvmem nvmem: core: Fix a conflict between MTD and NVMEM on wp-gpios property 2022-02-21 17:59:25 +01:00
of of/fdt: move elfcorehdr reservation early for crash dump kernel 2022-02-17 17:13:52 -06:00
opp
parisc
parport
pci PCI: pciehp: Add Qualcomm quirk for Command Completed erratum 2022-04-13 19:27:14 +02:00
pcmcia
perf perf/arm-cmn: Update watchpoint format 2022-04-08 13:57:37 +02:00
phy phy: phy-brcm-usb: fixup BCM4908 support 2022-04-08 13:58:25 +02:00
pinctrl pinctrl: canonical rsel resistance selection property 2022-04-08 13:59:02 +02:00
platform platform/x86: asus-wmi: Fix regression when probing for fan curve control 2022-04-08 13:58:58 +02:00
pnp
power power: supply: axp20x_battery: properly report current when discharging 2022-04-13 19:27:11 +02:00
powercap powercap/dtpm_cpu: Reset per_cpu variable in the release function 2022-04-08 13:58:37 +02:00
pps pps: clients: gpio: Propagate return value from pps_gpio_probe 2022-04-08 13:58:24 +02:00
ps3
ptp ptp: replace snprintf with sysfs_emit 2022-04-13 19:27:09 +02:00
pwm pwm: lpc18xx-sct: Initialize driver data and hardware before pwmchip_add() 2022-04-08 13:58:23 +02:00
rapidio
ras
regulator regulator: rpi-panel: Handle I2C errors/timing to the Atmel 2022-04-08 13:58:35 +02:00
remoteproc remoteproc: qcom_q6v5_mss: Fix some leaks in q6v5_alloc_memory_region 2022-04-08 13:58:27 +02:00
reset
rpmsg
rtc rtc: wm8350: Handle error for wm8350_register_irq 2022-04-13 19:27:06 +02:00
s390
sbus
scsi scsi: mpi3mr: Fix deadlock while canceling the fw event 2022-04-13 19:27:14 +02:00
sh
siox
slimbus
soc soc: mediatek: pm-domains: Add wakeup capacity support in power domain 2022-04-08 13:57:49 +02:00
soundwire ASoC: Intel: sof_sdw: fix quirks for 2022 HP Spectre x360 13" 2022-04-08 13:58:45 +02:00
spi spi: mediatek: support tick_delay without enhance_timing 2022-04-08 13:59:02 +02:00
spmi
ssb
staging staging: mt7621-dts: fix pinctrl-0 items to be size-1 items on ethernet 2022-04-08 13:58:59 +02:00
target
tc
tee OP-TEE fix error return code in probe functions 2022-02-18 17:30:01 +01:00
thermal thermal: int340x: Check for NULL after calling kmemdup() 2022-04-08 13:57:33 +02:00
thunderbolt
tty serial: 8250: fix XOFF/XON sending when DMA is used 2022-04-08 13:58:30 +02:00
uio
usb usb: ehci: add pci device support for Aspeed platforms 2022-04-13 19:27:13 +02:00
vdpa vdpa/mlx5: Avoid processing works if workqueue was destroyed 2022-04-08 13:59:03 +02:00
vfio vfio/pci: wake-up devices around reset functions 2022-04-08 13:58:10 +02:00
vhost vhost: handle error while adding split ranges to iotlb 2022-04-08 13:58:58 +02:00
video video: fbdev: sm712fb: Fix crash in smtcfb_write() 2022-04-08 13:58:45 +02:00
virt virt: acrn: fix a memory leak in acrn_dev_ioctl() 2022-04-08 13:58:30 +02:00
virtio virtio: use virtio_device_ready() in virtio_device_restore() 2022-04-08 13:58:57 +02:00
visorbus
vlynq
vme
w1
watchdog watchdog: rti-wdt: Add missing pm_runtime_disable() in probe function 2022-04-08 13:58:56 +02:00
xen xen/gnttab: fix gnttab_end_foreign_access() without page specified 2022-03-07 09:48:55 +01:00
zorro
Kconfig
Makefile