diff options
Diffstat (limited to 'mm/memory_hotplug.c')
-rw-r--r-- | mm/memory_hotplug.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c index df9d554bea30..9c12ae5e3695 100644 --- a/mm/memory_hotplug.c +++ b/mm/memory_hotplug.c | |||
@@ -217,6 +217,10 @@ int online_pages(unsigned long pfn, unsigned long nr_pages) | |||
217 | zone->zone_pgdat->node_present_pages += onlined_pages; | 217 | zone->zone_pgdat->node_present_pages += onlined_pages; |
218 | 218 | ||
219 | setup_per_zone_pages_min(); | 219 | setup_per_zone_pages_min(); |
220 | if (onlined_pages) { | ||
221 | kswapd_run(zone_to_nid(zone)); | ||
222 | node_set_state(zone_to_nid(zone), N_HIGH_MEMORY); | ||
223 | } | ||
220 | 224 | ||
221 | if (need_zonelists_rebuild) | 225 | if (need_zonelists_rebuild) |
222 | build_all_zonelists(); | 226 | build_all_zonelists(); |
@@ -271,9 +275,6 @@ int add_memory(int nid, u64 start, u64 size) | |||
271 | if (!pgdat) | 275 | if (!pgdat) |
272 | return -ENOMEM; | 276 | return -ENOMEM; |
273 | new_pgdat = 1; | 277 | new_pgdat = 1; |
274 | ret = kswapd_run(nid); | ||
275 | if (ret) | ||
276 | goto error; | ||
277 | } | 278 | } |
278 | 279 | ||
279 | /* call arch's memory hotadd */ | 280 | /* call arch's memory hotadd */ |