path: root/arch/x86/include/asm/checksum_64.h
diff options
authorAlexander Duyck <>2016-03-11 14:05:41 -0800
committerDavid S. Miller <>2016-03-13 23:55:13 -0400
commit1e94082963747b551b129528714827f76a090e93 (patch)
tree543178f26d73ba0a7c9307091200ba6856c9fd60 /arch/x86/include/asm/checksum_64.h
parent01cfbad79a5e2b835abf6a8154a341d75a6fc8cd (diff)
ipv6: Pass proto to csum_ipv6_magic as __u8 instead of unsigned short
This patch updates csum_ipv6_magic so that it correctly recognizes that protocol is a unsigned 8 bit value. This will allow us to better understand what limitations may or may not be present in how we handle the data. For example there are a number of places that call htonl on the protocol value. This is likely not necessary and can be replaced with a multiplication by ntohl(1) which will be converted to a shift by the compiler. Signed-off-by: Alexander Duyck <> Signed-off-by: David S. Miller <>
Diffstat (limited to 'arch/x86/include/asm/checksum_64.h')
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/include/asm/checksum_64.h b/arch/x86/include/asm/checksum_64.h
index 97b98e2039bc..c020ee75dce7 100644
--- a/arch/x86/include/asm/checksum_64.h
+++ b/arch/x86/include/asm/checksum_64.h
@@ -177,7 +177,7 @@ struct in6_addr;
#define _HAVE_ARCH_IPV6_CSUM 1
extern __sum16
csum_ipv6_magic(const struct in6_addr *saddr, const struct in6_addr *daddr,
- __u32 len, unsigned short proto, __wsum sum);
+ __u32 len, __u8 proto, __wsum sum);
static inline unsigned add32_with_carry(unsigned a, unsigned b)