Re: main [so: 15] context, 7950X3D and RTL8251/8153 based Ethernet dongle: loss of state, example log information

From: Jakob Alvermark <jakob_at_alvermark.net>
Date: Mon, 04 Mar 2024 20:33:06 UTC
On 3/4/24 21:13, Alexander Motin wrote:
> On 04.03.2024 15:00, Poul-Henning Kamp wrote:
>>>> Nov 30 03:23:18 7950X3D-UFS kernel: ue0: link state changed to DOWN
>>>> Nov 30 03:23:18 7950X3D-UFS kernel: ue0: link state changed to UP
>>>> Nov 30 03:23:18 7950X3D-UFS kernel: ue0: link state changed to DOWN
>>>> Nov 30 03:23:18 7950X3D-UFS kernel: ue0: link state changed to UP
>>>> Nov 30 03:23:18 7950X3D-UFS kernel: ue0: link state changed to DOWN
>>>> Nov 30 03:23:18 7950X3D-UFS kernel: ue0: link state changed to UP
>>
>> I consistently had similar problems with my 0x17ef/0x3066 "ThinkPad
>> Thunderbolt 3 Dock MCU", but they went away after I forced it to
>> use the if_cdce driver instead with this quirk:
>>
>>          /* This works much better with if_cdce than if_ure */
>>          USB_QUIRK(LENOVO, TBT3LAN,  0x0000, 0xffff, UQ_CFG_INDEX_1),
>
> AFAIK it is only a workaround.  I saw it myself on number of different 
> USB dongles and laptops, that USB starting experience some problems 
> with multiple NIC queues and some other factors. IIRC the Realtek 
> driver was much more stable once I limited it to one queue and some 
> other hacks. IIRC if_cdce just has only one queue and other 
> limitations, that not only makes it more stable, but also much 
> slower.  It would be good to understand what's wrong is there exactly, 
> since IMHO it is a big problem now. Unfortunately HPS was unable to 
> reproduce it on his laptop (that makes me wonder if is is specific to 
> chipset(s) or thunderbolt?), so it ended nowhere so far.

I have a Lenovo USB 3 dongle, so no thunderbolt.

USB ID 0x17ef/0x7205

rgephy1: <RTL8251/8153 1000BASE-T media interface> PHY 0 on miibus1

I tried using the cdce driver, it gives me < 100Mb/s, while the ure 
driver gets > 500Mb/s


Jakob