2022-09-13 20:50:02

by Mario Limonciello

[permalink] [raw]
Subject: [PATCH] xhci: Don't show warning for reinit on known broken suspend

commit 8b328f8002bc ("xhci: re-initialize the HC during resume if HCE was
set") introduced a new warning message when the host controller error
was set and re-initializing.

This is expected behavior on some designs which already set
`xhci->broken_suspend` so the new warning is alarming to some users.

Modify the code to only show the warning if this was a surprising behavior
to the XHCI driver.

Fixes: 8b328f8002bc ("xhci: re-initialize the HC during resume if HCE was set")
Link: https://bugzilla.kernel.org/show_bug.cgi?id=216470
Reported-by: Artem S. Tashkinov <[email protected]>
Signed-off-by: Mario Limonciello <[email protected]>
---
drivers/usb/host/xhci.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
index 38649284ff88..a7ef675f00fd 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -1183,7 +1183,8 @@ int xhci_resume(struct xhci_hcd *xhci, bool hibernated)
/* re-initialize the HC on Restore Error, or Host Controller Error */
if (temp & (STS_SRE | STS_HCE)) {
reinit_xhc = true;
- xhci_warn(xhci, "xHC error in resume, USBSTS 0x%x, Reinit\n", temp);
+ if (!xhci->broken_suspend)
+ xhci_warn(xhci, "xHC error in resume, USBSTS 0x%x, Reinit\n", temp);
}

if (reinit_xhc) {
--
2.34.1


2022-09-14 13:14:49

by Mathias Nyman

[permalink] [raw]
Subject: Re: [PATCH] xhci: Don't show warning for reinit on known broken suspend

On 13.9.2022 23.35, Mario Limonciello wrote:
> commit 8b328f8002bc ("xhci: re-initialize the HC during resume if HCE was
> set") introduced a new warning message when the host controller error
> was set and re-initializing.
>
> This is expected behavior on some designs which already set
> `xhci->broken_suspend` so the new warning is alarming to some users.
>
> Modify the code to only show the warning if this was a surprising behavior
> to the XHCI driver.
>
> Fixes: 8b328f8002bc ("xhci: re-initialize the HC during resume if HCE was set")
> Link: https://bugzilla.kernel.org/show_bug.cgi?id=216470
> Reported-by: Artem S. Tashkinov <[email protected]>
> Signed-off-by: Mario Limonciello <[email protected]>
> ---

Thanks, adding to queue

-Mathias