The of_find_device_by_node() takes a reference to the underlying device
structure, we should release that reference.
Detected by coccinelle with the following ERROR:
./arch/sparc/include/asm/floppy_64.h:595:3-9: ERROR: missing put_device;
call of_find_device_by_node on line 589, but without a corresponding
object release within this function.
Signed-off-by: Ran Sun <sunran001@xxxxxxxxxx>
---
arch/sparc/include/asm/floppy_64.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/sparc/include/asm/floppy_64.h
b/arch/sparc/include/asm/floppy_64.h
index 070c8c1f5c8f..e74a4d4e6519 100644
--- a/arch/sparc/include/asm/floppy_64.h
+++ b/arch/sparc/include/asm/floppy_64.h
@@ -592,6 +592,7 @@ static unsigned long __init sun_floppy_init(void)
state_prop = of_get_property(op->dev.of_node, "status", NULL);
if (state_prop && !strncmp(state_prop, "disabled", 8))
+ put_device(&op->dev);
return 0;
FLOPPY_IRQ = op->archdata.irqs[0];