| From 7eb010aaa73dd3d72d244f0595fe0e65c28577c5 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Fri, 19 Dec 2025 21:19:26 +0800 |
| Subject: parisc: kernel: replace kfree() with put_device() in |
| create_tree_node() |
| |
| From: Haoxiang Li <lihaoxiang@isrc.iscas.ac.cn> |
| |
| [ 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 | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| diff --git a/arch/parisc/kernel/drivers.c b/arch/parisc/kernel/drivers.c |
| index d11a3123f3dc4..39480881d530b 100644 |
| --- a/arch/parisc/kernel/drivers.c |
| +++ b/arch/parisc/kernel/drivers.c |
| @@ -435,7 +435,7 @@ struct parisc_device * __init create_tree_node(char id, struct device *parent) |
| 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; |
| } |
| |
| -- |
| 2.51.0 |
| |