linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [RFC] PPC64 Exporting memory information through /proc/iomem
@ 2007-10-02 17:29 Badari Pulavarty
  2007-10-02 20:11 ` Geoff Levand
  2007-10-02 22:56 ` Paul Mackerras
  0 siblings, 2 replies; 17+ messages in thread
From: Badari Pulavarty @ 2007-10-02 17:29 UTC (permalink / raw)
  To: linuxppc-dev; +Cc: linux-mm, KAMEZAWA Hiroyuki, anton, hbabu

Hi Paul & Ben,

I am trying to get hotplug memory remove working on ppc64.
In order to verify a given memory region, if its valid or not -
current hotplug-memory patches used /proc/iomem. On IA64 and
x86-64 /proc/iomem shows all memory regions. 

I am wondering, if its acceptable to do the same on ppc64 also ?
Otherwise, we need to add arch-specific hooks in hotplug-remove
code to be able to do this.

Please comment. Here is the half-cooked patch I used to verify
the hotplug-memory-remove on ppc64.

Thanks,
Badari

---
 arch/powerpc/mm/numa.c |   18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

Index: linux-2.6.23-rc8/arch/powerpc/mm/numa.c
===================================================================
--- linux-2.6.23-rc8.orig/arch/powerpc/mm/numa.c	2007-10-02 10:16:42.000000000 -0700
+++ linux-2.6.23-rc8/arch/powerpc/mm/numa.c	2007-10-02 10:17:05.000000000 -0700
@@ -587,6 +587,22 @@ static void __init *careful_allocation(i
 	return (void *)ret;
 }
 
+static void add_regions_iomem()
+{
+	int i;
+	struct resource *res;
+
+	for (i = 0; i < lmb.memory.cnt; i++) {
+		res = alloc_bootmem_low(sizeof(struct resource));
+
+		res->name = "System RAM";
+		res->start = lmb.memory.region[i].base;
+		res->end = res->start + lmb.memory.region[i].size - 1;
+		res->flags = IORESOURCE_MEM;
+		request_resource(&iomem_resource, res);
+	}
+}
+
 static struct notifier_block __cpuinitdata ppc64_numa_nb = {
 	.notifier_call = cpu_numa_callback,
 	.priority = 1 /* Must run before sched domains notifier. */
@@ -650,6 +666,8 @@ void __init do_init_bootmem(void)
 
 		free_bootmem_with_active_regions(nid, end_pfn);
 
+		add_regions_iomem();
+
 		/* Mark reserved regions on this node */
 		for (i = 0; i < lmb.reserved.cnt; i++) {
 			unsigned long physbase = lmb.reserved.region[i].base;






--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2007-10-31 15:46 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-10-02 17:29 [RFC] PPC64 Exporting memory information through /proc/iomem Badari Pulavarty
2007-10-02 20:11 ` Geoff Levand
2007-10-02 20:37   ` Badari Pulavarty
2007-10-02 20:50     ` Geoff Levand
2007-10-02 22:56 ` Paul Mackerras
2007-10-02 23:10   ` Badari Pulavarty
2007-10-03  1:19     ` KAMEZAWA Hiroyuki
2007-10-03 15:35       ` Badari Pulavarty
2007-10-03 16:25         ` KAMEZAWA Hiroyuki
2007-10-03 16:40           ` Badari Pulavarty
2007-10-30 19:19   ` [RFC] hotplug memory remove - walk_memory_resource for ppc64 Badari Pulavarty
2007-10-31  5:28     ` KAMEZAWA Hiroyuki
2007-10-31  5:34       ` KAMEZAWA Hiroyuki
2007-10-31 16:02         ` Badari Pulavarty
2007-10-31 15:46           ` KAMEZAWA Hiroyuki
2007-10-31 16:48         ` [PATCH 0/3] hotplug memory remove support for PPC64 Badari Pulavarty
2007-10-31 16:10       ` [RFC] hotplug memory remove - walk_memory_resource for ppc64 Badari Pulavarty

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox