Skip to content

Commit 273cc34

Browse files
jhovoldgregkh
authored andcommitted
serial: core: fix OF node leak
Make sure to drop the OF node reference taken when initialising the control and port devices when the devices are later released. Fixes: d36f0e9 ("serial: core: restore of_node information in sysfs") Cc: Aidan Stewart <[email protected]> Signed-off-by: Johan Hovold <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Greg Kroah-Hartman <[email protected]>
1 parent d0b3b7b commit 273cc34

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

drivers/tty/serial/serial_base_bus.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
#include <linux/device.h>
1414
#include <linux/idr.h>
1515
#include <linux/module.h>
16+
#include <linux/of.h>
1617
#include <linux/serial_core.h>
1718
#include <linux/slab.h>
1819
#include <linux/spinlock.h>
@@ -93,6 +94,7 @@ static void serial_base_ctrl_release(struct device *dev)
9394
{
9495
struct serial_ctrl_device *ctrl_dev = to_serial_base_ctrl_device(dev);
9596

97+
of_node_put(dev->of_node);
9698
kfree(ctrl_dev);
9799
}
98100

@@ -140,6 +142,7 @@ static void serial_base_port_release(struct device *dev)
140142
{
141143
struct serial_port_device *port_dev = to_serial_base_port_device(dev);
142144

145+
of_node_put(dev->of_node);
143146
kfree(port_dev);
144147
}
145148

0 commit comments

Comments
 (0)