* [PATCH] irqchip/irq-bcm7120-l2: add put_device() after of_find_device_by_node()
@ 2021-11-09 3:29 cgel.zte
2021-11-09 3:40 ` Florian Fainelli
0 siblings, 1 reply; 6+ messages in thread
From: cgel.zte @ 2021-11-09 3:29 UTC (permalink / raw)
To: f.fainelli
Cc: tglx, maz, bcm-kernel-feedback-list, linux-mips, linux-kernel,
linux-arm-kernel, Ye Guojin, Zeal Robot
From: Ye Guojin <ye.guojin@zte.com.cn>
This was found by coccicheck:
./drivers/irqchip/irq-bcm7120-l2.c,328,1-7,ERROR missing put_device;
call of_find_device_by_node on line 234, but without a corresponding
object release within this function.
./drivers/irqchip/irq-bcm7120-l2.c,341,1-7,ERROR missing put_device;
call of_find_device_by_node on line 234, but without a corresponding
object release within this function.
Addtionally, fixup the potential problem that memory is not released
before return.
Reported-by: Zeal Robot <zealci@zte.com.cn>
Signed-off-by: Ye Guojin <ye.guojin@zte.com.cn>
---
drivers/irqchip/irq-bcm7120-l2.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/irqchip/irq-bcm7120-l2.c b/drivers/irqchip/irq-bcm7120-l2.c
index d80e67a6aad2..aaa70619f3c0 100644
--- a/drivers/irqchip/irq-bcm7120-l2.c
+++ b/drivers/irqchip/irq-bcm7120-l2.c
@@ -325,7 +325,7 @@ static int __init bcm7120_l2_intc_probe(struct device_node *dn,
pr_info("registered %s intc (%pOF, parent IRQ(s): %d)\n",
intc_name, dn, data->num_parent_irqs);
- return 0;
+ ret = 0;
out_free_domain:
irq_domain_remove(data->domain);
@@ -336,6 +336,7 @@ static int __init bcm7120_l2_intc_probe(struct device_node *dn,
if (data->map_base[idx])
iounmap(data->map_base[idx]);
}
+ put_device(&pdev->dev);
out_free_data:
kfree(data);
return ret;
--
2.25.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH] irqchip/irq-bcm7120-l2: add put_device() after of_find_device_by_node()
2021-11-09 3:29 [PATCH] irqchip/irq-bcm7120-l2: add put_device() after of_find_device_by_node() cgel.zte
@ 2021-11-09 3:40 ` Florian Fainelli
2021-11-09 5:59 ` [PATCH v2] " cgel.zte
0 siblings, 1 reply; 6+ messages in thread
From: Florian Fainelli @ 2021-11-09 3:40 UTC (permalink / raw)
To: cgel.zte
Cc: tglx, maz, bcm-kernel-feedback-list, linux-mips, linux-kernel,
linux-arm-kernel, Ye Guojin, Zeal Robot
On 11/8/2021 7:29 PM, cgel.zte@gmail.com wrote:
> From: Ye Guojin <ye.guojin@zte.com.cn>
>
> This was found by coccicheck:
> ./drivers/irqchip/irq-bcm7120-l2.c,328,1-7,ERROR missing put_device;
> call of_find_device_by_node on line 234, but without a corresponding
> object release within this function.
> ./drivers/irqchip/irq-bcm7120-l2.c,341,1-7,ERROR missing put_device;
> call of_find_device_by_node on line 234, but without a corresponding
> object release within this function.
>
> Addtionally, fixup the potential problem that memory is not released
> before return.
>
> Reported-by: Zeal Robot <zealci@zte.com.cn>
> Signed-off-by: Ye Guojin <ye.guojin@zte.com.cn>
> ---
> drivers/irqchip/irq-bcm7120-l2.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/irqchip/irq-bcm7120-l2.c b/drivers/irqchip/irq-bcm7120-l2.c
> index d80e67a6aad2..aaa70619f3c0 100644
> --- a/drivers/irqchip/irq-bcm7120-l2.c
> +++ b/drivers/irqchip/irq-bcm7120-l2.c
> @@ -325,7 +325,7 @@ static int __init bcm7120_l2_intc_probe(struct device_node *dn,
> pr_info("registered %s intc (%pOF, parent IRQ(s): %d)\n",
> intc_name, dn, data->num_parent_irqs);
>
> - return 0;
> + ret = 0;
That cannot be right, we would take the irq_free_domain label and
unregister the interrupt domain. The put_device() ought to be done when
we stop making use of the platform_device, that is at line 246 after we
call platform_irq_count().
Thanks!
--
Florian
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v2] irqchip/irq-bcm7120-l2: add put_device() after of_find_device_by_node()
2021-11-09 3:40 ` Florian Fainelli
@ 2021-11-09 5:59 ` cgel.zte
2021-11-09 22:37 ` Florian Fainelli
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: cgel.zte @ 2021-11-09 5:59 UTC (permalink / raw)
To: f.fainelli
Cc: bcm-kernel-feedback-list, cgel.zte, linux-arm-kernel,
linux-kernel, linux-mips, maz, tglx, ye.guojin, zealci
From: Ye Guojin <ye.guojin@zte.com.cn>
This was found by coccicheck:
./drivers/irqchip/irq-bcm7120-l2.c,328,1-7,ERROR missing put_device;
call of_find_device_by_node on line 234, but without a corresponding
object release within this function.
./drivers/irqchip/irq-bcm7120-l2.c,341,1-7,ERROR missing put_device;
call of_find_device_by_node on line 234, but without a corresponding
object release within this function.
Reported-by: Zeal Robot <zealci@zte.com.cn>
Signed-off-by: Ye Guojin <ye.guojin@zte.com.cn>
---
v2:
- Restore the code at line 329.
- Do put_device() when we stop making use of the platform_device, which
is at line 241.
---
drivers/irqchip/irq-bcm7120-l2.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/irqchip/irq-bcm7120-l2.c b/drivers/irqchip/irq-bcm7120-l2.c
index d80e67a6aad2..bb6609cebdbc 100644
--- a/drivers/irqchip/irq-bcm7120-l2.c
+++ b/drivers/irqchip/irq-bcm7120-l2.c
@@ -238,6 +238,7 @@ static int __init bcm7120_l2_intc_probe(struct device_node *dn,
}
data->num_parent_irqs = platform_irq_count(pdev);
+ put_device(&pdev->dev);
if (data->num_parent_irqs <= 0) {
pr_err("invalid number of parent interrupts\n");
ret = -ENOMEM;
--
2.25.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH v2] irqchip/irq-bcm7120-l2: add put_device() after of_find_device_by_node()
2021-11-09 5:59 ` [PATCH v2] " cgel.zte
@ 2021-11-09 22:37 ` Florian Fainelli
2021-12-10 12:28 ` [irqchip: irq/irqchip-fixes] " irqchip-bot for Ye Guojin
2021-12-10 13:26 ` [irqchip: irq/irqchip-fixes] irqchip/irq-bcm7120-l2: Add " irqchip-bot for Ye Guojin
2 siblings, 0 replies; 6+ messages in thread
From: Florian Fainelli @ 2021-11-09 22:37 UTC (permalink / raw)
To: cgel.zte, f.fainelli
Cc: bcm-kernel-feedback-list, linux-arm-kernel, linux-kernel,
linux-mips, maz, tglx, ye.guojin, zealci
On 11/8/21 9:59 PM, cgel.zte@gmail.com wrote:
> From: Ye Guojin <ye.guojin@zte.com.cn>
>
> This was found by coccicheck:
> ./drivers/irqchip/irq-bcm7120-l2.c,328,1-7,ERROR missing put_device;
> call of_find_device_by_node on line 234, but without a corresponding
> object release within this function.
> ./drivers/irqchip/irq-bcm7120-l2.c,341,1-7,ERROR missing put_device;
> call of_find_device_by_node on line 234, but without a corresponding
> object release within this function.
>
> Reported-by: Zeal Robot <zealci@zte.com.cn>
> Signed-off-by: Ye Guojin <ye.guojin@zte.com.cn>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Thank you
--
Florian
^ permalink raw reply [flat|nested] 6+ messages in thread
* [irqchip: irq/irqchip-fixes] irqchip/irq-bcm7120-l2: add put_device() after of_find_device_by_node()
2021-11-09 5:59 ` [PATCH v2] " cgel.zte
2021-11-09 22:37 ` Florian Fainelli
@ 2021-12-10 12:28 ` irqchip-bot for Ye Guojin
2021-12-10 13:26 ` [irqchip: irq/irqchip-fixes] irqchip/irq-bcm7120-l2: Add " irqchip-bot for Ye Guojin
2 siblings, 0 replies; 6+ messages in thread
From: irqchip-bot for Ye Guojin @ 2021-12-10 12:28 UTC (permalink / raw)
To: linux-kernel; +Cc: Zeal Robot, Ye Guojin, Florian Fainelli, Marc Zyngier, tglx
The following commit has been merged into the irq/irqchip-fixes branch of irqchip:
Commit-ID: 5c19cd0a9ed9f7a067a7d9c444ff0590d1dce73f
Gitweb: https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms/5c19cd0a9ed9f7a067a7d9c444ff0590d1dce73f
Author: Ye Guojin <ye.guojin@zte.com.cn>
AuthorDate: Tue, 09 Nov 2021 05:59:58
Committer: Marc Zyngier <maz@kernel.org>
CommitterDate: Fri, 10 Dec 2021 12:25:00
irqchip/irq-bcm7120-l2: add put_device() after of_find_device_by_node()
This was found by coccicheck:
./drivers/irqchip/irq-bcm7120-l2.c,328,1-7,ERROR missing put_device;
call of_find_device_by_node on line 234, but without a corresponding
object release within this function.
./drivers/irqchip/irq-bcm7120-l2.c,341,1-7,ERROR missing put_device;
call of_find_device_by_node on line 234, but without a corresponding
object release within this function.
Reported-by: Zeal Robot <zealci@zte.com.cn>
Signed-off-by: Ye Guojin <ye.guojin@zte.com.cn>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20211109055958.130287-1-ye.guojin@zte.com.cn
---
drivers/irqchip/irq-bcm7120-l2.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/irqchip/irq-bcm7120-l2.c b/drivers/irqchip/irq-bcm7120-l2.c
index d80e67a..bb6609c 100644
--- a/drivers/irqchip/irq-bcm7120-l2.c
+++ b/drivers/irqchip/irq-bcm7120-l2.c
@@ -238,6 +238,7 @@ static int __init bcm7120_l2_intc_probe(struct device_node *dn,
}
data->num_parent_irqs = platform_irq_count(pdev);
+ put_device(&pdev->dev);
if (data->num_parent_irqs <= 0) {
pr_err("invalid number of parent interrupts\n");
ret = -ENOMEM;
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [irqchip: irq/irqchip-fixes] irqchip/irq-bcm7120-l2: Add put_device() after of_find_device_by_node()
2021-11-09 5:59 ` [PATCH v2] " cgel.zte
2021-11-09 22:37 ` Florian Fainelli
2021-12-10 12:28 ` [irqchip: irq/irqchip-fixes] " irqchip-bot for Ye Guojin
@ 2021-12-10 13:26 ` irqchip-bot for Ye Guojin
2 siblings, 0 replies; 6+ messages in thread
From: irqchip-bot for Ye Guojin @ 2021-12-10 13:26 UTC (permalink / raw)
To: linux-kernel; +Cc: Zeal Robot, Ye Guojin, Florian Fainelli, Marc Zyngier, tglx
The following commit has been merged into the irq/irqchip-fixes branch of irqchip:
Commit-ID: c3fbab7767c53397d7b849799474f5a27cf306e6
Gitweb: https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms/c3fbab7767c53397d7b849799474f5a27cf306e6
Author: Ye Guojin <ye.guojin@zte.com.cn>
AuthorDate: Tue, 09 Nov 2021 05:59:58
Committer: Marc Zyngier <maz@kernel.org>
CommitterDate: Fri, 10 Dec 2021 13:23:13
irqchip/irq-bcm7120-l2: Add put_device() after of_find_device_by_node()
This was found by coccicheck:
./drivers/irqchip/irq-bcm7120-l2.c,328,1-7,ERROR missing put_device;
call of_find_device_by_node on line 234, but without a corresponding
object release within this function.
./drivers/irqchip/irq-bcm7120-l2.c,341,1-7,ERROR missing put_device;
call of_find_device_by_node on line 234, but without a corresponding
object release within this function.
Reported-by: Zeal Robot <zealci@zte.com.cn>
Signed-off-by: Ye Guojin <ye.guojin@zte.com.cn>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20211109055958.130287-1-ye.guojin@zte.com.cn
---
drivers/irqchip/irq-bcm7120-l2.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/irqchip/irq-bcm7120-l2.c b/drivers/irqchip/irq-bcm7120-l2.c
index d80e67a..bb6609c 100644
--- a/drivers/irqchip/irq-bcm7120-l2.c
+++ b/drivers/irqchip/irq-bcm7120-l2.c
@@ -238,6 +238,7 @@ static int __init bcm7120_l2_intc_probe(struct device_node *dn,
}
data->num_parent_irqs = platform_irq_count(pdev);
+ put_device(&pdev->dev);
if (data->num_parent_irqs <= 0) {
pr_err("invalid number of parent interrupts\n");
ret = -ENOMEM;
^ permalink raw reply related [flat|nested] 6+ messages in thread
end of thread, other threads:[~2021-12-10 13:26 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-09 3:29 [PATCH] irqchip/irq-bcm7120-l2: add put_device() after of_find_device_by_node() cgel.zte
2021-11-09 3:40 ` Florian Fainelli
2021-11-09 5:59 ` [PATCH v2] " cgel.zte
2021-11-09 22:37 ` Florian Fainelli
2021-12-10 12:28 ` [irqchip: irq/irqchip-fixes] " irqchip-bot for Ye Guojin
2021-12-10 13:26 ` [irqchip: irq/irqchip-fixes] irqchip/irq-bcm7120-l2: Add " irqchip-bot for Ye Guojin
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).