path: root/arch/sparc/include/asm/checksum_32.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/sparc/include/asm/checksum_32.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/sparc/include/asm/checksum_32.h')
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/sparc/include/asm/checksum_32.h b/arch/sparc/include/asm/checksum_32.h
index 86ae655a3c0f..eff748c871ec 100644
--- a/arch/sparc/include/asm/checksum_32.h
+++ b/arch/sparc/include/asm/checksum_32.h
@@ -199,8 +199,7 @@ static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr,
static inline __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)
__asm__ __volatile__ (
"addcc %3, %4, %%g4\n\t"