mbox series

[RESEND,v4,0/6] crypto: Accelerated AES/GCM stitched implementation

Message ID 20230221034021.15121-1-dtsen@linux.ibm.com (mailing list archive)
Headers show
Series crypto: Accelerated AES/GCM stitched implementation | expand

Message

Danny Tsen Feb. 21, 2023, 3:40 a.m. UTC
This patch series enable an accelerated AES/GCM stitched implementation
for Power10 or later CPU(ppc64le).  This module supports AEAD algorithm.
The stitched implementation provides 3.5X+ better performance than the
baseline.

This patch has been tested with the kernel crypto module tcrypt.ko and
has passed the selftest.  The patch is also tested with
CONFIG_CRYPTO_MANAGER_EXTRA_TESTS enabled.

Danny Tsen (6):
  Glue code for AES/GCM stitched implementation.
  An accelerated AES/GCM stitched implementation.
  Supporting functions for AES.
  Supporting functions for ghash.
  A perl script to process PowerPC assembler source.
  Update Kconfig and Makefile.

 arch/powerpc/crypto/aes-gcm-p10-glue.c |  345 ++++++
 arch/powerpc/crypto/aes-gcm-p10.S      | 1521 ++++++++++++++++++++++++
 arch/powerpc/crypto/aesp8-ppc.pl       |  585 +++++++++
 arch/powerpc/crypto/ghashp8-ppc.pl     |  370 ++++++
 arch/powerpc/crypto/ppc-xlate.pl       |  229 ++++
 arch/powerpc/crypto/Kconfig            |   17 +
 arch/powerpc/crypto/Makefile           |   13 +
 7 files changed, 3080 insertions(+)
 create mode 100644 arch/powerpc/crypto/aes-gcm-p10-glue.c
 create mode 100644 arch/powerpc/crypto/aes-gcm-p10.S
 create mode 100644 arch/powerpc/crypto/aesp8-ppc.pl
 create mode 100644 arch/powerpc/crypto/ghashp8-ppc.pl
 create mode 100644 arch/powerpc/crypto/ppc-xlate.pl

Comments

Herbert Xu March 10, 2023, 11:28 a.m. UTC | #1
On Mon, Feb 20, 2023 at 10:40:15PM -0500, Danny Tsen wrote:
> This patch series enable an accelerated AES/GCM stitched implementation
> for Power10 or later CPU(ppc64le).  This module supports AEAD algorithm.
> The stitched implementation provides 3.5X+ better performance than the
> baseline.
> 
> This patch has been tested with the kernel crypto module tcrypt.ko and
> has passed the selftest.  The patch is also tested with
> CONFIG_CRYPTO_MANAGER_EXTRA_TESTS enabled.
> 
> Danny Tsen (6):
>   Glue code for AES/GCM stitched implementation.
>   An accelerated AES/GCM stitched implementation.
>   Supporting functions for AES.
>   Supporting functions for ghash.
>   A perl script to process PowerPC assembler source.
>   Update Kconfig and Makefile.
> 
>  arch/powerpc/crypto/aes-gcm-p10-glue.c |  345 ++++++
>  arch/powerpc/crypto/aes-gcm-p10.S      | 1521 ++++++++++++++++++++++++
>  arch/powerpc/crypto/aesp8-ppc.pl       |  585 +++++++++
>  arch/powerpc/crypto/ghashp8-ppc.pl     |  370 ++++++
>  arch/powerpc/crypto/ppc-xlate.pl       |  229 ++++
>  arch/powerpc/crypto/Kconfig            |   17 +
>  arch/powerpc/crypto/Makefile           |   13 +
>  7 files changed, 3080 insertions(+)
>  create mode 100644 arch/powerpc/crypto/aes-gcm-p10-glue.c
>  create mode 100644 arch/powerpc/crypto/aes-gcm-p10.S
>  create mode 100644 arch/powerpc/crypto/aesp8-ppc.pl
>  create mode 100644 arch/powerpc/crypto/ghashp8-ppc.pl
>  create mode 100644 arch/powerpc/crypto/ppc-xlate.pl
> 
> -- 
> 2.31.1

All applied.  Thanks.
Danny Tsen March 13, 2023, 12:59 p.m. UTC | #2
Thanks Hubert.

-Danny

On 3/10/23 5:28 AM, Herbert Xu wrote:
> On Mon, Feb 20, 2023 at 10:40:15PM -0500, Danny Tsen wrote:
>> This patch series enable an accelerated AES/GCM stitched implementation
>> for Power10 or later CPU(ppc64le).  This module supports AEAD algorithm.
>> The stitched implementation provides 3.5X+ better performance than the
>> baseline.
>>
>> This patch has been tested with the kernel crypto module tcrypt.ko and
>> has passed the selftest.  The patch is also tested with
>> CONFIG_CRYPTO_MANAGER_EXTRA_TESTS enabled.
>>
>> Danny Tsen (6):
>>    Glue code for AES/GCM stitched implementation.
>>    An accelerated AES/GCM stitched implementation.
>>    Supporting functions for AES.
>>    Supporting functions for ghash.
>>    A perl script to process PowerPC assembler source.
>>    Update Kconfig and Makefile.
>>
>>   arch/powerpc/crypto/aes-gcm-p10-glue.c |  345 ++++++
>>   arch/powerpc/crypto/aes-gcm-p10.S      | 1521 ++++++++++++++++++++++++
>>   arch/powerpc/crypto/aesp8-ppc.pl       |  585 +++++++++
>>   arch/powerpc/crypto/ghashp8-ppc.pl     |  370 ++++++
>>   arch/powerpc/crypto/ppc-xlate.pl       |  229 ++++
>>   arch/powerpc/crypto/Kconfig            |   17 +
>>   arch/powerpc/crypto/Makefile           |   13 +
>>   7 files changed, 3080 insertions(+)
>>   create mode 100644 arch/powerpc/crypto/aes-gcm-p10-glue.c
>>   create mode 100644 arch/powerpc/crypto/aes-gcm-p10.S
>>   create mode 100644 arch/powerpc/crypto/aesp8-ppc.pl
>>   create mode 100644 arch/powerpc/crypto/ghashp8-ppc.pl
>>   create mode 100644 arch/powerpc/crypto/ppc-xlate.pl
>>
>> -- 
>> 2.31.1
> All applied.  Thanks.