mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Nicolas Toromanoff <nicolas.toromanoff@foss.st.com>
To: Herbert Xu <herbert@gondor.apana.org.au>,
	"David S . Miller" <davem@davemloft.net>,
	Maxime Coquelin <mcoquelin.stm32@gmail.com>,
	Alexandre Torgue <alexandre.torgue@foss.st.com>
Cc: Marek Vasut <marex@denx.de>,
	Nicolas Toromanoff <nicolas.toromanoff@foss.st.com>,
	Ard Biesheuvel <ardb@kernel.org>, <linux-crypto@vger.kernel.org>,
	<linux-stm32@st-md-mailman.stormreply.com>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-kernel@vger.kernel.org>
Subject: [PATCH v3 7/9] crypto: stm32/cryp - fix lrw chaining mode
Date: Thu, 18 Nov 2021 16:07:54 +0100	[thread overview]
Message-ID: <20211118150756.6593-8-nicolas.toromanoff@foss.st.com> (raw)
In-Reply-To: <20211118150756.6593-1-nicolas.toromanoff@foss.st.com>

This fixes the lrw autotest if lrw uses the CRYP as the AES block cipher
provider (as ecb(aes)). At end of request, CRYP should not update the IV
in case of ECB chaining mode. Indeed the ECB chaining mode never uses
the IV, but the software LRW chaining mode uses the IV field as
a counter and due to the (unexpected) update done by CRYP while the AES
block process, the counter get a wrong value when the IV overflow.

Fixes: 5f49f18d27cd ("crypto: stm32/cryp - update to return iv_out")

Signed-off-by: Nicolas Toromanoff <nicolas.toromanoff@foss.st.com>
---
 drivers/crypto/stm32/stm32-cryp.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/crypto/stm32/stm32-cryp.c b/drivers/crypto/stm32/stm32-cryp.c
index d61608dc416a..537443a35d81 100644
--- a/drivers/crypto/stm32/stm32-cryp.c
+++ b/drivers/crypto/stm32/stm32-cryp.c
@@ -644,7 +644,7 @@ static void stm32_cryp_finish_req(struct stm32_cryp *cryp, int err)
 		/* Phase 4 : output tag */
 		err = stm32_cryp_read_auth_tag(cryp);
 
-	if (!err && (!(is_gcm(cryp) || is_ccm(cryp))))
+	if (!err && (!(is_gcm(cryp) || is_ccm(cryp) || is_ecb(cryp))))
 		stm32_cryp_get_iv(cryp);
 
 	if (cryp->sgs_copied) {
-- 
2.17.1


  parent reply	other threads:[~2021-11-18 15:09 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-18 15:07 [PATCH v3 0/9] STM32 CRYP driver: many fixes Nicolas Toromanoff
2021-11-18 15:07 ` [PATCH v3 1/9] crypto: stm32/cryp - defer probe for reset controller Nicolas Toromanoff
2021-11-18 15:07 ` [PATCH v3 2/9] crypto: stm32/cryp - don't print error on probe deferral Nicolas Toromanoff
2021-11-18 15:07 ` [PATCH v3 3/9] crypto: stm32/cryp - fix CTR counter carry Nicolas Toromanoff
2021-11-26  5:24   ` Herbert Xu
2021-11-18 15:07 ` [PATCH v3 4/9] crypto: stm32/cryp - fix race condition in crypto_engine requests Nicolas Toromanoff
2021-11-18 15:07 ` [PATCH v3 5/9] crypto: stm32/cryp - check early input data Nicolas Toromanoff
2021-11-18 15:07 ` [PATCH v3 6/9] crypto: stm32/cryp - fix double pm exit Nicolas Toromanoff
2021-11-18 15:07 ` Nicolas Toromanoff [this message]
2021-11-18 15:07 ` [PATCH v3 8/9] crypto: stm32/cryp - fix bugs and crash in tests Nicolas Toromanoff
2021-11-18 15:07 ` [PATCH v3 9/9] crypto: stm32/cryp - reorder hw initialization Nicolas Toromanoff

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211118150756.6593-8-nicolas.toromanoff@foss.st.com \
    --to=nicolas.toromanoff@foss.st.com \
    --cc=alexandre.torgue@foss.st.com \
    --cc=ardb@kernel.org \
    --cc=davem@davemloft.net \
    --cc=herbert@gondor.apana.org.au \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-crypto@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-stm32@st-md-mailman.stormreply.com \
    --cc=marex@denx.de \
    --cc=mcoquelin.stm32@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®