On Fri, 30 Sep 2005, Hendrik Visage wrote:
Anycase, here is a non-PREEMPT traceback.
Same trace, pretty much like I expected. Still, starfire must be getting a bad skb from the upper layers, because it gets passed __unmodified__ to skb_checksum_help().
Either that, or skb_checksum_help() itself got broken at some point, at least on 64-bit platforms.
I'll try to reproduce it over the weekend (assumming I can get an x86_64 box set up, with a starfire inside) and see where the problem is.
What makes this one interesting, is that in the preempt case, I had to push the NFS output to get the panic, but the non-preempt case attached, sorta just happened, ie. when the clients just checked on the server's status :(
I'm actually surprised you got your panic from nfsd. skb_checksum_help() is called only when one of the fragments has length == 1, so the easiest way to hit it is to slowly type something into a telnet session.
Thanks, Ion -- It is better to keep your mouth shut and be thought a fool, than to open it and remove all doubt. - : send the line "unsubscribe linux-net" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html