From: Liao Pingfang <liao.pingf...@zte.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.pingf...@zte.com.cn> Signed-off-by: Yi Wang <wang.y...@zte.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