From: Stanley Jhu <stanleyjhu@google.com>
To: sashiko-bot@kernel.org
Cc: linux-scsi@vger.kernel.org, Bart Van Assche <bvanassche@acm.org>,
Brian Kao <powenkao@google.com>,
Stanley Jhu <stanleyjhu@google.com>
Subject: Re: [PATCH v2] scsi: ufs: core: Quiesce SCSI devices instead of host tagset during error handling
Date: Sat, 12 Sep 2026 21:16:16 +0800 [thread overview]
Message-ID: <20260912131616.2301278-1-stanleyjhu@google.com> (raw)
In-Reply-To: <20260912100325.4835B1F0089A@smtp.kernel.org>
On Sat, 12 Sep 2026 10:03:24 +0000, sashiko-bot@kernel.org wrote:
> Will this loop skip devices that are in the process of being removed, leaving
> their request queues permanently quiesced?
Confirmed.
The old code unquiesced every queue in the tagset, including queues of
devices already being removed: a queue leaves set->tag_list only in
blk_mq_exit_queue(), which runs after device_del().
shost_for_each_device() skips those devices instead, because
scsi_device_get() fails once a device is in SDEV_CANCEL or SDEV_DEL. Their
queues then stay quiesced forever, and sd_shutdown() -> sd_sync_cache()
hangs in blk_execute_rq() with no timeout, since the request is never
started.
v3 takes a different approach. It keeps blk_mq_quiesce_tagset() as before
and only unquiesces hba->host->pseudo_sdev on top of it, so internal
commands stay dispatchable while the logical units remain quiesced. Clock
scaling and ufshcd_pause_command_processing() are unchanged.
Bart's Reviewed-by is dropped from v3 since the implementation changed.
Thanks,
Stanley Jhu
prev parent reply other threads:[~2026-09-12 13:16 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-12 9:41 [PATCH v2] scsi: ufs: core: Quiesce SCSI devices instead of host tagset during error handling Stanley Jhu
2026-09-12 10:03 ` sashiko-bot
2026-09-12 13:16 ` Stanley Jhu [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=20260912131616.2301278-1-stanleyjhu@google.com \
--to=stanleyjhu@google.com \
--cc=bvanassche@acm.org \
--cc=linux-scsi@vger.kernel.org \
--cc=powenkao@google.com \
--cc=sashiko-bot@kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.