[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a124700a-e507-e593-d6f5-2da452f3ae7e@acm.org>
Date: Thu, 13 May 2021 21:05:43 -0700
From: Bart Van Assche <bvanassche@....org>
To: Can Guo <cang@...eaurora.org>, asutoshd@...eaurora.org,
nguyenb@...eaurora.org, hongwus@...eaurora.org,
ziqichen@...eaurora.org, linux-scsi@...r.kernel.org,
kernel-team@...roid.com
Cc: Alim Akhtar <alim.akhtar@...sung.com>,
Avri Altman <avri.altman@....com>,
"James E.J. Bottomley" <jejb@...ux.ibm.com>,
"Martin K. Petersen" <martin.petersen@...cle.com>,
Stanley Chu <stanley.chu@...iatek.com>,
Bean Huo <beanhuo@...ron.com>,
Jaegeuk Kim <jaegeuk@...nel.org>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v1 6/6] scsi: ufs: Update the fast abort path in
ufshcd_abort() for PM requests
On 5/12/21 10:55 PM, Can Guo wrote:
> If PM requests fail during runtime suspend/resume, RPM framework saves the
> error to dev->power.runtime_error. Before the runtime_error gets cleared,
> runtime PM on this specific device won't work again, leaving the device
> in either suspended or active state permanently.
>
> When task abort happens to a PM request sent during runtime suspend/resume,
> even if it can be successfully aborted, RPM framework anyways saves the
> (TIMEOUT) error. But we want more and we can do better - let error handling
> recover and clear the runtime_error. So, let PM requests take the fast
> abort path in ufshcd_abort().
The only RQF_PM requests I know of are START STOP UNIT and SYNCHRONIZE
CACHE. Are there devices for which these commands can time out or do
these commands perhaps only time out as the result of error injection?
> - if (lrbp->lun == UFS_UPIU_UFS_DEVICE_WLUN) {
> + if (lrbp->lun == UFS_UPIU_UFS_DEVICE_WLUN ||
> + (cmd->request->rq_flags & RQF_PM)) {
Which are the RQF_PM commands that are not sent to a WLUN? Are these
START STOP UNIT and SYNCHRONIZE CACHE only?
Thanks,
Bart.
Powered by blists - more mailing lists