/linux/arch/arm/lib/ |
H A D | csumpartialcopygeneric.S | 11 * csum_partial_copy_xxx(const char *src, char *dst, int len, int sum, ) 12 * r0 = src, r1 = dst, r2 = len, r3 = sum 21 sum .req r3 label 23 .Lzero: mov r0, sum 38 adcs sum, sum, ip, put_byte_1 @ update checksum 45 adcs sum, sum, r8, put_byte_0 47 adcs sum, sum, ip, put_byte_1 65 adcs sum, sum, ip, put_byte_1 @ update checksum 72 adcs sum, sum, r8, put_byte_0 74 adcs sum, sum, ip, put_byte_1 [all …]
|
H A D | csumpartial.S | 13 * Function: __u32 csum_partial(const char *src, int len, __u32 sum) 20 sum .req r2 label 26 .Lzero: mov r0, sum 39 movne sum, sum, ror #8 42 adcsne sum, sum, td0, put_byte_1 63 adcs sum, sum, td0 69 adcsne sum, sum, td0, put_byte_0 @ update checksum 71 .Ldone: adc r0, sum, #0 @ collect up the last carry 80 adcsne sum, sum, td0, put_byte_1 @ update checksum 96 adcsne sum, sum, td0 @ update checksum [all …]
|
/linux/tools/testing/selftests/bpf/progs/ |
H A D | test_tcp_custom_syncookie.h | 54 __u32 len, __u8 proto, __wsum sum) in csum_tcpudp_nofold() argument 56 unsigned long long s = (__force u32)sum; in csum_tcpudp_nofold() 71 u32 sum = (__force u32)csum; in csum_fold() local 73 sum = (sum & 0xffff) + (sum >> 16); in csum_fold() 74 sum = (sum & 0xffff) + (sum >> 16); in csum_fold() 75 return (__force __sum16)~sum; in csum_fold() 79 __u8 proto, __wsum sum) in csum_tcpudp_magic() argument 81 return csum_fold(csum_tcpudp_nofold(saddr, daddr, len, proto, sum)); in csum_tcpudp_magic() 92 __u32 sum = (__force u32)csum; in csum_ipv6_magic() local 94 sum += (__force u32)saddr->in6_u.u6_addr32[0]; in csum_ipv6_magic() [all …]
|
H A D | iters_num.c | 16 __s64 sum = 0, i; in num_empty_zero() local 18 bpf_for(i, 0, 0) sum += i; in num_empty_zero() 19 res_empty_zero = 1 + sum; in num_empty_zero() 30 __s64 sum = 0, i; in num_empty_int_min() local 32 bpf_for(i, INT_MIN, INT_MIN) sum += i; in num_empty_int_min() 33 res_empty_int_min = 2 + sum; in num_empty_int_min() 44 __s64 sum = 0, i; in num_empty_int_max() local 46 bpf_for(i, INT_MAX, INT_MAX) sum += i; in num_empty_int_max() 47 res_empty_int_max = 3 + sum; in num_empty_int_max() 58 __s64 sum = 0, i; in num_empty_minus_one() local [all …]
|
H A D | iters_testmod_seq.c | 28 __s64 sum = 0, *i; in testmod_seq_empty() local 30 bpf_for_each(testmod_seq, i, 1000, 0) sum += *i; in testmod_seq_empty() 31 res_empty = 1 + sum; in testmod_seq_empty() 46 __s64 sum = 0, *i; in testmod_seq_full() local 48 bpf_for_each(testmod_seq, i, 1000, 1000) sum += *i; in testmod_seq_full() 49 res_full = sum; in testmod_seq_full() 66 __s64 sum = 0, *i; in testmod_seq_truncated() local 70 sum += *i; in testmod_seq_truncated() 75 res_truncated = sum; in testmod_seq_truncated() 96 s64 sum in testmod_seq_getter_after_bad() local 114 s64 sum = 0, *v; testmod_seq_getter_good() local [all...] |
/linux/sound/pci/ctxfi/ |
H A D | ctamixer.c | 91 static int amixer_set_sum(struct amixer *amixer, struct sum *sum) in amixer_set_sum() argument 96 amixer->sum = sum; in amixer_set_sum() 97 if (!sum) { in amixer_set_sum() 102 sum->rsc.ops->index(&sum->rsc)); in amixer_set_sum() 114 struct sum *sum; in amixer_commit_write() local 118 sum in amixer_commit_write() 175 amixer_setup(struct amixer * amixer,struct rsc * input,unsigned int scale,struct sum * sum) amixer_setup() argument 362 sum_rsc_init(struct sum * sum,const struct sum_desc * desc,struct sum_mgr * mgr) sum_rsc_init() argument 377 sum_rsc_uninit(struct sum * sum) sum_rsc_uninit() argument 389 struct sum *sum; get_sum_rsc() local 434 put_sum_rsc(struct sum_mgr * mgr,struct sum * sum) put_sum_rsc() argument [all...] |
/linux/arch/powerpc/include/asm/ |
H A D | checksum.h | 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 41 u32 tmp = (__force u32)sum; in csum_fold() 44 * swap the two 16-bit halves of sum in csum_fold() 47 * giving us the correct sum in the upper half. in csum_fold() 58 __u8 proto, __wsum sum) in csum_tcpudp_nofold() argument 61 u64 s = (__force u32)sum; in csum_tcpudp_nofold() 78 : "=r" (sum) in csum_tcpudp_nofold() 79 : "r" (daddr), "r"(saddr), "r"(proto + len), "0"(sum)); in csum_tcpudp_nofold() 80 return sum; in csum_tcpudp_nofold() [all …]
|
/linux/arch/mips/lib/ |
H A D | csum_partial.S | 59 #define ADDC(sum,reg) \ argument 62 ADD sum, reg; \ 63 sltu v1, sum, reg; \ 64 ADD sum, v1; \ 67 #define ADDC32(sum,reg) \ argument 70 addu sum, reg; \ 71 sltu v1, sum, reg; \ 72 addu sum, v1; \ 75 #define CSUM_BIGCHUNK1(src, offset, sum, _t0, _t1, _t2, _t3) \ argument 82 ADDC(sum, _t0); \ [all …]
|
/linux/net/ipv6/ |
H A D | ip6_checksum.c | 16 __u32 sum = (__force u32)csum; in csum_ipv6_magic() local 18 sum += (__force u32)saddr->s6_addr32[0]; in csum_ipv6_magic() 19 carry = (sum < (__force u32)saddr->s6_addr32[0]); in csum_ipv6_magic() 20 sum += carry; in csum_ipv6_magic() 22 sum += (__force u32)saddr->s6_addr32[1]; in csum_ipv6_magic() 23 carry = (sum < (__force u32)saddr->s6_addr32[1]); in csum_ipv6_magic() 24 sum += carry; in csum_ipv6_magic() 26 sum += (__force u32)saddr->s6_addr32[2]; in csum_ipv6_magic() 27 carry = (sum < (__force u32)saddr->s6_addr32[2]); in csum_ipv6_magic() 28 sum += carry; in csum_ipv6_magic() [all …]
|
/linux/arch/sparc/lib/ |
H A D | checksum_32.S | 20 #define CSUM_BIGCHUNK(buf, offset, sum, t0, t1, t2, t3, t4, t5) \ argument 23 addxcc t0, sum, sum; \ 24 addxcc t1, sum, sum; \ 26 addxcc t2, sum, sum; \ 27 addxcc t3, sum, sum; \ 29 addxcc t4, sum, sum; \ 30 addxcc t5, sum, sum; \ 31 addxcc t0, sum, sum; \ 32 addxcc t1, sum, sum; 34 #define CSUM_LASTCHUNK(buf, offset, sum, t0, t1, t2, t3) \ argument [all …]
|
/linux/arch/x86/include/asm/ |
H A D | checksum_64.h | 16 * sum: 32bit unfolded sum 22 static inline __sum16 csum_fold(__wsum sum) in csum_fold() argument 26 : "=r" (sum) in csum_fold() 27 : "r" ((__force u32)sum << 16), in csum_fold() 28 "0" ((__force u32)sum & 0xffff0000)); in csum_fold() 29 return (__force __sum16)(~(__force u32)sum >> 16); in csum_fold() 47 unsigned int sum; in ip_fast_csum() local 69 : "=r" (sum), "=r" (iph), "=r" (ihl) in ip_fast_csum() 72 return (__force __sum16)sum; in ip_fast_csum() 81 * @sum: initial sum to be added in (32bit unfolded) [all …]
|
H A D | checksum_32.h | 10 * and adds in "sum" (32-bit) 20 asmlinkage __wsum csum_partial(const void *buff, int len, __wsum sum); 67 unsigned int sum; in ip_fast_csum() local 89 : "=r" (sum), "=r" (iph), "=r" (ihl) in ip_fast_csum() 92 return (__force __sum16)sum; in ip_fast_csum() 99 static inline __sum16 csum_fold(__wsum sum) in csum_fold() argument 103 : "=r" (sum) in csum_fold() 104 : "r" ((__force u32)sum << 16), in csum_fold() 105 "0" ((__force u32)sum & 0xffff0000)); in csum_fold() 106 return (__force __sum16)(~(__force u32)sum >> 16); in csum_fold() [all …]
|
/linux/include/net/ |
H A D | checksum.h | 41 __wsum sum = csum_partial(src, len, ~0U); in csum_and_copy_to_user() local 44 return sum; in csum_and_copy_to_user() 86 static __always_inline __wsum csum_shift(__wsum sum, int offset) in csum_shift() argument 88 /* rotate sum to align it with a 16b boundary */ in csum_shift() 90 return (__force __wsum)ror32((__force u32)sum, 8); in csum_shift() 91 return sum; in csum_shift() 114 static __always_inline void csum_replace_by_diff(__sum16 *sum, __wsum diff) in csum_replace_by_diff() argument 116 *sum = csum_fold(csum_add(diff, ~csum_unfold(*sum))); in csum_replace_by_diff() 119 static __always_inline void csum_replace4(__sum16 *sum, __be32 from, __be32 to) in csum_replace4() argument 121 __wsum tmp = csum_sub(~csum_unfold(*sum), (__force __wsum)from); in csum_replace4() [all …]
|
/linux/arch/mips/include/asm/ |
H A D | checksum.h | 25 * and adds in "sum" (32-bit) 35 __wsum csum_partial(const void *buff, int len, __wsum sum); 79 u32 sum = (__force u32)csum; in csum_fold() local 81 sum += (sum << 16); in csum_fold() 82 csum = (__force __wsum)(sum < (__force u32)csum); in csum_fold() 83 sum >>= 16; in csum_fold() 84 sum += (__force u32)csum; in csum_fold() 86 return (__force __sum16)~sum; in csum_fold() 134 unsigned long sum = (__force unsigned long)daddr; in csum_tcpudp_nofold() local 139 sum += tmp; in csum_tcpudp_nofold() [all …]
|
/linux/arch/loongarch/lib/ |
H A D | csum.c | 11 static u64 accumulate(u64 sum, u64 data) in accumulate() argument 13 sum += data; in accumulate() 14 if (sum < data) in accumulate() 15 sum += 1; in accumulate() 16 return sum; in accumulate() 25 unsigned int offset, shift, sum; in do_csum() local 113 sum = sum64 >> 32; in do_csum() 114 sum += (sum >> 16) | (sum << 16); in do_csum() 116 return (u16)swab32(sum); in do_csum() 118 return sum >> 16; in do_csum() [all …]
|
/linux/arch/x86/um/asm/ |
H A D | checksum.h | 11 * and adds in "sum" (32-bit) 21 extern __wsum csum_partial(const void *buff, int len, __wsum sum); 28 * sum: 32bit unfolded sum 34 static inline __sum16 csum_fold(__wsum sum) in csum_fold() argument 39 : "=r" (sum) in csum_fold() 40 : "r" ((__force u32)sum << 16), in csum_fold() 41 "0" ((__force u32)sum & 0xffff0000) in csum_fold() 43 return (__force __sum16)(~(__force u32)sum >> 16); in csum_fold() 52 * @sum: initial sum to be added in (32bit unfolded) 59 __u8 proto, __wsum sum) in csum_tcpudp_nofold() argument [all …]
|
/linux/arch/m68k/include/asm/ |
H A D | checksum.h | 13 * and adds in "sum" (32-bit) 23 __wsum csum_partial(const void *buff, int len, __wsum sum); 48 unsigned int sum = 0; in ip_fast_csum() local 61 : "=d" (sum), "=&a" (iph), "=&d" (ihl), "=&d" (tmp) in ip_fast_csum() 62 : "0" (sum), "1" (iph), "2" (ihl) in ip_fast_csum() 64 return (__force __sum16)~sum; in ip_fast_csum() 67 static inline __sum16 csum_fold(__wsum sum) in csum_fold() argument 69 unsigned int tmp = (__force u32)sum; in csum_fold() 75 : "=&d" (sum), "=&d" (tmp) in csum_fold() 76 : "0" (sum), "1" (tmp)); in csum_fold() [all …]
|
/linux/arch/arm/include/asm/ |
H A D | checksum.h | 18 * and adds in "sum" (32-bit) 28 __wsum csum_partial(const void *buff, int len, __wsum sum); 58 static inline __sum16 csum_fold(__wsum sum) in csum_fold() argument 62 : "=r" (sum) in csum_fold() 63 : "r" (sum) in csum_fold() 65 return (__force __sum16)(~(__force u32)sum >> 16); in csum_fold() 76 __wsum sum; in ip_fast_csum() local 93 : "=r" (sum), "=r" (iph), "=r" (ihl), "=r" (tmp1) in ip_fast_csum() 96 return csum_fold(sum); in ip_fast_csum() 101 __u8 proto, __wsum sum) in csum_tcpudp_nofold() argument [all …]
|
/linux/arch/arm64/include/asm/ |
H A D | checksum.h | 13 __u32 len, __u8 proto, __wsum sum); 17 u32 sum = (__force u32)csum; in csum_fold() local 18 sum += (sum >> 16) | (sum << 16); in csum_fold() 19 return ~(__force __sum16)(sum >> 16); in csum_fold() 26 u64 sum; in ip_fast_csum() local 33 sum = tmp >> 64; in ip_fast_csum() 35 sum += *(const u32 *)iph; in ip_fast_csum() 39 sum += ((sum >> 32) | (sum << 32)); in ip_fast_csum() 40 return csum_fold((__force __wsum)(sum >> 32)); in ip_fast_csum()
|
/linux/arch/arm64/lib/ |
H A D | csum.c | 11 static u64 accumulate(u64 sum, u64 data) in accumulate() argument 13 __uint128_t tmp = (__uint128_t)sum + data; in accumulate() 23 unsigned int offset, shift, sum; in do_csum() local 124 sum = sum64 >> 32; in do_csum() 125 sum += (sum >> 16) | (sum << 16); in do_csum() 127 return (u16)swab32(sum); in do_csum() 129 return sum >> 16; in do_csum() 137 u64 sum = (__force u64)csum; in csum_ipv6_magic() local 142 sum += (__force u32)htonl(len); in csum_ipv6_magic() 144 sum += (u32)proto << 24; in csum_ipv6_magic() [all …]
|
/linux/arch/x86/lib/ |
H A D | csum-wrappers_64.c | 24 __wsum sum; in csum_and_copy_from_user() local 29 sum = csum_partial_copy_generic((__force const void *)src, dst, len); in csum_and_copy_from_user() 31 return sum; in csum_and_copy_from_user() 46 __wsum sum; in csum_and_copy_to_user() local 51 sum = csum_partial_copy_generic(src, (void __force *)dst, len); in csum_and_copy_to_user() 53 return sum; in csum_and_copy_to_user() 73 __u32 len, __u8 proto, __wsum sum) in csum_ipv6_magic() argument 78 (__force __u64)sum; in csum_ipv6_magic() 80 asm(" addq (%[saddr]),%[sum]\n" in csum_ipv6_magic() 81 " adcq 8(%[saddr]),%[sum]\n" in csum_ipv6_magic() [all …]
|
/linux/arch/riscv/lib/ |
H A D | csum.c | 25 unsigned long sum = (__force unsigned long)csum; in csum_ipv6_magic() local 27 sum += (__force unsigned long)saddr->s6_addr32[0]; in csum_ipv6_magic() 28 sum += (__force unsigned long)saddr->s6_addr32[1]; in csum_ipv6_magic() 29 sum += (__force unsigned long)saddr->s6_addr32[2]; in csum_ipv6_magic() 30 sum += (__force unsigned long)saddr->s6_addr32[3]; in csum_ipv6_magic() 32 sum += (__force unsigned long)daddr->s6_addr32[0]; in csum_ipv6_magic() 33 sum += (__force unsigned long)daddr->s6_addr32[1]; in csum_ipv6_magic() 34 sum += (__force unsigned long)daddr->s6_addr32[2]; in csum_ipv6_magic() 35 sum += (__force unsigned long)daddr->s6_addr32[3]; in csum_ipv6_magic() 38 sum += ulen; in csum_ipv6_magic() [all …]
|
/linux/arch/alpha/include/asm/ |
H A D | checksum.h | 18 __u32 len, __u8 proto, __wsum sum); 21 __u32 len, __u8 proto, __wsum sum); 25 * and adds in "sum" (32-bit) 35 extern __wsum csum_partial(const void *buff, int len, __wsum sum); 64 u32 sum = (__force u32)csum; in csum_fold() local 65 sum = (sum & 0xffff) + (sum >> 16); in csum_fold() 66 sum = (sum & 0xffff) + (sum >> 16); in csum_fold() 67 return (__force __sum16)~sum; in csum_fold() 73 __u32 len, __u8 proto, __wsum sum);
|
/linux/tools/testing/selftests/net/tcp_ao/ |
H A D | icmps-accept.c | 145 static uint32_t checksum4_nofold(void *data, size_t len, uint32_t sum) in checksum4_nofold() argument 151 sum += words[i]; in checksum4_nofold() 153 sum += ((char *)data)[len - 1]; in checksum4_nofold() 154 return sum; in checksum4_nofold() 157 static uint16_t checksum4_fold(void *data, size_t len, uint32_t sum) in checksum4_fold() argument 159 sum = checksum4_nofold(data, len, sum); in checksum4_fold() 160 while (sum > 0xFFFF) in checksum4_fold() 161 sum = (sum in checksum4_fold() 242 uint32_t sum = csum; csum_fold() local 257 checksum6_nofold(void * data,size_t len,uint32_t sum) checksum6_nofold() argument 280 uint32_t sum; icmp6_checksum() local [all...] |
H A D | icmps-discard.c | 145 static uint32_t checksum4_nofold(void *data, size_t len, uint32_t sum) in checksum4_nofold() argument 151 sum += words[i]; in checksum4_nofold() 153 sum += ((char *)data)[len - 1]; in checksum4_nofold() 154 return sum; in checksum4_nofold() 157 static uint16_t checksum4_fold(void *data, size_t len, uint32_t sum) in checksum4_fold() argument 159 sum = checksum4_nofold(data, len, sum); in checksum4_fold() 160 while (sum > 0xFFFF) in checksum4_fold() 161 sum = (sum & 0xFFFF) + (sum >> 16); in checksum4_fold() 162 return ~sum; in checksum4_fold() 242 uint32_t sum = csum; in csum_fold() local [all …]
|