![]() ![]() |
Nov 29 2005, 08:40 AM
Post
#1
|
|
|
Group: Members Posts: 233 Joined: 2-December 03 From: Boston, MA Member No.: 1,029 |
Howdy,
I recently discovered that Linux Kernel 2.6.14 breaks usbnet transfers from the Zaurus. Specifically, I was using 2.6.14-1 from the Fedora Core 4 update server with a C860. The first problem I noticed was that my connection hung when trying to enter a certain directory using samba (while browsing from my PC). Some directories worked fine and some hung. I next noticed that certain file transfers would hang, regardless of the protocol (I tried scp, ftp, and samba). Some files transferred just fine, others hung. I eventually determined that any file with a size >= 1458 bytes would hang. Any file with a size smaller than this transferred just fine. Additionally, I'm assuming that the directory browsing issue is related to the number of entries in the directory and, therefore, the size of the directory contents transfer. When I rebooted into kernel 2.6.12, everything worked fine again. I later determined that kernel 2.6.13 is also fine. I tried google'ing some kernel activity to try and find the cause and found some interesting stuff but nothing conclusive. I noticed that the kernel guys are still mucking around with usbnet: they've been engaged in a massive refactoring of that module since at least 2.6.11 (which I earlier discovered completely broke connectivity with the C860). I noticed one comment regarding the implementation of some sort of "hard mtu" feature which sounded somewhat suspicious to me. I haven't researched this any further though so it may be a red herring. The latest stable kernel release is 2.6.14-3 (Fedora's latest is 2.6.14-1) so it's possible it's been fixed in -2 or -3 but I haven't been able to try them and I haven't seen any patch that addresses this issue (but I haven't looked really well yet either). The ChangeLogs for -2 and -3 don't mention anything that sounds related. So, if you're a Linux & Zaurus user, I would recommend that you avoid 2.6.14 and try later versions with caution. ~ray |
|
|
|
Nov 29 2005, 06:57 PM
Post
#2
|
|
![]() Group: Members Posts: 1,164 Joined: 17-December 03 From: Melbourne, AUSTRALIA Member No.: 1,219 |
I've been using 2.6.14 on Gentoo for about 2 weeks now and regularily copy about 500Mb to/from the Z daily using usbnet. I haven't had any problems, but I use scp and ssh rather than samba.
Did yuo roll your own kernel or are you using a stock fedora one? I always roll my own, so maybe the fedora crew left out something that needs to be in there. Stu |
|
|
|
Nov 30 2005, 04:36 AM
Post
#3
|
|
|
Group: Members Posts: 90 Joined: 25-June 05 Member No.: 7,456 |
|
|
|
|
Nov 30 2005, 08:06 AM
Post
#4
|
|
|
Group: Members Posts: 233 Joined: 2-December 03 From: Boston, MA Member No.: 1,029 |
QUOTE(Stubear @ Nov 29 2005, 09:57 PM) I've been using 2.6.14 on Gentoo for about 2 weeks now and regularily copy about 500Mb to/from the Z daily using usbnet. I haven't had any problems, but I use scp and ssh rather than samba. Did yuo roll your own kernel or are you using a stock fedora one? I always roll my own, so maybe the fedora crew left out something that needs to be in there. Stu Stock FC4 kernel. scp (and ftp) failed for me in addition to samba. It sounds like debian 2.6.14 has the same problem though. So maybe Gentoo left the offending patch out? ~ray |
|
|
|
Nov 30 2005, 01:45 PM
Post
#5
|
|
![]() Group: Members Posts: 27 Joined: 19-April 05 From: Netherlands Member No.: 6,917 |
The problem lies in the usbnet module. Since kernel 2.6.14 the module is split up in several sub-modules. The module needed to talk to your zaurus is now 'cdc_subset' in stead of 'usbnet'. It works perfectly fine after adjusting this.
|
|
|
|
Dec 1 2005, 03:11 AM
Post
#6
|
|
![]() Group: Members Posts: 1,376 Joined: 11-January 04 From: Poznań, Poland Member No.: 1,413 |
You have to select one option more to get usbnet working with Zaurus.
CODE config USB_NET_ZAURUS
tristate "Sharp Zaurus (stock ROMs) and compatible" depends on USB_USBNET select USB_NET_CDCETHER select CRC32 default y help Choose this option to support the usb networking links used by Zaurus models like the SL-5000D, SL-5500, SL-5600, A-300, B-500. This also supports some related device firmware, as used in some PDAs from Olympus and some cell phones from Motorola. If you install an alternate image, such as the Linux 2.6 based versions of OpenZaurus, you should no longer need to support this protocol. Only the "eth-fd" or "net_fd" drivers in these devices really need this non-conformant variant of CDC Ethernet (or in some cases CDC MDLM) protocol, not "g_ether". It's in: - Device drivers - USB support - USB Network Adapters - Multi-purpose USB Networking Framework - Sharp Zaurus (stock ROMs) and compatible |
|
|
|
Dec 1 2005, 04:15 AM
Post
#7
|
|
|
Group: Members Posts: 90 Joined: 25-June 05 Member No.: 7,456 |
QUOTE(7_feet_up @ Dec 1 2005, 12:45 AM) The problem lies in the usbnet module. Since kernel 2.6.14 the module is split up in several sub-modules. The module needed to talk to your zaurus is now 'cdc_subset' in stead of 'usbnet'. It works perfectly fine after adjusting this. I rmmod zaurus, cdc_ether and usbnet and then modprobe cdc_subset. The problem remain. |
|
|
|
Dec 1 2005, 07:19 AM
Post
#8
|
|
|
Group: Members Posts: 233 Joined: 2-December 03 From: Boston, MA Member No.: 1,029 |
QUOTE(7_feet_up @ Nov 30 2005, 04:45 PM) The problem lies in the usbnet module. Since kernel 2.6.14 the module is split up in several sub-modules. The module needed to talk to your zaurus is now 'cdc_subset' in stead of 'usbnet'. It works perfectly fine after adjusting this. A minor point but: If I'm not mistaken, the usbnet split happened in 2.6.11 or earlier. 2.6.11 completely broke usbnet connectivity with C860s (specifically) as a result of these changes. (This was fixed by 2.6.12.) ~ray |
|
|
|
Dec 1 2005, 08:51 AM
Post
#9
|
|
|
Group: Members Posts: 233 Joined: 2-December 03 From: Boston, MA Member No.: 1,029 |
QUOTE(Hrw @ Dec 1 2005, 06:11 AM) Fedora has always maintained support for the Zaurus by setting all of the applicable kernel configs, so I'd be surprised if they missed any new ones (although, anything's possible). I'm running 2.6.12 here at work and it's kernel config includes: CONFIG_USB_ZAURUS=y CONFIG_USB_CDCETHER=y CONFIG_USB_USBNET=m I'll check 2.6.14 later... ~ray |
|
|
|
Dec 1 2005, 09:27 AM
Post
#10
|
|
![]() Group: Members Posts: 27 Joined: 19-April 05 From: Netherlands Member No.: 6,917 |
QUOTE(rmrfchik @ Dec 1 2005, 01:15 PM) QUOTE(7_feet_up @ Dec 1 2005, 12:45 AM) The problem lies in the usbnet module. Since kernel 2.6.14 the module is split up in several sub-modules. The module needed to talk to your zaurus is now 'cdc_subset' in stead of 'usbnet'. It works perfectly fine after adjusting this. I rmmod zaurus, cdc_ether and usbnet and then modprobe cdc_subset. The problem remain. Your signature says you use Debian. If you use stock kernels in stead of custom ones, try linux-image-2.6.14-2, since 2.6.14-1 didn't work out of the box. |
|
|
|
Dec 2 2005, 01:25 PM
Post
#11
|
|
|
Group: Members Posts: 233 Joined: 2-December 03 From: Boston, MA Member No.: 1,029 |
As promised, these are the config options in FC4, 2.6.12-1.1637:
CONFIG_USB_USBNET=m CONFIG_USB_NET_ZAURUS=m CONFIG_USB_NET_CDCETHER=m I think that CONFIG_USB_NET_ZAURUS was the one that Hrw was concerned with and it is there. Since my last post, Fedora has posted an updated release of 2.6.14 (2.6.14-1.1644). The announcement only mentions security updates. I'll install and try it a little later and post my results. ~ray |
|
|
|
Dec 19 2005, 12:31 PM
Post
#12
|
|
|
Group: Members Posts: 1 Joined: 19-December 05 Member No.: 8,744 |
QUOTE(7_feet_up @ Nov 30 2005, 04:45 PM) The problem lies in the usbnet module. Since kernel 2.6.14 the module is split up in several sub-modules. The module needed to talk to your zaurus is now 'cdc_subset' in stead of 'usbnet'. It works perfectly fine after adjusting this. Hello, I've tried the module manipulation but my zaurus still stalls on scp. My zaurus module shows its using cdc_ether, from I read here, I need to get it to use cdc_subset? How do I do that? Can someone recommend a build change to "adjust" this? Thanks, |
|
|
|
Jan 9 2006, 04:29 AM
Post
#13
|
|
![]() Group: Members Posts: 340 Joined: 22-August 04 From: Belem, Brasil Member No.: 4,358 |
QUOTE(richb01906 @ Dec 19 2005, 08:31 PM) QUOTE(7_feet_up @ Nov 30 2005, 04:45 PM) The problem lies in the usbnet module. Since kernel 2.6.14 the module is split up in several sub-modules. The module needed to talk to your zaurus is now 'cdc_subset' in stead of 'usbnet'. It works perfectly fine after adjusting this. Hello, I've tried the module manipulation but my zaurus still stalls on scp. My zaurus module shows its using cdc_ether, from I read here, I need to get it to use cdc_subset? How do I do that? Can someone recommend a build change to "adjust" this? Thanks, You need do this: CODE $rmmod zaurus cdc_ether usbnet $modprobe cdc_subset I using Gentoo 2.6.14 (2.6.14-gentoo-r5) and my copnection stalls too.... and cdc_subset dont works too! I'm go try 2.6.15 |
|
|
|
Feb 19 2006, 09:02 AM
Post
#14
|
|
|
Group: Members Posts: 233 Joined: 2-December 03 From: Boston, MA Member No.: 1,029 |
Hi,
Has anyone managed to find a solution to this? The suggested "modprobe cdc_subset" solution doesn't work for me. Furthermore, from reading cdc_subset.c, it does not support the non-standard Zaurus framing, therefore it appears to me that it is not intended for the Zaurus and is NOT the solution for Sharp-ROM-based Zauriis (is it perhaps needed for OZ or others who have done away wth Sharp's non-standard implementation?). I just realized that I forgot to follow-up on my earlier post about testing 2.6.14-1.1644 -- it didn't work. I'm now running 2.6.15-1.1831 and it fails also. I've been avoiding the problem by sticking with the last release that worked (2.6.13-1.1532) but I think I now need to update because of a mouse driver problem, so this issue has now been pushed back to the top of my queue. I've been google'ing like crazy and I can find plenty of references to the 2.6.14 usbnet work but I can't (so far) find anything that addresses this problem. Someone out there must have solved this, no??? ~ray |
|
|
|
Feb 19 2006, 09:08 AM
Post
#15
|
|
![]() Group: Members Posts: 1,099 Joined: 17-December 03 From: Athens, Greece Member No.: 1,210 |
try this:
On the Z: # ifconfig usbd0 mtu 576 (from http://www.oesf.org/forums/index.php?showtopic=15583 according to this http://www.oesf.org/forums/index.php?showtopic=17006 it should be ok) |
|
|
|
![]() ![]() |
|
Lo-Fi Version | Time is now: 22nd May 2013 - 06:10 PM |