From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from qq.com (smtpbg476.qq.com [59.36.132.85]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7D7B8168 for ; Thu, 1 Jul 2021 13:32:53 +0000 (UTC) X-QQ-mid: bizesmtp43t1625145759tidyuqpf Received: from localhost.localdomain (unknown [182.148.13.55]) by esmtp6.qq.com (ESMTP) with id ; Thu, 01 Jul 2021 21:22:38 +0800 (CST) X-QQ-SSF: 0100000000800030B000C00A0000000 X-QQ-FEAT: wBH9KxarUr7L4E45ckeNFtCb4eKB/U0CoWgf/3ipYZXktK2UHOiFmCHsWHfya /gs+fPThY1CwHRcJVCXI4I8O7kzW2DAbpFH3tQ0OTGMCR659PN7Wo4tVCRcyN3CnOK9PWqc WU7z4mhXbrgnYBLc9OjvoAuszHilEE3DOyjjZzYUl07j540UIT5TGvEXBWUu5SpV0IUJPgU Ps/6O16AQHUe+w2Z7UXQAeh+KWf+OzSHdErcPh/YeIVzDFN1FfJZQz5cYw816eU70RdvN6E KcZ24GsusLRaXxT+/NzuRLHDw3Nre7z653r/k+j7Y0w5tdNM7etHKSR5S/FARze3LR5facd VitnvFGbWMooip6u7jdLzVepOAxlg== X-QQ-GoodBg: 0 From: Jason Wang To: herbert@gondor.apana.org.au Cc: clabbe.montjoie@gmail.com, davem@davemloft.net, mripard@kernel.org, wens@csie.org, jernej.skrabec@gmail.com, colin.king@canonical.com, linux-crypto@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jason Wang Subject: [PATCH] crypto: sun8i-ss - Use kfree_sensitive Date: Thu, 1 Jul 2021 21:22:00 +0800 Message-Id: <20210701132200.31583-1-wangborong@cdjrlc.com> X-Mailer: git-send-email 2.32.0 Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:cdjrlc.com:qybgweb:qybgweb14 The kfree_sensitive is a kernel API to clear sensitive information that should not be leaked to other future users of the same memory objects and free the memory. Its function is the same as the combination of memzero_explicit and kfree. Thus, we can replace the combination APIs with the single kfree_sensitive API. Signed-off-by: Jason Wang --- drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c b/drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c index 3191527928e4..246a6782674c 100644 --- a/drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c +++ b/drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c @@ -20,8 +20,7 @@ int sun8i_ss_prng_seed(struct crypto_rng *tfm, const u8 *seed, struct sun8i_ss_rng_tfm_ctx *ctx = crypto_rng_ctx(tfm); if (ctx->seed && ctx->slen != slen) { - memzero_explicit(ctx->seed, ctx->slen); - kfree(ctx->seed); + kfree_sensitive(ctx->seed); ctx->slen = 0; ctx->seed = NULL; } @@ -48,8 +47,7 @@ void sun8i_ss_prng_exit(struct crypto_tfm *tfm) { struct sun8i_ss_rng_tfm_ctx *ctx = crypto_tfm_ctx(tfm); - memzero_explicit(ctx->seed, ctx->slen); - kfree(ctx->seed); + kfree_sensitive(ctx->seed); ctx->seed = NULL; ctx->slen = 0; } @@ -167,9 +165,8 @@ int sun8i_ss_prng_generate(struct crypto_rng *tfm, const u8 *src, /* Update seed */ memcpy(ctx->seed, d + dlen, ctx->slen); } - memzero_explicit(d, todo); err_free: - kfree(d); + kfree_sensitive(d); return err; } -- 2.32.0 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-17.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0325FC11F69 for ; Thu, 1 Jul 2021 13:25:09 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id C99CB61416 for ; Thu, 1 Jul 2021 13:25:08 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C99CB61416 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=cdjrlc.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=/lQj6Gz2zRlFojjOhy0EHyyK1jGQ/8C5wWWRM5Yfj1A=; b=4BSwovjDVJxo2D bLTdmqE107Pwt7bLTEKZj0bd7TO0vLKnSnshPOqQguGyvbe6G3Yvi4gdKlSAr9ErtEZMqz3p7+uWc dbYIjUD+CjwrkiesvhjSeHRmnCYbhwcOsYr0s9VkjTzwOQvkefzaMLm6xMc74taXxpbST0jPxe6DD pVDGDOBZXFDqdWcSO8+rjVjWmnQ/XW/+IGU4JNQ+30u+EEKnSKogcooZ4Ud9/7eKWZIRCwtyBf9Xb W65qa42OO7ZFvOM3c6nz0drKatPYFZ1OGqmEpY8H0iuKP5Vi57H8pbPz+LsguG2OwyZ8xFjMm3jQH MIxjSGJGwkb0LwZnJv5g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1lywfP-00HQyk-1A; Thu, 01 Jul 2021 13:23:43 +0000 Received: from smtpbg466.qq.com ([59.36.132.42] helo=qq.com) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1lywfK-00HQvv-R7 for linux-arm-kernel@lists.infradead.org; Thu, 01 Jul 2021 13:23:40 +0000 X-QQ-mid: bizesmtp43t1625145759tidyuqpf Received: from localhost.localdomain (unknown [182.148.13.55]) by esmtp6.qq.com (ESMTP) with id ; Thu, 01 Jul 2021 21:22:38 +0800 (CST) X-QQ-SSF: 0100000000800030B000C00A0000000 X-QQ-FEAT: wBH9KxarUr7L4E45ckeNFtCb4eKB/U0CoWgf/3ipYZXktK2UHOiFmCHsWHfya /gs+fPThY1CwHRcJVCXI4I8O7kzW2DAbpFH3tQ0OTGMCR659PN7Wo4tVCRcyN3CnOK9PWqc WU7z4mhXbrgnYBLc9OjvoAuszHilEE3DOyjjZzYUl07j540UIT5TGvEXBWUu5SpV0IUJPgU Ps/6O16AQHUe+w2Z7UXQAeh+KWf+OzSHdErcPh/YeIVzDFN1FfJZQz5cYw816eU70RdvN6E KcZ24GsusLRaXxT+/NzuRLHDw3Nre7z653r/k+j7Y0w5tdNM7etHKSR5S/FARze3LR5facd VitnvFGbWMooip6u7jdLzVepOAxlg== X-QQ-GoodBg: 0 From: Jason Wang To: herbert@gondor.apana.org.au Cc: clabbe.montjoie@gmail.com, davem@davemloft.net, mripard@kernel.org, wens@csie.org, jernej.skrabec@gmail.com, colin.king@canonical.com, linux-crypto@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jason Wang Subject: [PATCH] crypto: sun8i-ss - Use kfree_sensitive Date: Thu, 1 Jul 2021 21:22:00 +0800 Message-Id: <20210701132200.31583-1-wangborong@cdjrlc.com> X-Mailer: git-send-email 2.32.0 MIME-Version: 1.0 X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:cdjrlc.com:qybgweb:qybgweb14 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210701_062339_256689_3E1A8D73 X-CRM114-Status: GOOD ( 10.15 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The kfree_sensitive is a kernel API to clear sensitive information that should not be leaked to other future users of the same memory objects and free the memory. Its function is the same as the combination of memzero_explicit and kfree. Thus, we can replace the combination APIs with the single kfree_sensitive API. Signed-off-by: Jason Wang --- drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c b/drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c index 3191527928e4..246a6782674c 100644 --- a/drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c +++ b/drivers/crypto/allwinner/sun8i-ss/sun8i-ss-prng.c @@ -20,8 +20,7 @@ int sun8i_ss_prng_seed(struct crypto_rng *tfm, const u8 *seed, struct sun8i_ss_rng_tfm_ctx *ctx = crypto_rng_ctx(tfm); if (ctx->seed && ctx->slen != slen) { - memzero_explicit(ctx->seed, ctx->slen); - kfree(ctx->seed); + kfree_sensitive(ctx->seed); ctx->slen = 0; ctx->seed = NULL; } @@ -48,8 +47,7 @@ void sun8i_ss_prng_exit(struct crypto_tfm *tfm) { struct sun8i_ss_rng_tfm_ctx *ctx = crypto_tfm_ctx(tfm); - memzero_explicit(ctx->seed, ctx->slen); - kfree(ctx->seed); + kfree_sensitive(ctx->seed); ctx->seed = NULL; ctx->slen = 0; } @@ -167,9 +165,8 @@ int sun8i_ss_prng_generate(struct crypto_rng *tfm, const u8 *src, /* Update seed */ memcpy(ctx->seed, d + dlen, ctx->slen); } - memzero_explicit(d, todo); err_free: - kfree(d); + kfree_sensitive(d); return err; } -- 2.32.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel