Lines Matching refs:walk
79 struct scatter_walk walk; in gcm_calculate_auth_mac() local
82 scatterwalk_start(&walk, req->src); in gcm_calculate_auth_mac()
85 u32 n = scatterwalk_clamp(&walk, assoclen); in gcm_calculate_auth_mac()
89 scatterwalk_start(&walk, sg_next(walk.sg)); in gcm_calculate_auth_mac()
90 n = scatterwalk_clamp(&walk, assoclen); in gcm_calculate_auth_mac()
93 p = ptr = scatterwalk_map(&walk); in gcm_calculate_auth_mac()
95 scatterwalk_advance(&walk, n); in gcm_calculate_auth_mac()
127 scatterwalk_done(&walk, 0, assoclen); in gcm_calculate_auth_mac()
137 static int gcm_crypt(struct aead_request *req, struct skcipher_walk *walk, in gcm_crypt() argument
152 lengths.b = cpu_to_be64(walk->total * 8); in gcm_crypt()
162 while (walk->nbytes) { in gcm_crypt()
163 unsigned int tail = walk->nbytes % SM4_BLOCK_SIZE; in gcm_crypt()
164 const u8 *src = walk->src.virt.addr; in gcm_crypt()
165 u8 *dst = walk->dst.virt.addr; in gcm_crypt()
167 if (walk->nbytes == walk->total) { in gcm_crypt()
169 walk->nbytes, ghash, in gcm_crypt()
175 return skcipher_walk_done(walk, 0); in gcm_crypt()
179 walk->nbytes - tail, ghash, in gcm_crypt()
184 err = skcipher_walk_done(walk, tail); in gcm_crypt()
190 walk->nbytes, ghash, ctx->ghash_table, in gcm_crypt()
202 struct skcipher_walk walk; in gcm_encrypt() local
205 err = skcipher_walk_aead_encrypt(&walk, req, false); in gcm_encrypt()
206 err = gcm_crypt(req, &walk, ghash, err, sm4_ce_pmull_gcm_enc); in gcm_encrypt()
223 struct skcipher_walk walk; in gcm_decrypt() local
226 err = skcipher_walk_aead_decrypt(&walk, req, false); in gcm_decrypt()
227 err = gcm_crypt(req, &walk, ghash, err, sm4_ce_pmull_gcm_dec); in gcm_decrypt()