提交 1681b8e1 编写于 作者: Y Yasunori Goto 提交者: Tony Luck

[IA64] Simple memory hot-add for ia64.

First step to memory hotplug for ia64 (add only,
all new memory is added to node 0, does not use
ZONE_EASY_RECLAIM yet).
Signed-off-by: NYasunori Goto <y-goto@jp.fujitsu.com>
Signed-off-by: NTony Luck <tony.luck@intel.com>
上级 4a8e4a27
...@@ -635,3 +635,39 @@ mem_init (void) ...@@ -635,3 +635,39 @@ mem_init (void)
ia32_mem_init(); ia32_mem_init();
#endif #endif
} }
#ifdef CONFIG_MEMORY_HOTPLUG
void online_page(struct page *page)
{
ClearPageReserved(page);
set_page_count(page, 1);
__free_page(page);
totalram_pages++;
num_physpages++;
}
int add_memory(u64 start, u64 size)
{
pg_data_t *pgdat;
struct zone *zone;
unsigned long start_pfn = start >> PAGE_SHIFT;
unsigned long nr_pages = size >> PAGE_SHIFT;
int ret;
pgdat = NODE_DATA(0);
zone = pgdat->node_zones + ZONE_NORMAL;
ret = __add_pages(zone, start_pfn, nr_pages);
if (ret)
printk("%s: Problem encountered in __add_pages() as ret=%d\n",
__FUNCTION__, ret);
return ret;
}
int remove_memory(u64 start, u64 size)
{
return -EINVAL;
}
#endif
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册