From: Peter Wang <peter.wang@mediatek.com>
To: Stanley Jhu <stanleyjhu@google.com>,
"Martin K . Petersen" <mkp@kernel.org>,
<linux-scsi@vger.kernel.org>
Cc: "James E . J . Bottomley" <James.Bottomley@HansenPartnership.com>,
"Bart Van Assche" <bvanassche@acm.org>,
Alim Akhtar <alim.akhtar@samsung.com>,
Bean Huo <beanhuo@micron.com>, Can Guo <can.guo@oss.qualcomm.com>,
<linux-kernel@vger.kernel.org>, <stable@vger.kernel.org>
Subject: Re: [PATCH v5 5/6] scsi: ufs: core: Remove completed-without-interrupt path in ufshcd_abort()
Date: Thu, 22 Oct 2026 17:10:40 +0800 [thread overview]
Message-ID: <dc069f4e97eeb589dc3a222017f2daad067ed0ff.camel@mediatek.com> (raw)
In-Reply-To: <20261022034443.3034432-6-stanleyjhu@google.com>
On Thu, 2026-10-22 at 11:44 +0800, Stanley Jhu wrote:
> In SDB mode, a command that times out right as the controller
> finishes
> it can be completed twice:
>
> 1. The command times out and scsi_timeout() schedules ufshcd_abort().
> 2. The controller finishes the command and clears its doorbell bit in
> REG_UTP_TRANSFER_REQ_DOOR_BELL, while the completion handler has
> not
> yet cleared BIT(tag) in hba->outstanding_reqs.
> 3. ufshcd_abort() sees the doorbell bit clear and calls
> __ufshcd_transfer_req_compl() without clearing BIT(tag) in
> hba->outstanding_reqs.
> 4. The normal completion handler or the logical unit reset that
> follows
> sees BIT(tag) still set in hba->outstanding_reqs and completes the
> same command a second time.
>
> This branch only exists for a rare corner case, a completion
> interrupt
> that is lost or arrives late. Remove it to simplify the abort path
> and
> leave such a command to the SCSI error handler, like any other
> command
> that cannot be aborted. The cost is a slower recovery in this corner
> case, which is acceptable since it only happens after a timeout.
>
> Fixes: 169f5eb28869 ("scsi: ufs: Optimize SCSI command processing")
> Cc: stable@vger.kernel.org
> Link:
> https://lore.kernel.org/r/fdb5c391-01ef-4a23-94c2-4f3853909348@acm.org
>
> Signed-off-by: Stanley Jhu <stanleyjhu@google.com>
> ---
>
Reviewed-by: Peter Wang <peter.wang@mediatek.com>
next prev parent reply other threads:[~2026-10-22 9:10 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-22 3:44 [PATCH v5 0/6] scsi: ufs: core: Factor hba->outstanding_reqs helper and fix double completions Stanley Jhu
2026-10-22 3:44 ` [PATCH v5 1/6] scsi: ufs: core: Remove an always-false WARN_ONCE() Stanley Jhu
2026-10-22 3:44 ` [PATCH v5 2/6] scsi: ufs: core: Add a helper for clearing hba->outstanding_reqs Stanley Jhu
2026-10-22 3:44 ` [PATCH v5 3/6] scsi: ufs: core: Fix double completion in ufshcd_clear_lu_cmds() Stanley Jhu
2026-10-22 3:44 ` [PATCH v5 4/6] scsi: ufs: core: Fix double release in ufshcd_eh_timed_out() Stanley Jhu
2026-10-22 18:03 ` Bean Huo
2026-10-22 3:44 ` [PATCH v5 5/6] scsi: ufs: core: Remove completed-without-interrupt path in ufshcd_abort() Stanley Jhu
2026-10-22 9:10 ` Peter Wang [this message]
2026-10-22 21:23 ` Bean Huo
2026-10-22 3:44 ` [PATCH v5 6/6] scsi: ufs: core: Do not release a reserved request " Stanley Jhu
2026-10-22 21:24 ` Bean Huo
2026-10-22 17:11 ` [PATCH v5 0/6] scsi: ufs: core: Factor hba->outstanding_reqs helper and fix double completions Bart Van Assche
2026-10-24 3:18 ` Martin K. Petersen
2026-10-29 2:02 ` Martin K. Petersen (Oracle)
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=dc069f4e97eeb589dc3a222017f2daad067ed0ff.camel@mediatek.com \
--to=peter.wang@mediatek.com \
--cc=James.Bottomley@HansenPartnership.com \
--cc=alim.akhtar@samsung.com \
--cc=beanhuo@micron.com \
--cc=bvanassche@acm.org \
--cc=can.guo@oss.qualcomm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=mkp@kernel.org \
--cc=stable@vger.kernel.org \
--cc=stanleyjhu@google.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 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.