Re: 6.18.22: a question to commit "crypto: algif_aead - Revert to operating out-of-place"

Sasha Levin
2026-04-14T17:28:19Z

On Tue, Apr 14, 2026 at 07:04:11PM +0200, Wolfgang Walter wrote:
>Hello
>
>another maybe stupid question to
>
>commit fafe0fa2995a0f7073c1c358d7d3145bcc9aedd8
>Author: Herbert Xu <herbert@gondor.apana.org.au>
>Date: Thu Mar 26 15:30:20 2026 +0900
>
> crypto: algif_aead - Revert to operating out-of-place
>
> [ Upstream commit a664bf3d603dc3bdcf9ae47cc21e0daec706d7a5 ]
>
> This mostly reverts commit 72548b093ee3 except for the copying of
> the associated data.
>
> There is no benefit in operating in-place in algif_aead since the
> source and destination come from different mappings. Get rid of
> all the complexity added for in-place operation and just copy the
> AD directly.
>
> Fixes: 72548b093ee3 ("crypto: algif_aead - copy AAD from src to
>dst")
> Reported-by: Taeyang Lee <0wn@theori.io>
> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
> Signed-off-by: Sasha Levin <sashal@kernel.org>
>
>
>This commit makes
>
>crypto/algif_aead.c
>
>almost like the version in v7.0, but there is a difference:
>
>$ git diff v6.18.22..v7.0 crypto/algif_aead.c
>diff --git a/crypto/algif_aead.c b/crypto/algif_aead.c
>index dda15bb05e89..f8bd45f7dc83 100644
>--- a/crypto/algif_aead.c
>+++ b/crypto/algif_aead.c
>@@ -144,7 +144,7 @@ static int _aead_recvmsg(struct socket *sock,
>struct msghdr *msg,
> if (usedpages < outlen) {
> size_t less = outlen - usedpages;
>
>- if (used < less) {
>+ if (used < less + (ctx->enc ? 0 : as)) {
> err = -EINVAL;
> goto free;
> }
>
>
>Is this intentional? Or is der missing a fix from v7.0 in 6.18.22

This is in 7c1d57841aa0 ("crypto: algif_aead - Fix minimum RX size check for
decryption"). It should make it into the next-next release.

--
Thanks,
Sasha