Re: [PATCH v2 0/3] firewire: ohci: use regular workqueue to handle 1394 OHCI AT/AR context events

Takashi Sakamoto <[email protected]> Tue, 17 Jun 2025 09:30:43 +0900
Newsgroups gmane.linux.kernel,gmane.linux.kernel.firewire.devel
Message-ID <[email protected]>
Hi,

On Sun, Jun 15, 2025 at 10:32:50PM +0900, Takashi Sakamoto wrote:
> 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(-)

Applied to for-next branch.


Thanks

Takashi Sakamoto