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: Tue, 05 Mar 2024 19:08:50 UTC
On 3/4/24 21:39, Alexander Motin wrote:
>
>>> 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.
>
> I also use USB3 dongles.  But in my laptops the USB 3 ports are 
> provided by Intel Thunderbolt controller, while in HPS' they were 
> plain from USB3 controller.  Though it may be just a coincidence.
I don't think (how do I know?) I have thunderbolt in this Lenovo AMD 
Ryzen laptop.
>
>> 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
>
> Right, I saw about the same.
>
Just to try something else, I got another USB dongle, I does the exact 
same thing:

ugen1.10: <ASIX Elec. Corp. AX88179> at usbus1
axge0 on uhub6
axge0: <ASIX Elec. Corp. AX88179, rev 3.00/1.00, addr 9> on usbus1
miibus1: <MII bus> on axge0
rgephy1: <RTL8169S/8110S/8211 1000BASE-T media interface> PHY 3 on miibus1
rgephy1:  none, 10baseT, 10baseT-FDX, 10baseT-FDX-flow, 100baseTX, 
100baseTX-FDX, 100baseTX-FDX-flow, 1000baseT-FDX, 1000baseT-FDX-master, 
1000baseT-FDX-flow, 1000baseT-FDX-flow-master, auto, auto-flow
ue0: <USB Ethernet> on axge0
ue0: Ethernet address: xx:xx:xx:xx:xx:xx
ue0: link state changed to DOWN
ue0: link state changed to UP
ue0: link state changed to DOWN
ue0: link state changed to UP
ue0: link state changed to DOWN
ue0: link state changed to UP
ue0: link state changed to DOWN
ue0: link state changed to UP
ue0: 2 link states coalesced
ue0: link state changed to UP