Hi Allen, thanks for your patch! On Wed, Mar 27, 2024 at 5:03 PM Allen Pais <apais@xxxxxxxxxxxxxxxxxxx> wrote: > The only generic interface to execute asynchronously in the BH context is > tasklet; however, it's marked deprecated and has some design flaws. To > replace tasklets, BH workqueue support was recently added. A BH workqueue > behaves similarly to regular workqueues except that the queued work items > are executed in the BH context. > > This patch converts drivers/dma/* from tasklet to BH workqueue. > > Based on the work done by Tejun Heo <tj@xxxxxxxxxx> > Branch: git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq.git for-6.10 > > Signed-off-by: Allen Pais <allen.lkml@xxxxxxxxx> (...) > diff --git a/drivers/dma/ste_dma40.c b/drivers/dma/ste_dma40.c (...) > if (d40c->pending_tx) > - tasklet_schedule(&d40c->tasklet); > + queue_work(system_bh_wq, &d40c->work); Why is "my" driver not allowed to use system_bh_highpri_wq? I can't see the reasoning between some drivers using system_bh_wq and others being highpri? Given the DMA usecase I would expect them all to be high prio. Yours, Linus Walleij