]> www.infradead.org Git - users/hch/misc.git/commit
irqchip/renesas-rzg2l: Fix missing put_device
authorFabrizio Castro <fabrizio.castro.jz@renesas.com>
Fri, 11 Oct 2024 17:20:03 +0000 (18:20 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Tue, 15 Oct 2024 21:54:35 +0000 (23:54 +0200)
commitd038109ac1c6bf619473dda03a16a6de58170f7f
tree9cb4bfb5c7c447abaa0f0f0c85e40c7fce831893
parenta98a0f050ced4bd4ecb59e92412916012b7c2917
irqchip/renesas-rzg2l: Fix missing put_device

rzg2l_irqc_common_init() calls of_find_device_by_node(), but the
corresponding put_device() call is missing.  This also gets reported by
make coccicheck.

Make use of the cleanup interfaces from cleanup.h to call into
__free_put_device(), which in turn calls into put_device when leaving
function rzg2l_irqc_common_init() and variable "dev" goes out of scope.

To prevent that the device is put on successful completion, assign NULL to
"dev" to prevent __free_put_device() from calling into put_device() within
the successful path.

"make coccicheck" will still complain about missing put_device() calls,
but those are false positives now.

Fixes: 3fed09559cd8 ("irqchip: Add RZ/G2L IA55 Interrupt Controller driver")
Signed-off-by: Fabrizio Castro <fabrizio.castro.jz@renesas.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/all/20241011172003.1242841-1-fabrizio.castro.jz@renesas.com
drivers/irqchip/irq-renesas-rzg2l.c