From: "Michał Pecio" <michal.pecio@gmail.com>
To: ki.chiang65@gmail.com
Cc: gregkh@linuxfoundation.org, linux-kernel@vger.kernel.org,
linux-usb@vger.kernel.org, mathias.nyman@intel.com,
stable@vger.kernel.org
Subject: Re: [PATCH 2/3] xhci: Fix control transfer error on Etron xHCI host
Date: Wed, 11 Sep 2024 09:52:33 +0200 [thread overview]
Message-ID: <20240911095233.3e4d734d@foxbook> (raw)
In-Reply-To: <20240911051716.6572-2-ki.chiang65@gmail.com>
Hi,
> This happens when the xHCI driver enqueue a control TD (which cross
> over the Link TRB between two ring segments, as shown) in the endpoint
> zero's transfer ring. Seems the Etron xHCI host can not perform this
> TD correctly, causing the USB transfer error occurred, maybe the upper
> driver retry that control-IN request can solve problem, but not all
> drivers do this.
>
> | |
> -------
> | TRB | Setup Stage
> -------
> | TRB | Link
> -------
> -------
> | TRB | Data Stage
> -------
> | TRB | Status Stage
> -------
> | |
I wonder about a few things.
1. What are the exact symptoms, besides Ethernet driver errors?
Any errors from xhci_hcd? What if dynamic debug is enabled?
2. How did you determine that this is the exact cause?
3. Does it happen every time when a Link follows Setup, or only
randomly and it takes lots of control transfers to trigger it?
4. How is it even possible? As far as I see, Linux simply queues
three TRBs for a control URB. There are 255 slots in a segemnt,
so exactly 85 URBs should fit, and then back to the first slot.
Regards,
Michal
next prev parent reply other threads:[~2024-09-11 7:52 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-11 5:17 [PATCH 3/3] xhci: Don't perform Soft Retry for Etron xHCI host Kuangyi Chiang
2024-09-11 5:17 ` [PATCH 2/3] xhci: Fix control transfer error on " Kuangyi Chiang
2024-09-11 7:52 ` Michał Pecio [this message]
2024-09-11 15:09 ` Mathias Nyman
2024-09-12 6:19 ` Kuangyi Chiang
2024-09-11 15:07 ` Mathias Nyman
2024-09-13 5:25 ` Kuangyi Chiang
2024-09-11 5:17 ` [PATCH 1/3] xhci: Don't issue Reset Device command to " Kuangyi Chiang
2024-09-11 5:17 ` [PATCH 0/3] xhci: Some improvement for " Kuangyi Chiang
2024-09-11 7:38 ` Michał Pecio
2024-09-12 5:52 ` Kuangyi Chiang
2024-09-12 7:12 ` Michał Pecio
2024-09-16 2:04 ` Kuangyi Chiang
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=20240911095233.3e4d734d@foxbook \
--to=michal.pecio@gmail.com \
--cc=gregkh@linuxfoundation.org \
--cc=ki.chiang65@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=mathias.nyman@intel.com \
--cc=stable@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