Thread: Re: [zd1211-devs] Problem with MTU > 500
Status: Beta
Brought to you by:
mayne
From: Hin-Tak L. <hin...@ya...> - 2010-02-13 20:47:45
|
Hmm, the default(?) is 1500 - MTU=500 is way too low for normal usage. since zd1211rw is also a mac80211 driver, can you give the pid modprobe.conf a try to see if it helps? See http://bugzilla.kernel.org/show_bug.cgi?id=14168 --- On Sat, 13/2/10, Ernst J. Oud <ern...@eu...> wrote: > L.S. > > I am running Slackware 13.0 (kernel 2.6.32) on an RDC > (=i486 compatible) > small embedded system and using a ZD1211b usb stick for > wlan (client) access > using the standard zd1211rw (module). Firmware version is > 1.4 > > This works fine as long as I specify an MTU > smaller than 500 for > wlan0. > > With a larger MTU the connection aborts when sending > larger amounts of > information, for instance in a telnet session doing an ls > of a large directory. > I can log in and I can do an ls on a small > directory... > > This is not an USB WLAN stick problem; I tried three > separate sticks from > different vendors and they all exhibit this problem. > > With an MTU of say 448, wlan speed is half of what it > could be so any help > would be appreciated. > > TIA > > Ernst |
From: Ernst J. O. <ern...@eu...> - 2010-02-13 22:20:07
|
Ok. I tried, apparantly modprobe.conf is deprecated. So, I created /etc/modprobe.d/mac80211.conf with: options mac80211 ieee80211_default_rc_algo=pid but that doesn't work; dmesg still shows minstrel is used. Putting the same line in modprobe.conf gives the same result; minstrel is still used. Bit of a newbie here; never changed modprobe.conf, so I am unsure whether adding anything to that file still works since it is deprecated and if not what the filename in /etc/modprobe.d/ should be... Perhaps it helps to know that the iwconfig output is also rather minimal: wlan0 IEEE 802.11bg ESSID: [esside deleted] Mode:Managed Frequency:2.437 GHz Access Point: [mac address deleted] Bit Rate=1 Mb/s Tx-Power=20 dBm Retry long limit:7 RTS thr:off Fragment thr:off Encryption key: [key deleted] Power Management:off Link Quality:0 Signal level:0 Noise level:0 Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0 So no link quality, signal level and noise level indicated and the Bit Rate is not correct; I get speeds that fit with 24 Mb/s or higher... So something weird is happening with this setup here. Relevant part of dmesg (mac address of AP masked): usb 1-1: reset high speed USB device using ehci_hcd and address 2 phy0: Selected rate control algorithm 'minstrel' zd1211rw 1-1:1.0: phy0 usbcore: registered new interface driver zd1211rw usb 1-1: firmware: requesting zd1211/zd1211b_ub usb 1-1: firmware: requesting zd1211/zd1211b_uphr zd1211rw 1-1:1.0: firmware version 4725 zd1211rw 1-1:1.0: zd1211b chip 0ace:1215 v4810 high 00-25-86 MAXIM_NEW_RF pa0 -7--- cfg80211: Calling CRDA for country: DE wlan0: direct probe to AP --:--:--:--:--:-- (try 1) wlan0: direct probe responded wlan0: authenticate with AP --:--:--:--:--:-- (try 1) wlan0: authenticated wlan0: associate with AP --:--:--:--:--:-- (try 1) wlan0: RX AssocResp from --:--:--:--:--:-- (capab=0x411 status=0 aid=4) wlan0: associated Any clues? TIA Ernst ----- Original Message ----- From: "Hin-Tak Leung" <hin...@ya...> To: <zd1...@li...>; "Ernst J. Oud" <ern...@eu...> Sent: Saturday, February 13, 2010 9:47 PM Subject: Re: [zd1211-devs] Problem with MTU > 500 Hmm, the default(?) is 1500 - MTU=500 is way too low for normal usage. since zd1211rw is also a mac80211 driver, can you give the pid modprobe.conf a try to see if it helps? See http://bugzilla.kernel.org/show_bug.cgi?id=14168 --- On Sat, 13/2/10, Ernst J. Oud <ern...@eu...> wrote: > L.S. > > I am running Slackware 13.0 (kernel 2.6.32) on an RDC > (=i486 compatible) > small embedded system and using a ZD1211b usb stick for > wlan (client) access > using the standard zd1211rw (module). Firmware version is > 1.4 > > This works fine as long as I specify an MTU > smaller than 500 for > wlan0. > > With a larger MTU the connection aborts when sending > larger amounts of > information, for instance in a telnet session doing an ls > of a large directory. > I can log in and I can do an ls on a small > directory... > > This is not an USB WLAN stick problem; I tried three > separate sticks from > different vendors and they all exhibit this problem. > > With an MTU of say 448, wlan speed is half of what it > could be so any help > would be appreciated. > > TIA > > Ernst |
From: Hin-Tak L. <hin...@ya...> - 2010-02-13 22:39:07
|
the modprobe line only take effect after unload/reloading the mac80211 module (i.e. reboot or do modprobe -r then modprobe mac80211), also you need to have built mac80211 as a module for this to work. lsmod should list it, if it isn't listed, you have it built into the kernel... I think it is possible to pass parameters to built-in's, but it has to be at the boot parameter stage... not sure about the syntax for that, but it is possible. --- On Sat, 13/2/10, Ernst J. Oud <ern...@eu...> wrote: > Ok. I tried, apparantly modprobe.conf > is deprecated. So, I created /etc/modprobe.d/mac80211.conf > with: > > options mac80211 > ieee80211_default_rc_algo=pid > > but that doesn't work; dmesg still shows minstrel is used. > > Putting the same line in modprobe.conf gives the same > result; minstrel is still used. > > Bit of a newbie here; never changed modprobe.conf, so I am > unsure whether adding anything to that file still works > since it is deprecated and if not what the filename in > /etc/modprobe.d/ should be... > > Perhaps it helps to know that the iwconfig output is also > rather minimal: > > wlan0 IEEE 802.11bg ESSID: > [esside deleted] > Mode:Managed > Frequency:2.437 GHz Access Point: [mac address > deleted] > Bit Rate=1 > Mb/s Tx-Power=20 dBm > Retry long > limit:7 RTS > thr:off Fragment thr:off > Encryption key: [key > deleted] > Power > Management:off > Link Quality:0 > Signal level:0 Noise level:0 > Rx invalid > nwid:0 Rx invalid crypt:0 Rx invalid frag:0 > Tx excessive > retries:0 Invalid misc:0 Missed > beacon:0 > > So no link quality, signal level and noise level indicated > and the Bit Rate is not correct; I get speeds that fit with > 24 Mb/s or higher... > > So something weird is happening with this setup here. > > Relevant part of dmesg (mac address of AP masked): > > usb 1-1: reset high speed USB device using ehci_hcd and > address 2 > phy0: Selected rate control algorithm 'minstrel' > zd1211rw 1-1:1.0: phy0 > usbcore: registered new interface driver zd1211rw > usb 1-1: firmware: requesting zd1211/zd1211b_ub > usb 1-1: firmware: requesting zd1211/zd1211b_uphr > zd1211rw 1-1:1.0: firmware version 4725 > zd1211rw 1-1:1.0: zd1211b chip 0ace:1215 v4810 high > 00-25-86 MAXIM_NEW_RF pa0 -7--- > cfg80211: Calling CRDA for country: DE > wlan0: direct probe to AP --:--:--:--:--:-- (try 1) > wlan0: direct probe responded > wlan0: authenticate with AP --:--:--:--:--:-- (try 1) > wlan0: authenticated > wlan0: associate with AP --:--:--:--:--:-- (try 1) > wlan0: RX AssocResp from --:--:--:--:--:-- (capab=0x411 > status=0 aid=4) > wlan0: associated > > Any clues? > > TIA > > Ernst > > ----- Original Message ----- From: "Hin-Tak Leung" <hin...@ya...> > To: <zd1...@li...>; > "Ernst J. Oud" <ern...@eu...> > Sent: Saturday, February 13, 2010 9:47 PM > Subject: Re: [zd1211-devs] Problem with MTU > 500 > > > Hmm, the default(?) is 1500 - MTU=500 is way too low for > normal usage. > > since zd1211rw is also a mac80211 driver, can you give the > pid modprobe.conf a try to see if it helps? See http://bugzilla.kernel.org/show_bug.cgi?id=14168 > > --- On Sat, 13/2/10, Ernst J. Oud <ern...@eu...> > wrote: > > > L.S. > > > > I am running Slackware 13.0 (kernel 2.6.32) on an RDC > > (=i486 compatible) > > small embedded system and using a ZD1211b usb stick > for > > wlan (client) access > > using the standard zd1211rw (module). Firmware version > is > > 1.4 > > > > This works fine as long as I specify an MTU > > smaller than 500 for > > wlan0. > > > > With a larger MTU the connection aborts when sending > > larger amounts of > > information, for instance in a telnet session doing an > ls > > of a large directory. > > I can log in and I can do an ls on a small > > directory... > > > > This is not an USB WLAN stick problem; I tried three > > separate sticks from > > different vendors and they all exhibit this problem. > > > > With an MTU of say 448, wlan speed is half of what it > > could be so any help > > would be appreciated. > > > > TIA > > > > Ernst > > > > > |
From: Ernst J. O. <ern...@eu...> - 2010-02-13 22:45:20
|
Yes, it is a module and yes I did a reboot. I can remember having specified minstrel when compiling the kernel instead of pid so perhaps I need to reconfigure/recompile the kernel? ----- Original Message ----- From: "Hin-Tak Leung" <hin...@ya...> To: <zd1...@li...>; "Ernst J. Oud" <ern...@eu...> Sent: Saturday, February 13, 2010 11:38 PM Subject: Re: [zd1211-devs] Problem with MTU > 500 the modprobe line only take effect after unload/reloading the mac80211 module (i.e. reboot or do modprobe -r then modprobe mac80211), also you need to have built mac80211 as a module for this to work. lsmod should list it, if it isn't listed, you have it built into the kernel... I think it is possible to pass parameters to built-in's, but it has to be at the boot parameter stage... not sure about the syntax for that, but it is possible. --- On Sat, 13/2/10, Ernst J. Oud <ern...@eu...> wrote: > Ok. I tried, apparantly modprobe.conf > is deprecated. So, I created /etc/modprobe.d/mac80211.conf > with: > > options mac80211 > ieee80211_default_rc_algo=pid > > but that doesn't work; dmesg still shows minstrel is used. > > Putting the same line in modprobe.conf gives the same > result; minstrel is still used. > > Bit of a newbie here; never changed modprobe.conf, so I am > unsure whether adding anything to that file still works > since it is deprecated and if not what the filename in > /etc/modprobe.d/ should be... > > Perhaps it helps to know that the iwconfig output is also > rather minimal: > > wlan0 IEEE 802.11bg ESSID: > [esside deleted] > Mode:Managed > Frequency:2.437 GHz Access Point: [mac address > deleted] > Bit Rate=1 > Mb/s Tx-Power=20 dBm > Retry long > limit:7 RTS > thr:off Fragment thr:off > Encryption key: [key > deleted] > Power > Management:off > Link Quality:0 > Signal level:0 Noise level:0 > Rx invalid > nwid:0 Rx invalid crypt:0 Rx invalid frag:0 > Tx excessive > retries:0 Invalid misc:0 Missed > beacon:0 > > So no link quality, signal level and noise level indicated > and the Bit Rate is not correct; I get speeds that fit with > 24 Mb/s or higher... > > So something weird is happening with this setup here. > > Relevant part of dmesg (mac address of AP masked): > > usb 1-1: reset high speed USB device using ehci_hcd and > address 2 > phy0: Selected rate control algorithm 'minstrel' > zd1211rw 1-1:1.0: phy0 > usbcore: registered new interface driver zd1211rw > usb 1-1: firmware: requesting zd1211/zd1211b_ub > usb 1-1: firmware: requesting zd1211/zd1211b_uphr > zd1211rw 1-1:1.0: firmware version 4725 > zd1211rw 1-1:1.0: zd1211b chip 0ace:1215 v4810 high > 00-25-86 MAXIM_NEW_RF pa0 -7--- > cfg80211: Calling CRDA for country: DE > wlan0: direct probe to AP --:--:--:--:--:-- (try 1) > wlan0: direct probe responded > wlan0: authenticate with AP --:--:--:--:--:-- (try 1) > wlan0: authenticated > wlan0: associate with AP --:--:--:--:--:-- (try 1) > wlan0: RX AssocResp from --:--:--:--:--:-- (capab=0x411 > status=0 aid=4) > wlan0: associated > > Any clues? > > TIA > > Ernst > > ----- Original Message ----- From: "Hin-Tak Leung" > <hin...@ya...> > To: <zd1...@li...>; > "Ernst J. Oud" <ern...@eu...> > Sent: Saturday, February 13, 2010 9:47 PM > Subject: Re: [zd1211-devs] Problem with MTU > 500 > > > Hmm, the default(?) is 1500 - MTU=500 is way too low for > normal usage. > > since zd1211rw is also a mac80211 driver, can you give the > pid modprobe.conf a try to see if it helps? See > http://bugzilla.kernel.org/show_bug.cgi?id=14168 > > --- On Sat, 13/2/10, Ernst J. Oud <ern...@eu...> > wrote: > > > L.S. > > > > I am running Slackware 13.0 (kernel 2.6.32) on an RDC > > (=i486 compatible) > > small embedded system and using a ZD1211b usb stick > for > > wlan (client) access > > using the standard zd1211rw (module). Firmware version > is > > 1.4 > > > > This works fine as long as I specify an MTU > > smaller than 500 for > > wlan0. > > > > With a larger MTU the connection aborts when sending > > larger amounts of > > information, for instance in a telnet session doing an > ls > > of a large directory. > > I can log in and I can do an ls on a small > > directory... > > > > This is not an USB WLAN stick problem; I tried three > > separate sticks from > > different vendors and they all exhibit this problem. > > > > With an MTU of say 448, wlan speed is half of what it > > could be so any help > > would be appreciated. > > > > TIA > > > > Ernst > > > > > |
From: Hin-Tak L. <hin...@ya...> - 2010-02-13 22:51:25
|
Hmm, unfortunately yes - you can build both in to have it runtime switch-able, but you have to have both in before that can happen.(mintrel is the default). --- On Sat, 13/2/10, Ernst J. Oud <ern...@eu...> wrote: > Yes, it is a module and yes I did a > reboot. I can remember having specified > minstrel when compiling the kernel instead of pid so > perhaps I need to > reconfigure/recompile the kernel? |
From: Ernst J. O. <ern...@eu...> - 2010-02-14 19:04:50
|
Ok. Did some further experimenting. I remembered having an Thomson st121g USB WLAN stick and tried that (Prism chipset). With the same distro and config it works fine using minstrel or pid; i.e. with an MTU of 1500 no problems whatsoever. If I bring the box down and use my zd1211 stick instead (some distro/config) and boot it, it doesn't work with any MTU > 500 using pid or minstrel. So this must be some zd1211rw driver issue. It isn't the slackware setup and not the hardware; i.e. not the embedded box since the st121g works fine on it and not the zd1211 stick since I used three separate sticks (from three different manufacturers: icidu, msi and cc&c) and they all have the same problem. Any further clues? BTW; the svn for the zd1211rw driver shows that the latest version is 3 years old? TIA Ernst ----- Original Message ----- From: "Hin-Tak Leung" <hin...@ya...> To: <zd1...@li...>; "Ernst J. Oud" <ern...@eu...> Sent: Saturday, February 13, 2010 11:51 PM Subject: Re: [zd1211-devs] Problem with MTU > 500 Hmm, unfortunately yes - you can build both in to have it runtime switch-able, but you have to have both in before that can happen.(mintrel is the default). --- On Sat, 13/2/10, Ernst J. Oud <ern...@eu...> wrote: > Yes, it is a module and yes I did a > reboot. I can remember having specified > minstrel when compiling the kernel instead of pid so > perhaps I need to > reconfigure/recompile the kernel? |
From: Hin-Tak L. <hin...@ya...> - 2010-02-14 22:42:06
|
Hmm, what's the hardware (the zd1211rw: ... line in your dmesg, you can probably just grep zd1211 /var/log/message for it as well) may be all the same. There are quite a few variants. I don't know if putting compat-wireless on will help, but you could give that a try. FWIW, the driver development has gone over to linux-wireless.org and changes goes directly into wireless-testing git; the sourceforge zd1211 site isn't much more than the mailing list these days, and even the mailing list isn't very active. (try the linux-wireless list may be a good idea). --- On Sun, 14/2/10, Ernst J. Oud <ern...@eu...> wrote: > Ok. > > Did some further experimenting. I remembered having an > Thomson st121g USB WLAN stick and tried that (Prism > chipset). With the same distro and config it works fine > using minstrel or pid; i.e. with an MTU of 1500 no problems > whatsoever. If I bring the box down and use my zd1211 stick > instead (some distro/config) and boot it, it doesn't work > with any MTU > 500 using pid or minstrel. > > So this must be some zd1211rw driver issue. It isn't the > slackware setup and not the hardware; i.e. not the embedded > box since the st121g works fine on it and not the zd1211 > stick since I used three separate sticks (from three > different manufacturers: icidu, msi and cc&c) and they > all have the same problem. > > Any further clues? > > BTW; the svn for the zd1211rw driver shows that the latest > version is 3 years old? > > TIA > > Ernst |
From: Ernst J. O. <ern...@eu...> - 2010-02-14 23:04:16
|
Most relevant line from dmesg I presume: zd1211rw 1-2:1.0: zd1211b chip 0ace:1215 v4810 high 00-25-86 MAXIM_NEW RF pa0 -7-- I opened the stick and there is a genuine Atheros AR2524 (= Zydas ZD1211b) and ubec UW2453 (RF) in it. Same with the msi stick, don't know about the other, but it also has toe 0ace:1215 vid/pid. Ernst ----- Original Message ----- From: "Hin-Tak Leung" <hin...@ya...> To: <zd1...@li...>; "Ernst J. Oud" <ern...@eu...> Sent: Sunday, February 14, 2010 11:41 PM Subject: Re: [zd1211-devs] Problem with MTU > 500 Hmm, what's the hardware (the zd1211rw: ... line in your dmesg, you can probably just grep zd1211 /var/log/message for it as well) may be all the same. There are quite a few variants. I don't know if putting compat-wireless on will help, but you could give that a try. FWIW, the driver development has gone over to linux-wireless.org and changes goes directly into wireless-testing git; the sourceforge zd1211 site isn't much more than the mailing list these days, and even the mailing list isn't very active. (try the linux-wireless list may be a good idea). --- On Sun, 14/2/10, Ernst J. Oud <ern...@eu...> wrote: > Ok. > > Did some further experimenting. I remembered having an > Thomson st121g USB WLAN stick and tried that (Prism > chipset). With the same distro and config it works fine > using minstrel or pid; i.e. with an MTU of 1500 no problems > whatsoever. If I bring the box down and use my zd1211 stick > instead (some distro/config) and boot it, it doesn't work > with any MTU > 500 using pid or minstrel. > > So this must be some zd1211rw driver issue. It isn't the > slackware setup and not the hardware; i.e. not the embedded > box since the st121g works fine on it and not the zd1211 > stick since I used three separate sticks (from three > different manufacturers: icidu, msi and cc&c) and they > all have the same problem. > > Any further clues? > > BTW; the svn for the zd1211rw driver shows that the latest > version is 3 years old? > > TIA > > Ernst |
From: Ernst J. O. <ern...@eu...> - 2010-02-14 23:54:16
|
And the first three bytes of its mac address decodes to: TP-LINK Technologies Co., Ltd. The other two sticks (msi US54SE and CC&C WL-2203S-V3) both have a mac address that decodes to: CC&C Technologies, Inc. Ernst ----- Original Message ----- From: "Hin-Tak Leung" <hin...@ya...> To: <zd1...@li...>; "Ernst J. Oud" <ern...@eu...> Sent: Sunday, February 14, 2010 11:41 PM Subject: Re: [zd1211-devs] Problem with MTU > 500 Hmm, what's the hardware (the zd1211rw: ... line in your dmesg, you can probably just grep zd1211 /var/log/message for it as well) may be all the same. There are quite a few variants. I don't know if putting compat-wireless on will help, but you could give that a try. FWIW, the driver development has gone over to linux-wireless.org and changes goes directly into wireless-testing git; the sourceforge zd1211 site isn't much more than the mailing list these days, and even the mailing list isn't very active. (try the linux-wireless list may be a good idea). --- On Sun, 14/2/10, Ernst J. Oud <ern...@eu...> wrote: > Ok. > > Did some further experimenting. I remembered having an > Thomson st121g USB WLAN stick and tried that (Prism > chipset). With the same distro and config it works fine > using minstrel or pid; i.e. with an MTU of 1500 no problems > whatsoever. If I bring the box down and use my zd1211 stick > instead (some distro/config) and boot it, it doesn't work > with any MTU > 500 using pid or minstrel. > > So this must be some zd1211rw driver issue. It isn't the > slackware setup and not the hardware; i.e. not the embedded > box since the st121g works fine on it and not the zd1211 > stick since I used three separate sticks (from three > different manufacturers: icidu, msi and cc&c) and they > all have the same problem. > > Any further clues? > > BTW; the svn for the zd1211rw driver shows that the latest > version is 3 years old? > > TIA > > Ernst |
From: Ernst J. O. <ern...@eu...> - 2010-03-04 23:13:19
|
L.S. Mmm.... I might be onto something about this weird MTU problem with Zydas 1211b based devices on my embedded box. This box has an RDC i486 SOC processor. Within the vendor driver of the Zydas 1211b there is an extra compiler flag called "ZDCONF_R8610_FRAG_FIX" (r8610 is an RDC i486 compatible SOC), it is only tested in the vendor module zd1205c as follows: (small snippet of code, arrow is mine) //copy packet for IP header is located on 4-bytes alignment #if ZDCONF_R8610_FRAG_FIX == 1 <<<<<<<<<<<<<<<<<<------------------- if (1) #else if (length < RX_COPY_BREAK) #endif { dev_kfree_skb_any(skb); skb = dev_alloc_skb(length+2); if (skb){ skb->dev = g_dev; skb_reserve(skb, 2); skb_copy_from_linear_data(skb,pData,length); skb_put(skb, length); } } else{ #ifdef NET_SKBUFF_DATA_USES_OFFSET skb->tail = 0; skb->data = pData; #else skb->tail = skb->data = pData; #endif skb_put(skb, length); } i.e. if the flag is set in the receiver code a number of statements is always executed on an R8610... I reckon this certainly might be the reason of my MTU > 500 problem... seems plausible. This weird patch is of course not present in the community driver. Any comments? TIA Regards, Ernst ----- Original Message ----- From: "Hin-Tak Leung" <hin...@ya...> To: <zd1...@li...>; "Ernst J. Oud" <ern...@eu...> Sent: Sunday, February 14, 2010 11:41 PM Subject: Re: [zd1211-devs] Problem with MTU > 500 Hmm, what's the hardware (the zd1211rw: ... line in your dmesg, you can probably just grep zd1211 /var/log/message for it as well) may be all the same. There are quite a few variants. I don't know if putting compat-wireless on will help, but you could give that a try. FWIW, the driver development has gone over to linux-wireless.org and changes goes directly into wireless-testing git; the sourceforge zd1211 site isn't much more than the mailing list these days, and even the mailing list isn't very active. (try the linux-wireless list may be a good idea). --- On Sun, 14/2/10, Ernst J. Oud <ern...@eu...> wrote: > Ok. > > Did some further experimenting. I remembered having an > Thomson st121g USB WLAN stick and tried that (Prism > chipset). With the same distro and config it works fine > using minstrel or pid; i.e. with an MTU of 1500 no problems > whatsoever. If I bring the box down and use my zd1211 stick > instead (some distro/config) and boot it, it doesn't work > with any MTU > 500 using pid or minstrel. > > So this must be some zd1211rw driver issue. It isn't the > slackware setup and not the hardware; i.e. not the embedded > box since the st121g works fine on it and not the zd1211 > stick since I used three separate sticks (from three > different manufacturers: icidu, msi and cc&c) and they > all have the same problem. > > Any further clues? > > BTW; the svn for the zd1211rw driver shows that the latest > version is 3 years old? > > TIA > > Ernst |
From: Benoit P. <ben...@fr...> - 2010-03-05 07:46:35
|
Ernst J. Oud a écrit : > L.S. > > Mmm.... I might be onto something about this weird MTU problem with Zydas > 1211b based devices on my embedded box. > > This box has an RDC i486 SOC processor. > > Within the vendor driver of the Zydas 1211b there is an extra compiler flag > called "ZDCONF_R8610_FRAG_FIX" (r8610 is an RDC i486 compatible SOC), it is > only tested in the vendor module zd1205c as follows: > > (small snippet of code, arrow is mine) > > //copy packet for IP header is located on 4-bytes alignment > #if ZDCONF_R8610_FRAG_FIX == 1 > <<<<<<<<<<<<<<<<<<------------------- > if (1) > #else > if (length < RX_COPY_BREAK) > #endif > { > dev_kfree_skb_any(skb); > skb = dev_alloc_skb(length+2); > > if (skb){ > skb->dev = g_dev; > skb_reserve(skb, 2); > skb_copy_from_linear_data(skb,pData,length); > skb_put(skb, length); > } > } > else{ > #ifdef NET_SKBUFF_DATA_USES_OFFSET > skb->tail = 0; > skb->data = pData; > #else > skb->tail = skb->data = pData; > #endif > skb_put(skb, length); > } > > i.e. if the flag is set in the receiver code a number of statements is > always executed on an R8610... > > I reckon this certainly might be the reason of my MTU > 500 problem... seems > plausible. > > This weird patch is of course not present in the community driver. > > Any comments? > > TIA > > Regards, > > Ernst > Hello Ernst, Regarding the source code you mentioned, I cannot find the R8610 thing. Which version/revision do you look at? Moreover, the RX_COPY_BREAK is 0 in the source code I've looked at and this code is only used for RX (not TX), so it's unlikely to be the root cause of your problem. My guess is that it could be a USB 1.1 versus 2.0 problem. Can you provide the output of lsusb -t on your SoC when the stick is plugged in? Regards, Benoit |
From: Hin-Tak L. <hin...@ya...> - 2010-03-05 14:01:47
|
--- On Fri, 5/3/10, Benoit PAPILLAULT <ben...@fr...> wrote: > Regarding the source code you mentioned, I cannot find the > R8610 thing. > Which version/revision do you look at? Moreover, the > RX_COPY_BREAK is 0 > in the source code I've looked at and this code is only > used for RX (not > TX), so it's unlikely to be the root cause of your > problem. It is in both the 2.22 and 3.0 vendor driver, with the following line numbers (it may not be exact as I have some local patches): ZD1211LnxDrv_2_22_0_0/src/zd1205.c:10577:#if ZDCONF_R8610_FRAG_FIX == 1 LinuxUSB_AR2524-3.0.0.56/ar2524drv/src/zd1205.c:11293:#if ZDCONF_R8610_FRAG_FIX == 1 |
From: Ernst J. O. <ern...@eu...> - 2010-03-12 12:49:11
|
L.S. FYI I just successfully (although with lots of warnings) the vendor driver 3.0.0.56 using Hin-Tak's patch set. (Version 2.22.0.0 also compiled fine but crashed my box.) *Without* the ZDCONF_R8610_FRAG_FIX parameter set in the Makefile, it runs fine using an MTU of 1500 on my RDC3210 based linux box... As mentioned, the community driver only works when telnet/ssh sessions are used to access this box with a setting lower than 500. So it appears that the ZDCONF_R8610_FRAG_FIX compile option has nothing to do with this issue but there is some weird interaction between the community driver (from standard 2.6.32 kernel) and this RDC3210 SoC processor (integrated Mac/Phy). ZD1211 / AR2524 is fairly old now; almost all USB Wlan sticks nowadays on the market use different chipsets so whether it is worthwhile to further investigate this bug(ette) in the community driver I can't estimate; if required I can test further. In that case any clues how to investigate this further? Regards, Ernst ----- Original Message ----- From: "Hin-Tak Leung" <hin...@ya...> To: "Ernst J. Oud" <ern...@eu...>; "Benoit PAPILLAULT" <ben...@fr...> Cc: <zd1...@li...> Sent: Friday, March 05, 2010 3:01 PM Subject: Re: [zd1211-devs] Problem with MTU > 500 --- On Fri, 5/3/10, Benoit PAPILLAULT <ben...@fr...> wrote: > Regarding the source code you mentioned, I cannot find the > R8610 thing. > Which version/revision do you look at? Moreover, the > RX_COPY_BREAK is 0 > in the source code I've looked at and this code is only > used for RX (not > TX), so it's unlikely to be the root cause of your > problem. It is in both the 2.22 and 3.0 vendor driver, with the following line numbers (it may not be exact as I have some local patches): ZD1211LnxDrv_2_22_0_0/src/zd1205.c:10577:#if ZDCONF_R8610_FRAG_FIX == 1 LinuxUSB_AR2524-3.0.0.56/ar2524drv/src/zd1205.c:11293:#if ZDCONF_R8610_FRAG_FIX == 1 |
From: Benoit P. <ben...@fr...> - 2010-03-12 18:33:00
|
Ernst J. Oud a écrit : > L.S. > > FYI > > I just successfully (although with lots of warnings) the vendor driver > 3.0.0.56 using Hin-Tak's patch set. (Version 2.22.0.0 also compiled fine but > crashed my box.) > > *Without* the ZDCONF_R8610_FRAG_FIX parameter set in the Makefile, it runs > fine using an MTU of 1500 on my RDC3210 based linux box... > > As mentioned, the community driver only works when telnet/ssh sessions are > used to access this box with a setting lower than 500. > > So it appears that the ZDCONF_R8610_FRAG_FIX compile option has nothing to > do with this issue but there is some weird interaction between the community > driver (from standard 2.6.32 kernel) and this RDC3210 SoC processor > (integrated Mac/Phy). > > ZD1211 / AR2524 is fairly old now; almost all USB Wlan sticks nowadays on > the market use different chipsets so whether it is worthwhile to further > investigate this bug(ette) in the community driver I can't estimate; if > required I can test further. In that case any clues how to investigate this > further? > > Regards, > > Ernst > Yes! My guess is that it could be a USB 1.1 versus 2.0 problem. Can you provide the output of lsusb -t on your SoC when the stick is plugged in? Regards, Benoit |
From: Hin-Tak L. <hin...@ya...> - 2010-03-05 13:58:06
|
--- On Thu, 4/3/10, Ernst J. Oud <ern...@eu...> wrote: > L.S. > > Mmm.... I might be onto something about this weird MTU > problem with Zydas > 1211b based devices on my embedded box. > > This box has an RDC i486 SOC processor. > > Within the vendor driver of the Zydas 1211b there is an > extra compiler flag > called "ZDCONF_R8610_FRAG_FIX" (r8610 is an RDC i486 > compatible SOC), it is > only tested in the vendor module zd1205c as follows: > > (small snippet of code, arrow is mine) > > //copy packet for IP header is located on > 4-bytes alignment > #if ZDCONF_R8610_FRAG_FIX == 1 > <<<<<<<<<<<<<<<<<<------------------- > if (1) > #else I have lost track slightly of the exchange - so you have a performance issue with the rw driver which isn't with the vendor driver and suspect this snipplet to be the magic cure? I suppose you can try it in two different ways - try to port the change over from the vendor driver to the rw driver, or, crippling the vendor driver by removing that ==1 (change it to ==0, for example) and see if the vendor driver breaks. The latter is easier probably and we can then at least decide to port a equivalent change if the two drivers in this area is substantially different and not obvious between the vendor driver and the rw driver. |
From: Ernst J. O. <ern...@eu...> - 2010-02-13 22:38:29
|
Also tried /etc/modprobe.d/options.conf with the setting as stated below; still minstrel is used... weird. ----- Original Message ----- From: "Ernst J. Oud" <ern...@eu...> To: "Hin-Tak Leung" <hin...@ya...>; <zd1...@li...> Sent: Saturday, February 13, 2010 11:21 PM Subject: Re: [zd1211-devs] Problem with MTU > 500 > Ok. I tried, apparantly modprobe.conf is deprecated. So, I created > /etc/modprobe.d/mac80211.conf with: > > options mac80211 ieee80211_default_rc_algo=pid > > but that doesn't work; dmesg still shows minstrel is used. > > Putting the same line in modprobe.conf gives the same result; minstrel is > still used. > > Bit of a newbie here; never changed modprobe.conf, so I am unsure whether > adding anything to that file still works since it is deprecated and if not > what the filename in /etc/modprobe.d/ should be... > > Perhaps it helps to know that the iwconfig output is also rather minimal: > > wlan0 IEEE 802.11bg ESSID: [esside deleted] > Mode:Managed Frequency:2.437 GHz Access Point: [mac address > deleted] > Bit Rate=1 Mb/s Tx-Power=20 dBm > Retry long limit:7 RTS thr:off Fragment thr:off > Encryption key: [key deleted] > Power Management:off > Link Quality:0 Signal level:0 Noise level:0 > Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 > Tx excessive retries:0 Invalid misc:0 Missed beacon:0 > > So no link quality, signal level and noise level indicated and the Bit > Rate > is not correct; I get speeds that fit with 24 Mb/s or higher... > > So something weird is happening with this setup here. > > Relevant part of dmesg (mac address of AP masked): > > usb 1-1: reset high speed USB device using ehci_hcd and address 2 > phy0: Selected rate control algorithm 'minstrel' > zd1211rw 1-1:1.0: phy0 > usbcore: registered new interface driver zd1211rw > usb 1-1: firmware: requesting zd1211/zd1211b_ub > usb 1-1: firmware: requesting zd1211/zd1211b_uphr > zd1211rw 1-1:1.0: firmware version 4725 > zd1211rw 1-1:1.0: zd1211b chip 0ace:1215 v4810 high 00-25-86 MAXIM_NEW_RF > pa0 -7--- > cfg80211: Calling CRDA for country: DE > wlan0: direct probe to AP --:--:--:--:--:-- (try 1) > wlan0: direct probe responded > wlan0: authenticate with AP --:--:--:--:--:-- (try 1) > wlan0: authenticated > wlan0: associate with AP --:--:--:--:--:-- (try 1) > wlan0: RX AssocResp from --:--:--:--:--:-- (capab=0x411 status=0 aid=4) > wlan0: associated > > Any clues? > > TIA > > Ernst > > ----- Original Message ----- > From: "Hin-Tak Leung" <hin...@ya...> > To: <zd1...@li...>; "Ernst J. Oud" > <ern...@eu...> > Sent: Saturday, February 13, 2010 9:47 PM > Subject: Re: [zd1211-devs] Problem with MTU > 500 > > > Hmm, the default(?) is 1500 - MTU=500 is way too low for normal usage. > > since zd1211rw is also a mac80211 driver, can you give the pid > modprobe.conf > a try to see if it helps? See > http://bugzilla.kernel.org/show_bug.cgi?id=14168 > > --- On Sat, 13/2/10, Ernst J. Oud <ern...@eu...> wrote: > >> L.S. >> >> I am running Slackware 13.0 (kernel 2.6.32) on an RDC >> (=i486 compatible) >> small embedded system and using a ZD1211b usb stick for >> wlan (client) access >> using the standard zd1211rw (module). Firmware version is >> 1.4 >> >> This works fine as long as I specify an MTU >> smaller than 500 for >> wlan0. >> >> With a larger MTU the connection aborts when sending >> larger amounts of >> information, for instance in a telnet session doing an ls >> of a large directory. >> I can log in and I can do an ls on a small >> directory... >> >> This is not an USB WLAN stick problem; I tried three >> separate sticks from >> different vendors and they all exhibit this problem. >> >> With an MTU of say 448, wlan speed is half of what it >> could be so any help >> would be appreciated. >> >> TIA >> >> Ernst > > > > > > ------------------------------------------------------------------------------ > SOLARIS 10 is the OS for Data Centers - provides features such as DTrace, > Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW > http://p.sf.net/sfu/solaris-dev2dev > _______________________________________________ > Zd1211-devs mailing list - http://zd1211.wiki.sourceforge.net/ > Unsubscribe: https://lists.sourceforge.net/lists/listinfo/zd1211-devs |