soc/tegra: add of_node_put()
PATCH 1/1 soc/tegra: add of_node_put()
of_find_node_by_path() acquires a reference to the node returned by it and that reference needs to be dropped by its caller. bl_idle_init() doesn't do that, so fix it.
--- drivers/soc/tegra/common.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
drivers/soc/tegra/common.c +4 -1
@@ -23,10 +23,13 @@ static const struct of_device_id tegra_machine_match[] = {bool soc_is_tegra (void ) {struct device_node *root; +bool rc; root =of_find_node_by_path ("/" );if (!root)return false; -return of_match_node (tegra_machine_match, root) !=NULL ; + rc =of_match_node (tegra_machine_match, root) !=NULL ; +of_node_put (root); +return rc; }
Signature · 1 line
2.17.0
Jon Hunter
maintainerQuoted 18 lines · Yangtao Li
of_find_node_by_path()acquires a reference to the node returned by it and that reference needs to be dropped by its caller.bl_idle_init()doesn't do that, so fix it.Signed-off-by Yangtao Li <[email protected]>--- drivers/soc/tegra/common.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)drivers/soc/tegra/common.c +1
-0@@ -23,10 +23,13 @@ static const struct of_device_id tegra_machine_match[] = {bool soc_is_tegra (void ) {struct device_node *root; +bool rc;
drivers/soc/tegra/common.c static const struct of_device_id tegra_machine_match[] = { · line 35
Quoted 10 lines
drivers/soc/tegra/common.c +3
-1root =of_find_node_by_path ("/" );if (!root)return false; -return of_match_node (tegra_machine_match, root) !=NULL ; + rc =of_match_node (tegra_machine_match, root) !=NULL ; +of_node_put (root); +return rc; }
Thanks for the fix, however, I think it would be even simpler just to call of_machine_is_compatible() here instead.
Cheers
Jon
Signature · 1 line
nvpublic
Quoted 5 lines · Jon Hunter
Quoted 3 lines · Yangtao Li
of_find_node_by_path()acquires a reference to the node returned by it and that reference needs to be dropped by its caller.bl_idle_init()doesn't do that, so fix it.
The bl_idle_init() looks like a typo here.
Quoted 20 lines
Quoted 20 lines
Signed-off-by Yangtao Li <[email protected]>--- drivers/soc/tegra/common.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)drivers/soc/tegra/common.c +1
-0@@ -23,10 +23,13 @@ static const struct of_device_id tegra_machine_match[] = {bool soc_is_tegra (void ) {struct device_node *root; +bool rc; root =of_find_node_by_path ("/" );if (!root)return false;
Quoted 8 lines
drivers/soc/tegra/common.c static const struct of_device_id tegra_machine_match[] = { · line 35
Quoted 5 lines
drivers/soc/tegra/common.c +3
-1-return of_match_node (tegra_machine_match, root) !=NULL ; + rc =of_match_node (tegra_machine_match, root) !=NULL ; +of_node_put (root); +return rc; }Thanks for the fix, however, I think it would be even simpler just to call
of_machine_is_compatible()here instead.
Right so I was wrong above about using of_machine_is_compatible, so with the typo above fixed ...
Cheers
Jon
Signature · 1 line
nvpublic
Quoted 10 lines · Jon Hunter
Quoted 5 lines · Jon Hunter
Quoted 3 lines · Yangtao Li
of_find_node_by_path()acquires a reference to the node returned by it and that reference needs to be dropped by its caller.bl_idle_init()doesn't do that, so fix it.The
bl_idle_init()looks like a typo here.
Hi Jon:
Thanks. :-)
Yous,
Yangtao
Quoted 40 lines
Quoted 21 lines
Quoted 21 lines
Signed-off-by Yangtao Li <[email protected]>--- drivers/soc/tegra/common.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)drivers/soc/tegra/common.c +1
-0@@ -23,10 +23,13 @@ static const struct of_device_id tegra_machine_match[] = {bool soc_is_tegra (void ) {struct device_node *root; +bool rc; root =of_find_node_by_path ("/" );if (!root)return false;Quoted 8 lines
drivers/soc/tegra/common.c static const struct of_device_id tegra_machine_match[] = { · line 35
Quoted 5 lines
drivers/soc/tegra/common.c +3
-1-return of_match_node (tegra_machine_match, root) !=NULL ; + rc =of_match_node (tegra_machine_match, root) !=NULL ; +of_node_put (root); +return rc; }Thanks for the fix, however, I think it would be even simpler just to call
of_machine_is_compatible()here instead.Right so I was wrong above about using
of_machine_is_compatible, so with the typo above fixed ...Acked-by Jon Hunter <[email protected]>Cheers
Jon--
nvpublic