kcore: use registerd physmem information
For /proc/kcore, each arch registers its memory range by kclist_add(). In usual, - range of physical memory - range of vmalloc area - text, etc... are registered but "range of physical memory" has some troubles. It doesn't updated at memory hotplug and it tend to include unnecessary memory holes. Now, /proc/iomem (kernel/resource.c) includes required physical memory range information and it's properly updated at memory hotplug. Then, it's good to avoid using its own code(duplicating information) and to rebuild kclist for physical memory based on /proc/iomem. Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Ralf Baechle <ralf@linux-mips.org> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: WANG Cong <xiyou.wangcong@gmail.com> Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
908eedc616
commit
3089aa1b0c
@@ -352,7 +352,6 @@ void __init paging_init(void)
|
||||
free_area_init_nodes(max_zone_pfns);
|
||||
}
|
||||
|
||||
static struct kcore_list kcore_mem;
|
||||
#ifdef CONFIG_64BIT
|
||||
static struct kcore_list kcore_kseg0;
|
||||
#endif
|
||||
@@ -412,7 +411,6 @@ void __init mem_init(void)
|
||||
kclist_add(&kcore_kseg0, (void *) CKSEG0,
|
||||
0x80000000 - 4, KCORE_TEXT);
|
||||
#endif
|
||||
kclist_add(&kcore_mem, __va(0), max_low_pfn << PAGE_SHIFT, KCORE_RAM);
|
||||
|
||||
printk(KERN_INFO "Memory: %luk/%luk available (%ldk kernel code, "
|
||||
"%ldk reserved, %ldk data, %ldk init, %ldk highmem)\n",
|
||||
|
Reference in New Issue
Block a user