linux-yocto/drivers
Mateusz Litwin 69695f5331 spi: cadence-quadspi: Prevent lost complete() call during indirect read
[ Upstream commit d67396c9d697041b385d70ff2fd59cb07ae167e8 ]

A race condition exists between the read loop and IRQ `complete()` call.
An interrupt could call the complete() between the inner loop and
reinit_completion(), potentially losing the completion event and causing
an unnecessary timeout. Moving reinit_completion() before the loop
prevents this. A premature signal will only result in a spurious wakeup
and another wait cycle, which is preferable to waiting for a timeout.

Signed-off-by: Mateusz Litwin <mateusz.litwin@nokia.com>
Link: https://patch.msgid.link/20251218-cqspi_indirect_read_improve-v2-1-396079972f2a@nokia.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2026-01-17 16:35:33 +01:00
..
accel accel/amdxdna: Block running under a hypervisor 2026-01-17 16:35:32 +01:00
accessibility
acpi ACPI: CPPC: Fix missing PCC check for guaranteed_perf 2026-01-02 12:56:57 +01:00
amba amba: tegra-ahb: Fix device leak on SMMU enable 2026-01-02 12:57:28 +01:00
android rust_binder: remove spin_lock() in rust_shrink_free_page() 2026-01-17 16:35:11 +01:00
ata ata: libata-core: Disable LPM on ST2000DM008-2FR102 2026-01-17 16:35:32 +01:00
atm atm: Fix dma_free_coherent() size 2026-01-17 16:35:10 +01:00
auxdisplay
base PM: runtime: Do not clear needs_force_resume with enabled runtime PM 2026-01-02 12:57:22 +01:00
bcma bcma: don't register devices disabled in OF 2025-10-20 13:54:15 +02:00
block ublk: fix use-after-free in ublk_partition_scan_work 2026-01-17 16:35:30 +01:00
bluetooth Bluetooth: btusb: revert use of devm_kzalloc in btusb 2026-01-08 10:16:44 +01:00
bus ti-sysc: allow OMAP2 and OMAP4 timers to be reserved on AM33xx 2026-01-02 12:56:59 +01:00
cache
cdrom
cdx Char/Misc/IIO/Binder changes for 6.18-rc1 2025-10-04 16:26:32 -07:00
char char: applicom: fix NULL pointer dereference in ac_ioctl 2026-01-02 12:57:14 +01:00
clk clk: qcom: Fix dependencies of QCS_{DISP,GPU,VIDEO}CC_615 2026-01-08 10:16:59 +01:00
clocksource clocksource/drivers/nxp-stm: Prevent driver unbind 2025-12-18 14:03:20 +01:00
comedi comedi: check device's attached status in compat ioctls 2025-12-12 18:42:47 +01:00
connector
counter counter: interrupt-cnt: Drop IRQF_NO_THREAD flag 2026-01-17 16:35:12 +01:00
cpufreq cpufreq: nforce2: fix reference count leak in nforce2 2026-01-02 12:57:15 +01:00
cpuidle cpuidle: governors: teo: Drop misguided target residency check 2026-01-02 12:57:15 +01:00
crypto crypto: qat - fix duplicate restarting msg during AER error 2026-01-17 16:35:20 +01:00
cxl cxl: Adjust offset calculation for poison injection 2025-11-07 09:22:10 -07:00
dax
dca
devfreq PM / devfreq: hisi: Fix potential UAF in OPP handling 2025-12-18 14:03:11 +01:00
dibs dibs: Check correct variable in dibs_init() 2025-09-26 15:10:59 -07:00
dio
dma dmaengine updates for v6.18 2025-10-06 10:37:06 -07:00
dma-buf dma-fence: Fix safe access wrapper to call timeline name method 2025-10-24 16:56:37 +01:00
dpll dpll: zl3073x: Fix output pin registration 2025-10-28 18:54:48 -07:00
edac EDAC/altera: Use INTTEST register for Ethernet and USB SBE injection 2025-11-11 14:59:04 +01:00
eisa
extcon
firewire firewire: nosy: Fix dma_free_coherent() size 2026-01-08 10:16:47 +01:00
firmware firmware: stratix10-svc: Add mutex in stratix10 memory management 2026-01-08 10:17:02 +01:00
fpga
fsi
fwctl pds_fwctl: Replace kzalloc + copy_from_user with memdup_user in pdsfc_fw_rpc 2025-09-22 10:33:10 -03:00
gnss
gpio gpio: mpsse: fix reference leak in gpio_mpsse_probe() error paths 2026-01-17 16:35:31 +01:00
gpu drm/amdkfd: Fix improper NULL termination of queue restore SMI event string 2026-01-17 16:35:32 +01:00
greybus greybus: gb-beagleplay: Fix timeout handling in bootloader functions 2025-12-18 14:03:21 +01:00
hid HID: quirks: work around VID/PID conflict for appledisplay 2026-01-17 16:35:29 +01:00
hsi
hte
hv mshv: Fix create memory region overlap check 2025-12-18 14:03:02 +01:00
hwmon hwmon: (dell-smm) Fix off-by-one error in dell_smm_is_visible() 2026-01-08 10:16:56 +01:00
hwspinlock
hwtracing intel_th: Fix error handling in intel_th_output_open 2026-01-02 12:57:14 +01:00
i2c i2c: amd-mp2: fix reference leak in MP2 PCI device 2026-01-02 12:57:30 +01:00
i3c i3c: master: svc: Prevent incomplete IBI transaction 2025-12-18 14:02:44 +01:00
idle
iio iio: adc: ti_am335x_adc: Limit step_avg to valid range for gcc complains 2026-01-02 12:57:02 +01:00
infiniband RDMA/cm: Fix leaking the multicast GID table reference 2026-01-08 10:17:11 +01:00
input Input: i8042 - add TUXEDO InfinityBook Max Gen10 AMD to i8042 quirk table 2026-01-02 12:56:56 +01:00
interconnect interconnect: qcom: sdx75: Drop QPIC interconnect and BCM nodes 2026-01-02 12:57:30 +01:00
iommu iommu: disable SVA when CONFIG_X86 is set 2026-01-08 10:16:56 +01:00
ipack
irqchip irqchip/gic-v5: Fix gicv5_its_map_event() ITTE read endianness 2026-01-17 16:35:30 +01:00
isdn isdn: mISDN: hfcsusb: fix memory leak in hfcsusb_probe() 2025-10-31 17:39:14 -07:00
leds leds: leds-lp50xx: Enable chip before any communication 2026-01-08 10:16:58 +01:00
macintosh macintosh/mac_hid: fix race condition in mac_hid_toggle_emumouse 2025-12-18 14:02:55 +01:00
mailbox mailbox: th1520: fix clock imbalance on probe failure 2025-11-28 09:47:44 -06:00
mcb
md dm-snapshot: fix 'scheduling while atomic' on real-time kernels 2026-01-17 16:35:16 +01:00
media media: mediatek: vcodec: Fix a reference leak in mtk_vcodec_fw_vpu_init() 2026-01-08 10:17:05 +01:00
memory memory: tegra210: Fix incorrect client ids 2025-10-23 15:32:21 +02:00
memstick Summary of significant series in this pull request: 2025-10-02 18:18:33 -07:00
message
mfd mfd: max77620: Fix potential IRQ chip conflict when probing two devices 2026-01-08 10:16:59 +01:00
misc mei: me: add nova lake point S DID 2026-01-17 16:35:11 +01:00
mmc mmc: sdhci-msm: Avoid early clock doubling during HS400 transition 2026-01-02 12:57:07 +01:00
most most: usb: fix double free on late probe failure 2025-11-09 11:15:20 +09:00
mtd mtd: spi-nor: winbond: Add support for W25H02NWxxAM chips 2026-01-08 10:17:01 +01:00
mux
net net: sfp: extend Potron XGSPON quirk to cover additional EEPROM variant 2026-01-17 16:35:31 +01:00
nfc nfc: pn533: Fix error code in pn533_acr122_poweron_rdr() 2026-01-02 12:56:47 +01:00
ntb NTB: epf: Add Renesas rcar support 2025-09-22 09:35:21 -04:00
nubus
nvdimm libnvdimm for 6.18 2025-10-06 11:17:18 -07:00
nvme nvmet: pci-epf: move DMA initialization to EPC init callback 2026-01-08 10:17:01 +01:00
nvmem nvmem: layouts: fix nvmem_layout_bus_uevent 2025-11-24 18:08:10 +01:00
of of: unittest: Fix memory leak in unittest_data_add() 2026-01-17 16:35:18 +01:00
opp
parisc parisc: Do not reprogram affinitiy on ASP chip 2026-01-02 12:57:19 +01:00
parport
pci PCI/VGA: Don't assume the only VGA device on a system is boot_vga 2026-01-17 16:35:26 +01:00
pcmcia
peci
perf perf: arm_cspmu: fix error handling in arm_cspmu_impl_unregister() 2026-01-02 12:57:07 +01:00
phy phy: broadcom: bcm63xx-usbh: fix section mismatches 2026-01-02 12:57:13 +01:00
pinctrl pinctrl: mediatek: mt8189: restore previous register base name array order 2026-01-17 16:35:20 +01:00
platform platform/x86: alienware-wmi-wmax: Add support for Alienware 16X Aurora 2026-01-08 10:17:14 +01:00
pmdomain pmdomain: imx: Fix reference count leak in imx_gpc_probe() 2026-01-08 10:17:09 +01:00
pnp
power power: supply: max77705: Fix potential IRQ chip conflict when probing two devices 2026-01-08 10:17:02 +01:00
powercap powercap: fix sscanf() error return value handling 2026-01-17 16:35:32 +01:00
pps
ps3
ptp ptp: Allow exposing cycles only for clocks with free-running counter 2025-10-31 16:27:40 -07:00
pwm pwm: rzg2l-gpt: Allow checking period_tick cache value only if sibling channel is enabled 2026-01-02 12:57:29 +01:00
rapidio
ras RAS: Report all ARM processor CPER information to userspace 2025-12-18 14:03:09 +01:00
regulator regulator: spacemit: Align input supply name with the DT binding 2025-12-18 14:03:39 +01:00
remoteproc remoteproc: qcom_q6v5_wcss: fix parsing of qcom,halt-regs 2025-12-18 14:03:28 +01:00
reset reset: imx8mp-audiomix: Fix bad mask values 2025-11-05 16:12:28 +01:00
rpmsg rpmsg: glink: fix rpmsg device leak 2026-01-02 12:57:29 +01:00
rtc rtc: max31335: Fix ignored return value in set_alarm 2025-12-18 14:03:38 +01:00
s390 s390/dasd: Fix gendisk parent after copy pair swap 2026-01-02 12:57:08 +01:00
sbus
scsi scsi: sg: Fix occasional bogus elapsed time that exceeds timeout 2026-01-17 16:35:33 +01:00
sh
siox
slimbus slimbus: ngd: Fix reference count leak in qcom_slim_ngd_notify_slaves 2025-11-09 11:14:59 +09:00
soc soc: amlogic: canvas: fix device leak on lookup 2026-01-02 12:57:29 +01:00
soundwire soundwire updates for 6.18 2025-10-06 10:32:22 -07:00
spi spi: cadence-quadspi: Prevent lost complete() call during indirect read 2026-01-17 16:35:33 +01:00
spmi
ssb
staging staging: fbtft: core: fix potential memory leak in fbtft_probe_common() 2025-12-18 14:03:16 +01:00
target scsi: target: Reset t_task_cdb pointer in error case 2026-01-02 12:57:16 +01:00
tc
tee QCOMTEE fixes2 for v6.18 2025-11-21 21:27:20 +01:00
thermal thermal: renesas: Fix RZ/G3E fall-out 2025-10-02 10:41:58 +02:00
thunderbolt thunderbolt: Add support for Intel Wildcat Lake 2025-10-20 08:20:34 +02:00
tty serial: sh-sci: Check that the DMA cookie is valid 2026-01-02 12:57:15 +01:00
ufs scsi: ufs: core: Fix EH failure after W-LUN resume error 2026-01-17 16:35:18 +01:00
uio uio: uio_fsl_elbc_gpcm:: Add null pointer check to uio_fsl_elbc_gpcm_probe 2025-12-18 14:02:34 +01:00
usb xhci: dbgtty: fix device unregister: fixup 2026-01-02 12:57:14 +01:00
vdpa virtio: vdpa: Fix reference count leak in octep_sriov_enable() 2026-01-02 12:57:28 +01:00
vfio vfio/pci: Disable qword access to the PCI ROM bar 2026-01-08 10:17:21 +01:00
vhost vhost/vsock: improve RCU read sections around vhost_vsock_get() 2026-01-02 12:57:04 +01:00
video fbdev: tcx.c fix mem_map to correct smem_start offset 2026-01-08 10:17:03 +01:00
virt arm64 updates for 6.18 2025-09-29 18:48:39 -07:00
virtio virtio: clean up features qword/dword terms 2025-12-18 14:03:24 +01:00
w1
watchdog via_wdt: fix critical boot hang due to unnamed resource allocation 2026-01-02 12:57:01 +01:00
xen dma-mapping updates for Linux 6.18: 2025-10-03 17:41:12 -07:00
zorro
Kconfig
Makefile hyperv-next for v6.18 2025-10-07 08:40:15 -07:00