Skip to content

Commit ba3548c

Browse files
haukebroonie
authored andcommitted
spi: lantiq-ssc: Fix warning by using WQ_MEM_RECLAIM
The lantiq-ssc driver uses internally an own workqueue to wait till the data is not only written out of the FIFO but really written to the wire. This workqueue is flushed while the SPI subsystem is working in some other system workqueue. The system workqueue is marked as WQ_MEM_RECLAIM, but the workqueue in the lantiq-ssc driver does not use WQ_MEM_RECLAIM for now. Add this flag too to prevent this warning. This fixes the following warning: [ 2.975956] WARNING: CPU: 1 PID: 17 at kernel/workqueue.c:2614 check_flush_dependency+0x168/0x184 [ 2.984752] workqueue: WQ_MEM_RECLAIM kblockd:blk_mq_run_work_fn is flushing !WQ_MEM_RECLAIM 1e100800.spi:0x0 Fixes: 891b7c5 ("mtd_blkdevs: convert to blk-mq") Signed-off-by: Hauke Mehrtens <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mark Brown <[email protected]>
1 parent bd054ec commit ba3548c

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

drivers/spi/spi-lantiq-ssc.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -899,7 +899,7 @@ static int lantiq_ssc_probe(struct platform_device *pdev)
899899
master->bits_per_word_mask = SPI_BPW_RANGE_MASK(2, 8) |
900900
SPI_BPW_MASK(16) | SPI_BPW_MASK(32);
901901

902-
spi->wq = alloc_ordered_workqueue(dev_name(dev), 0);
902+
spi->wq = alloc_ordered_workqueue(dev_name(dev), WQ_MEM_RECLAIM);
903903
if (!spi->wq) {
904904
err = -ENOMEM;
905905
goto err_clk_put;

0 commit comments

Comments
 (0)