This looks sensible, but I'm worried about taking a whole spinlock for every request completion, including irq disabling. However it seems like your new updated pattern would fit use of cmpxchg() very nicely.
- [PATCH] blk-mq: Fix recently introduced races in the tim... Bart Van Assche
- Re: [PATCH] blk-mq: Fix recently introduced races i... Sagi Grimberg
- Re: [PATCH] blk-mq: Fix recently introduced rac... Bart Van Assche
- Re: [PATCH] blk-mq: Fix recently introduced rac... Israel Rukshin
- Re: [PATCH] blk-mq: Fix recently introduced rac... Tejun Heo
- Re: [PATCH] blk-mq: Fix recently introduced races i... Christoph Hellwig
- Re: [PATCH] blk-mq: Fix recently introduced rac... Bart Van Assche
- Re: [PATCH] blk-mq: Fix recently introduced races i... Tejun Heo
- Re: [PATCH] blk-mq: Fix recently introduced rac... Bart Van Assche
- Re: [PATCH] blk-mq: Fix recently introduced... t...@kernel.org
- Re: [PATCH] blk-mq: Fix recently introd... Bart Van Assche
- Re: [PATCH] blk-mq: Fix recently i... t...@kernel.org
- Re: [PATCH] blk-mq: Fix recently introduced races i... Alex G.