Message ID | 20241105085301.524312-1-mika.westerberg@linux.intel.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | thunderbolt: Fix connection issue with Pluggable UD-4VPD dock | expand |
On Tue, Nov 05, 2024 at 10:53:01AM +0200, Mika Westerberg wrote: > Rick reported that his Pluggable USB4 dock does not work anymore after > 6.6.28 kernel. > > It looks like commit c6ca1ac9f472 ("thunderbolt: Increase sideband > access polling delay") makes the device router enumeration happen later > than what might be expected by the dock (although there is no such limit > in the USB4 spec) which probably makes it assume there is something > wrong with the high-speed link and reset it. After the link is reset the > same issue happens again and again. > > For this reason lower the sideband access delay from 5ms to 1ms. This > seems to work fine according to Rick's testing. > > Reported-by: Rick Lahaye <rick@581238.xyz> > Closes: https://lore.kernel.org/linux-usb/000f01db247b$d10e1520$732a3f60$@581238.xyz/ > Tested-by: Rick Lahaye <rick@581238.xyz> > Fixes: c6ca1ac9f472 ("thunderbolt: Increase sideband access polling delay") This commit is not in the 6.6.y tree, it only showed up in 6.10.y, so how does this resolve an issue in the 6.6.y tree? confused, greg k-h
Hi Greg, On Tue, Nov 05, 2024 at 10:17:43AM +0100, Greg KH wrote: > On Tue, Nov 05, 2024 at 10:53:01AM +0200, Mika Westerberg wrote: > > Rick reported that his Pluggable USB4 dock does not work anymore after > > 6.6.28 kernel. > > > > It looks like commit c6ca1ac9f472 ("thunderbolt: Increase sideband > > access polling delay") makes the device router enumeration happen later > > than what might be expected by the dock (although there is no such limit > > in the USB4 spec) which probably makes it assume there is something > > wrong with the high-speed link and reset it. After the link is reset the > > same issue happens again and again. > > > > For this reason lower the sideband access delay from 5ms to 1ms. This > > seems to work fine according to Rick's testing. > > > > Reported-by: Rick Lahaye <rick@581238.xyz> > > Closes: https://lore.kernel.org/linux-usb/000f01db247b$d10e1520$732a3f60$@581238.xyz/ > > Tested-by: Rick Lahaye <rick@581238.xyz> > > Fixes: c6ca1ac9f472 ("thunderbolt: Increase sideband access polling delay") > > This commit is not in the 6.6.y tree, it only showed up in 6.10.y, so > how does this resolve an issue in the 6.6.y tree? This refers to a mainline commit that caused the issue. The 6.6.28 is the kernel version Rick used where it still worked. In other words, this is not a backport of a fix but a fix intented to the mainline ;-) I hope this clarifies. I can adjust the commit message if needed.
On Tue, Nov 05, 2024 at 11:24:12AM +0200, Mika Westerberg wrote: > Hi Greg, > > On Tue, Nov 05, 2024 at 10:17:43AM +0100, Greg KH wrote: > > On Tue, Nov 05, 2024 at 10:53:01AM +0200, Mika Westerberg wrote: > > > Rick reported that his Pluggable USB4 dock does not work anymore after > > > 6.6.28 kernel. > > > > > > It looks like commit c6ca1ac9f472 ("thunderbolt: Increase sideband > > > access polling delay") makes the device router enumeration happen later > > > than what might be expected by the dock (although there is no such limit > > > in the USB4 spec) which probably makes it assume there is something > > > wrong with the high-speed link and reset it. After the link is reset the > > > same issue happens again and again. > > > > > > For this reason lower the sideband access delay from 5ms to 1ms. This > > > seems to work fine according to Rick's testing. > > > > > > Reported-by: Rick Lahaye <rick@581238.xyz> > > > Closes: https://lore.kernel.org/linux-usb/000f01db247b$d10e1520$732a3f60$@581238.xyz/ > > > Tested-by: Rick Lahaye <rick@581238.xyz> > > > Fixes: c6ca1ac9f472 ("thunderbolt: Increase sideband access polling delay") > > > > This commit is not in the 6.6.y tree, it only showed up in 6.10.y, so > > how does this resolve an issue in the 6.6.y tree? > > This refers to a mainline commit that caused the issue. The 6.6.28 is > the kernel version Rick used where it still worked. In other words, this > is not a backport of a fix but a fix intented to the mainline ;-) I hope > this clarifies. I can adjust the commit message if needed. Ah, yeah, that is confusing so rewording it might be good as the offending kernel is really 6.10, not 6.6. Also, do you want me to take this in my tree now when you resend it, or do you want to send it with other changes later? thanks, greg k-h
On Tue, Nov 05, 2024 at 10:50:17AM +0100, Greg KH wrote: > On Tue, Nov 05, 2024 at 11:24:12AM +0200, Mika Westerberg wrote: > > Hi Greg, > > > > On Tue, Nov 05, 2024 at 10:17:43AM +0100, Greg KH wrote: > > > On Tue, Nov 05, 2024 at 10:53:01AM +0200, Mika Westerberg wrote: > > > > Rick reported that his Pluggable USB4 dock does not work anymore after > > > > 6.6.28 kernel. > > > > > > > > It looks like commit c6ca1ac9f472 ("thunderbolt: Increase sideband > > > > access polling delay") makes the device router enumeration happen later > > > > than what might be expected by the dock (although there is no such limit > > > > in the USB4 spec) which probably makes it assume there is something > > > > wrong with the high-speed link and reset it. After the link is reset the > > > > same issue happens again and again. > > > > > > > > For this reason lower the sideband access delay from 5ms to 1ms. This > > > > seems to work fine according to Rick's testing. > > > > > > > > Reported-by: Rick Lahaye <rick@581238.xyz> > > > > Closes: https://lore.kernel.org/linux-usb/000f01db247b$d10e1520$732a3f60$@581238.xyz/ > > > > Tested-by: Rick Lahaye <rick@581238.xyz> > > > > Fixes: c6ca1ac9f472 ("thunderbolt: Increase sideband access polling delay") > > > > > > This commit is not in the 6.6.y tree, it only showed up in 6.10.y, so > > > how does this resolve an issue in the 6.6.y tree? > > > > This refers to a mainline commit that caused the issue. The 6.6.28 is > > the kernel version Rick used where it still worked. In other words, this > > is not a backport of a fix but a fix intented to the mainline ;-) I hope > > this clarifies. I can adjust the commit message if needed. > > Ah, yeah, that is confusing so rewording it might be good as the > offending kernel is really 6.10, not 6.6. Okay will do! > Also, do you want me to take this in my tree now when you resend it, or > do you want to send it with other changes later? I'll send it along with one more fix later this week if that's fine.
On Tue, Nov 05, 2024 at 11:56:38AM +0200, Mika Westerberg wrote: > On Tue, Nov 05, 2024 at 10:50:17AM +0100, Greg KH wrote: > > On Tue, Nov 05, 2024 at 11:24:12AM +0200, Mika Westerberg wrote: > > > Hi Greg, > > > > > > On Tue, Nov 05, 2024 at 10:17:43AM +0100, Greg KH wrote: > > > > On Tue, Nov 05, 2024 at 10:53:01AM +0200, Mika Westerberg wrote: > > > > > Rick reported that his Pluggable USB4 dock does not work anymore after > > > > > 6.6.28 kernel. > > > > > > > > > > It looks like commit c6ca1ac9f472 ("thunderbolt: Increase sideband > > > > > access polling delay") makes the device router enumeration happen later > > > > > than what might be expected by the dock (although there is no such limit > > > > > in the USB4 spec) which probably makes it assume there is something > > > > > wrong with the high-speed link and reset it. After the link is reset the > > > > > same issue happens again and again. > > > > > > > > > > For this reason lower the sideband access delay from 5ms to 1ms. This > > > > > seems to work fine according to Rick's testing. > > > > > > > > > > Reported-by: Rick Lahaye <rick@581238.xyz> > > > > > Closes: https://lore.kernel.org/linux-usb/000f01db247b$d10e1520$732a3f60$@581238.xyz/ > > > > > Tested-by: Rick Lahaye <rick@581238.xyz> > > > > > Fixes: c6ca1ac9f472 ("thunderbolt: Increase sideband access polling delay") > > > > > > > > This commit is not in the 6.6.y tree, it only showed up in 6.10.y, so > > > > how does this resolve an issue in the 6.6.y tree? > > > > > > This refers to a mainline commit that caused the issue. The 6.6.28 is > > > the kernel version Rick used where it still worked. In other words, this > > > is not a backport of a fix but a fix intented to the mainline ;-) I hope > > > this clarifies. I can adjust the commit message if needed. > > > > Ah, yeah, that is confusing so rewording it might be good as the > > offending kernel is really 6.10, not 6.6. > > Okay will do! > > > Also, do you want me to take this in my tree now when you resend it, or > > do you want to send it with other changes later? > > I'll send it along with one more fix later this week if that's fine. Sure!
diff --git a/drivers/thunderbolt/usb4.c b/drivers/thunderbolt/usb4.c index 0a9b4aeb3fa1..402fdf8b1cde 100644 --- a/drivers/thunderbolt/usb4.c +++ b/drivers/thunderbolt/usb4.c @@ -48,7 +48,7 @@ enum usb4_ba_index { /* Delays in us used with usb4_port_wait_for_bit() */ #define USB4_PORT_DELAY 50 -#define USB4_PORT_SB_DELAY 5000 +#define USB4_PORT_SB_DELAY 1000 static int usb4_native_switch_op(struct tb_switch *sw, u16 opcode, u32 *metadata, u8 *status,