linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH: 000/017] (RFC)Memory hotplug for new nodes v.3.
@ 2006-03-08 13:41 Yasunori Goto
  2006-03-09 12:00 ` Andrew Morton
  0 siblings, 1 reply; 3+ messages in thread
From: Yasunori Goto @ 2006-03-08 13:41 UTC (permalink / raw)
  To: Luck, Tony, Andi Kleen, Joel Schopp, Dave Hansen
  Cc: Linux Kernel ML, linux-mm, linux-ia64, Andrew Morton

Hello.

I'll post newest patches for memory hotadd with pgdat allocation as V3.
There are many changes to make more common code.

This may be too many patches, but I would like to show
total feature of this code now.

This patches are for 2.6.16-rc5-mm3.
I tested these patch on just Tiger4(ia64) with emulation now.
But, I'll test them for x86-64 too after this post.

Please comment.

---------------------------------------

This is memory hotadd code when new node is added.
In this patch, pgdat is allocated when new node is comming.
To initialize pgdat and zones, a set of patches are necessary.
  - to allcate and initialize pgdat, zone, zonelist.
  - to make new kswapd
  - to initialize node_data[] array (ia64)
  - to register sysfs file for new node.
  - to call memory_hotplug code from acpi container driver.

Note:
 - kzalloc is used for pgdat allocation in this version.
   So, even if pgdat is allocated, it will be allocated on the other node.
   This is only to simplify patches a bit. :-P

-----------------------------
Followings are updates.

Updates from V2 to V3.
  - update for 2.6.16-rc5-mm3.
  - The caller function of pgdat allcation and so on become common code.
  - Passing node id at add_memory().
  - build_zonelists() is called after that pages are onlined.
  - Updating NODE_DATA() for ia64 become simple and become 
    common code between booting and hotadd.
    (But other consideration will be necessary for hot-remove.)
  - kswapd is called by kthread_run().
  - finding node id by acpi use handle of its memory device.
  - 

Updates from V1 to V2.
  - update for 2.6.16-rc5-mm2.
  - not only ia64, This is tested on x86_64 with NUMA emulation too. :-)
  - wait_table_size() allcation is changed.
      - Take max size as much as possible.
      - Change using GFP_ATOMIC. It is inside of zone_init_lock.
        (Warining message of might_sleep() is very well.)
  - stop_machine_run(build_zonelists) is move to outside of lock.
  - pgdat_insert() is moved to generic code to be used by x86_64.
  - add decision of ZONE_DMA32 or ZONE_NORMAL to x86_64's add_memory().
  - Make a separated patch to change from __init to __meminit.
  - Fix some typo


-- 
Yasunori Goto 


--
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] 3+ messages in thread

end of thread, other threads:[~2006-03-10  7:13 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-03-08 13:41 [PATCH: 000/017] (RFC)Memory hotplug for new nodes v.3 Yasunori Goto
2006-03-09 12:00 ` Andrew Morton
2006-03-10  7:13   ` Yasunori Goto

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