]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blobdiff - arch/ia64/mm/init.c
memory-hotplug: introduce new arch_remove_memory() for removing page table
[mirror_ubuntu-zesty-kernel.git] / arch / ia64 / mm / init.c
index b755ea92aea7f23d269f4053974dbc8cba2b380e..20bc967c7209bd6f0009463464015bf6888a8873 100644 (file)
@@ -688,6 +688,24 @@ int arch_add_memory(int nid, u64 start, u64 size)
 
        return ret;
 }
+
+#ifdef CONFIG_MEMORY_HOTREMOVE
+int arch_remove_memory(u64 start, u64 size)
+{
+       unsigned long start_pfn = start >> PAGE_SHIFT;
+       unsigned long nr_pages = size >> PAGE_SHIFT;
+       struct zone *zone;
+       int ret;
+
+       zone = page_zone(pfn_to_page(start_pfn));
+       ret = __remove_pages(zone, start_pfn, nr_pages);
+       if (ret)
+               pr_warn("%s: Problem encountered in __remove_pages() as"
+                       " ret=%d\n", __func__,  ret);
+
+       return ret;
+}
+#endif
 #endif
 
 /*