Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5359dffd authored by Fenghua Yu's avatar Fenghua Yu
Browse files

ia64/topology.c: exit cache_add_dev when kobject_init_and_add fails



Make cache_add_dev exit sysfs when kobject_init_and_add returns an error.

Signed-off-by: default avatarXiaotian Feng <dfeng@redhat.com>
Signed-off-by: default avatarFenghua Yu <fenghua.yu@intel.com>
parent bf2a4c72
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -372,6 +372,10 @@ static int __cpuinit cache_add_dev(struct sys_device * sys_dev)
	retval = kobject_init_and_add(&all_cpu_cache_info[cpu].kobj,
				      &cache_ktype_percpu_entry, &sys_dev->kobj,
				      "%s", "cache");
	if (unlikely(retval < 0)) {
		cpu_cache_sysfs_exit(cpu);
		return retval;
	}

	for (i = 0; i < all_cpu_cache_info[cpu].num_cache_leaves; i++) {
		this_object = LEAF_KOBJECT_PTR(cpu,i);
@@ -385,7 +389,7 @@ static int __cpuinit cache_add_dev(struct sys_device * sys_dev)
			}
			kobject_put(&all_cpu_cache_info[cpu].kobj);
			cpu_cache_sysfs_exit(cpu);
			break;
			return retval;
		}
		kobject_uevent(&(this_object->kobj), KOBJ_ADD);
	}