[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <DM6PR04MB657502D8172084475F280CF5FCA99@DM6PR04MB6575.namprd04.prod.outlook.com>
Date: Wed, 29 Sep 2021 07:39:05 +0000
From: Avri Altman <Avri.Altman@....com>
To: Po-Wen Kao <powen.kao@...iatek.com>,
"linux-block@...r.kernel.org" <linux-block@...r.kernel.org>,
"axboe@...nel.dk" <axboe@...nel.dk>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"stanley.chu@...iatek.com" <stanley.chu@...iatek.com>,
"linux-scsi@...r.kernel.org" <linux-scsi@...r.kernel.org>,
"martin.petersen@...cle.com" <martin.petersen@...cle.com>,
"alim.akhtar@...sung.com" <alim.akhtar@...sung.com>,
"jejb@...ux.ibm.com" <jejb@...ux.ibm.com>
CC: "peter.wang@...iatek.com" <peter.wang@...iatek.com>,
"chun-hung.wu@...iatek.com" <chun-hung.wu@...iatek.com>,
"alice.chao@...iatek.com" <alice.chao@...iatek.com>,
"jonathan.hsu@...iatek.com" <jonathan.hsu@...iatek.com>,
"cc.chou@...iatek.com" <cc.chou@...iatek.com>,
"chaotian.jing@...iatek.com" <chaotian.jing@...iatek.com>,
"jiajie.hao@...iatek.com" <jiajie.hao@...iatek.com>,
"wsd_upstream@...iatek.com" <wsd_upstream@...iatek.com>,
"ed.tsai@...iatek.com" <ed.tsai@...iatek.com>
Subject: RE: [PATCH 0/2] Fix UFS task management command timeout
> On UTP_TASK_REQ_COMPL interrupt, ufshcd_tmc_handler() iterates through
> busy requests in tags->rqs and complete request if corresponding
> doorbell flag is reset.
> However, ufshcd_issue_tm_cmd() allocates requests from tags->static_rqs
> and trigger doorbell directly without dispatching request through block
> layer, thus requests can never be found in tags->rqs and completed
> properly. Any TM command issued by ufshcd_issue_tm_cmd() inevitably
> timeout and further leads to recovery flow failure when LU Reset or
> Abort Task is issued.
>
> In this patch, blk_mq_tagset_busy_iter() call in ufshcd_tmc_handler()
> is replaced with new interface, blk_mq_drv_tagset_busy_iter(), to
> allow completion of request allocted by driver. The new interface is
> introduced for driver to iterate through requests in static_rqs.
Is this the same issue that was addressed here - https://www.spinics.net/lists/linux-scsi/msg164520.html ?
Thanks,
Avri
>
> Po-Wen Kao (2):
> blk-mq: new busy request iterator for driver
> scsi: ufs: fix TM request timeout
>
> block/blk-mq-tag.c | 36 ++++++++++++++++++++++++++++++------
> drivers/scsi/ufs/ufshcd.c | 2 +-
> include/linux/blk-mq.h | 4 ++++
> 3 files changed, 35 insertions(+), 7 deletions(-)
>
> --
> 2.18.0
Powered by blists - more mailing lists