>>>>> Andi Kleen <ak@muc.de> writes: >> Each of the four hot spots in my profile is a read reference to >> data in the skb. So Alexey wins the virtual beer; it's undoubtedly >> a cache flopping problem between the two CPUs. > One hack that you could try is to insert prefetches for the critical > fields early (as early as you know you need them). This would allow > to hide some latency in other code. Later 2.4 has macros for that: > prefetch and prefetchw. You should have an CPU that supports > prefetching of course: PIII+ or 3dnow! and a kernel compiled to > support them. Hmm. The P3's are merely for playing on, I'll actually be running on a dual-core SMP mips thing. The cache is mostly shared between the two, so I bet this isn't even visible there. > It'll probably not help that much though, because the time from > knowing that you need an skb to actually processing it is not too > long in UDP. Yeah. udp_recvmsg is basically not even on the profile radar except for these skb hits. Anywho, thanks, all, for looking at my little mystery... -- Grant Taylor - x285 - http://pasta/~gtaylor/ Starent Networks - +1.978.851.1185 - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html