mbox series

[v4,0/8] crypto: sun4i-ss: prevent always fallback for ciphers

Message ID 20201214200232.17357-1-clabbe@baylibre.com (mailing list archive)
Headers show
Series crypto: sun4i-ss: prevent always fallback for ciphers | expand

Message

Corentin LABBE Dec. 14, 2020, 8:02 p.m. UTC
Hello

For help testing on "crypto: sun4i-ss - Fix sparse endianness markers",
I have added "stats" support like other allwinner's crypto drivers.
Seeing stats showed a clear problem, the ciphers function were not used
at all.
This is due to the not-inialized need_fallback which is "init" as true
everytime.
So basicly, since the patch introduced it, this probem hidden some bugs.

This serie fixes all hidden problems, then fix the initialization of
"need_fallback" and then add the stats like other allwinner drivers.

Regards

changes since v3:
- patch #2: Rewrite test as suggested by David Laight
- patch #7: removed all ifdef CONFIG_CRYPTO_DEV_SUN4I_SS_DEBUG
- added kmap patch

Changes since v2:
- patch #1: move buf/bufo out of function for reducing stack usage
- patch #4: use writesl()
- patch #6: use IS_ENABLED instead of #ifdef

Changes since v1:
- patch #4 is sufficient to fix BE problem (removed todo)

Corentin Labbe (8):
  crypto: sun4i-ss: linearize buffers content must be kept
  crypto: sun4i-ss: checking sg length is not sufficient
  crypto: sun4i-ss: IV register does not work on A10 and A13
  crypto: sun4i-ss: handle BigEndian for cipher
  crypto: sun4i-ss: initialize need_fallback
  crypto: sun4i-ss: fix kmap usage
  crypto: sun4i-ss: enabled stats via debugfs
  crypto: sun4i-ss: add SPDX header and remove blank lines

 drivers/crypto/allwinner/Kconfig              |   9 +
 .../allwinner/sun4i-ss/sun4i-ss-cipher.c      | 196 +++++++++++-------
 .../crypto/allwinner/sun4i-ss/sun4i-ss-core.c |  52 +++++
 .../crypto/allwinner/sun4i-ss/sun4i-ss-hash.c |   6 +
 .../crypto/allwinner/sun4i-ss/sun4i-ss-prng.c |   6 +
 drivers/crypto/allwinner/sun4i-ss/sun4i-ss.h  |   8 +
 6 files changed, 207 insertions(+), 70 deletions(-)

Comments

Herbert Xu Jan. 2, 2021, 10:07 p.m. UTC | #1
On Mon, Dec 14, 2020 at 08:02:24PM +0000, Corentin Labbe wrote:
> Hello
> 
> For help testing on "crypto: sun4i-ss - Fix sparse endianness markers",
> I have added "stats" support like other allwinner's crypto drivers.
> Seeing stats showed a clear problem, the ciphers function were not used
> at all.
> This is due to the not-inialized need_fallback which is "init" as true
> everytime.
> So basicly, since the patch introduced it, this probem hidden some bugs.
> 
> This serie fixes all hidden problems, then fix the initialization of
> "need_fallback" and then add the stats like other allwinner drivers.
> 
> Regards
> 
> changes since v3:
> - patch #2: Rewrite test as suggested by David Laight
> - patch #7: removed all ifdef CONFIG_CRYPTO_DEV_SUN4I_SS_DEBUG
> - added kmap patch
> 
> Changes since v2:
> - patch #1: move buf/bufo out of function for reducing stack usage
> - patch #4: use writesl()
> - patch #6: use IS_ENABLED instead of #ifdef
> 
> Changes since v1:
> - patch #4 is sufficient to fix BE problem (removed todo)
> 
> Corentin Labbe (8):
>   crypto: sun4i-ss: linearize buffers content must be kept
>   crypto: sun4i-ss: checking sg length is not sufficient
>   crypto: sun4i-ss: IV register does not work on A10 and A13
>   crypto: sun4i-ss: handle BigEndian for cipher
>   crypto: sun4i-ss: initialize need_fallback
>   crypto: sun4i-ss: fix kmap usage
>   crypto: sun4i-ss: enabled stats via debugfs
>   crypto: sun4i-ss: add SPDX header and remove blank lines
> 
>  drivers/crypto/allwinner/Kconfig              |   9 +
>  .../allwinner/sun4i-ss/sun4i-ss-cipher.c      | 196 +++++++++++-------
>  .../crypto/allwinner/sun4i-ss/sun4i-ss-core.c |  52 +++++
>  .../crypto/allwinner/sun4i-ss/sun4i-ss-hash.c |   6 +
>  .../crypto/allwinner/sun4i-ss/sun4i-ss-prng.c |   6 +
>  drivers/crypto/allwinner/sun4i-ss/sun4i-ss.h  |   8 +
>  6 files changed, 207 insertions(+), 70 deletions(-)

All applied.  Thanks.