From: bugzilla-daemon@kernel.org
To: linux-usb@vger.kernel.org
Subject: [Bug 220491] usb_storage connected SD card disconnects/reconnects on resume from suspend
Date: Wed, 03 Sep 2025 06:12:11 +0000 [thread overview]
Message-ID: <bug-220491-208809-Mnu7iNmPPl@https.bugzilla.kernel.org/> (raw)
In-Reply-To: <bug-220491-208809@https.bugzilla.kernel.org/>
https://bugzilla.kernel.org/show_bug.cgi?id=220491
--- Comment #22 from Michał Pecio (michal.pecio@gmail.com) ---
Note that these numbers are completely different from the other cases, so I'm
not sure if the cases are really related.
For example, the very first log posted here shows suspending the devices from
U1 low power state to U3 and then the device is at U0 after resuming with
"connect status changed". Perhaps it got power cycled by HW?
The kernel immediately attempts some control transfers which fail, maybe device
firmware is waiting for a reset?
The device gets reset after the control transfers fail:
[ 158.205065] xhci_hcd 0000:00:14.0: Get port status 3-4 read: 0x1203, return
0x203
[ 158.205101] xhci_hcd 0000:00:14.0: set port reset, actual port 3-4 status =
0x1311
[ 158.268775] xhci_hcd 0000:00:14.0: Get port status 3-4 read: 0x4202d0,
return 0x4102d0
Things are different from the other case, because "connect status change" and
"port link state" change are set. And the 'd' stands for 'port reset' (still
pending) and link state SS.Inactive.
Then it comes back:
[ 158.332893] xhci_hcd 0000:00:14.0: Get port status 3-4 read: 0x621203,
return 0x510203
If not a HW bug then I would guess the device disabled/enabled its upstream
port. And xhci_hcd has flagged it as "inactive" and will be returning -ENODEV
on URB submissions:
[ 158.389217] usb 3-4: reset SuperSpeed USB device number 2 using xhci_hcd
[ 158.404819] xhci_hcd 0000:00:14.0: Can't queue urb, port error, link
inactive
[ 158.404838] xhci_hcd 0000:00:14.0: Can't queue urb, port error, link
inactive
[ 158.404847] xhci_hcd 0000:00:14.0: Can't queue urb, port error, link
inactive
[ 158.476865] xhci_hcd 0000:00:14.0: xhci_hub_status_data: stopping usb3 port
polling
[ 158.508898] usb 3-4: reset SuperSpeed USB device number 2 using xhci_hcd
[ 158.524913] xhci_hcd 0000:00:14.0: Can't queue urb, port error, link
inactive
[ 158.524933] xhci_hcd 0000:00:14.0: Can't queue urb, port error, link
inactive
[ 158.524941] xhci_hcd 0000:00:14.0: Can't queue urb, port error, link
inactive
I see no way to clear this VDEV_PORT_ERROR flag, I guess the core needs to
destroy and recreate the device?
Then the port seems to be put into U3.
[ 158.629069] xhci_hcd 0000:00:14.0: Set port 3-4 link state, portsc: 0x1203,
write 0x11261
[ 158.656170] usb 3-4: USB disconnect, device number 2
And later the device comes up after being reset once again.
--
You may reply to this email to add a comment.
You are receiving this mail because:
You are watching the assignee of the bug.
next prev parent reply other threads:[~2025-09-03 6:12 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-26 3:34 [Bug 220491] New: usb_storage connected SD card disconnects/reconnects on resume from suspend bugzilla-daemon
2025-08-26 3:38 ` [Bug 220491] " bugzilla-daemon
2025-08-26 10:41 ` bugzilla-daemon
2025-08-26 15:05 ` bugzilla-daemon
2025-08-26 16:18 ` bugzilla-daemon
2025-08-26 17:24 ` bugzilla-daemon
2025-08-27 1:55 ` bugzilla-daemon
2025-08-27 3:49 ` bugzilla-daemon
2025-08-27 8:28 ` bugzilla-daemon
2025-08-27 16:26 ` bugzilla-daemon
2025-08-27 16:34 ` bugzilla-daemon
2025-08-27 17:01 ` bugzilla-daemon
2025-08-28 2:47 ` bugzilla-daemon
2025-08-28 17:33 ` bugzilla-daemon
2025-08-28 18:11 ` bugzilla-daemon
2025-08-29 17:37 ` bugzilla-daemon
2025-08-29 18:31 ` bugzilla-daemon
2025-09-02 21:23 ` bugzilla-daemon
2025-09-02 21:24 ` bugzilla-daemon
2025-09-02 21:45 ` bugzilla-daemon
2025-09-03 2:26 ` bugzilla-daemon
2025-09-03 5:39 ` bugzilla-daemon
2025-09-03 6:12 ` bugzilla-daemon [this message]
2025-09-03 12:58 ` bugzilla-daemon
2025-09-03 14:09 ` bugzilla-daemon
2025-09-03 15:29 ` bugzilla-daemon
2025-09-03 16:36 ` bugzilla-daemon
2025-09-03 16:43 ` bugzilla-daemon
2025-09-03 17:12 ` bugzilla-daemon
2025-09-03 19:00 ` bugzilla-daemon
2025-09-03 21:04 ` bugzilla-daemon
2025-09-03 21:08 ` bugzilla-daemon
2025-09-03 21:13 ` bugzilla-daemon
2025-09-03 21:22 ` bugzilla-daemon
2025-09-04 0:59 ` bugzilla-daemon
2025-09-04 1:00 ` bugzilla-daemon
2025-09-04 1:29 ` bugzilla-daemon
2025-09-04 2:49 ` bugzilla-daemon
2025-09-04 5:11 ` bugzilla-daemon
2025-09-04 6:05 ` bugzilla-daemon
2025-09-04 15:17 ` bugzilla-daemon
2025-09-04 23:03 ` bugzilla-daemon
2025-09-05 1:35 ` bugzilla-daemon
2025-09-05 11:53 ` bugzilla-daemon
2025-09-05 18:30 ` bugzilla-daemon
2025-09-05 21:44 ` bugzilla-daemon
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=bug-220491-208809-Mnu7iNmPPl@https.bugzilla.kernel.org/ \
--to=bugzilla-daemon@kernel.org \
--cc=linux-usb@vger.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).