![]() | |||||||||||||
Messages in this thread |
From: Randy Dunlap <randy.dunlap@oracle.com> Date: Tue, 03 Apr 2007 12:09:33 -0700 > How does the networking code work across multiple architectures? This has been discussed before. The csum_partial() result value is only well defined modulo 0xffff. The networking does csum_fold() or similar on the results, and so the right thing always happens there. The reiserfs case is the worst because even ignoring the differences in csum_partial() return values, it always feeds this into cpu_to_le32() which basically means that it is putting a cpu-endian dependent value onto disk. csum_partial() returns a fixed-endian, not cpu endian, value. So feeding it into cpu_to_anything() is quite wrong. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | ||||||||||||
| Last update: 2007-04-03 21:29 [from the cache] ©2003-2008 | |||||||||||||