From: Daniel Borkmann > On 02/24/2014 11:42 AM, David Laight wrote: > ... > > I'm sure it shouldn't be that expensive, you are implying that it spent > > about 70% of the time doing crc32. > > In this scenario, the following perf log I get that shows where cycles > are being spent on my machine: > > 65.95% netperf [kernel.kallsyms] [k] __crc32c_le WTF is that function doing! Even doing the crc naively bit by bit shouldn't manage to use 65%. Maybe the _le has something to do with it. Could it be bit-reversing the crc and data bytes all the time? The packet will (one would hope) want the crc in the same bit-order as the data, so no bit reversal is needed - just the correct logic and lookup table. Which architecture and which version of crc32_le() does your kernel use? (I'd guess there are several lurking). Whichever function you are using wants killing. David -- To unsubscribe from this list: send the line "unsubscribe linux-sctp" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html