* Re: [PATCH] ARM: imx6: add missing put_device() call in imx6q_suspend_init()
[not found] <cf810c93-297c-c02c-9bba-8c3d097b8e31@web.de>
@ 2020-06-05 9:08 ` yukuai (C)
2020-06-05 10:15 ` Markus Elfring
0 siblings, 1 reply; 5+ messages in thread
From: yukuai (C) @ 2020-06-05 9:08 UTC (permalink / raw)
To: Markus Elfring, kernel, linux-arm-kernel, linux-imx
Cc: Anson Huang, Yi Zhang, Fabio Estevam, Sascha Hauer,
kernel-janitors, Russell King, LKML, Shawn Guo
On 2020/6/5 3:07, Markus Elfring wrote:
>> if of_find_device_by_node() succeed, imx6q_suspend_init() doesn't have a
>> corresponding put_device(). Thus add a jump target to fix the exception
>> handling for this function implementation.
>
> Do you find a previous update suggestion useful?
>
> ARM: imx6: Add missing put_device() call in imx6q_suspend_init()
> https://lore.kernel.org/linux-arm-kernel/5acd7308-f6e1-4b1e-c744-bb2e5fdca1be@web.de/
> https://lore.kernel.org/patchwork/patch/1151158/
> https://lkml.org/lkml/2019/11/9/125
Hi, Markus
It is useful indeed. Although I didn't run cocci script, since it can
produce too many false result which is hard to filter out.
BTW, I see you haver done the work already, I guess I won't send any
patches related to 'missing put_device after of_find_device_by_node()'.
Any idea why these pathes didn't get applied ?
Best regards,
Yu Kuai
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ARM: imx6: add missing put_device() call in imx6q_suspend_init()
2020-06-05 9:08 ` [PATCH] ARM: imx6: add missing put_device() call in imx6q_suspend_init() yukuai (C)
@ 2020-06-05 10:15 ` Markus Elfring
[not found] ` <20200623073220.GV30139@dragon>
0 siblings, 1 reply; 5+ messages in thread
From: Markus Elfring @ 2020-06-05 10:15 UTC (permalink / raw)
To: Yu Kuai, kernel, linux-arm-kernel, linux-imx
Cc: Anson Huang, Yi Zhang, Fabio Estevam, Sascha Hauer,
kernel-janitors, Russell King, LKML, Shawn Guo
>> Do you find a previous update suggestion useful?
>>
>> ARM: imx6: Add missing put_device() call in imx6q_suspend_init()
>> https://lore.kernel.org/linux-arm-kernel/5acd7308-f6e1-4b1e-c744-bb2e5fdca1be@web.de/
>> https://lore.kernel.org/patchwork/patch/1151158/
>> https://lkml.org/lkml/2019/11/9/125
…
> It is useful indeed.
Thanks for your positive feedback.
> Although I didn't run cocci script, since it can produce too many false result
> which is hard to filter out.
Would you like to clarify any corresponding software analysis options?
> BTW, I see you haver done the work already, I guess I won't send any patches
> related to 'missing put_device after of_find_device_by_node()'.
You may continue also with contributions in such a direction.
I would like to point out that other developers occasionally got into the mood
to improve implementation details in similar ways already.
> Any idea why these pathes didn't get applied ?
I can make assumptions about the reasons for the possibly questionable handling
of such patches.
Regards,
Markus
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ARM: imx6: add missing put_device() call in imx6q_suspend_init()
[not found] ` <CAJBJ56J9NfYPxnqtLfbeCHkRy2-xPEUJq7r3RvM8yi434AQF2Q@mail.gmail.com>
@ 2020-06-24 14:26 ` Markus Elfring
0 siblings, 0 replies; 5+ messages in thread
From: Markus Elfring @ 2020-06-24 14:26 UTC (permalink / raw)
To: Shawn Guo, kernel, linux-arm-kernel, linux-imx
Cc: Anson Huang, Yi Zhang, Sascha Hauer, kernel-janitors,
Russell King, LKML, Yu Kuai, Fabio Estevam
>> Are you going to compare the published patches any further?
…
>> Which patch variant will be integrated finally?
>
> Just picked up Yu Kuai's patch.
Is it interesting anyhow that you committed a change description
which contained a typo (on 2020-06-23 20:11:30 +0800)?
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/arch/arm/mach-imx/pm-imx6.c?id=0f92519843a05e97b58c6076edb23d747e8be262
Would it have been helpful to add the tag “Fixes”?
Regards,
Markus
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH] ARM: imx6: add missing put_device() call in imx6q_suspend_init()
@ 2020-06-04 12:54 yu kuai
0 siblings, 0 replies; 5+ messages in thread
From: yu kuai @ 2020-06-04 12:54 UTC (permalink / raw)
To: linux, shawnguo, s.hauer, kernel, festevam, linux-imx, Anson.Huang
Cc: yukuai3, linux-kernel, linux-arm-kernel, yi.zhang
if of_find_device_by_node() succeed, imx6q_suspend_init() doesn't have a
corresponding put_device(). Thus add a jump target to fix the exception
handling for this function implementation.
Signed-off-by: yu kuai <yukuai3@huawei.com>
---
arch/arm/mach-imx/pm-imx6.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/arch/arm/mach-imx/pm-imx6.c b/arch/arm/mach-imx/pm-imx6.c
index dd34dff13762..40c74b4c4d73 100644
--- a/arch/arm/mach-imx/pm-imx6.c
+++ b/arch/arm/mach-imx/pm-imx6.c
@@ -493,14 +493,14 @@ static int __init imx6q_suspend_init(const struct imx6_pm_socdata *socdata)
if (!ocram_pool) {
pr_warn("%s: ocram pool unavailable!\n", __func__);
ret = -ENODEV;
- goto put_node;
+ goto put_device;
}
ocram_base = gen_pool_alloc(ocram_pool, MX6Q_SUSPEND_OCRAM_SIZE);
if (!ocram_base) {
pr_warn("%s: unable to alloc ocram!\n", __func__);
ret = -ENOMEM;
- goto put_node;
+ goto put_device;
}
ocram_pbase = gen_pool_virt_to_phys(ocram_pool, ocram_base);
@@ -523,7 +523,7 @@ static int __init imx6q_suspend_init(const struct imx6_pm_socdata *socdata)
ret = imx6_pm_get_base(&pm_info->mmdc_base, socdata->mmdc_compat);
if (ret) {
pr_warn("%s: failed to get mmdc base %d!\n", __func__, ret);
- goto put_node;
+ goto put_device;
}
ret = imx6_pm_get_base(&pm_info->src_base, socdata->src_compat);
@@ -570,7 +570,7 @@ static int __init imx6q_suspend_init(const struct imx6_pm_socdata *socdata)
&imx6_suspend,
MX6Q_SUSPEND_OCRAM_SIZE - sizeof(*pm_info));
- goto put_node;
+ goto put_device;
pl310_cache_map_failed:
iounmap(pm_info->gpc_base.vbase);
@@ -580,6 +580,8 @@ static int __init imx6q_suspend_init(const struct imx6_pm_socdata *socdata)
iounmap(pm_info->src_base.vbase);
src_map_failed:
iounmap(pm_info->mmdc_base.vbase);
+put_device:
+ put_device(&pdev->dev);
put_node:
of_node_put(node);
--
2.25.4
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH] ARM: imx6: Add missing put_device() call in imx6q_suspend_init()
@ 2019-11-09 15:30 Markus Elfring
0 siblings, 0 replies; 5+ messages in thread
From: Markus Elfring @ 2019-11-09 15:30 UTC (permalink / raw)
To: linux-arm-kernel, linux-imx, kernel, Anson Huang, Bjorn Helgaas,
Fabio Estevam, Kohji Okuno, Peng Fan, Petr Mladek,
Richard Fontana, Russell King, Sakari Ailus, Sascha Hauer,
Shawn Guo, Thomas Gleixner
Cc: kernel-janitors, LKML
From: Markus Elfring <elfring@users.sourceforge.net>
Date: Sat, 9 Nov 2019 16:16:33 +0100
A coccicheck run provided information like the following.
arch/arm/mach-imx/pm-imx6.c:586:1-7: ERROR: missing put_device;
call of_find_device_by_node on line 485, but without a corresponding
object release within this function.
Generated by: scripts/coccinelle/free/put_device.cocci
Thus adjust jump targets to fix the exception handling for this
function implementation.
Fixes: df595746fa69db2e36d89677df26ba51f9706c1b ("ARM: imx: add suspend in ocram support for i.mx6q")
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
arch/arm/mach-imx/pm-imx6.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/arch/arm/mach-imx/pm-imx6.c b/arch/arm/mach-imx/pm-imx6.c
index 1c0ecad3620e..baf3b47601af 100644
--- a/arch/arm/mach-imx/pm-imx6.c
+++ b/arch/arm/mach-imx/pm-imx6.c
@@ -493,14 +493,14 @@ static int __init imx6q_suspend_init(const struct imx6_pm_socdata *socdata)
if (!ocram_pool) {
pr_warn("%s: ocram pool unavailable!\n", __func__);
ret = -ENODEV;
- goto put_node;
+ goto put_device;
}
ocram_base = gen_pool_alloc(ocram_pool, MX6Q_SUSPEND_OCRAM_SIZE);
if (!ocram_base) {
pr_warn("%s: unable to alloc ocram!\n", __func__);
ret = -ENOMEM;
- goto put_node;
+ goto put_device;
}
ocram_pbase = gen_pool_virt_to_phys(ocram_pool, ocram_base);
@@ -523,7 +523,7 @@ static int __init imx6q_suspend_init(const struct imx6_pm_socdata *socdata)
ret = imx6_pm_get_base(&pm_info->mmdc_base, socdata->mmdc_compat);
if (ret) {
pr_warn("%s: failed to get mmdc base %d!\n", __func__, ret);
- goto put_node;
+ goto put_device;
}
ret = imx6_pm_get_base(&pm_info->src_base, socdata->src_compat);
@@ -570,7 +570,7 @@ static int __init imx6q_suspend_init(const struct imx6_pm_socdata *socdata)
&imx6_suspend,
MX6Q_SUSPEND_OCRAM_SIZE - sizeof(*pm_info));
- goto put_node;
+ goto put_device;
pl310_cache_map_failed:
iounmap(pm_info->gpc_base.vbase);
@@ -580,6 +580,8 @@ static int __init imx6q_suspend_init(const struct imx6_pm_socdata *socdata)
iounmap(pm_info->src_base.vbase);
src_map_failed:
iounmap(pm_info->mmdc_base.vbase);
+put_device:
+ put_device(&pdev->dev);
put_node:
of_node_put(node);
--
2.24.0
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-06-24 14:28 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <cf810c93-297c-c02c-9bba-8c3d097b8e31@web.de>
2020-06-05 9:08 ` [PATCH] ARM: imx6: add missing put_device() call in imx6q_suspend_init() yukuai (C)
2020-06-05 10:15 ` Markus Elfring
[not found] ` <20200623073220.GV30139@dragon>
[not found] ` <5300cb30-2243-9bfe-125c-96e720cd1f29@web.de>
[not found] ` <20200623110222.GX30139@dragon>
[not found] ` <9f429c51-0fa9-16dc-4d62-d456551c5376@web.de>
[not found] ` <20200623120919.GE30139@dragon>
[not found] ` <66038b6c-6691-eda2-af15-f315270d4bee@web.de>
[not found] ` <CAJBJ56J9NfYPxnqtLfbeCHkRy2-xPEUJq7r3RvM8yi434AQF2Q@mail.gmail.com>
2020-06-24 14:26 ` Markus Elfring
2020-06-04 12:54 [PATCH] " yu kuai
-- strict thread matches above, loose matches on Subject: below --
2019-11-09 15:30 [PATCH] ARM: imx6: Add " Markus Elfring
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).