* [PATCH 9/9] scsi: ufs: Properly release resources if a task is aborted successfully
[not found] <1596690383-16438-1-git-send-email-cang@codeaurora.org>
@ 2020-08-06 5:06 ` Can Guo
0 siblings, 0 replies; 6+ messages in thread
From: Can Guo @ 2020-08-06 5:06 UTC (permalink / raw)
To: asutoshd, nguyenb, hongwus, rnayak, linux-scsi, kernel-team,
saravanak, salyzyn, cang
Cc: Bart Van Assche, Martin K. Petersen, James E.J. Bottomley,
open list, Avri Altman, moderated list:ARM/Mediatek SoC support,
Alim Akhtar, Matthias Brugger, Stanley Chu,
moderated list:ARM/Mediatek SoC support, Bean Huo
In current UFS task abort hook, namely ufshcd_abort(), if a task is
aborted successfully, clock scaling busy time statistics is not updated
and, most important, clk_gating.active_reqs is not decreased, which makes
clk_gating.active_reqs stay above zero forever, thus clock gating would
never happen. To fix it, instead of releasing resources "mannually", use
the existing func __ufshcd_transfer_req_compl(). This can also eliminate
racing of scsi_dma_unmap() from the real completion in IRQ handler path.
Signed-off-by: Can Guo <cang@codeaurora.org>
CC: Stanley Chu <stanley.chu@mediatek.com>
Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
index b2947ab..9541fc7 100644
--- a/drivers/scsi/ufs/ufshcd.c
+++ b/drivers/scsi/ufs/ufshcd.c
@@ -6636,11 +6636,8 @@ static int ufshcd_abort(struct scsi_cmnd *cmd)
goto out;
}
- scsi_dma_unmap(cmd);
-
spin_lock_irqsave(host->host_lock, flags);
- ufshcd_outstanding_req_clear(hba, tag);
- hba->lrb[tag].cmd = NULL;
+ __ufshcd_transfer_req_compl(hba, (1UL << tag));
spin_unlock_irqrestore(host->host_lock, flags);
out:
--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project.
_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 9/9] scsi: ufs: Properly release resources if a task is aborted successfully
@ 2020-08-07 9:33 Markus Elfring
2020-08-07 13:01 ` Can Guo
0 siblings, 1 reply; 6+ messages in thread
From: Markus Elfring @ 2020-08-07 9:33 UTC (permalink / raw)
To: Can Guo, Stanley Chu, kernel-team, linux-arm-kernel,
linux-mediatek, linux-scsi
Cc: Rajendra Nayak, Bart Van Assche, Martin K. Petersen,
Saravana Kannan, James E. J. Bottomley, kernel-janitors,
Bao D. Nguyen, linux-kernel, Avri Altman, Mark Salyzyn,
Alim Akhtar, Matthias Brugger, Bean Huo, Hongwu Su, Asutosh Das
> … To fix it, …
I propose to replace this wording by the tag “Fixes”.
> … "mannually", …
Please avoid a typo:
… "manually", …
Regards,
Markus
_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 9/9] scsi: ufs: Properly release resources if a task is aborted successfully
2020-08-07 9:33 [PATCH 9/9] scsi: ufs: Properly release resources if a task is aborted successfully Markus Elfring
@ 2020-08-07 13:01 ` Can Guo
2020-08-09 18:00 ` [9/9] " Markus Elfring
0 siblings, 1 reply; 6+ messages in thread
From: Can Guo @ 2020-08-07 13:01 UTC (permalink / raw)
To: Markus Elfring
Cc: Matthias Brugger, Rajendra Nayak, Bart Van Assche, linux-scsi,
Saravana Kannan, James E. J. Bottomley, kernel-janitors,
linux-kernel, Bao D. Nguyen, Avri Altman, Mark Salyzyn,
linux-mediatek, Hongwu Su, Alim Akhtar, Martin K. Petersen,
Bean Huo, Stanley Chu, kernel-team, linux-arm-kernel, Asutosh Das
Hi Markus,
On 2020-08-07 17:33, Markus Elfring wrote:
>> … To fix it, …
>
> I propose to replace this wording by the tag “Fixes”.
>
>
>> … "mannually", …
>
> Please avoid a typo:
> … "manually", …
>
>
> Regards,
> Markus
Thanks, will fix these in next version.
Regards,
Can Guo.
_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 9/9] scsi: ufs: Properly release resources if a task is aborted successfully
[not found] <1596975355-39813-1-git-send-email-cang@codeaurora.org>
@ 2020-08-09 12:15 ` Can Guo
0 siblings, 0 replies; 6+ messages in thread
From: Can Guo @ 2020-08-09 12:15 UTC (permalink / raw)
To: asutoshd, nguyenb, hongwus, rnayak, linux-scsi, kernel-team,
saravanak, salyzyn, cang
Cc: Santosh Y, Sujit Reddy Thumma, Bart Van Assche,
Martin K. Petersen, James E.J. Bottomley, open list,
James Bottomley, Avri Altman,
moderated list:ARM/Mediatek SoC support, Alim Akhtar, Dolev Raviv,
Matthias Brugger, Stanley Chu,
moderated list:ARM/Mediatek SoC support, Bean Huo
In current UFS task abort hook, namely ufshcd_abort(), if one task is
aborted successfully, clk_gating.active_reqs held by this task is not
decreased, which makes clk_gating.active_reqs stay above zero forever,
thus clock gating would never happen. Instead of releasing resources of
one task "manually", use the existing func __ufshcd_transfer_req_compl().
This change can also eliminate possible racing of scsi_dma_unmap() from
the real completion in IRQ handler path.
Fixes: 5a0b0cb9bee76 ("ufs: Add support for clock gating")
Signed-off-by: Can Guo <cang@codeaurora.org>
CC: Stanley Chu <stanley.chu@mediatek.com>
Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
Reviewed-by: Asutosh Das <asutoshd@codeaurora.org>
diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
index 9ebb5cd..efb40b1 100644
--- a/drivers/scsi/ufs/ufshcd.c
+++ b/drivers/scsi/ufs/ufshcd.c
@@ -6636,11 +6636,8 @@ static int ufshcd_abort(struct scsi_cmnd *cmd)
goto out;
}
- scsi_dma_unmap(cmd);
-
spin_lock_irqsave(host->host_lock, flags);
- ufshcd_outstanding_req_clear(hba, tag);
- hba->lrb[tag].cmd = NULL;
+ __ufshcd_transfer_req_compl(hba, (1UL << tag));
spin_unlock_irqrestore(host->host_lock, flags);
out:
--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project.
_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [9/9] scsi: ufs: Properly release resources if a task is aborted successfully
2020-08-07 13:01 ` Can Guo
@ 2020-08-09 18:00 ` Markus Elfring
2020-08-10 0:48 ` Can Guo
0 siblings, 1 reply; 6+ messages in thread
From: Markus Elfring @ 2020-08-09 18:00 UTC (permalink / raw)
To: Can Guo, Stanley Chu, Asutosh Das, linux-arm-kernel,
linux-mediatek, linux-scsi, kernel-team
Cc: Rajendra Nayak, Bart Van Assche, Martin K. Petersen,
Saravana Kannan, James E. J. Bottomley, kernel-janitors,
linux-kernel, Bao D. Nguyen, Avri Altman, Mark Salyzyn,
Alim Akhtar, Matthias Brugger, Hongwu Su, Bean Huo
> Thanks, will fix these in next version.
Thanks for your adjustment of the proposed commit message.
Should the corresponding patch be marked with an other version number?
https://lore.kernel.org/linux-arm-kernel/1596975355-39813-10-git-send-email-cang@codeaurora.org/
https://lore.kernel.org/patchwork/patch/1285629/
https://lkml.org/lkml/2020/8/9/87
Should a cover letter be provided for such a patch series?
Regards,
Markus
_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [9/9] scsi: ufs: Properly release resources if a task is aborted successfully
2020-08-09 18:00 ` [9/9] " Markus Elfring
@ 2020-08-10 0:48 ` Can Guo
0 siblings, 0 replies; 6+ messages in thread
From: Can Guo @ 2020-08-10 0:48 UTC (permalink / raw)
To: Markus Elfring
Cc: Matthias Brugger, Rajendra Nayak, Bart Van Assche, linux-scsi,
Saravana Kannan, James E. J. Bottomley, kernel-janitors,
linux-kernel, Bao D. Nguyen, Avri Altman, Mark Salyzyn,
linux-mediatek, Hongwu Su, Alim Akhtar, Martin K. Petersen,
Bean Huo, Stanley Chu, kernel-team, linux-arm-kernel, Asutosh Das
Hi Markus,
On 2020-08-10 02:00, Markus Elfring wrote:
>> Thanks, will fix these in next version.
>
> Thanks for your adjustment of the proposed commit message.
> Should the corresponding patch be marked with an other version number?
> https://lore.kernel.org/linux-arm-kernel/1596975355-39813-10-git-send-email-cang@codeaurora.org/
> https://lore.kernel.org/patchwork/patch/1285629/
> https://lkml.org/lkml/2020/8/9/87
>
> Should a cover letter be provided for such a patch series?
>
> Regards,
> Markus
I am not sure if you got my mails, this patch is included in
a patch series with other 8 changes and they do have a cover
letter. Let me re-send them to you.
Thanks,
Can Guo.
_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2020-08-10 0:49 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-08-07 9:33 [PATCH 9/9] scsi: ufs: Properly release resources if a task is aborted successfully Markus Elfring
2020-08-07 13:01 ` Can Guo
2020-08-09 18:00 ` [9/9] " Markus Elfring
2020-08-10 0:48 ` Can Guo
[not found] <1596975355-39813-1-git-send-email-cang@codeaurora.org>
2020-08-09 12:15 ` [PATCH 9/9] " Can Guo
[not found] <1596690383-16438-1-git-send-email-cang@codeaurora.org>
2020-08-06 5:06 ` Can Guo
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).