if device_register() returned an error! Always use put_device() to give up the reference initialized.
Signed-off-by: Arvind Yadav <arvind.yadav...@gmail.com> --- drivers/base/cpu.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/base/cpu.c b/drivers/base/cpu.c index d21a2d9..2da998b 100644 --- a/drivers/base/cpu.c +++ b/drivers/base/cpu.c @@ -382,8 +382,10 @@ int register_cpu(struct cpu *cpu, int num) if (cpu->hotpluggable) cpu->dev.groups = hotplugable_cpu_attr_groups; error = device_register(&cpu->dev); - if (error) + if (error) { + put_device(&cpu->dev); return error; + } per_cpu(cpu_sys_devices, num) = &cpu->dev; register_cpu_under_node(num, cpu_to_node(num)); -- 2.7.4