summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>2026-11-02 12:30:58 +0900
committerTakashi Sakamoto <o-takashi@sakamocchi.jp>2026-11-03 12:55:19 +0900
commit4acd5f806bf5569bfa3a45ea6a525936197df10c (patch)
tree0c7a62fc8f8232c41ba265757a4cdc324f6b5410 /tools
parent6628e7d4c6b25c8d18f1345e3a20d21829aae7e4 (diff)
firewire: ohci: avoid potential deadlock when queueing AT local requests
AT local requests are retrieved from the queue in process context (workqueue), while requests can be added to the queue from any context through __fw_send_request(). The queue is protected by a spinlock, but interrupts are still enabled when acquiring the lock in the former case. This can lead to a deadlock if the same lock is acquired from interrupt context while it is already held. Avoid the deadlock by using a pair of spin_lock_irqsave() and spin_unlock_irqrestore() to protect access to the queue. Fixes: 5fe52c6aa28e ("firewire: ohci: use workqueue to handle error case of AT request/response packet queueing") Link: https://lore.kernel.org/r/20261102033058.1184485-1-o-takashi@sakamocchi.jp Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Diffstat (limited to 'tools')
0 files changed, 0 insertions, 0 deletions