mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 20:07:46 +09:00
i2c: add missing of_node_put in i2c_mux_del_adapters
commit 2e1e4949f9 upstream.
Refcount of of_node is increased with of_node_get() in i2c_mux_add_adapter().
It must be decreased with of_node_put() in i2c_mux_del_adapters().
Signed-off-by: Qi Hou <qi.hou@windriver.com>
Reviewed-by: Zhang Xiao <xiao.zhang@windriver.com>
Signed-off-by: Peter Rosin <peda@axentia.se>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
06996254a6
commit
ac4666a7fd
@@ -429,6 +429,7 @@ void i2c_mux_del_adapters(struct i2c_mux_core *muxc)
|
|||||||
while (muxc->num_adapters) {
|
while (muxc->num_adapters) {
|
||||||
struct i2c_adapter *adap = muxc->adapter[--muxc->num_adapters];
|
struct i2c_adapter *adap = muxc->adapter[--muxc->num_adapters];
|
||||||
struct i2c_mux_priv *priv = adap->algo_data;
|
struct i2c_mux_priv *priv = adap->algo_data;
|
||||||
|
struct device_node *np = adap->dev.of_node;
|
||||||
|
|
||||||
muxc->adapter[muxc->num_adapters] = NULL;
|
muxc->adapter[muxc->num_adapters] = NULL;
|
||||||
|
|
||||||
@@ -438,6 +439,7 @@ void i2c_mux_del_adapters(struct i2c_mux_core *muxc)
|
|||||||
|
|
||||||
sysfs_remove_link(&priv->adap.dev.kobj, "mux_device");
|
sysfs_remove_link(&priv->adap.dev.kobj, "mux_device");
|
||||||
i2c_del_adapter(adap);
|
i2c_del_adapter(adap);
|
||||||
|
of_node_put(np);
|
||||||
kfree(priv);
|
kfree(priv);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user