[PATCH v2 0/3] firewire: ohci: use regular workqueue to handle 1394 OHCI AT/AR context events
Takashi Sakamoto <[email protected]> Sun, 15 Jun 2025 22:32:50 +0900
| Newsgroups | gmane.linux.kernel,gmane.linux.kernel.firewire.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi, This is the revised version of v1 patchset[1]. Last year, in Linux kernel v6.12, the bottom-halves for isochronous contexts of 1394 OHCI PCI driver were changed to use workqueue instead of tasklet (softIRQ)[2]. I have received no reports of any issues related to the change until today. Therefore, I believe it's time to move on to the next step. This patchset updates the driver to use a regular workqueue (not WQ_BH) to handle 1394 OHCI AT/AR context events. Unlike isochronous contexts, the asynchronous contexts are used by the implementation of the SCSI over IEEE 1394 protocol (sbp2). The workqueue is allocated with WQ_MEM_RECLAIM flag so that it can still participate in memory reclaim paths. With this change, all remaining uses of tasklets in the subsystem are completely removed. [1] https://lore.kernel.org/lkml/[email protected]/ [2] https://lore.kernel.org/lkml/[email protected]/ Changes from v1 patchset: * Fix "error: cannot jump from this goto statement to its label" * https://lore.kernel.org/lkml/[email protected]/ * Fix indentations. Takashi Sakamoto (3): firewire: core: allocate workqueue for AR/AT request/response contexts firewire: ohci: use workqueue to handle events of AR request/response contexts firewire: ohci: use workqueue to handle events of AT request/response contexts drivers/firewire/core-card.c | 48 +++++++++++++++------ drivers/firewire/core-transaction.c | 7 +-- drivers/firewire/net.c | 4 +- drivers/firewire/ohci.c | 67 +++++++++++++++-------------- include/linux/firewire.h | 12 +++++- 5 files changed, 85 insertions(+), 53 deletions(-) -- 2.48.1