A quick update - it turned out to be a combination of just about everyone's
ideas.

I was running multiple URBs at the same time, in the same URB memory. Bad. For
now, I am just dropping the extra interrrupts. I will probably end up going to
a one-shot interrupt, and switching between interrupt mode and pure bulk mode
(as suggested for 2.5 interrupt handling in networks).

I have also fixed the alignment problem, using some code I lifted from
Petkan's code.

I commented out the spinlocks for now. They were the next problem after I
fixed the multiple URB problem. I have yet to debug this properly.

Now I can ping the interface from another machine (and get responses - about
1% packet loss on a very lightly loaded ethernet). I can't ping out, nor can I
"ifconfig ethX down" (unless I want it to hang), but a definate improvement :)

Thanks to all those who helped me. Truly appreciated.

Brad

_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
http://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to