Received: by 2002:a05:6a10:a0d1:0:0:0:0 with SMTP id j17csp128482pxa; Tue, 4 Aug 2020 01:10:12 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzZuUkidH28oMQhuYsbaVznWii5zSC3akSMX3Y0UcWmt4K9pwYcPzNKMymHgA8TMZF8u9kf X-Received: by 2002:a17:906:3616:: with SMTP id q22mr21400484ejb.79.1596528612149; Tue, 04 Aug 2020 01:10:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1596528612; cv=none; d=google.com; s=arc-20160816; b=SJ3R5MzEr4fU4lbe1fSTcG+5lFyiTRndbBcITb9sHeK+XqDfHYIAU0+J7L2U+jTUg0 v8YvKCqIB3fr3ugtb98T0oiAG7L0WgDUk0cCEuXFsnbmF25q+QTXLYXT/ZA9ZXf1k16v nT2Ts93Mj9ehiGuazY7YsDUHpc79PWmfdu/Dd7AnWXGalErdiL2Wg1Xh3QLMGThQPYlo dj64lIWEnqomJx37Jz2V3rq3q2TCYQWxfLJcjj3vDtZZmFTKdjCp8EGtDGsJRiSRd+Xh ERZY+II34wiliMkDsRPorazV79ydFoAwuUKXPeM1TPyiumD+KJD3XZtAWHdoxtMvBQ2R CHwQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=L5Cz6nw1Z30apqo/rUp344pCvSbYkFpPfm1PeFm8aoU=; b=tTCZFS3szO8ZKKBc+Pyi85VNiGQw/OG970xosq1SJzLJtHsIhoatm4/ufYmck7rXJP 7u1rhP9AVDpk5MIaUy9Xjs1fC3SNN2XXRqKhqv+WCCjGDR7059rDEmhMdndgG9HzGpcL BKdUEN0Gkbex4spHYAZjuW29UhsT+uYoDi5QbVqYKqH27PFnZs+SYyNLChvkX3EwG0hy XuLsUsD8hV5mwc1MdkDx5ZiQWXtxOb8zvR8CwEVvbmYOA2MgOw54+t5ub9S9Jh7/zjMF aire7AtBqh44WK4BNeP6EPl1A7aaCUrMRxi3+9hek+bvOsGGblef+ahHTdlMQBAESK/n Vlqw== 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 f20si11907895ejx.474.2020.08.04.01.09.35; Tue, 04 Aug 2020 01:10:12 -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 S1729781AbgHDIJD (ORCPT + 99 others); Tue, 4 Aug 2020 04:09:03 -0400 Received: from szxga06-in.huawei.com ([45.249.212.32]:52740 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1729767AbgHDIJD (ORCPT ); Tue, 4 Aug 2020 04:09:03 -0400 Received: from DGGEMS406-HUB.china.huawei.com (unknown [172.30.72.59]) by Forcepoint Email with ESMTP id C1D1C28AAF784F1D2308; Tue, 4 Aug 2020 16:09:00 +0800 (CST) Received: from localhost.localdomain.localdomain (10.175.113.25) by DGGEMS406-HUB.china.huawei.com (10.3.19.206) with Microsoft SMTP Server id 14.3.487.0; Tue, 4 Aug 2020 16:08:54 +0800 From: Wei Yongjun To: , , , , , CC: Wei Yongjun , , , Hulk Robot Subject: [PATCH] crypto: ingenic - Drop kfree for memory allocated with devm_kzalloc Date: Tue, 4 Aug 2020 08:11:53 +0000 Message-ID: <20200804081153.45342-1-weiyongjun1@huawei.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7BIT X-Originating-IP: [10.175.113.25] X-CFilter-Loop: Reflected Sender: linux-crypto-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org It's not necessary to free memory allocated with devm_kzalloc and using kfree leads to a double free. Fixes: 190873a0ea45 ("crypto: ingenic - Add hardware RNG for Ingenic JZ4780 and X1000") Reported-by: Hulk Robot Signed-off-by: Wei Yongjun --- drivers/char/hw_random/ingenic-rng.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/drivers/char/hw_random/ingenic-rng.c b/drivers/char/hw_random/ingenic-rng.c index d704cef64b64..055cfe59f519 100644 --- a/drivers/char/hw_random/ingenic-rng.c +++ b/drivers/char/hw_random/ingenic-rng.c @@ -92,8 +92,7 @@ static int ingenic_rng_probe(struct platform_device *pdev) priv->base = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(priv->base)) { pr_err("%s: Failed to map RNG registers\n", __func__); - ret = PTR_ERR(priv->base); - goto err_free_rng; + return PTR_ERR(priv->base); } priv->version = (enum ingenic_rng_version)of_device_get_match_data(&pdev->dev); @@ -106,17 +105,13 @@ static int ingenic_rng_probe(struct platform_device *pdev) ret = hwrng_register(&priv->rng); if (ret) { dev_err(&pdev->dev, "Failed to register hwrng\n"); - goto err_free_rng; + return ret; } platform_set_drvdata(pdev, priv); dev_info(&pdev->dev, "Ingenic RNG driver registered\n"); return 0; - -err_free_rng: - kfree(priv); - return ret; } static int ingenic_rng_remove(struct platform_device *pdev)