linux/arch/x86/mm
Jeremy Fitzhardinge 180c06efce hotplug-memory: make online_page() common
All architectures use an effectively identical definition of online_page(), so
just make it common code.  x86-64, ia64, powerpc and sh are actually
identical; x86-32 is slightly different.

x86-32's differences arise because it puts its hotplug pages in the highmem
zone.  We can handle this in the generic code by inspecting the page to see if
its in highmem, and update the totalhigh_pages count appropriately.  This
leaves init_32.c:free_new_highpage with a single caller, so I folded it into
add_one_highpage_init.

I also removed an incorrect comment referring to the NUMA case; any NUMA
details have already been dealt with by the time online_page() is called.

[akpm@linux-foundation.org: fix indenting]
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Acked-by: Dave Hansen <dave@linux.vnet.ibm.com>
Reviewed-by: KAMEZAWA Hiroyuki <kamez.hiroyu@jp.fujitsu.com>
Tested-by: KAMEZAWA Hiroyuki <kamez.hiroyu@jp.fujitsu.com>
Cc: Yasunori Goto <y-goto@jp.fujitsu.com>
Cc: Christoph Lameter <clameter@sgi.com>
Acked-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Yasunori Goto <y-goto@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-04-28 08:58:17 -07:00
..
discontig_32.c x86: rename find_max_pfn() to propagate_e820_map() 2008-04-19 19:19:55 +02:00
dump_pagetables.c "make namespacecheck" fixes 2008-04-24 23:15:44 +02:00
extable.c x86: unify extable_{32|64}.c 2008-01-30 13:31:41 +01:00
fault.c x86: cleanup - rename VM_MASK to X86_VM_MASK 2008-04-17 17:41:33 +02:00
highmem_32.c Avoid false positive warnings in kmap_atomic_prot() with DEBUG_HIGHMEM 2008-03-28 13:08:14 -07:00
hugetlbpage.c x86: stricter check in follow_huge_addr() 2008-03-27 16:08:45 +01:00
init_32.c hotplug-memory: make online_page() common 2008-04-28 08:58:17 -07:00
init_64.c hotplug-memory: make online_page() common 2008-04-28 08:58:17 -07:00
ioremap.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86-pat 2008-04-25 12:48:08 -07:00
k8topology_64.c srat, x86: add support for nodes spanning other nodes 2008-04-19 19:19:55 +02:00
Makefile x86: add common mm/pgtable.c 2008-04-24 23:57:30 +02:00
mmap.c x86: unify mmap_{32|64}.c 2008-01-30 13:31:10 +01:00
numa_64.c x86_64: fix setup_node_bootmem to support big mem excluding with memmap 2008-04-26 22:51:08 +02:00
pageattr-test.c x86: remove over noisy debug printk 2008-02-11 11:24:24 -08:00
pageattr.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-xen-next 2008-04-25 12:32:10 -07:00
pat.c x86: PAT fix 2008-04-28 08:15:16 -07:00
pgtable.c x86: unify pgd ctor/dtor 2008-04-24 23:57:31 +02:00
pgtable_32.c x86: move pmd functions into common asm/pgalloc.h 2008-04-24 23:57:30 +02:00
srat_64.c "make namespacecheck" fixes 2008-04-24 23:15:44 +02:00