On Mon, Jun 15, 2009 at 07:04, Arnd Bergmann wrote: > On Sunday 14 June 2009, Mike Frysinger wrote: >> The Blackfin port only implemented an optimized version of the >> csum_tcpudp_nofold function, so convert everything else to the new >> generic code. >> >> Signed-off-by: Mike Frysinger > > Have you tested this one well? I was as careful as possible with the > version I added, but it was basically only tested on microblaze, which > has a different endianess from blackfin. Some areas of the code may be > sensitive to this. i did some tests and it looks like do_csum() is broken :( here's the input: do_csum({ 0xff 0xfb 0x01 }, 3) and here's the output: Blackfin: 0xfc00 generic: 0xfcff if i run the two funcs on my x86, i see similar behavior. the attached csum-test.c contains the csum code from lib/checksum.c and arch/blackfin/lib/checksum.c and shows the problem. -mike