Home
last modified time | relevance | path

Searched refs:walk (Results 1 – 25 of 224) sorted by relevance

123456789

/Linux-v5.15/crypto/
Dskcipher.c43 static int skcipher_walk_next(struct skcipher_walk *walk);
45 static inline void skcipher_unmap(struct scatter_walk *walk, void *vaddr) in skcipher_unmap() argument
47 if (PageHighMem(scatterwalk_page(walk))) in skcipher_unmap()
51 static inline void *skcipher_map(struct scatter_walk *walk) in skcipher_map() argument
53 struct page *page = scatterwalk_page(walk); in skcipher_map()
56 offset_in_page(walk->offset); in skcipher_map()
59 static inline void skcipher_map_src(struct skcipher_walk *walk) in skcipher_map_src() argument
61 walk->src.virt.addr = skcipher_map(&walk->in); in skcipher_map_src()
64 static inline void skcipher_map_dst(struct skcipher_walk *walk) in skcipher_map_dst() argument
66 walk->dst.virt.addr = skcipher_map(&walk->out); in skcipher_map_dst()
[all …]
Dcfb.c43 static void crypto_cfb_final(struct skcipher_walk *walk, in crypto_cfb_final() argument
49 u8 *src = walk->src.virt.addr; in crypto_cfb_final()
50 u8 *dst = walk->dst.virt.addr; in crypto_cfb_final()
51 u8 *iv = walk->iv; in crypto_cfb_final()
52 unsigned int nbytes = walk->nbytes; in crypto_cfb_final()
58 static int crypto_cfb_encrypt_segment(struct skcipher_walk *walk, in crypto_cfb_encrypt_segment() argument
62 unsigned int nbytes = walk->nbytes; in crypto_cfb_encrypt_segment()
63 u8 *src = walk->src.virt.addr; in crypto_cfb_encrypt_segment()
64 u8 *dst = walk->dst.virt.addr; in crypto_cfb_encrypt_segment()
65 u8 *iv = walk->iv; in crypto_cfb_encrypt_segment()
[all …]
Dcbc.c17 static int crypto_cbc_encrypt_segment(struct skcipher_walk *walk, in crypto_cbc_encrypt_segment() argument
22 unsigned int nbytes = walk->nbytes; in crypto_cbc_encrypt_segment()
23 u8 *src = walk->src.virt.addr; in crypto_cbc_encrypt_segment()
24 u8 *dst = walk->dst.virt.addr; in crypto_cbc_encrypt_segment()
27 u8 *iv = walk->iv; in crypto_cbc_encrypt_segment()
45 static int crypto_cbc_encrypt_inplace(struct skcipher_walk *walk, in crypto_cbc_encrypt_inplace() argument
50 unsigned int nbytes = walk->nbytes; in crypto_cbc_encrypt_inplace()
51 u8 *src = walk->src.virt.addr; in crypto_cbc_encrypt_inplace()
54 u8 *iv = walk->iv; in crypto_cbc_encrypt_inplace()
68 memcpy(walk->iv, iv, bsize); in crypto_cbc_encrypt_inplace()
[all …]
Dpcbc.c21 struct skcipher_walk *walk, in crypto_pcbc_encrypt_segment() argument
25 unsigned int nbytes = walk->nbytes; in crypto_pcbc_encrypt_segment()
26 u8 *src = walk->src.virt.addr; in crypto_pcbc_encrypt_segment()
27 u8 *dst = walk->dst.virt.addr; in crypto_pcbc_encrypt_segment()
28 u8 * const iv = walk->iv; in crypto_pcbc_encrypt_segment()
43 struct skcipher_walk *walk, in crypto_pcbc_encrypt_inplace() argument
47 unsigned int nbytes = walk->nbytes; in crypto_pcbc_encrypt_inplace()
48 u8 *src = walk->src.virt.addr; in crypto_pcbc_encrypt_inplace()
49 u8 * const iv = walk->iv; in crypto_pcbc_encrypt_inplace()
68 struct skcipher_walk walk; in crypto_pcbc_encrypt() local
[all …]
Dahash.c41 static int hash_walk_next(struct crypto_hash_walk *walk) in hash_walk_next() argument
43 unsigned int alignmask = walk->alignmask; in hash_walk_next()
44 unsigned int offset = walk->offset; in hash_walk_next()
45 unsigned int nbytes = min(walk->entrylen, in hash_walk_next()
48 walk->data = kmap_atomic(walk->pg); in hash_walk_next()
49 walk->data += offset; in hash_walk_next()
58 walk->entrylen -= nbytes; in hash_walk_next()
62 static int hash_walk_new_entry(struct crypto_hash_walk *walk) in hash_walk_new_entry() argument
66 sg = walk->sg; in hash_walk_new_entry()
67 walk->offset = sg->offset; in hash_walk_new_entry()
[all …]
Dofb.c23 struct skcipher_walk walk; in crypto_ofb_crypt() local
26 err = skcipher_walk_virt(&walk, req, false); in crypto_ofb_crypt()
28 while (walk.nbytes >= bsize) { in crypto_ofb_crypt()
29 const u8 *src = walk.src.virt.addr; in crypto_ofb_crypt()
30 u8 *dst = walk.dst.virt.addr; in crypto_ofb_crypt()
31 u8 * const iv = walk.iv; in crypto_ofb_crypt()
32 unsigned int nbytes = walk.nbytes; in crypto_ofb_crypt()
41 err = skcipher_walk_done(&walk, nbytes); in crypto_ofb_crypt()
44 if (walk.nbytes) { in crypto_ofb_crypt()
45 crypto_cipher_encrypt_one(cipher, walk.iv, walk.iv); in crypto_ofb_crypt()
[all …]
/Linux-v5.15/include/crypto/
Dscatterwalk.h28 static inline unsigned int scatterwalk_pagelen(struct scatter_walk *walk) in scatterwalk_pagelen() argument
30 unsigned int len = walk->sg->offset + walk->sg->length - walk->offset; in scatterwalk_pagelen()
31 unsigned int len_this_page = offset_in_page(~walk->offset) + 1; in scatterwalk_pagelen()
35 static inline unsigned int scatterwalk_clamp(struct scatter_walk *walk, in scatterwalk_clamp() argument
38 unsigned int len_this_page = scatterwalk_pagelen(walk); in scatterwalk_clamp()
42 static inline void scatterwalk_advance(struct scatter_walk *walk, in scatterwalk_advance() argument
45 walk->offset += nbytes; in scatterwalk_advance()
48 static inline unsigned int scatterwalk_aligned(struct scatter_walk *walk, in scatterwalk_aligned() argument
51 return !(walk->offset & alignmask); in scatterwalk_aligned()
54 static inline struct page *scatterwalk_page(struct scatter_walk *walk) in scatterwalk_page() argument
[all …]
Dctr.h27 struct skcipher_walk walk; in crypto_ctr_encrypt_walk() local
34 err = skcipher_walk_virt(&walk, req, false); in crypto_ctr_encrypt_walk()
36 while (walk.nbytes > 0) { in crypto_ctr_encrypt_walk()
37 u8 *dst = walk.dst.virt.addr; in crypto_ctr_encrypt_walk()
38 u8 *src = walk.src.virt.addr; in crypto_ctr_encrypt_walk()
39 int nbytes = walk.nbytes; in crypto_ctr_encrypt_walk()
42 if (nbytes < walk.total) { in crypto_ctr_encrypt_walk()
43 tail = walk.nbytes & (blocksize - 1); in crypto_ctr_encrypt_walk()
50 fn(tfm, walk.iv, buf); in crypto_ctr_encrypt_walk()
53 crypto_inc(walk.iv, blocksize); in crypto_ctr_encrypt_walk()
[all …]
/Linux-v5.15/mm/
Dpagewalk.c24 unsigned long end, struct mm_walk *walk) in walk_pte_range_inner() argument
26 const struct mm_walk_ops *ops = walk->ops; in walk_pte_range_inner()
30 err = ops->pte_entry(pte, addr, addr + PAGE_SIZE, walk); in walk_pte_range_inner()
42 struct mm_walk *walk) in walk_pte_range() argument
48 if (walk->no_vma) { in walk_pte_range()
50 err = walk_pte_range_inner(pte, addr, end, walk); in walk_pte_range()
53 pte = pte_offset_map_lock(walk->mm, pmd, addr, &ptl); in walk_pte_range()
54 err = walk_pte_range_inner(pte, addr, end, walk); in walk_pte_range()
63 unsigned long end, struct mm_walk *walk, int pdshift) in walk_hugepd_range() argument
66 const struct mm_walk_ops *ops = walk->ops; in walk_hugepd_range()
[all …]
Dmapping_dirty_helpers.c34 struct mm_walk *walk) in wp_pte() argument
36 struct wp_walk *wpwalk = walk->private; in wp_pte()
40 pte_t old_pte = ptep_modify_prot_start(walk->vma, addr, pte); in wp_pte()
43 ptep_modify_prot_commit(walk->vma, addr, pte, old_pte, ptent); in wp_pte()
89 unsigned long end, struct mm_walk *walk) in clean_record_pte() argument
91 struct wp_walk *wpwalk = walk->private; in clean_record_pte()
96 pgoff_t pgoff = ((addr - walk->vma->vm_start) >> PAGE_SHIFT) + in clean_record_pte()
97 walk->vma->vm_pgoff - cwalk->bitmap_pgoff; in clean_record_pte()
98 pte_t old_pte = ptep_modify_prot_start(walk->vma, addr, pte); in clean_record_pte()
101 ptep_modify_prot_commit(walk->vma, addr, pte, old_pte, ptent); in clean_record_pte()
[all …]
Dptdump.c15 static inline int note_kasan_page_table(struct mm_walk *walk, in note_kasan_page_table() argument
18 struct ptdump_state *st = walk->private; in note_kasan_page_table()
22 walk->action = ACTION_CONTINUE; in note_kasan_page_table()
29 unsigned long next, struct mm_walk *walk) in ptdump_pgd_entry() argument
31 struct ptdump_state *st = walk->private; in ptdump_pgd_entry()
37 return note_kasan_page_table(walk, addr); in ptdump_pgd_entry()
50 unsigned long next, struct mm_walk *walk) in ptdump_p4d_entry() argument
52 struct ptdump_state *st = walk->private; in ptdump_p4d_entry()
58 return note_kasan_page_table(walk, addr); in ptdump_p4d_entry()
71 unsigned long next, struct mm_walk *walk) in ptdump_pud_entry() argument
[all …]
Dhmm.c64 unsigned int required_fault, struct mm_walk *walk) in hmm_vma_fault() argument
66 struct hmm_vma_walk *hmm_vma_walk = walk->private; in hmm_vma_fault()
67 struct vm_area_struct *vma = walk->vma; in hmm_vma_fault()
148 __always_unused int depth, struct mm_walk *walk) in hmm_vma_walk_hole() argument
150 struct hmm_vma_walk *hmm_vma_walk = walk->private; in hmm_vma_walk_hole()
161 if (!walk->vma) { in hmm_vma_walk_hole()
167 return hmm_vma_fault(addr, end, required_fault, walk); in hmm_vma_walk_hole()
187 static int hmm_vma_handle_pmd(struct mm_walk *walk, unsigned long addr, in hmm_vma_handle_pmd() argument
191 struct hmm_vma_walk *hmm_vma_walk = walk->private; in hmm_vma_handle_pmd()
202 return hmm_vma_fault(addr, end, required_fault, walk); in hmm_vma_handle_pmd()
[all …]
/Linux-v5.15/arch/arm/crypto/
Daes-ce-glue.c171 struct skcipher_walk walk; in ecb_encrypt() local
175 err = skcipher_walk_virt(&walk, req, false); in ecb_encrypt()
177 while ((blocks = (walk.nbytes / AES_BLOCK_SIZE))) { in ecb_encrypt()
179 ce_aes_ecb_encrypt(walk.dst.virt.addr, walk.src.virt.addr, in ecb_encrypt()
182 err = skcipher_walk_done(&walk, walk.nbytes % AES_BLOCK_SIZE); in ecb_encrypt()
191 struct skcipher_walk walk; in ecb_decrypt() local
195 err = skcipher_walk_virt(&walk, req, false); in ecb_decrypt()
197 while ((blocks = (walk.nbytes / AES_BLOCK_SIZE))) { in ecb_decrypt()
199 ce_aes_ecb_decrypt(walk.dst.virt.addr, walk.src.virt.addr, in ecb_decrypt()
202 err = skcipher_walk_done(&walk, walk.nbytes % AES_BLOCK_SIZE); in ecb_decrypt()
[all …]
Daes-neonbs-glue.c94 struct skcipher_walk walk; in __ecb_crypt() local
97 err = skcipher_walk_virt(&walk, req, false); in __ecb_crypt()
99 while (walk.nbytes >= AES_BLOCK_SIZE) { in __ecb_crypt()
100 unsigned int blocks = walk.nbytes / AES_BLOCK_SIZE; in __ecb_crypt()
102 if (walk.nbytes < walk.total) in __ecb_crypt()
104 walk.stride / AES_BLOCK_SIZE); in __ecb_crypt()
107 fn(walk.dst.virt.addr, walk.src.virt.addr, ctx->rk, in __ecb_crypt()
110 err = skcipher_walk_done(&walk, in __ecb_crypt()
111 walk.nbytes - blocks * AES_BLOCK_SIZE); in __ecb_crypt()
168 struct skcipher_walk walk; in cbc_decrypt() local
[all …]
/Linux-v5.15/arch/arm64/crypto/
Daes-neonbs-glue.c103 struct skcipher_walk walk; in __ecb_crypt() local
106 err = skcipher_walk_virt(&walk, req, false); in __ecb_crypt()
108 while (walk.nbytes >= AES_BLOCK_SIZE) { in __ecb_crypt()
109 unsigned int blocks = walk.nbytes / AES_BLOCK_SIZE; in __ecb_crypt()
111 if (walk.nbytes < walk.total) in __ecb_crypt()
113 walk.stride / AES_BLOCK_SIZE); in __ecb_crypt()
116 fn(walk.dst.virt.addr, walk.src.virt.addr, ctx->rk, in __ecb_crypt()
119 err = skcipher_walk_done(&walk, in __ecb_crypt()
120 walk.nbytes - blocks * AES_BLOCK_SIZE); in __ecb_crypt()
163 struct skcipher_walk walk; in cbc_encrypt() local
[all …]
Daes-glue.c180 struct skcipher_walk walk; in ecb_encrypt() local
183 err = skcipher_walk_virt(&walk, req, false); in ecb_encrypt()
185 while ((blocks = (walk.nbytes / AES_BLOCK_SIZE))) { in ecb_encrypt()
187 aes_ecb_encrypt(walk.dst.virt.addr, walk.src.virt.addr, in ecb_encrypt()
190 err = skcipher_walk_done(&walk, walk.nbytes % AES_BLOCK_SIZE); in ecb_encrypt()
200 struct skcipher_walk walk; in ecb_decrypt() local
203 err = skcipher_walk_virt(&walk, req, false); in ecb_decrypt()
205 while ((blocks = (walk.nbytes / AES_BLOCK_SIZE))) { in ecb_decrypt()
207 aes_ecb_decrypt(walk.dst.virt.addr, walk.src.virt.addr, in ecb_decrypt()
210 err = skcipher_walk_done(&walk, walk.nbytes % AES_BLOCK_SIZE); in ecb_decrypt()
[all …]
Daes-ce-ccm-glue.c139 struct scatter_walk walk; in ccm_calculate_auth_mac() local
154 scatterwalk_start(&walk, req->src); in ccm_calculate_auth_mac()
157 u32 n = scatterwalk_clamp(&walk, len); in ccm_calculate_auth_mac()
161 scatterwalk_start(&walk, sg_next(walk.sg)); in ccm_calculate_auth_mac()
162 n = scatterwalk_clamp(&walk, len); in ccm_calculate_auth_mac()
164 p = scatterwalk_map(&walk); in ccm_calculate_auth_mac()
169 scatterwalk_advance(&walk, n); in ccm_calculate_auth_mac()
170 scatterwalk_done(&walk, 0, len); in ccm_calculate_auth_mac()
174 static int ccm_crypt_fallback(struct skcipher_walk *walk, u8 mac[], u8 iv0[], in ccm_crypt_fallback() argument
180 while (walk->nbytes) { in ccm_crypt_fallback()
[all …]
Dghash-ce-glue.c310 struct scatter_walk walk; in gcm_calculate_auth_mac() local
314 scatterwalk_start(&walk, req->src); in gcm_calculate_auth_mac()
317 u32 n = scatterwalk_clamp(&walk, len); in gcm_calculate_auth_mac()
321 scatterwalk_start(&walk, sg_next(walk.sg)); in gcm_calculate_auth_mac()
322 n = scatterwalk_clamp(&walk, len); in gcm_calculate_auth_mac()
324 p = scatterwalk_map(&walk); in gcm_calculate_auth_mac()
330 scatterwalk_advance(&walk, n); in gcm_calculate_auth_mac()
331 scatterwalk_done(&walk, 0, len); in gcm_calculate_auth_mac()
346 struct skcipher_walk walk; in gcm_encrypt() local
363 err = skcipher_walk_aead_encrypt(&walk, req, false); in gcm_encrypt()
[all …]
/Linux-v5.15/arch/x86/crypto/
Dsm4_aesni_avx_glue.c43 struct skcipher_walk walk; in ecb_do_crypt() local
47 err = skcipher_walk_virt(&walk, req, false); in ecb_do_crypt()
49 while ((nbytes = walk.nbytes) > 0) { in ecb_do_crypt()
50 const u8 *src = walk.src.virt.addr; in ecb_do_crypt()
51 u8 *dst = walk.dst.virt.addr; in ecb_do_crypt()
69 err = skcipher_walk_done(&walk, nbytes); in ecb_do_crypt()
97 struct skcipher_walk walk; in sm4_cbc_encrypt() local
101 err = skcipher_walk_virt(&walk, req, false); in sm4_cbc_encrypt()
103 while ((nbytes = walk.nbytes) > 0) { in sm4_cbc_encrypt()
104 const u8 *iv = walk.iv; in sm4_cbc_encrypt()
[all …]
Daesni-intel_glue.c282 struct skcipher_walk walk; in ecb_encrypt() local
286 err = skcipher_walk_virt(&walk, req, false); in ecb_encrypt()
288 while ((nbytes = walk.nbytes)) { in ecb_encrypt()
290 aesni_ecb_enc(ctx, walk.dst.virt.addr, walk.src.virt.addr, in ecb_encrypt()
294 err = skcipher_walk_done(&walk, nbytes); in ecb_encrypt()
304 struct skcipher_walk walk; in ecb_decrypt() local
308 err = skcipher_walk_virt(&walk, req, false); in ecb_decrypt()
310 while ((nbytes = walk.nbytes)) { in ecb_decrypt()
312 aesni_ecb_dec(ctx, walk.dst.virt.addr, walk.src.virt.addr, in ecb_decrypt()
316 err = skcipher_walk_done(&walk, nbytes); in ecb_decrypt()
[all …]
Dblowfish_glue.c76 struct skcipher_walk walk; in ecb_crypt() local
80 err = skcipher_walk_virt(&walk, req, false); in ecb_crypt()
82 while ((nbytes = walk.nbytes)) { in ecb_crypt()
83 u8 *wsrc = walk.src.virt.addr; in ecb_crypt()
84 u8 *wdst = walk.dst.virt.addr; in ecb_crypt()
110 err = skcipher_walk_done(&walk, nbytes); in ecb_crypt()
127 struct skcipher_walk *walk) in __cbc_encrypt() argument
130 unsigned int nbytes = walk->nbytes; in __cbc_encrypt()
131 u64 *src = (u64 *)walk->src.virt.addr; in __cbc_encrypt()
132 u64 *dst = (u64 *)walk->dst.virt.addr; in __cbc_encrypt()
[all …]
Ddes3_ede_glue.c77 struct skcipher_walk walk; in ecb_crypt() local
81 err = skcipher_walk_virt(&walk, req, false); in ecb_crypt()
83 while ((nbytes = walk.nbytes)) { in ecb_crypt()
84 u8 *wsrc = walk.src.virt.addr; in ecb_crypt()
85 u8 *wdst = walk.dst.virt.addr; in ecb_crypt()
112 err = skcipher_walk_done(&walk, nbytes); in ecb_crypt()
135 struct skcipher_walk *walk) in __cbc_encrypt() argument
138 unsigned int nbytes = walk->nbytes; in __cbc_encrypt()
139 u64 *src = (u64 *)walk->src.virt.addr; in __cbc_encrypt()
140 u64 *dst = (u64 *)walk->dst.virt.addr; in __cbc_encrypt()
[all …]
Daegis128-aesni-glue.c60 int (*skcipher_walk_init)(struct skcipher_walk *walk,
73 struct scatter_walk walk; in crypto_aegis128_aesni_process_ad() local
77 scatterwalk_start(&walk, sg_src); in crypto_aegis128_aesni_process_ad()
79 unsigned int size = scatterwalk_clamp(&walk, assoclen); in crypto_aegis128_aesni_process_ad()
81 void *mapped = scatterwalk_map(&walk); in crypto_aegis128_aesni_process_ad()
107 scatterwalk_advance(&walk, size); in crypto_aegis128_aesni_process_ad()
108 scatterwalk_done(&walk, 0, assoclen); in crypto_aegis128_aesni_process_ad()
118 struct aegis_state *state, struct skcipher_walk *walk, in crypto_aegis128_aesni_process_crypt() argument
121 while (walk->nbytes >= AEGIS128_BLOCK_SIZE) { in crypto_aegis128_aesni_process_crypt()
123 round_down(walk->nbytes, AEGIS128_BLOCK_SIZE), in crypto_aegis128_aesni_process_crypt()
[all …]
/Linux-v5.15/arch/sparc/crypto/
Daes_glue.c223 struct skcipher_walk walk; in ecb_encrypt() local
227 err = skcipher_walk_virt(&walk, req, true); in ecb_encrypt()
232 while ((nbytes = walk.nbytes) != 0) { in ecb_encrypt()
233 ctx->ops->ecb_encrypt(&ctx->key[0], walk.src.virt.addr, in ecb_encrypt()
234 walk.dst.virt.addr, in ecb_encrypt()
236 err = skcipher_walk_done(&walk, nbytes % AES_BLOCK_SIZE); in ecb_encrypt()
247 struct skcipher_walk walk; in ecb_decrypt() local
251 err = skcipher_walk_virt(&walk, req, true); in ecb_decrypt()
257 while ((nbytes = walk.nbytes) != 0) { in ecb_decrypt()
258 ctx->ops->ecb_decrypt(key_end, walk.src.virt.addr, in ecb_decrypt()
[all …]
/Linux-v5.15/arch/powerpc/crypto/
Daes-spe-glue.c184 struct skcipher_walk walk; in ppc_ecb_crypt() local
188 err = skcipher_walk_virt(&walk, req, false); in ppc_ecb_crypt()
190 while ((nbytes = walk.nbytes) != 0) { in ppc_ecb_crypt()
196 ppc_encrypt_ecb(walk.dst.virt.addr, walk.src.virt.addr, in ppc_ecb_crypt()
199 ppc_decrypt_ecb(walk.dst.virt.addr, walk.src.virt.addr, in ppc_ecb_crypt()
203 err = skcipher_walk_done(&walk, walk.nbytes - nbytes); in ppc_ecb_crypt()
223 struct skcipher_walk walk; in ppc_cbc_crypt() local
227 err = skcipher_walk_virt(&walk, req, false); in ppc_cbc_crypt()
229 while ((nbytes = walk.nbytes) != 0) { in ppc_cbc_crypt()
235 ppc_encrypt_cbc(walk.dst.virt.addr, walk.src.virt.addr, in ppc_cbc_crypt()
[all …]

123456789