I've been running tests pretty much continuously for the last couple
of days. I have discovered a new failure but it's not in the zd1211rw
code. Something is broken on my NSLU2 ARM system when packets get
fragmented by the zd1211rw. Not sure whether it is in the TCP stack or
the Ethernet driver. Once a TCP session hits the bug the session is
not recoverable.

Now I can run tests all day long over directly over Ethernet between
my desktop and the NSLU2. But when I switch the desktop over to using
the zd1211rw, I'll lose the session in about 10 minutes. When I
capture the problem Wireshark reports a TCP error from a missing
segment. Then it tries to recover and it can't, the session gets stuck
in a loop of retries.

If I do the same tests between a pair of x86 machines I still get
fragmented packets but they don't bother the x86 TCP implementation.
This implies that there is something wrong in the ARM TCP or Ethernet
driver code.

I'm using this to generate test traffic:
dd if=/dev/zero bs=100000 count=100000 | netcat 1235
netcat -l -p 1234 >/dev/null

Is there some slick way to generate test patterns on one end and then
check them on the other to look for data corruption errors?

netcat always generates maximum MTU sized packets. Is there a simple
way to generate a bunches of tiny packets?

Jon Smirl

Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
Zd1211-devs mailing list - http://zd1211.ath.cx/
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/zd1211-devs

Reply via email to