diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2018-09-17 23:23:58 +0200 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2018-09-18 04:21:16 +0200 |
commit | 55ce7d0ae9a4d007566770ed49c4fa51069bb97d (patch) | |
tree | 5ff8d21cfb283b88e7d4149e29fb63bebc6b38ea /src/crypto/zinc/chacha20poly1305.c | |
parent | crypto: turn Zinc into individual modules (diff) | |
download | wireguard-monolithic-historical-55ce7d0ae9a4d007566770ed49c4fa51069bb97d.tar.xz wireguard-monolithic-historical-55ce7d0ae9a4d007566770ed49c4fa51069bb97d.zip |
chacha20poly1305: relax simd between sg chunks
Diffstat (limited to '')
-rw-r--r-- | src/crypto/zinc/chacha20poly1305.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/crypto/zinc/chacha20poly1305.c b/src/crypto/zinc/chacha20poly1305.c index d5ebade..e1d17f8 100644 --- a/src/crypto/zinc/chacha20poly1305.c +++ b/src/crypto/zinc/chacha20poly1305.c @@ -122,6 +122,7 @@ bool chacha20poly1305_encrypt_sg(struct scatterlist *dst, walk.src.virt.addr, chunk_len, simd_context); poly1305_update(&poly1305_state, walk.dst.virt.addr, chunk_len, simd_context); + simd_relax(simd_context); ret = blkcipher_walk_done(&chacha20_desc, &walk, walk.nbytes % CHACHA20_BLOCK_SIZE); } @@ -264,6 +265,7 @@ bool chacha20poly1305_decrypt_sg(struct scatterlist *dst, chunk_len, simd_context); chacha20(&chacha20_state, walk.dst.virt.addr, walk.src.virt.addr, chunk_len, simd_context); + simd_relax(simd_context); ret = blkcipher_walk_done(&chacha20_desc, &walk, walk.nbytes % CHACHA20_BLOCK_SIZE); } |