Re: [PATCH 1/2] make walk_memory_resource available with MEMORY_HOTPLUG=n

2008-06-06 Thread Badari Pulavarty

On Tue, 2008-06-03 at 17:30 -0500, Nathan Lynch wrote:
 The ehea driver was recently changed[1] to use walk_memory_resource() to
 detect the system's memory layout.  However, walk_memory_resource() is
 available only when memory hotplug is enabled.  So CONFIG_EHEA was
 made to depend on MEMORY_HOTPLUG [2], but it is inappropriate for a
 network driver to have such a dependency.
 
 Make the declaration of walk_memory_resource() and its powerpc
 implementation (ehea is powerpc-specific) unconditionally available.
 
 [1] 48cfb14f8b89d4d5b3df6c16f08b258686fb12ad
 ehea: Add DLPAR memory remove support
 
 [2] fb7b6ca2b6b7c23b52be143bdd5f55a23b9780c8
 ehea: Add dependency to Kconfig
 
 Signed-off-by: Nathan Lynch [EMAIL PROTECTED]
 ---
  arch/powerpc/mm/mem.c  |3 +--
  include/linux/memory_hotplug.h |   16 
  2 files changed, 9 insertions(+), 10 deletions(-)
 
 diff --git a/arch/powerpc/mm/mem.c b/arch/powerpc/mm/mem.c
 index f67e118..51f82d8 100644
 --- a/arch/powerpc/mm/mem.c
 +++ b/arch/powerpc/mm/mem.c
 @@ -151,6 +151,7 @@ out:
   return ret;
  }
  #endif /* CONFIG_MEMORY_HOTREMOVE */
 +#endif /* CONFIG_MEMORY_HOTPLUG */
 
  /*
   * walk_memory_resource() needs to make sure there is no holes in a given
 @@ -184,8 +185,6 @@ walk_memory_resource(unsigned long start_pfn, unsigned 
 long nr_pages, void *arg,
  }
  EXPORT_SYMBOL_GPL(walk_memory_resource);
 
 -#endif /* CONFIG_MEMORY_HOTPLUG */
 -
  void show_mem(void)
  {
   unsigned long total = 0, reserved = 0;
 diff --git a/include/linux/memory_hotplug.h b/include/linux/memory_hotplug.h
 index 73e3586..ea9f5ad 100644
 --- a/include/linux/memory_hotplug.h
 +++ b/include/linux/memory_hotplug.h
 @@ -77,14 +77,6 @@ extern int __add_pages(struct zone *zone, unsigned long 
 start_pfn,
  extern int __remove_pages(struct zone *zone, unsigned long start_pfn,
   unsigned long nr_pages);
 
 -/*
 - * Walk through all memory which is registered as resource.
 - * arg is (start_pfn, nr_pages, private_arg_pointer)
 - */
 -extern int walk_memory_resource(unsigned long start_pfn,
 - unsigned long nr_pages, void *arg,
 - int (*func)(unsigned long, unsigned long, void *));
 -
  #ifdef CONFIG_NUMA
  extern int memory_add_physaddr_to_nid(u64 start);
  #else
 @@ -199,6 +191,14 @@ static inline void 
 register_page_bootmem_info_node(struct pglist_data *pgdat)
 
  #endif /* ! CONFIG_MEMORY_HOTPLUG */
 
 +/*
 + * Walk through all memory which is registered as resource.
 + * arg is (start_pfn, nr_pages, private_arg_pointer)
 + */
 +extern int walk_memory_resource(unsigned long start_pfn,
 + unsigned long nr_pages, void *arg,
 + int (*func)(unsigned long, unsigned long, void *));
 +
  extern int add_memory(int nid, u64 start, u64 size);
  extern int arch_add_memory(int nid, u64 start, u64 size);
  extern int remove_memory(u64 start, u64 size);

Sorry. I couldn't get back earlier.

Acked-by: Badari Pulavarty [EMAIL PROTECTED]

___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 1/2] make walk_memory_resource available with MEMORY_HOTPLUG=n

2008-06-06 Thread Nathan Lynch
Nathan Lynch wrote:
 The ehea driver was recently changed[1] to use walk_memory_resource() to
 detect the system's memory layout.  However, walk_memory_resource() is
 available only when memory hotplug is enabled.  So CONFIG_EHEA was
 made to depend on MEMORY_HOTPLUG [2], but it is inappropriate for a
 network driver to have such a dependency.
 
 Make the declaration of walk_memory_resource() and its powerpc
 implementation (ehea is powerpc-specific) unconditionally available.

Paul, can you take these two patches, or should I send them to akpm?
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [PATCH 1/2] make walk_memory_resource available with MEMORY_HOTPLUG=n

2008-06-06 Thread Paul Mackerras
Nathan Lynch writes:

 Paul, can you take these two patches, or should I send them to akpm?

I'll take them.  I assume we want this in 2.6.26.

Paul.
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


[PATCH 1/2] make walk_memory_resource available with MEMORY_HOTPLUG=n

2008-06-03 Thread Nathan Lynch
The ehea driver was recently changed[1] to use walk_memory_resource() to
detect the system's memory layout.  However, walk_memory_resource() is
available only when memory hotplug is enabled.  So CONFIG_EHEA was
made to depend on MEMORY_HOTPLUG [2], but it is inappropriate for a
network driver to have such a dependency.

Make the declaration of walk_memory_resource() and its powerpc
implementation (ehea is powerpc-specific) unconditionally available.

[1] 48cfb14f8b89d4d5b3df6c16f08b258686fb12ad
ehea: Add DLPAR memory remove support

[2] fb7b6ca2b6b7c23b52be143bdd5f55a23b9780c8
ehea: Add dependency to Kconfig

Signed-off-by: Nathan Lynch [EMAIL PROTECTED]
---
 arch/powerpc/mm/mem.c  |3 +--
 include/linux/memory_hotplug.h |   16 
 2 files changed, 9 insertions(+), 10 deletions(-)

diff --git a/arch/powerpc/mm/mem.c b/arch/powerpc/mm/mem.c
index f67e118..51f82d8 100644
--- a/arch/powerpc/mm/mem.c
+++ b/arch/powerpc/mm/mem.c
@@ -151,6 +151,7 @@ out:
return ret;
 }
 #endif /* CONFIG_MEMORY_HOTREMOVE */
