1. 24 6月, 2005 2 次提交
    • D
      [PATCH] Introduce new Kconfig option for NUMA or DISCONTIG · 93b7504e
      Dave Hansen 提交于
      There is some confusion that arose when working on SPARSEMEM patch between
      what is needed for DISCONTIG vs. NUMA.
      
      Multiple pg_data_t's are needed for DISCONTIGMEM or NUMA, independently.
      All of the current NUMA implementations require an implementation of
      DISCONTIG.  Because of this, quite a lot of code which is really needed for
      NUMA is actually under DISCONTIG #ifdefs.  For SPARSEMEM, we changed some
      of these #ifdefs to CONFIG_NUMA, but that broke the DISCONTIG=y and NUMA=n
      case.
      
      Introducing this new NEED_MULTIPLE_NODES config option allows code that is
      needed for both NUMA or DISCONTIG to be separated out from code that is
      specific to DISCONTIG.
      
      One great advantage of this approach is that it doesn't require every
      architecture to be converted over.  All of the current implementations
      should "just work", only the ones implementing SPARSEMEM will have to be
      fixed up.
      
      The change to free_area_init() makes it work inside, or out of the new
      config option.
      Signed-off-by: NDave Hansen <haveblue@us.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      93b7504e
    • D
      [PATCH] create mm/Kconfig for arch-independent memory options · 3a9da765
      Dave Hansen 提交于
      With sparsemem being introduced, we need a central place for new
      memory-related .config options: mm/Kconfig.  This allows us to remove many
      of the duplicated arch-specific options.
      
      The new option, CONFIG_FLATMEM, is there to enable us to detangle NUMA and
      DISCONTIGMEM.  This is a requirement for sparsemem because sparsemem uses
      the NUMA code without the presence of DISCONTIGMEM.  The sparsemem patches
      use CONFIG_FLATMEM in generic code, so this patch is a requirement before
      applying them.
      
      Almost all places that used to do '#ifndef CONFIG_DISCONTIGMEM' should use
      '#ifdef CONFIG_FLATMEM' instead.
      Signed-off-by: NAndy Whitcroft <apw@shadowen.org>
      Signed-off-by: NDave Hansen <haveblue@us.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      3a9da765