aboutsummaryrefslogtreecommitdiffstats
path: root/arch/ia64/kernel/topology.c
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2009-08-15 12:43:13 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2009-08-15 12:43:13 +0100
commit824df399a31fe92d88eb8caf86768cc8c7c72a06 (patch)
treef966f72be04d1eb53e17b7866c6f49bf2b7d3b93 /arch/ia64/kernel/topology.c
parentMerge branch 'for-rmk-rc' of git://git.pengutronix.de/git/imx/linux-2.6 (diff)
parentARM: S3C24XX: Fix clkout mpx error (diff)
downloadlinux-dev-824df399a31fe92d88eb8caf86768cc8c7c72a06.tar.xz
linux-dev-824df399a31fe92d88eb8caf86768cc8c7c72a06.zip
Merge branch 's3c-fixes' of git://aeryn.fluff.org.uk/bjdooks/linux
Diffstat (limited to 'arch/ia64/kernel/topology.c')
-rw-r--r--arch/ia64/kernel/topology.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/ia64/kernel/topology.c b/arch/ia64/kernel/topology.c
index bc80dff1df7a..8f060352e129 100644
--- a/arch/ia64/kernel/topology.c
+++ b/arch/ia64/kernel/topology.c
@@ -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);
}