From: Can Guo <cang@codeaurora.org>
To: Avri Altman <Avri.Altman@wdc.com>
Cc: Bart Van Assche <bvanassche@acm.org>,
asutoshd@codeaurora.org, nguyenb@codeaurora.org,
hongwus@codeaurora.org, rnayak@codeaurora.org,
stanley.chu@mediatek.com, alim.akhtar@samsung.com,
beanhuo@micron.com, bjorn.andersson@linaro.org,
linux-scsi@vger.kernel.org, kernel-team@android.com,
saravanak@google.com, salyzyn@google.com,
"James E.J. Bottomley" <jejb@linux.ibm.com>,
"Martin K. Petersen" <martin.petersen@oracle.com>,
open list <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v3 1/1] scsi: pm: Balance pm_only counter of request queue during system resume
Date: Thu, 30 Apr 2020 20:38:17 +0800 [thread overview]
Message-ID: <eb7520b6274474f4b8d803a76b85107a@codeaurora.org> (raw)
In-Reply-To: <BYAPR04MB462931F8DF1112CAF7F80CA4FCAA0@BYAPR04MB4629.namprd04.prod.outlook.com>
Hi Avri,
On 2020-04-30 17:11, Avri Altman wrote:
>>
>> On 2020-04-29 21:10, Can Guo wrote:
>> > During system resume, scsi_resume_device() decreases a request queue's
>> > pm_only counter if the scsi device was quiesced before. But after that,
>> > if the scsi device's RPM status is RPM_SUSPENDED, the pm_only counter is
>> > still held (non-zero). Current scsi resume hook only sets the RPM status
>> > of the scsi device and its request queue to RPM_ACTIVE, but leaves the
>> > pm_only counter unchanged. This may make the request queue's pm_only
>> > counter remain non-zero after resume hook returns, hence those who are
>> > waiting on the mq_freeze_wq would never be woken up. Fix this by calling
>> > blk_post_runtime_resume() if pm_only is non-zero to balance the pm_only
>> > counter which is held by the scsi device's RPM ops.
>>
>> How was this issue discovered? How has this patch been tested?
>
> I think this insight was originally gained as part of commit
> fb276f770118
> (scsi: ufs: Enable block layer runtime PM for well-known logical units)
>
> But I will let Can reply on that.
>
> Thanks,
> Avri
>
Thanks for pointing to that commit, but this is a different story here.
SCSI devices, which have block layer runtime PM enabled, can hit this
issue
during system resume. In the contratry, those which have block layer
runtime
PM disabled are immune to this issue.
Thanks,
Can Guo.
>>
>> Thanks,
>>
>> Bart.
prev parent reply other threads:[~2020-04-30 12:38 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-30 4:10 [PATCH v3 1/1] scsi: pm: Balance pm_only counter of request queue during system resume Can Guo
2020-04-30 5:08 ` Bart Van Assche
2020-04-30 5:40 ` Can Guo
2020-04-30 20:32 ` Bart Van Assche
2020-05-01 1:19 ` Can Guo
2020-05-01 1:42 ` Can Guo
2020-05-01 1:50 ` Bart Van Assche
2020-05-01 5:12 ` Can Guo
2020-05-01 17:56 ` Bart Van Assche
2020-05-02 1:59 ` Can Guo
2020-04-30 9:11 ` Avri Altman
2020-04-30 12:38 ` Can Guo [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=eb7520b6274474f4b8d803a76b85107a@codeaurora.org \
--to=cang@codeaurora.org \
--cc=Avri.Altman@wdc.com \
--cc=alim.akhtar@samsung.com \
--cc=asutoshd@codeaurora.org \
--cc=beanhuo@micron.com \
--cc=bjorn.andersson@linaro.org \
--cc=bvanassche@acm.org \
--cc=hongwus@codeaurora.org \
--cc=jejb@linux.ibm.com \
--cc=kernel-team@android.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
--cc=nguyenb@codeaurora.org \
--cc=rnayak@codeaurora.org \
--cc=salyzyn@google.com \
--cc=saravanak@google.com \
--cc=stanley.chu@mediatek.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox