From patchwork Wed Jul 19 00:58:54 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mark Brown X-Patchwork-Id: 122352 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp2128499vqt; Tue, 18 Jul 2023 18:37:10 -0700 (PDT) X-Google-Smtp-Source: APBJJlE95Sak1iEmlR8+kvKhWd0gXZAR54JyXwBgATz6MftWnO9yfIWnKJ0NGcsAn3nje//0WNKe X-Received: by 2002:a05:6358:899:b0:135:6354:bafc with SMTP id m25-20020a056358089900b001356354bafcmr6904033rwj.2.1689730630495; Tue, 18 Jul 2023 18:37:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689730630; cv=none; d=google.com; s=arc-20160816; b=IsklUOBeeHWb21a0S/EXGfwpedCG1ZhyWw6cHyXMts3eZ+glCWj4qC95FbSBdUTUMC K0RB6+6+5mbnkvB2HGIA4IeKpoJHoo92tkoMH7FMTjqSPTtBfAA4kUUZIcsf1p8YFfqL fNFjvOkGYGOSNMEk6+DWp0OnL5v2ff9FHV9l35WQEzedur0hlpFCNbIgGdniHWwjVqUf 1VaSchHV5f5eo7bvcLObqReFNCsCbkTHokcsba6dYpl4wLaeZunUMOAbbe1T2NOpknx5 +FVcIslj5Kzz2XXfZ8umeQ6ppbBW90i/+Mdg2WhA6mZuyaXOgxF9okCQe07/1SmiYvUp QTzA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:message-id:content-transfer-encoding :mime-version:subject:date:from:dkim-signature; bh=/kQXD3R+3FPWcLO2RRfYggDc6V1Ha48ez6UC99sHykM=; fh=21eOcoLYr+xaejsGlqx0V8B4lZ3/AkHEw0oDv4Lfrb0=; b=FP8A4Sbvs3OB6VOKfr2q5l0aEqpJ3c3JnFLfha4AgklqEHZmCWzVPALs8rGqaK6/OX 9jcFfd5LCA1FTVE9GbBuqSxpYJhdeCxk55/hMzzOyuxKUDXJfkwwJBYUSX51t/mlLK4J afxgoqv4JRtdaLcbFeHL6kUvRlK4nvIrHb5BzbeelsTZvLlU5q3UtXVllmCCmPFUgBIZ ob4CEyWk+oiH9d1TQU1tQg5rNQnqCqIN7zh2IWm6kB2q4XhSpkdZy5ibD3d0UMakfOAI XOo0oN1xgcwHywcrUU0oE/hnGOwGtiP25+av8FcUNsxKYfWKaxVn4OCOfqf6vidVqcCM 8viQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=n1x+oYfz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id h24-20020a635318000000b005573ca1a657si2408786pgb.118.2023.07.18.18.36.54; Tue, 18 Jul 2023 18:37:10 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=n1x+oYfz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229536AbjGSA7H (ORCPT + 99 others); Tue, 18 Jul 2023 20:59:07 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55966 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229525AbjGSA7G (ORCPT ); Tue, 18 Jul 2023 20:59:06 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 53D83F1; Tue, 18 Jul 2023 17:59:05 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id E02BA615F8; Wed, 19 Jul 2023 00:59:04 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CB324C433C8; Wed, 19 Jul 2023 00:59:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1689728344; bh=m+DQXW5oOBBKiDq+gqnKrZk+GHqHZgupJCPrOePrckM=; h=From:Date:Subject:To:Cc:From; b=n1x+oYfzNnx9aUiCysKEHFobDcDr4Rg8FBVHYbKKgGjw1eA0amX9CDQSbWFbcW1l6 MRpxyj6VU17Ymgzan6vIympW5XZ5rI7KBJ6ogrlB6qw0hSTYWbBHh8m1PQtq3vQlmg 1SvenkkIGROm+l8lP9i5fDHl3Pe8IA+bzz0aqhOfcPbib1rfk5psWQpDg5Rv5jm6E8 qBZAOmHuYUZn1aOZHrUAt4wXj8ybfDFUbBdNY48N07T4KeYbwVwUydqrAA33Q84+pE /9pmaNyooiG/alZVXiVwbJDx1SiVOKlUAPepH6nv4YCuf8o8PhRRkP+yQAKEwW0UGj CQsa00oqxtPgg== From: Mark Brown Date: Wed, 19 Jul 2023 01:58:54 +0100 Subject: [PATCH] thermal/drivers/sun8i: Free calibration nvmem after reading it MIME-Version: 1.0 Message-Id: <20230719-thermal-sun8i-free-nvmem-v1-1-f553d5afef79@kernel.org> X-B4-Tracking: v=1; b=H4sIAE01t2QC/x3MywqDMBBG4VeRWXcgF2jVV5EuRP80AybKxEpBf HdDl9/inJMKVFCob05SHFJkzRX20dAUx/wBy1xNzjhvXrblPULTuHD55lY4KMD5SEjs0cFZb57 woJpviiC//3p4X9cN1Am1wWoAAAA= To: Vasily Khoruzhick , Yangtao Li , "Rafael J. Wysocki" , Daniel Lezcano , Amit Kucheria , Zhang Rui , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-pm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Mark Brown X-Mailer: b4 0.13-dev-099c9 X-Developer-Signature: v=1; a=openpgp-sha256; l=1503; i=broonie@kernel.org; h=from:subject:message-id; bh=m+DQXW5oOBBKiDq+gqnKrZk+GHqHZgupJCPrOePrckM=; b=owEBbQGS/pANAwAKASTWi3JdVIfQAcsmYgBktzVTom85+f/CsiB3tDq5aRty+QLY7GiyI2QXE 45eZI49muaJATMEAAEKAB0WIQSt5miqZ1cYtZ/in+ok1otyXVSH0AUCZLc1UwAKCRAk1otyXVSH 0NPMB/sGvVdLD3D+bb6SkCXEGskTVhY3pzkBBDYQpA9CssD24JsbsElftzoztvE8sNMWNOTB9IL ZdzrPxjPkpJhNOxUee+uMML6eg0lVtsSIobZe1fWidnN8/B4EE4IzywkOXiQdpiDSFlGgDJ23FX Yrto56HDP/bE4eFMxQmixvC2sQ3ZsnSrbfU90AiDkJAs6cxrh6GaTKvZ8PUOxSd5PTGHsHnGgKY beBzLXkLBl62wFZXghrfoIOVPRwJpwOaaObPnrTiBt3agCEF6hKDWLLVpSYe4YU4I+9l5Xz1Lmp HMup7rGvqY+EJincYrtBcOQ0fwDXCmsJPnsoHr5iOj2KdsAs X-Developer-Key: i=broonie@kernel.org; a=openpgp; fpr=3F2568AAC26998F9E813A1C5C3F436CA30F5D8EB X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771810985496514485 X-GMAIL-MSGID: 1771810985496514485 The sun8i thermal driver reads calibration data via the nvmem API at startup, updating the device configuration and not referencing the data again. Rather than explicitly freeing the nvmem data the driver relies on devm_ to release it, even though the data is never referenced again. The allocation is still tracked so it's not leaked but this is notable when looking at the code and is a little wasteful so let's instead explicitly free the nvmem after we're done with it. Signed-off-by: Mark Brown Acked-by: Jernej Skrabec --- drivers/thermal/sun8i_thermal.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) --- base-commit: fdf0eaf11452d72945af31804e2a1048ee1b574c change-id: 20230718-thermal-sun8i-free-nvmem-3e9e21306e3e Best regards, diff --git a/drivers/thermal/sun8i_thermal.c b/drivers/thermal/sun8i_thermal.c index 195f3c5d0b38..af3098717e3c 100644 --- a/drivers/thermal/sun8i_thermal.c +++ b/drivers/thermal/sun8i_thermal.c @@ -286,7 +286,7 @@ static int sun8i_ths_calibrate(struct ths_device *tmdev) size_t callen; int ret = 0; - calcell = devm_nvmem_cell_get(dev, "calibration"); + calcell = nvmem_cell_get(dev, "calibration"); if (IS_ERR(calcell)) { if (PTR_ERR(calcell) == -EPROBE_DEFER) return -EPROBE_DEFER; @@ -316,6 +316,8 @@ static int sun8i_ths_calibrate(struct ths_device *tmdev) kfree(caldata); out: + if (!IS_ERR(calcell)) + nvmem_cell_put(calcell); return ret; }