i2c: fsi: Add of_put_node() before break

Each iteration of for_each_available_childe_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. Add an of_node_put before the
break.
Issue found with Coccinelle.

Signed-off-by: Nishka Dasgupta <nishkadg.linux@gmail.com>
Reviewed-by: Eddie James <eajames@linux.ibm.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
This commit is contained in:
Nishka Dasgupta 2019-07-06 18:49:11 +05:30 committed by Wolfram Sang
parent 7077ad2ee3
commit 0a321b9736

View File

@ -707,8 +707,10 @@ static int fsi_i2c_probe(struct device *dev)
continue;
port = kzalloc(sizeof(*port), GFP_KERNEL);
if (!port)
if (!port) {
of_node_put(np);
break;
}
port->master = i2c;
port->port = port_no;