| /linux-6.15/include/crypto/ |
| H A D | scatterwalk.h | 32 walk->sg = sg; in scatterwalk_start() 48 walk->sg = sg; in scatterwalk_start_at_pos() 58 if (walk->offset >= walk->sg->offset + walk->sg->length) in scatterwalk_clamp() 59 scatterwalk_start(walk, sg_next(walk->sg)); in scatterwalk_clamp() 60 len_this_sg = walk->sg->offset + walk->sg->length - walk->offset; in scatterwalk_clamp() 92 if (walk->offset >= walk->sg->offset + walk->sg->length) in scatterwalk_get_sglist() 93 scatterwalk_start(walk, sg_next(walk->sg)); in scatterwalk_get_sglist() 95 walk->sg->offset + walk->sg->length - walk->offset, in scatterwalk_get_sglist() 96 walk->offset); in scatterwalk_get_sglist() 127 walk->__addr = addr; in scatterwalk_map() [all …]
|
| H A D | ctr.h | 27 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 const u8 *src = walk.src.virt.addr; in crypto_ctr_encrypt_walk() 38 u8 *dst = walk.dst.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-6.15/crypto/ |
| H A D | skcipher.c | 93 memcpy(walk->out.addr, walk->page, n); in skcipher_walk_done() 131 if (walk->iv != walk->oiv) in skcipher_walk_done() 132 memcpy(walk->oiv, walk->iv, walk->ivsize); in skcipher_walk_done() 133 if (walk->buffer != walk->page) in skcipher_walk_done() 150 walk->buffer = walk->page; in skcipher_next_slow() 165 walk->in.__addr = walk->out.addr; in skcipher_next_slow() 178 memcpy(tmp, walk->in.addr, walk->nbytes); in skcipher_next_copy() 200 walk->in.__addr = walk->out.__addr; in skcipher_next_fast() 221 if (unlikely(walk->total < walk->blocksize)) in skcipher_walk_next() 229 if (unlikely((walk->in.offset | walk->out.offset) & walk->alignmask)) { in skcipher_walk_next() [all …]
|
| H A D | pcbc.c | 27 u8 *dst = walk->dst.virt.addr; in crypto_pcbc_encrypt_segment() 28 u8 * const iv = walk->iv; in crypto_pcbc_encrypt_segment() 49 u8 * const iv = walk->iv; in crypto_pcbc_encrypt_inplace() 68 struct skcipher_walk walk; in crypto_pcbc_encrypt() local 74 while (walk.nbytes) { in crypto_pcbc_encrypt() 75 if (walk.src.virt.addr == walk.dst.virt.addr) in crypto_pcbc_encrypt() 95 u8 * const iv = walk->iv; in crypto_pcbc_decrypt_segment() 116 u8 * const iv = walk->iv; in crypto_pcbc_decrypt_inplace() 135 struct skcipher_walk walk; in crypto_pcbc_decrypt() local 141 while (walk.nbytes) { in crypto_pcbc_decrypt() [all …]
|
| H A D | xctr.c | 38 const u8 *src = walk->src.virt.addr; in crypto_xctr_crypt_final() 39 u8 *dst = walk->dst.virt.addr; in crypto_xctr_crypt_final() 40 unsigned int nbytes = walk->nbytes; in crypto_xctr_crypt_final() 55 u8 *dst = walk->dst.virt.addr; in crypto_xctr_crypt_segment() 56 unsigned int nbytes = walk->nbytes; in crypto_xctr_crypt_segment() 80 unsigned int nbytes = walk->nbytes; in crypto_xctr_crypt_inplace() 81 u8 *data = walk->dst.virt.addr; in crypto_xctr_crypt_inplace() 104 struct skcipher_walk walk; in crypto_xctr_crypt() local 112 if (walk.src.virt.addr == walk.dst.virt.addr) in crypto_xctr_crypt() 119 byte_ctr += walk.nbytes - nbytes; in crypto_xctr_crypt() [all …]
|
| H A D | scatterwalk.c | 20 struct scatterlist *sg = walk->sg; in scatterwalk_skip() 22 nbytes += walk->offset - sg->offset; in scatterwalk_skip() 28 walk->sg = sg; in scatterwalk_skip() 29 walk->offset = sg->offset + nbytes; in scatterwalk_skip() 39 to_copy = scatterwalk_next(walk, nbytes); in memcpy_from_scatterwalk() 40 memcpy(buf, walk->addr, to_copy); in memcpy_from_scatterwalk() 41 scatterwalk_done_src(walk, to_copy); in memcpy_from_scatterwalk() 55 memcpy(walk->addr, buf, to_copy); in memcpy_to_scatterwalk() 56 scatterwalk_done_dst(walk, to_copy); in memcpy_to_scatterwalk() 66 struct scatter_walk walk; in memcpy_from_sglist() local [all …]
|
| /linux-6.15/mm/ |
| H A D | pagewalk.c | 41 walk); in walk_pte_range_inner() 69 if (walk->no_vma) { in walk_pte_range() 151 if (walk->vma) in walk_pmd_range() 218 if (walk->vma) in walk_pud_range() 283 if (walk->pgd) in walk_pgd_range() 470 if (!walk.mm) in walk_page_range_mm() 478 walk.vma = NULL; in walk_page_range_mm() 483 walk.vma = NULL; in walk_page_range_mm() 489 walk.vma = vma; in walk_page_range_mm() 684 if (!walk.mm) in walk_page_vma() [all …]
|
| H A D | ptdump.c | 19 struct ptdump_state *st = walk->private; in note_kasan_page_table() 23 walk->action = ACTION_CONTINUE; in note_kasan_page_table() 32 struct ptdump_state *st = walk->private; in ptdump_pgd_entry() 38 return note_kasan_page_table(walk, addr); in ptdump_pgd_entry() 46 walk->action = ACTION_CONTINUE; in ptdump_pgd_entry() 55 struct ptdump_state *st = walk->private; in ptdump_p4d_entry() 69 walk->action = ACTION_CONTINUE; in ptdump_p4d_entry() 78 struct ptdump_state *st = walk->private; in ptdump_pud_entry() 92 walk->action = ACTION_CONTINUE; in ptdump_pud_entry() 101 struct ptdump_state *st = walk->private; in ptdump_pmd_entry() [all …]
|
| H A D | mapping_dirty_helpers.c | 35 struct mm_walk *walk) in wp_pte() argument 127 struct mm_walk *walk) in wp_clean_pmd_entry() argument 134 walk->action = ACTION_CONTINUE; in wp_clean_pmd_entry() 149 struct mm_walk *walk) in wp_clean_pud_entry() argument 157 walk->action = ACTION_CONTINUE; in wp_clean_pud_entry() 170 struct mm_walk *walk) in wp_clean_pre_vma() argument 178 walk->mm, start, end); in wp_clean_pre_vma() 187 inc_tlb_flush_pending(walk->mm); in wp_clean_pre_vma() 202 if (mm_tlb_flush_nested(walk->mm)) in wp_clean_post_vma() 210 dec_tlb_flush_pending(walk->mm); in wp_clean_post_vma() [all …]
|
| H A D | hmm.c | 67 struct vm_area_struct *vma = walk->vma; in hmm_vma_fault() 161 if (!walk->vma) { in hmm_vma_walk_hole() 323 struct mm_walk *walk) in hmm_vma_walk_pmd() argument 342 pmd_migration_entry_wait(walk->mm, pmdp); in hmm_vma_walk_pmd() 412 struct mm_walk *walk) in hmm_vma_walk_pud() argument 424 walk->action = ACTION_CONTINUE; in hmm_vma_walk_pud() 457 walk->action = ACTION_SUBTREE; in hmm_vma_walk_pud() 470 struct mm_walk *walk) in hmm_vma_walk_hugetlb_entry() argument 475 struct vm_area_struct *vma = walk->vma; in hmm_vma_walk_hugetlb_entry() 521 struct mm_walk *walk) in hmm_vma_walk_test() argument [all …]
|
| /linux-6.15/arch/arm/crypto/ |
| H A D | aes-ce-glue.c | 179 ce_aes_ecb_encrypt(walk.dst.virt.addr, walk.src.virt.addr, in ecb_encrypt() 199 ce_aes_ecb_decrypt(walk.dst.virt.addr, walk.src.virt.addr, in ecb_decrypt() 460 if (unlikely(tail > 0 && walk.nbytes < walk.total)) { in xts_encrypt() 482 if (walk.nbytes < walk.total) in xts_encrypt() 490 err = skcipher_walk_done(&walk, walk.nbytes - nbytes); in xts_encrypt() 508 ce_aes_xts_encrypt(walk.dst.virt.addr, walk.src.virt.addr, in xts_encrypt() 509 ctx->key1.key_enc, rounds, walk.nbytes, walk.iv, in xts_encrypt() 532 if (unlikely(tail > 0 && walk.nbytes < walk.total)) { in xts_decrypt() 554 if (walk.nbytes < walk.total) in xts_decrypt() 562 err = skcipher_walk_done(&walk, walk.nbytes - nbytes); in xts_decrypt() [all …]
|
| H A D | aes-neonbs-glue.c | 101 if (walk.nbytes < walk.total) in __ecb_crypt() 106 fn(walk.dst.virt.addr, walk.src.virt.addr, ctx->rk, in __ecb_crypt() 158 u8 *prev = walk.iv; in cbc_encrypt() 187 if (walk.nbytes < walk.total) in cbc_decrypt() 192 aesbs_cbc_decrypt(walk.dst.virt.addr, walk.src.virt.addr, in cbc_decrypt() 194 walk.iv); in cbc_decrypt() 240 else if (walk.nbytes < walk.total) in ctr_encrypt() 251 err = skcipher_walk_done(&walk, walk.nbytes - bytes); in ctr_encrypt() 323 __aes_arm_encrypt(ctx->tweak_key.key_enc, rounds, walk.iv, walk.iv); in __xts_crypt() 329 if (walk.nbytes < walk.total) { in __xts_crypt() [all …]
|
| /linux-6.15/arch/arm64/crypto/ |
| H A D | aes-glue.c | 191 aes_ecb_encrypt(walk.dst.virt.addr, walk.src.virt.addr, in ecb_encrypt() 211 aes_ecb_decrypt(walk.dst.virt.addr, walk.src.virt.addr, in ecb_decrypt() 328 ctx->key_enc, rounds, walk.nbytes, walk.iv); in cts_cbc_encrypt() 385 ctx->key_dec, rounds, walk.nbytes, walk.iv); in cts_cbc_decrypt() 491 err = skcipher_walk_done(&walk, walk.nbytes - nbytes); in xctr_encrypt() 528 walk.iv); in ctr_encrypt() 535 err = skcipher_walk_done(&walk, walk.nbytes - nbytes); in ctr_encrypt() 557 if (unlikely(tail > 0 && walk.nbytes < walk.total)) { in xts_encrypt() 579 if (walk.nbytes < walk.total) in xts_encrypt() 629 if (unlikely(tail > 0 && walk.nbytes < walk.total)) { in xts_decrypt() [all …]
|
| H A D | aes-neonbs-glue.c | 109 if (walk.nbytes < walk.total) in __ecb_crypt() 114 fn(walk.dst.virt.addr, walk.src.virt.addr, ctx->rk, in __ecb_crypt() 171 neon_aes_cbc_encrypt(walk.dst.virt.addr, walk.src.virt.addr, in cbc_encrypt() 175 err = skcipher_walk_done(&walk, walk.nbytes % AES_BLOCK_SIZE); in cbc_encrypt() 192 if (walk.nbytes < walk.total) in cbc_decrypt() 197 aesbs_cbc_decrypt(walk.dst.virt.addr, walk.src.virt.addr, in cbc_decrypt() 199 walk.iv); in cbc_decrypt() 230 if (nbytes && walk.nbytes == walk.total) { in ctr_encrypt() 326 neon_aes_ecb_encrypt(walk.iv, walk.iv, in __xts_crypt() 332 walk.iv); in __xts_crypt() [all …]
|
| H A D | sm4-neon-glue.c | 38 struct skcipher_walk walk; in sm4_ecb_do_crypt() local 46 u8 *dst = walk.dst.virt.addr; in sm4_ecb_do_crypt() 84 struct skcipher_walk walk; in sm4_cbc_encrypt() local 91 const u8 *iv = walk.iv; in sm4_cbc_encrypt() 93 u8 *dst = walk.dst.virt.addr; in sm4_cbc_encrypt() 103 if (iv != walk.iv) in sm4_cbc_encrypt() 116 struct skcipher_walk walk; in sm4_cbc_decrypt() local 132 walk.iv, nblocks); in sm4_cbc_decrypt() 147 struct skcipher_walk walk; in sm4_ctr_crypt() local 163 walk.iv, nblocks); in sm4_ctr_crypt() [all …]
|
| H A D | aes-ce-ccm-glue.c | 140 struct scatter_walk walk; in ccm_calculate_auth_mac() local 202 if (walk.nbytes == walk.total) { in ccm_encrypt() 209 src, walk.nbytes); in ccm_encrypt() 216 memcpy(walk.dst.virt.addr, dst, walk.nbytes); in ccm_encrypt() 218 if (walk.nbytes) { in ccm_encrypt() 221 } while (walk.nbytes); in ccm_encrypt() 269 if (walk.nbytes == walk.total) { in ccm_decrypt() 276 src, walk.nbytes); in ccm_decrypt() 283 memcpy(walk.dst.virt.addr, dst, walk.nbytes); in ccm_decrypt() 285 if (walk.nbytes) { in ccm_decrypt() [all …]
|
| H A D | sm4-ce-glue.c | 111 struct skcipher_walk walk; in sm4_ecb_do_crypt() local 157 struct skcipher_walk walk; in sm4_cbc_crypt() local 258 walk.src.virt.addr, walk.iv, walk.nbytes); in sm4_cbc_cts_crypt() 261 walk.src.virt.addr, walk.iv, walk.nbytes); in sm4_cbc_cts_crypt() 304 if (walk.nbytes == walk.total && nbytes > 0) { in sm4_ctr_crypt() 341 if (unlikely(tail > 0 && walk.nbytes < walk.total)) { in sm4_xts_crypt() 368 walk.src.virt.addr, walk.iv, nbytes, in sm4_xts_crypt() 372 walk.src.virt.addr, walk.iv, nbytes, in sm4_xts_crypt() 379 err = skcipher_walk_done(&walk, walk.nbytes - nbytes); in sm4_xts_crypt() 404 walk.src.virt.addr, walk.iv, walk.nbytes, in sm4_xts_crypt() [all …]
|
| H A D | sm4-ce-ccm-glue.c | 97 struct scatter_walk walk; in ccm_calculate_auth_mac() local 112 scatterwalk_start(&walk, req->src); in ccm_calculate_auth_mac() 119 p = walk.addr; in ccm_calculate_auth_mac() 175 while (walk->nbytes && walk->nbytes != walk->total) { in ccm_crypt() 179 walk->src.virt.addr, walk->iv, in ccm_crypt() 180 walk->nbytes - tail, mac); in ccm_crypt() 189 if (walk->nbytes) { in ccm_crypt() 191 walk->src.virt.addr, walk->iv, in ccm_crypt() 192 walk->nbytes, mac); in ccm_crypt() 213 struct skcipher_walk walk; in ccm_encrypt() local [all …]
|
| /linux-6.15/drivers/gpu/drm/xe/ |
| H A D | xe_pt_walk.c | 28 const struct xe_pt_walk *walk) in xe_pt_addr_end() argument 30 u64 size = 1ull << walk->shifts[level]; in xe_pt_addr_end() 42 if (unlikely(walk->shared_pt_mode)) { in xe_pt_next() 43 unsigned int shift = walk->shifts[level]; in xe_pt_next() 79 const struct xe_pt_walk_ops *ops = walk->ops; in xe_pt_walk_range() 88 walk)) in xe_pt_walk_range() 94 &child, &action, walk); in xe_pt_walk_range() 109 next, &child, &action, walk); in xe_pt_walk_range() 148 walk->shared_pt_mode = true; in xe_pt_walk_shared() 150 &child, &action, walk); in xe_pt_walk_shared() [all …]
|
| H A D | xe_pt_walk.h | 67 struct xe_pt_walk *walk); 88 u64 addr, u64 end, struct xe_pt_walk *walk); 91 u64 addr, u64 end, struct xe_pt_walk *walk); 106 const struct xe_pt_walk *walk) in xe_pt_covers() argument 108 u64 pt_size = 1ull << walk->shifts[level]; in xe_pt_covers() 126 const struct xe_pt_walk *walk) in xe_pt_num_entries() argument 128 u64 pt_size = 1ull << walk->shifts[level]; in xe_pt_num_entries() 131 walk->shifts[level]; in xe_pt_num_entries() 146 if (level < walk->max_level) in xe_pt_offset() 147 addr &= ((1ull << walk->shifts[level + 1]) - 1); in xe_pt_offset() [all …]
|
| /linux-6.15/arch/riscv/crypto/ |
| H A D | aes-riscv64-glue.c | 139 struct skcipher_walk walk; in riscv64_aes_ecb_crypt() local 177 struct skcipher_walk walk; in riscv64_aes_cbc_crypt() local 188 walk.iv); in riscv64_aes_cbc_crypt() 193 walk.iv); in riscv64_aes_cbc_crypt() 259 aes_cbc_cts_crypt_zvkned(ctx, walk.src.virt.addr, walk.dst.virt.addr, in riscv64_aes_cbc_cts_crypt() 331 err = skcipher_walk_done(&walk, walk.nbytes - nbytes); in riscv64_aes_ctr_crypt() 382 if (unlikely(tail > 0 && walk.nbytes < walk.total)) { in riscv64_aes_xts_crypt() 398 while (walk.nbytes) { in riscv64_aes_xts_crypt() 414 err = skcipher_walk_done(&walk, walk.nbytes - nbytes); in riscv64_aes_xts_crypt() 437 walk.dst.virt.addr, walk.nbytes, req->iv); in riscv64_aes_xts_crypt() [all …]
|
| /linux-6.15/arch/x86/crypto/ |
| H A D | sm4_aesni_avx_glue.c | 41 struct skcipher_walk walk; in ecb_do_crypt() local 49 u8 *dst = walk.dst.virt.addr; in ecb_do_crypt() 95 struct skcipher_walk walk; in sm4_cbc_encrypt() local 102 const u8 *iv = walk.iv; in sm4_cbc_encrypt() 104 u8 *dst = walk.dst.virt.addr; in sm4_cbc_encrypt() 114 if (iv != walk.iv) in sm4_cbc_encrypt() 129 struct skcipher_walk walk; in sm4_avx_cbc_decrypt() local 137 u8 *dst = walk.dst.virt.addr; in sm4_avx_cbc_decrypt() 194 struct skcipher_walk walk; in sm4_avx_ctr_crypt() local 220 walk.iv, SM4_BLOCK_SIZE); in sm4_avx_ctr_crypt() [all …]
|
| H A D | aegis128-aesni-glue.c | 68 struct scatter_walk walk; in crypto_aegis128_aesni_process_ad() local 75 const u8 *src = walk.addr; in crypto_aegis128_aesni_process_ad() 115 walk->dst.virt.addr, in crypto_aegis128_aesni_process_crypt() 120 walk->dst.virt.addr, in crypto_aegis128_aesni_process_crypt() 123 skcipher_walk_done(walk, walk->nbytes % AEGIS128_BLOCK_SIZE); in crypto_aegis128_aesni_process_crypt() 126 if (walk->nbytes) { in crypto_aegis128_aesni_process_crypt() 129 walk->dst.virt.addr, in crypto_aegis128_aesni_process_crypt() 130 walk->nbytes); in crypto_aegis128_aesni_process_crypt() 133 walk->dst.virt.addr, in crypto_aegis128_aesni_process_crypt() 134 walk->nbytes); in crypto_aegis128_aesni_process_crypt() [all …]
|
| H A D | des3_ede_glue.c | 69 struct skcipher_walk walk; in ecb_crypt() local 75 while ((nbytes = walk.nbytes)) { in ecb_crypt() 77 u8 *wdst = walk.dst.virt.addr; in ecb_crypt() 133 u64 *iv = (u64 *)walk->iv; in __cbc_encrypt() 145 *(u64 *)walk->iv = *iv; in __cbc_encrypt() 153 struct skcipher_walk walk; in cbc_encrypt() local 159 while (walk.nbytes) { in cbc_encrypt() 222 *dst ^= *(u64 *)walk->iv; in __cbc_decrypt() 223 *(u64 *)walk->iv = last_iv; in __cbc_decrypt() 232 struct skcipher_walk walk; in cbc_decrypt() local [all …]
|
| /linux-6.15/arch/sparc/crypto/ |
| H A D | aes_glue.c | 223 struct skcipher_walk walk; in ecb_encrypt() local 247 struct skcipher_walk walk; in ecb_decrypt() local 272 struct skcipher_walk walk; in cbc_encrypt() local 285 walk.iv); in cbc_encrypt() 297 struct skcipher_walk walk; in cbc_decrypt() local 311 walk.iv); in cbc_decrypt() 322 u8 *ctrblk = walk->iv; in ctr_crypt_final() 338 struct skcipher_walk walk; in ctr_crypt() local 349 walk.dst.virt.addr, in ctr_crypt() 351 walk.iv); in ctr_crypt() [all …]
|