Skip to content

crypto: Accelerated GCM for IPSec on ARM/arm64

Ard Biesheuvel linux-crypto 2 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest4 patches 6 repliesIn review
  2. v11 patch 2 repliesSuperseded

Changes in v2 from the cover letter

- minor tweaks to the asm code in patch #1, one of which to fix a Clang build error

Patches in v2 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/4crypto: arm/ghash - implement fused AES/GHASH version of AES-GCMarch/arm/crypto/Kconfig arch/arm/crypto/ghash-ce-core.S arch/arm/crypto/ghash-ce-glue.c+791 -170 replies
2/4crypto: arm64/gcm - add RFC4106 supportarch/arm64/crypto/ghash-ce-glue.c+107 -380 replies
3/4crypto: tcrypt - include larger key sizes in RFC4106 benchmarkcrypto/tcrypt.c crypto/tcrypt.h+5 -50 replies
4/4crypto: aead - fix inaccurate documentationinclude/crypto/aead.h+10 -100 replies

Reviews trailers per patch

None of the 4 patches has a Reviewed-by or Acked-by of their own; the series has one for all of them.

PatchHerbert Xu
SeriesA-b
1/4
2/4
3/4
4/4

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v2 thread

Cover letter [PATCH v2 0/4] crypto: Accelerated GCM for IPSec on ARM/arm64

This is a v2 as patch #1 was sent out in isolation a couple of days ago.

As it turns out, we can get ~10% speedup for RFC4106 on arm64 (Cortex-A53) by giving it the same treatment as ARM, i.e., avoid the generic template and implement RFC4106 encapsulation directly in the driver

Patch #3 adds larger key sizes to the tcrypt benchmark for RFC4106

Patch #4 fixes some prose on AEAD that turned out to be inaccurate.

Changes since v1:
- minor tweaks to the asm code in patch #1, one of which to fix a Clang build error

Note: patch #1 depends on the softirq context patches for kernel mode NEON I sent out last week. More specifically, this implements a sync AEAD that does not implement a !simd fallback, as AEADs are not callable in hard IRQ context anyway.

Cc Eric Biggers <[email protected]>
Cc Herbert Xu <[email protected]>

Ard Biesheuvel (4):
crypto: arm/ghash - implement fused AES/GHASH version of AES-GCM
crypto: arm64/gcm - add RFC4106 support
crypto: tcrypt - include larger key sizes in RFC4106 benchmark
crypto: aead - fix inaccurate documentation

 arch/arm/crypto/Kconfig           |   2 +
 arch/arm/crypto/ghash-ce-core.S   | 382 +++++++++++++++++-
 arch/arm/crypto/ghash-ce-glue.c   | 424 +++++++++++++++++++-
 arch/arm64/crypto/ghash-ce-glue.c | 145 +++++--
 crypto/tcrypt.c                   |   8 +-
 crypto/tcrypt.h                   |   2 +-
 include/crypto/aead.h             |  20 +-
 7 files changed, 913 insertions(+), 70 deletions(-)
Signature · 1 line
2.35.1