Open pauloppenheim opened 11 years ago
This is a duplicate of #1
I'm moderately sure this is not a duplicate. That issue reports seeing malformed packets; this issue is not seeing any packets aside from DNS UDP with bad CRC (but apparently correct data?). Issue #1 reports problems with linux kernels 3.5 to 3.9 and resolution with 3.10; this issue appears with kernel 3.11. From a user level they appear superficially similar, however from a driver level I would not make that assumption.
I'm having the same issue with the both the same laptop (and others) with the same adapter. What can I do to help diagnose and correct this issue?
On Wed, Sep 25, 2013 at 2:02 PM, Paul Oppenheim notifications@github.comwrote:
I'm moderately sure this is not a duplicate. That issue reports seeing malformed packets; this issue is not seeing any packets aside from DNS UDP with bad CRC (but apparently correct data?). Issue #1https://github.com/FreddyXin/ax88179_178a/issues/1reports problems with linux kernels 3.5 to 3.9 and resolution with 3.10; this issue appears with kernel 3.11. From a user level they appear superficially similar, however from a driver level I would not make that assumption.
— Reply to this email directly or view it on GitHubhttps://github.com/FreddyXin/ax88179_178a/issues/5#issuecomment-25124551 .
I also have problems with a Dell XPS 13 running 64-bit Ubuntu 13.10. When connected at 1Gbps, I get large numbers of dropped packets (identified by rx-drp in netstat output). If I use ethtool to force 100Mbps, I stop dropping packets.
$ uname -a
Linux tullock 3.11.0-12-generic #19-Ubuntu SMP Wed Oct 9 16:20:46 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
$ lsusb | grep ASIX
Bus 004 Device 007: ID 0b95:1790 ASIX Electronics Corp.
There's a bug in the asix.h header file. These two lines:
should be:
We got this fix from ASIX a few weeks ago. 1Gbps was unusable (lots of dropped packets) until we made this change. Looks like the GitHub version needs to be updated.
Commenter @mmason56 - you have no other activity on github besides this comment. Do you have a way to verify the information you have presented?
I have applied the changes, and the #define
changes do solve the problem. I can't imagine how these changes would possibly be dangerous, but I am not a kernel expert, and this code runs privileged. Through your contact with ASIX, could you ask them to comment on this issue from an account of an ASIX employee?
For those following the issue, CRC and DROP are self-explanatory, but MII is ethernet specific. It refers to "Media Independent Interface", and more info is available on Wikipedia. Naturally, if a dropped packet (common occurrence) is thought to be a CRC error (uncommon occurrence), the interface would not work for very long. This explains the symptoms of my original problem very well, so aside from ASIX verification on patch authenticity, I consider this issue solved.
I cannot vouch for the person who suggested the changes to the code, but I can say that it fixed the issue. The evidence seems to point to it being safe to roll into the code.
Seems the above fix made its way into linux kernel line v3.12.
(a) is this confirmed fixed, @pauloppenheim ? (b) is your adapter the Dell-branded one here? They don't mention Linux compatibility... http://accessories.us.dell.com/sna/productdetail.aspx?c=us&l=en&s=bsd&cs=04&sku=331-9318
Yes, this fix works, and @jekkel is correct that a variation of the patch has been applied in kernel 3.12. Here's the submission: https://lkml.org/lkml/2013/10/22/32 along with some other interesting patches in that same time frame: https://lkml.org/lkml/2013/10/24/28 https://lkml.org/lkml/2013/12/13/129
As with all kernel modules, one caveat is that this requires a make clean && make && make install
after every kernel update the distro makes, which can be hard to remember.
AX_RXHDR_MII_ERR is not used in the source, so it is not necessary (but is good for reference I suppose).
I am not using the Dell branded adapter. I have two cheap USB 3 gigabit adapters (Rosewill and some other brand I have not heard of before), and both of them have the asix chipset.
The issue would be closed, but the patch has not been made in this repo yet, so this bug is still useful to note to those who would use this source driver in older kernels.
Upon boot / plug, the device connects and negotiates correctly, but then fails to even be able to query DNS reliably.
Cheap example:
My hardware is a Dell XPS 13 "Developer Edition" Ubuntu machine, an "ultrabook" with no built-in Ethernet. I appear to not be the only one with this hardware and this same issue:
I have tried reasonably fresh builds of kernel 3.11, both from mainline and from Ubuntu Saucy.
Please let me know if there is any more data I could provide that would be useful.
Thank you for maintaining this driver! It seems like it might be growing in importance as more ultrabooks get produced without ethernet.