+#endif /* CONFIG_MEMORY_HOTPLUG */
 
 /*
  * walk_memory_resource() needs to make sure there is no holes in a given
@@ -184,8 +185,6 @@ walk_memory_resource(unsigned long start_pfn, unsigned long 
nr_pages, void *arg,
 }
 EXPORT_SYMBOL_GPL(walk_memory_resource);
 
-#endif /* CONFIG_MEMORY_HOTPLUG */
-
 void show_mem(void)
 {
unsigned long total = 0, reserved = 0;
diff --git a/include/linux/memory_hotplug.h b/include/linux/memory_hotplug.h
index 73e3586..ea9f5ad 100644
--- a/include/linux/memory_hotplug.h
+++ b/include/linux/memory_hotplug.h
@@ -77,14 +77,6 @@ extern int __add_pages(struct zone *zone, unsigned long 
start_pfn,
 extern int __remove_pages(struct zone *zone, unsigned long start_pfn,
unsigned long nr_pages);
 
-/*
- * Walk through all memory which is registered as resource.
- * arg is (start_pfn, nr_pages, private_arg_pointer)
- */
-extern int walk_memory_resource(unsigned long start_pfn,
-   unsigned long nr_pages, void *arg,
-   int (*func)(unsigned long, unsigned long, void *));
-
 #ifdef CONFIG_NUMA
 extern int memory_add_physaddr_to_nid(u64 start);
 #else
@@ -199,6 +191,14 @@ static inline void register_page_bootmem_info_node(struct 
pglist_data *pgdat)
 
 #endif /* ! CONFIG_MEMORY_HOTPLUG */
 
+/*
+ * Walk through all memory which is registered as resource.
+ * arg is (start_pfn, nr_pages, private_arg_pointer)
+ */
+extern int walk_memory_resource(unsigned long start_pfn,
+   unsigned long nr_pages, void *arg,
+   int (*func)(unsigned long, unsigned long, void *));
+
 extern int add_memory(int nid, u64 start, u64 size);
 extern int arch_add_memory(int nid, u64 start, u64 size);
 extern int remove_memory(u64 start, u64 size);
-- 
1.5.5

___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev