android_kernel_motorola_sm6375/drivers
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Ming Lei d738f3215b virtio-blk: don't keep queue frozen during system suspend
[ Upstream commit 7678abee0867e6b7fb89aa40f6e9f575f755fb37 ]

Commit 4ce6e2db00de ("virtio-blk: Ensure no requests in virtqueues before
deleting vqs.") replaces queue quiesce with queue freeze in virtio-blk's
PM callbacks. And the motivation is to drain inflight IOs before suspending.

block layer's queue freeze looks very handy, but it is also easy to cause
deadlock, such as, any attempt to call into bio_queue_enter() may run into
deadlock if the queue is frozen in current context. There are all kinds
of ->suspend() called in suspend context, so keeping queue frozen in the
whole suspend context isn't one good idea. And Marek reported lockdep
warning[1] caused by virtio-blk's freeze queue in virtblk_freeze().

[1] https://lore.kernel.org/linux-block/ca16370e-d646-4eee-b9cc-87277c89c43c@samsung.com/

Given the motivation is to drain in-flight IOs, it can be done by calling
freeze & unfreeze, meantime restore to previous behavior by keeping queue
quiesced during suspend.

Cc: Yi Sun <yi.sun@unisoc.com>
Cc: Michael S. Tsirkin <mst@redhat.com>
Cc: Jason Wang <jasowang@redhat.com>
Cc: Stefan Hajnoczi <stefanha@redhat.com>
Cc: virtualization@lists.linux.dev
Reported-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
Link: https://lore.kernel.org/r/20241112125821.1475793-1-ming.lei@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-01-09 13:23:32 +01:00
..
accessibility
acpi ACPICA: events/evxfregn: don't release the ContextMutex that was never acquired 2024-12-19 18:05:04 +01:00
amba
android binder: fix UAF caused by offsets overwrite 2024-09-12 11:03:55 +02:00
ata ata: sata_highbank: fix OF node reference leak in highbank_initialize_phys() 2024-12-19 18:05:02 +01:00
atm atm: idt77252: prevent use after free in dequeue_rx() 2024-09-04 13:14:51 +02:00
auxdisplay
base regmap: Use correct format specifier for logging range errors 2025-01-09 13:23:31 +01:00
bcma
block virtio-blk: don't keep queue frozen during system suspend 2025-01-09 13:23:32 +01:00
bluetooth Bluetooth: btusb: Add RTL8852BE device 0489:e123 to device tables 2024-12-14 19:44:52 +01:00
bus bus: tegra-aconnect: Update dependency to ARCH_TEGRA 2024-03-26 18:22:15 -04:00
cdrom
char virtio_console: fix misc probe bugs 2024-11-08 16:20:43 +01:00
clk clk: qcom: gcc-qcs404: fix initial rate of GPLL3 2024-12-14 19:44:43 +01:00
clocksource clocksource/drivers/qcom: Add missing iounmap() on errors in msm_dt_timer_init() 2024-11-08 16:20:28 +01:00
connector
counter
cpufreq cpufreq: loongson2: Unregister platform_driver on failure 2024-12-14 19:44:29 +01:00
cpuidle
crypto chelsio/chtls: prevent potential integer overflow on 32bit 2025-01-09 13:23:28 +01:00
dax
dca
devfreq
dio
dma dmaengine: at_xdmac: avoid null_prt_deref in at_xdmac_prep_dma_memset 2025-01-09 13:23:31 +01:00
dma-buf udmabuf: also check for F_SEAL_FUTURE_WRITE 2025-01-09 13:23:29 +01:00
edac EDAC/fsl_ddr: Fix bad bit shift operations 2024-12-14 19:44:23 +01:00
eisa
extcon extcon: max8997: select IRQ_DOMAIN instead of depending on it 2024-06-16 13:28:43 +02:00
firewire firewire: nosy: ensure user_length is taken into account when fetching packet contents 2024-05-17 11:43:54 +02:00
firmware firmware: arm_scpi: Check the DVFS OPP count returned by the firmware 2024-12-14 19:44:24 +01:00
fpga
fsi
gnss
gpio gpio: grgpio: Add NULL check in grgpio_probe 2024-12-14 19:44:47 +01:00
gpu drm/i915: Fix memory leak by correcting cache object name in error handler 2025-01-09 13:23:27 +01:00
greybus greybus: Fix use-after-free bug in gb_interface_release due to race condition. 2024-07-05 09:08:20 +02:00
hid HID: wacom: fix when get product name maybe null pointer 2024-12-14 19:44:48 +01:00
hsi
hv Drivers: hv: vmbus: Fix rescind handling in uio_hv_generic 2024-09-12 11:03:55 +02:00
hwmon hwmon: (ntc_thermistor) fix module autoloading 2024-11-08 16:20:28 +01:00
hwspinlock
hwtracing coresight: tmc: sg: Do not leak sg_table 2024-11-08 16:20:32 +01:00
i2c i2c: riic: Always round-up when calculating bus period 2025-01-09 13:23:28 +01:00
i3c i3c: Use i3cdev->desc->info instead of calling i3c_device_get_info() to avoid deadlock 2024-12-14 19:44:54 +01:00
ide
idle
iio ad7780: fix division by zero in ad7780_write_raw() 2024-12-14 19:44:43 +01:00
infiniband RDMA/bnxt_re: Check cqe flags to know imm_data vs inv_irkey 2024-12-14 19:44:29 +01:00
input Input: synaptics-rmi4 - fix UAF of IRQ domain on driver removal 2024-11-08 16:20:43 +01:00
interconnect
iommu iommu/vt-d: Handle volatile descriptor status read 2024-09-12 11:03:53 +02:00
ipack
irqchip irqchip/gic-v3: Force propagation of the active state with a read-back 2024-11-17 14:58:52 +01:00
isdn mISDN: Fix a use after free in hfcmulti_tx() 2024-08-19 05:33:42 +02:00
leds leds: class: Protect brightness_show() with led_cdev->led_access mutex 2024-12-14 19:44:53 +01:00
lightnvm
macintosh macintosh/therm_windtunnel: fix module unload. 2024-08-19 05:33:34 +02:00
mailbox mailbox: bcm2835: Fix timeout during suspend mode 2024-11-08 16:20:35 +01:00
mcb
md bcache: revert replacing IS_ERR_OR_NULL with IS_ERR again 2024-12-14 19:44:49 +01:00
media media: dvb-frontends: dib3000mb: fix uninit-value in dib3000_write_reg 2025-01-09 13:23:30 +01:00
memory
memstick
message scsi: fusion: Remove unused variable 'rc' 2024-12-14 19:44:29 +01:00
mfd mfd: rt5033: Fix missing regmap_del_irq_chip() 2024-12-14 19:44:29 +01:00
misc misc: eeprom: eeprom_93cx6: Add quirk for extra read clock cycle 2024-12-14 19:44:55 +01:00
mmc mmc: sdhci-tegra: Remove SDHCI_QUIRK_BROKEN_ADMA_ZEROLEN_DESC quirk 2025-01-09 13:23:28 +01:00
mtd mtd: rawnand: fix double free in atmel_pmecc_create_user() 2025-01-09 13:23:31 +01:00
mux
net net: ethernet: bgmac-platform: fix an OF node reference leak 2025-01-09 13:23:28 +01:00
nfc nfc: pn533: Add poll mod list filling check 2024-09-04 13:15:04 +02:00
ntb ntb: ntb_hw_switchtec: Fix use after free vulnerability in switchtec_ntb_remove due to race condition 2024-11-08 16:20:44 +01:00
nubus
nvdimm nvdimm: rectify the illogical code within nd_dax_probe() 2024-12-14 19:44:54 +01:00
nvme nvme-pci: fix freeing of the HMB descriptor table 2024-12-14 19:44:22 +01:00
nvmem nvmem: Fix return type of devm_nvmem_device_get() in kerneldoc 2024-09-12 11:03:55 +02:00
of of: Fix refcount leakage for OF node returned by __of_get_dma_parent() 2025-01-09 13:23:30 +01:00
opp
oprofile
parisc
parport parport: Proper fix for array out-of-bounds access 2024-11-08 16:20:49 +01:00
pci PCI: Add ACS quirk for Broadcom BCM5760X NIC 2025-01-09 13:23:27 +01:00
pcmcia pcmcia: Use resource_size function on resource object 2024-09-12 11:03:52 +02:00
perf
phy phy: core: Fix that API devm_phy_destroy() fails to destroy the phy 2025-01-09 13:23:31 +01:00
pinctrl pinctrl: qcom-pmic-gpio: add support for PM8937 2024-12-14 19:44:54 +01:00
platform platform/x86: asus-nb-wmi: Ignore unknown event 0xCF 2025-01-09 13:23:32 +01:00
pnp PNP: ACPI: fix fortify warning 2024-02-23 08:24:54 +01:00
power power: supply: core: Remove might_sleep() from power_supply_put() 2024-12-14 19:44:33 +01:00
powercap
pps pps: add an error check in parport_attach 2024-11-08 16:20:35 +01:00
ps3
ptp ptp: Fix error message on failed pin verification 2024-07-05 09:08:11 +02:00
pwm pwm: imx-tpm: Use correct MODULO value for EPWM mode 2024-11-17 14:58:51 +01:00
rapidio
ras
regulator regulator: rk808: Add apply_bit for BUCK3 on RK809 2024-12-14 19:44:20 +01:00
remoteproc remoteproc: imx_rproc: Skip over memory region when node value is NULL 2024-08-19 05:33:44 +02:00
reset reset: berlin: fix OF node leak in probe() error path 2024-11-08 16:20:28 +01:00
rpmsg rpmsg: glink: Propagate TX failures in intentless mode as well 2024-12-14 19:44:39 +01:00
rtc rtc: ab-eoz9: don't fail temperature reads on undervoltage notification 2024-12-14 19:44:41 +01:00
s390 s390/sclp_vt220: Convert newlines to CRLF instead of LFCR 2024-11-08 16:20:48 +01:00
sbus
scsi scsi: mpt3sas: Diag-Reset when Doorbell-In-Use bit is set during driver load time 2025-01-09 13:23:32 +01:00
sfi
sh sh: clk: Fix clk_enable() to return 0 on NULL clk 2025-01-09 13:23:29 +01:00
siox
slimbus slimbus: core: Remove usage of the deprecated ida_simple_xx() API 2024-04-13 12:51:26 +02:00
soc soc: qcom: socinfo: fix revision check in qcom_socinfo_probe() 2024-12-14 19:44:35 +01:00
soundwire soundwire: stream: Revert "soundwire: stream: fix programming slave ports for non-continous port maps" 2024-11-08 16:20:25 +01:00
spi spi: mpc52xx: Add cancel_work_sync before module remove 2024-12-14 19:44:48 +01:00
spmi
ssb ssb: Fix division by zero issue in ssb_calc_clock_rate 2024-09-04 13:14:53 +02:00
staging media: platform: allegro-dvt: Fix possible memory leak in allocate_buffers_internal() 2024-12-14 19:44:43 +01:00
target genetlink: hold RCU in genlmsg_mcast() 2024-11-08 16:20:50 +01:00
tc
tee
thermal
thunderbolt
tty serial: 8250: omap: Move pm_runtime_get_sync 2024-12-14 19:44:37 +01:00
uio Drivers: hv: vmbus: Fix rescind handling in uio_hv_generic 2024-09-12 11:03:55 +02:00
usb USB: serial: option: add Telit FE910C04 rmnet compositions 2025-01-09 13:23:29 +01:00
vfio vfio/pci: Properly hide first-in-list PCIe extended capability 2024-12-14 19:44:33 +01:00
vhost vhost: Add smp_rmb() in vhost_vq_avail_empty() 2024-05-02 16:18:29 +02:00
video fbdev: sh7760fb: Fix a possible memory leak in sh7760fb_alloc_mem() 2024-12-14 19:44:30 +01:00
virt
virtio virtio: delete vq in vp_find_vqs_msix() when request_irq() fails 2024-06-16 13:28:46 +02:00
visorbus
vlynq
vme
w1
watchdog watchdog: mediatek: Make sure system reset gets asserted in mtk_wdt_restart() 2024-12-14 19:44:44 +01:00
xen xen: Fix the issue of resource not being properly released in xenbus_dev_probe() 2024-12-14 19:44:47 +01:00
zorro
Kconfig
Makefile