]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
firewire: core: schedule bm_work item outside of spin lock
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Wed, 17 Sep 2025 00:03:45 +0000 (09:03 +0900)
committerTakashi Sakamoto <o-takashi@sakamocchi.jp>
Wed, 17 Sep 2025 00:07:03 +0000 (09:07 +0900)
commitb460b317b21d5106f3ebd34bd51b851ad355a70a
treefaba1c4e140fffc3f869937444c7c2a5c451b804
parente0cda0dd12e08ecb8d26b8d78dc63e67e7069510
firewire: core: schedule bm_work item outside of spin lock

Before (re)building topology tree, fw_core_handle_bus_reset() schedules
a work item under acquiring fw_card spin lock. The work item invokes
bm_work() which acquires the spin lock at first, then can be stalled to
wait until the building tree finishes. This is inconvenient.

This commit moves the timing to schedule the work item after releasing
the spin lock.

Link: https://lore.kernel.org/r/20250917000347.52369-2-o-takashi@sakamocchi.jp
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
drivers/firewire/core-topology.c