Re: [PATCH] regulator: of: Add of_node_put() before return in function

From: Mark Brown
Date: Wed Jul 24 2019 - 11:47:09 EST


On Wed, Jul 24, 2019 at 02:02:31PM +0530, Nishka Dasgupta wrote:
> The local variable search in regulator_of_get_init_node takes the value
> returned by either of_get_child_by_name or of_node_get, both of which
> get a node. If this node is not put before returning, it could cause a
> memory leak. Hence put search before a mid-loop return statement.
> Issue found with Coccinelle.

> - if (!strcmp(desc->of_match, name))
> + if (!strcmp(desc->of_match, name)) {
> + of_node_put(search);
> return of_node_get(child);
> + }

Why not just remove the extra of_node_get() and a comment explaining why
it's not needed?

Attachment: signature.asc
Description: PGP signature