Received: by 2002:a05:6a10:1d13:0:0:0:0 with SMTP id pp19csp1126889pxb; Fri, 27 Aug 2021 01:40:01 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzW8yrVLNqTPlIBSuXjH2aDUxDraYtPkprnwghLEsmcPPsOBoOCz/myJSoVmxRJXinOeDx6 X-Received: by 2002:a05:6602:2c10:: with SMTP id w16mr6504638iov.149.1630053601773; Fri, 27 Aug 2021 01:40:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1630053601; cv=none; d=google.com; s=arc-20160816; b=juHwgy3HwehTUOmHX23JfZtAoz96QNAD2rwx1qBZPtL3QjKtbZvOeBorkLVLrb/Jub iyUnmflLiGzUfLmm2I4i8Bk1xRqrqaWj2+0ixiAn5U4ZhNzz4yaP7ZiARZGhqVD5Iavh GKYBNGoAIKFrQzKlr6+mTlSpcwpaiZD1yswWyxAep2OcF/MXQswDmTBbGW89r1zxfEga aXMePFEKS9FJDMiT2rEvG/kX0hus9y+RSdY/YVeqZV765lbLYbtlH5avc4xPztDwVHV/ /Npwh4mAl8P7j0OLIZytDHPu3ue7jyJ0ZcBoTX9PS8DAD2v7hjJ1vthz2DLcxTcSxN15 mVsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=9A94RA6ZLRRONR4avakxGFEk4sVl4Vs3Z2IZFkqRmj8=; b=GuqjJ+qy9wvUEktb1CKe3iwQiq7T/bPT0eDq3tLgD4Ct49QHHCgmIDnNL7uMNrwCvN laFrWP2rbCIQ022Qg79zcUxGXZg/LvNkGlN8MWTKnXlnJGA/t8WvtbhbHELceDk0n92D gL/qfCWTyyE3UxhHkuczU9Mq1gW/ElLf/YVaLPJT+7Nk7jE+d2xiZ8hXObsCD15xfUt7 JJs8kocWuHgvhlcmTbntZaWFJCQFriKTyWRbI3BytDOHsMj52us/dGT/QD45Uw8xUo3h 3RDJVVk4jyzes+GRVXbtHGFqUsDFLCEPDC/0XGDwW6SM4XCU4NuYZHemZ7vMvoKmzdhR /EbA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id x4si5342750ilj.121.2021.08.27.01.39.50; Fri, 27 Aug 2021 01:40:01 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244612AbhH0Ijl (ORCPT + 99 others); Fri, 27 Aug 2021 04:39:41 -0400 Received: from helcar.hmeau.com ([216.24.177.18]:54418 "EHLO deadmen.hmeau.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S244621AbhH0Ijk (ORCPT ); Fri, 27 Aug 2021 04:39:40 -0400 Received: from gondobar.mordor.me.apana.org.au ([192.168.128.4] helo=gondobar) by deadmen.hmeau.com with esmtp (Exim 4.92 #5 (Debian)) id 1mJXNr-0007cn-Cy; Fri, 27 Aug 2021 16:38:43 +0800 Received: from herbert by gondobar with local (Exim 4.92) (envelope-from ) id 1mJXNq-0005ev-9D; Fri, 27 Aug 2021 16:38:42 +0800 Date: Fri, 27 Aug 2021 16:38:42 +0800 From: Herbert Xu To: Lukas Bulwahn Cc: "David S . Miller" , linux-crypto@vger.kernel.org, Nathan Chancellor , Nick Desaulniers , clang-built-linux@googlegroups.com, kernel-janitors@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] crypto: sha512: remove imaginary and mystifying clearing of variables Message-ID: <20210827083842.GF21571@gondor.apana.org.au> References: <20210822103107.28974-1-lukas.bulwahn@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20210822103107.28974-1-lukas.bulwahn@gmail.com> User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org On Sun, Aug 22, 2021 at 12:31:07PM +0200, Lukas Bulwahn wrote: > The function sha512_transform() assigns all local variables to 0 before > returning to its caller with the intent to erase sensitive data. > > However, make clang-analyzer warns that all these assignments are dead > stores, and as commit 7a4295f6c9d5 ("crypto: lib/sha256 - Don't clear > temporary variables") already points out for sha256_transform(): > > The assignments to clear a through h and t1/t2 are optimized out by the > compiler because they are unused after the assignments. > > Clearing individual scalar variables is unlikely to be useful, as they > may have been assigned to registers, and even if stack spilling was > required, there may be compiler-generated temporaries that are > impossible to clear in any case. > > This applies here again as well. Drop meaningless clearing of local > variables and avoid this way that the code suggests that data is erased, > which simply does not happen. > > Signed-off-by: Lukas Bulwahn > --- > crypto/sha512_generic.c | 3 --- > 1 file changed, 3 deletions(-) Patch applied. Thanks. -- Email: Herbert Xu Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt