[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20241030-bluetooth-btbcm-node-cleanup-v1-1-fdc4b9df9fe3@gmail.com>
Date: Wed, 30 Oct 2024 16:46:21 +0100
From: Javier Carrasco <javier.carrasco.cruz@...il.com>
To: Marcel Holtmann <marcel@...tmann.org>,
Luiz Augusto von Dentz <luiz.dentz@...il.com>,
Linus Walleij <linus.walleij@...aro.org>
Cc: linux-bluetooth@...r.kernel.org, linux-kernel@...r.kernel.org,
Javier Carrasco <javier.carrasco.cruz@...il.com>, stable@...r.kernel.org
Subject: [PATCH 1/2] Bluetooth: btbcm: fix missing of_node_put() in
btbcm_get_board_name()
Add the missing call lto of_node_put(root) in the early return to
decrement the refcount and avoid leaking the resource.
Cc: stable@...r.kernel.org
Fixes: 63fac3343b99 ("Bluetooth: btbcm: Support per-board firmware variants")
Signed-off-by: Javier Carrasco <javier.carrasco.cruz@...il.com>
---
drivers/bluetooth/btbcm.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/bluetooth/btbcm.c b/drivers/bluetooth/btbcm.c
index eef00467905e..400c2663d6b0 100644
--- a/drivers/bluetooth/btbcm.c
+++ b/drivers/bluetooth/btbcm.c
@@ -549,8 +549,10 @@ static const char *btbcm_get_board_name(struct device *dev)
if (!root)
return NULL;
- if (of_property_read_string_index(root, "compatible", 0, &tmp))
+ if (of_property_read_string_index(root, "compatible", 0, &tmp)) {
+ of_node_put(root);
return NULL;
+ }
/* get rid of any '/' in the compatible string */
board_type = devm_kstrdup(dev, tmp, GFP_KERNEL);
--
2.43.0
Powered by blists - more mailing lists