|
@@ -271,6 +271,7 @@ struct node node_devices[MAX_NUMNODES];
|
|
|
*/
|
|
|
int register_cpu_under_node(unsigned int cpu, unsigned int nid)
|
|
|
{
|
|
|
+ int ret;
|
|
|
struct sys_device *obj;
|
|
|
|
|
|
if (!node_online(nid))
|
|
@@ -280,9 +281,15 @@ int register_cpu_under_node(unsigned int cpu, unsigned int nid)
|
|
|
if (!obj)
|
|
|
return 0;
|
|
|
|
|
|
- return sysfs_create_link(&node_devices[nid].sysdev.kobj,
|
|
|
+ ret = sysfs_create_link(&node_devices[nid].sysdev.kobj,
|
|
|
&obj->kobj,
|
|
|
kobject_name(&obj->kobj));
|
|
|
+ if (ret)
|
|
|
+ return ret;
|
|
|
+
|
|
|
+ return sysfs_create_link(&obj->kobj,
|
|
|
+ &node_devices[nid].sysdev.kobj,
|
|
|
+ kobject_name(&node_devices[nid].sysdev.kobj));
|
|
|
}
|
|
|
|
|
|
int unregister_cpu_under_node(unsigned int cpu, unsigned int nid)
|
|
@@ -298,6 +305,8 @@ int unregister_cpu_under_node(unsigned int cpu, unsigned int nid)
|
|
|
|
|
|
sysfs_remove_link(&node_devices[nid].sysdev.kobj,
|
|
|
kobject_name(&obj->kobj));
|
|
|
+ sysfs_remove_link(&obj->kobj,
|
|
|
+ kobject_name(&node_devices[nid].sysdev.kobj));
|
|
|
|
|
|
return 0;
|
|
|
}
|