]> git.baikalelectronics.ru Git - kernel.git/commit
alpha: fix alignment problem in csum_ipv6_magic()
authorIvan Kokshaysky <ink@jurassic.park.msu.ru>
Sun, 24 Jun 2007 00:16:35 +0000 (17:16 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Sun, 24 Jun 2007 15:59:11 +0000 (08:59 -0700)
commitd80671b9b60d2dbab906c1330c0f279e98bfde27
tree6ecb60cf2d7b18da36fd29f2a6bd03d15a8cfefb
parentd6a029077b87e16dcf21e46867a10320f781f6e9
alpha: fix alignment problem in csum_ipv6_magic()

Hopefully this fixes http://bugzilla.kernel.org/show_bug.cgi?id=8635

The struct in6_addr passed to csum_ipv6_magic() is 4 byte aligned, so we
can't use the regular 64-bit loads.  Since the cost of handling of 4 byte
and 1 byte aligned 64-bit data is roughly the same, this code can cope with
any src/dst [mis]alignment.

Signed-off-by: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Dustin Marquess <jailbird@alcatraz.fdf.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/alpha/lib/csum_ipv6_magic.S
arch/alpha/lib/ev6-csum_ipv6_magic.S