[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190726152306.727590027@linuxfoundation.org>
Date: Fri, 26 Jul 2019 17:24:57 +0200
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: linux-kernel@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
stable@...r.kernel.org, Nishka Dasgupta <nishkadg.linux@...il.com>,
Bartosz Golaszewski <bgolaszewski@...libre.com>
Subject: [PATCH 5.1 45/62] gpiolib: of: fix a memory leak in of_gpio_flags_quirks()
From: Nishka Dasgupta <nishkadg.linux@...il.com>
commit 89fea04c85e85f21ef4937611055abce82330d48 upstream.
Each iteration of for_each_child_of_node puts the previous node, but in
the case of a break from the middle of the loop, there is no put, thus
causing a memory leak. Hence add an of_node_put before the break.
Issue found with Coccinelle.
Cc: <stable@...r.kernel.org>
Signed-off-by: Nishka Dasgupta <nishkadg.linux@...il.com>
[Bartosz: tweaked the commit message]
Signed-off-by: Bartosz Golaszewski <bgolaszewski@...libre.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
---
drivers/gpio/gpiolib-of.c | 1 +
1 file changed, 1 insertion(+)
--- a/drivers/gpio/gpiolib-of.c
+++ b/drivers/gpio/gpiolib-of.c
@@ -155,6 +155,7 @@ static void of_gpio_flags_quirks(struct
of_node_full_name(child));
*flags |= OF_GPIO_ACTIVE_LOW;
}
+ of_node_put(child);
break;
}
}
Powered by blists - more mailing lists