]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
parisc: kernel: replace kfree() with put_device() in create_tree_node()
authorHaoxiang Li <lihaoxiang@isrc.iscas.ac.cn>
Fri, 19 Dec 2025 13:19:26 +0000 (21:19 +0800)
committerSasha Levin <sashal@kernel.org>
Wed, 4 Mar 2026 12:21:24 +0000 (07:21 -0500)
[ Upstream commit dcf69599c47f29ce0a99117eb3f9ddcd2c4e78b6 ]

If device_register() fails, put_device() is the correct way to
drop the device reference.

Found by code review.

Fixes: 1070c9655b90 ("[PA-RISC] Fix must_check warnings in drivers.c")
Cc: stable@vger.kernel.org
Signed-off-by: Haoxiang Li <lihaoxiang@isrc.iscas.ac.cn>
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
arch/parisc/kernel/drivers.c

index 1f8936fc229281203dbd31856bdbccc4f66df076..427e1334f835271c68e7a6c179d7b82d3f564308 100644 (file)
@@ -435,7 +435,7 @@ static struct parisc_device * __init create_tree_node(char id,
        dev->dev.dma_mask = &dev->dma_mask;
        dev->dev.coherent_dma_mask = dev->dma_mask;
        if (device_register(&dev->dev)) {
-               kfree(dev);
+               put_device(&dev->dev);
                return NULL;
        }