lkml.org 
[lkml]   [2021]   [Nov]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 1/8] Replace memset() with memzero_explicit()
On Tue, Nov 16, 2021 at 07:25:22PM +0800, Sandy Harris wrote:
> Replace memset(address,0,bytes) which may be optimised away
> with memzero_explicit(address,bytes) which resists
> such optimisation
>
> ---
> crypto/des_generic.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/crypto/des_generic.c b/crypto/des_generic.c
> index c85354a5e94c..105a32e7afea 100644
> --- a/crypto/des_generic.c
> +++ b/crypto/des_generic.c
> @@ -30,7 +30,7 @@ static int des_setkey(struct crypto_tfm *tfm, const u8 *key,
> err = 0;
> }
> if (err)
> - memset(dctx, 0, sizeof(*dctx));
> + memzero_explicit(dctx, sizeof(*dctx));
> return err;
> }
>
> @@ -62,7 +62,7 @@ static int des3_ede_setkey(struct crypto_tfm *tfm,
> const u8 *key,
> err = 0;
> }
> if (err)
> - memset(dctx, 0, sizeof(*dctx));
> + memzero_explicit(dctx, sizeof(*dctx));
> return err;
> }
>

Have you looked at the output of the compiler to see if this really is
needed or not?

And what exactly are you zeroing out that could be read afterward
somehow?

thanks,

greg k-h

\
 
 \ /
  Last update: 2021-11-16 12:54    [W:0.060 / U:3.156 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site