Re: [PATCH 2/2] scsi: ufs: Fix a deadlock in the error handler

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/3/21 00:40, Christoph Hellwig wrote:
On Tue, Nov 02, 2021 at 05:05:29PM -0700, Bart Van Assche wrote:
-	req = blk_get_request(q, REQ_OP_DRV_OUT, 0);
+	req = blk_mq_alloc_request(q, REQ_OP_DRV_OUT, BLK_MQ_REQ_RESERVED);

blk_get_request will be gone in 5.16-rc, so this won't apply.

Thanks for the reminder Christoph. This is something I am aware of. Hence the promise in the cover letter to rebase and repost this patch series after the merge window has closed.

But more importantly: SCSI LLDDs have absolutel no business calling
blk_get_request or blk_mq_alloc_request directly, but as usual UFS is
completely fucked up here.

As explained by Adrian, the UFS protocol uses a single tag space for SCSI commands and UFS device commands. blk_mq_alloc_request() is used in this context to allocate a tag only from the shared tag space only. I think using blk_mq_alloc_request() for that purpose is fine.

Thanks,

Bart.



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux