Lines Matching full:sum
13 * and adds in "sum" (32-bit), while copying the block to dst.
39 static inline __sum16 csum_fold(__wsum sum) in csum_fold() argument
43 /* swap the two 16-bit halves of sum */ in csum_fold()
44 __asm__("rlwinm %0,%1,16,0,31" : "=r" (tmp) : "r" (sum)); in csum_fold()
47 giving us the correct sum in the upper half. */ in csum_fold()
48 return (__force __sum16)(~((__force u32)sum + tmp) >> 16); in csum_fold()
57 __u8 proto, __wsum sum) in csum_tcpudp_nofold() argument
60 u64 s = (__force u32)sum; in csum_tcpudp_nofold()
77 : "=r" (sum) in csum_tcpudp_nofold()
78 : "r" (daddr), "r"(saddr), "r"(proto + len), "0"(sum)); in csum_tcpudp_nofold()
79 return sum; in csum_tcpudp_nofold()
88 __u8 proto, __wsum sum) in csum_tcpudp_magic() argument
90 return csum_fold(csum_tcpudp_nofold(saddr, daddr, len, proto, sum)); in csum_tcpudp_magic()
131 __wsum sum, tmp; in ip_fast_csum_nofold() local
139 : "=r" (sum), "=r" (tmp), "+b" (ptr) in ip_fast_csum_nofold()
143 return sum; in ip_fast_csum_nofold()
154 * and adds in "sum" (32-bit)
164 __wsum __csum_partial(const void *buff, int len, __wsum sum);
166 static inline __wsum csum_partial(const void *buff, int len, __wsum sum) in csum_partial() argument
170 sum = csum_add(sum, (__force __wsum)*(const u16 *)buff); in csum_partial()
172 sum = csum_add(sum, (__force __wsum)*(const u32 *)buff); in csum_partial()
174 sum = csum_add(sum, (__force __wsum) in csum_partial()
177 sum = csum_add(sum, (__force __wsum) in csum_partial()
180 sum = csum_add(sum, (__force __wsum) in csum_partial()
183 sum = csum_add(sum, (__force __wsum) in csum_partial()
186 sum = csum_add(sum, (__force __wsum) in csum_partial()
189 sum = csum_add(sum, (__force __wsum) in csum_partial()
192 sum = csum_add(sum, ip_fast_csum_nofold(buff, len >> 2)); in csum_partial()
194 sum = __csum_partial(buff, len, sum); in csum_partial()
196 return sum; in csum_partial()
211 __u32 len, __u8 proto, __wsum sum);