From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: jiangdayu <jiangdayu@xiaomi.com>
Cc: Mathias Nyman <mathias.nyman@intel.com>,
Longfang Liu <liulongfang@huawei.com>,
linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org,
yudongbin <yudongbin@xiaomi.com>, guhuinan <guhuinan@xiaomi.com>,
chenyu45 <chenyu45@xiaomi.com>,
mahongwei3 <mahongwei3@xiaomi.com>
Subject: Re: [PATCH] usb: xhci: add xhci_halt() for HCE Handling
Date: Tue, 27 Jan 2026 12:22:40 +0100 [thread overview]
Message-ID: <2026012708-liability-sincere-5ed4@gregkh> (raw)
In-Reply-To: <20260127110422.306711-1-jiangdayu@xiaomi.com>
On Tue, Jan 27, 2026 at 07:04:22PM +0800, jiangdayu wrote:
> When the xHCI controller reports a Host Controller Error (HCE) status
> in the interrupt handler, the driver currently only logs a warning and
> continues execution. However, a Host Controller Error indicates a
> critical hardware failure that requires the controller to be halted.
>
> Add xhci_halt(xhci) call after the HCE warning to properly halt the
> controller when this error condition is detected. This ensures the
> controller is in a consistent state and prevents further operations
> on a failed hardware. Additionally, if there are still unhandled
> interrupts at this point, it may cause interrupt storm.
>
> The change is made in xhci_irq() function where STS_HCE status is
> checked, mirroring the existing error handling pattern used for
> STS_FATAL errors.
>
> Fixes: 2a25e66d676df ("xhci: print warning when HCE was set")
> Signed-off-by: jiangdayu <jiangdayu@xiaomi.com>
We need a full name, not an email alias, sorry.
And this isn't really "fixing" that commit, there's nothing wrong with
it as-is. This is adding new functionality to the code.
> ---
> drivers/usb/host/xhci-ring.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c
> index 9315ba18310d..1cbefee3c4ca 100644
> --- a/drivers/usb/host/xhci-ring.c
> +++ b/drivers/usb/host/xhci-ring.c
> @@ -3195,6 +3195,7 @@ irqreturn_t xhci_irq(struct usb_hcd *hcd)
>
> if (status & STS_HCE) {
> xhci_warn(xhci, "WARNING: Host Controller Error\n");
> + xhci_halt(xhci);
What is going to start things back up again? And as you are calling
this function, why is the warning message needed anymore? The
tracepoint information will give you that message now, right?
And is this just papering over a hardware bug? Should this really be
happening for any normal system?
thanks,
greg k-h
next prev parent reply other threads:[~2026-01-27 11:22 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-27 11:04 [PATCH] usb: xhci: add xhci_halt() for HCE Handling jiangdayu
2026-01-27 11:22 ` Greg Kroah-Hartman [this message]
2026-01-28 8:48 ` Dayu Jiang
2026-01-28 8:56 ` Greg Kroah-Hartman
2026-02-26 9:27 ` Dayu Jiang
2026-02-26 16:44 ` Mathias Nyman
2026-02-26 18:17 ` Thinh Nguyen
2026-02-27 7:26 ` Dayu Jiang
2026-02-28 0:22 ` Thinh Nguyen
2026-02-27 9:43 ` Mathias Nyman
2026-02-27 11:05 ` Michal Pecio
2026-02-28 0:06 ` Thinh Nguyen
2026-02-28 0:18 ` Thinh Nguyen
2026-02-27 7:33 ` Dayu Jiang
2026-01-27 12:25 ` Mathias Nyman
2026-01-28 8:53 ` Dayu Jiang
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=2026012708-liability-sincere-5ed4@gregkh \
--to=gregkh@linuxfoundation.org \
--cc=chenyu45@xiaomi.com \
--cc=guhuinan@xiaomi.com \
--cc=jiangdayu@xiaomi.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=liulongfang@huawei.com \
--cc=mahongwei3@xiaomi.com \
--cc=mathias.nyman@intel.com \
--cc=yudongbin@xiaomi.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