[<prev] [next>] [day] [month] [year] [list]
Message-Id: <1595636246-15392-1-git-send-email-wang.yi59@zte.com.cn>
Date: Sat, 25 Jul 2020 08:17:26 +0800
From: Yi Wang <wang.yi59@....com.cn>
To: ysato@...rs.sourceforge.jp
Cc: dalias@...c.org, akpm@...ux-foundation.org, peterz@...radead.org,
linux-sh@...r.kernel.org, linux-kernel@...r.kernel.org,
xue.zhihong@....com.cn, wang.yi59@....com.cn,
wang.liang82@....com.cn, Liao Pingfang <liao.pingfang@....com.cn>
Subject: [PATCH] sh: sh4: Fix reference count leak in sq_dev_add
From: Liao Pingfang <liao.pingfang@....com.cn>
kobject_init_and_add() takes reference even when it fails. If this
function returns an error, kobject_put() must be called to properly
clean up the memory associated with the object.
Signed-off-by: Liao Pingfang <liao.pingfang@....com.cn>
Signed-off-by: Yi Wang <wang.yi59@....com.cn>
---
arch/sh/kernel/cpu/sh4/sq.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/sh/kernel/cpu/sh4/sq.c b/arch/sh/kernel/cpu/sh4/sq.c
index d432164..3fbd6fd 100644
--- a/arch/sh/kernel/cpu/sh4/sq.c
+++ b/arch/sh/kernel/cpu/sh4/sq.c
@@ -350,6 +350,8 @@ static int sq_dev_add(struct device *dev, struct subsys_interface *sif)
"%s", "sq");
if (!error)
kobject_uevent(kobj, KOBJ_ADD);
+ else
+ kobject_put(kobj);
return error;
}
--
2.9.5
Powered by blists - more mailing lists