|
@@ -340,6 +340,8 @@ static void pseries_remove_processor(struct device_node *np)
|
|
cpu_maps_update_done();
|
|
cpu_maps_update_done();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+extern int find_and_online_cpu_nid(int cpu);
|
|
|
|
+
|
|
static int dlpar_online_cpu(struct device_node *dn)
|
|
static int dlpar_online_cpu(struct device_node *dn)
|
|
{
|
|
{
|
|
int rc = 0;
|
|
int rc = 0;
|
|
@@ -364,6 +366,7 @@ static int dlpar_online_cpu(struct device_node *dn)
|
|
!= CPU_STATE_OFFLINE);
|
|
!= CPU_STATE_OFFLINE);
|
|
cpu_maps_update_done();
|
|
cpu_maps_update_done();
|
|
timed_topology_update(1);
|
|
timed_topology_update(1);
|
|
|
|
+ find_and_online_cpu_nid(cpu);
|
|
rc = device_online(get_cpu_device(cpu));
|
|
rc = device_online(get_cpu_device(cpu));
|
|
if (rc)
|
|
if (rc)
|
|
goto out;
|
|
goto out;
|