From: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>
To: Wen Congyang <wency@cn.fujitsu.com>
Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org,
linuxppc-dev@lists.ozlabs.org, linux-acpi@vger.kernel.org,
linux-s390@vger.kernel.org, linux-sh@vger.kernel.org,
linux-ia64@vger.kernel.org, cmetcalf@tilera.com,
rientjes@google.com, liuj97@gmail.com, len.brown@intel.com,
benh@kernel.crashing.org, paulus@samba.org, cl@linux.com,
minchan.kim@gmail.com, akpm@linux-foundation.org,
kosaki.motohiro@jp.fujitsu.com
Subject: Re: [RFC PATCH v5 00/19] memory-hotplug: hot-remove physical memory
Date: Fri, 27 Jul 2012 19:35:41 +0900 [thread overview]
Message-ID: <50126EFD.1060002@jp.fujitsu.com> (raw)
In-Reply-To: <50126B83.3050201@cn.fujitsu.com>
Hi Wen,
2012/07/27 19:20, Wen Congyang wrote:
> This patch series aims to support physical memory hot-remove.
>
> The patches can free/remove following things:
>
> - acpi_memory_info : [RFC PATCH 4/19]
> - /sys/firmware/memmap/X/{end, start, type} : [RFC PATCH 8/19]
> - iomem_resource : [RFC PATCH 9/19]
> - mem_section and related sysfs files : [RFC PATCH 10-11, 13-16/19]
> - page table of removed memory : [RFC PATCH 12/19]
> - node and related sysfs files : [RFC PATCH 18-19/19]
>
> If you find lack of function for physical memory hot-remove, please let me
> know.
>
> change log of v5:
> * merge the patchset to clear page table and the patchset to hot remove
> memory(from ishimatsu) to one big patchset.
Thank you for merging patches. I'll review next Monday.
Thanks,
Yasuaki Ishimatsu
> [RFC PATCH v5 1/19]
> * rename remove_memory() to offline_memory()/offline_pages()
>
> [RFC PATCH v5 2/19]
> * new patch: implement offline_memory(). This function offlines pages,
> update memory block's state, and notify the userspace that the memory
> block's state is changed.
>
> [RFC PATCH v5 4/19]
> * offline and remove memory in acpi_memory_disable_device() too.
>
> [RFC PATCH v5 17/19]
> * new patch: add a new function __remove_zone() to revert the things done
> in the function __add_zone().
>
> [RFC PATCH v5 18/19]
> * flush work befor reseting node device.
>
> change log of v4:
> * remove "memory-hotplug : unify argument of firmware_map_add_early/hotplug"
> from the patch series, since the patch is a bugfix. It is being disccussed
> on other thread. But for testing the patch series, the patch is needed.
> So I added the patch as [PATCH 0/13].
>
> [RFC PATCH v4 2/13]
> * check memory is online or not at remove_memory()
> * add memory_add_physaddr_to_nid() to acpi_memory_device_remove() for
> getting node id
>
> [RFC PATCH v4 3/13]
> * create new patch : check memory is online or not at online_pages()
>
> [RFC PATCH v4 4/13]
> * add __ref section to remove_memory()
> * call firmware_map_remove_entry() before remove_sysfs_fw_map_entry()
>
> [RFC PATCH v4 11/13]
> * rewrite register_page_bootmem_memmap() for removing page used as PT/PMD
>
> change log of v3:
> * rebase to 3.5.0-rc6
>
> [RFC PATCH v2 2/13]
> * remove extra kobject_put()
>
> * The patch was commented by Wen. Wen's comment is
> "acpi_memory_device_remove() should ignore a return value of
> remove_memory() since caller does not care the return value".
> But I did not change it since I think caller should care the
> return value. And I am trying to fix it as follow:
>
> https://lkml.org/lkml/2012/7/5/624
>
> [RFC PATCH v2 4/13]
> * remove a firmware_memmap_entry allocated by kzmalloc()
>
> change log of v2:
> [RFC PATCH v2 2/13]
> * check whether memory block is offline or not before calling offline_memory()
> * check whether section is valid or not in is_memblk_offline()
> * call kobject_put() for each memory_block in is_memblk_offline()
>
> [RFC PATCH v2 3/13]
> * unify the end argument of firmware_map_add_early/hotplug
>
> [RFC PATCH v2 4/13]
> * add release_firmware_map_entry() for freeing firmware_map_entry
>
> [RFC PATCH v2 6/13]
> * add release_memory_block() for freeing memory_block
>
> [RFC PATCH v2 11/13]
> * fix wrong arguments of free_pages()
>
>
> Wen Congyang (5):
> memory-hotplug: implement offline_memory()
> memory-hotplug: store the node id in acpi_memory_device
> memory-hotplug: export the function acpi_bus_remove()
> memory-hotplug: call acpi_bus_remove() to remove memory device
> memory-hotplug: introduce new function arch_remove_memory()
>
> Yasuaki Ishimatsu (14):
> memory-hotplug: rename remove_memory() to
> offline_memory()/offline_pages()
> memory-hotplug: offline and remove memory when removing the memory
> device
> memory-hotplug: check whether memory is present or not
> memory-hotplug: remove /sys/firmware/memmap/X sysfs
> memory-hotplug: does not release memory region in PAGES_PER_SECTION
> chunks
> memory-hotplug: add memory_block_release
> memory-hotplug: remove_memory calls __remove_pages
> memory-hotplug: check page type in get_page_bootmem
> memory-hotplug: move register_page_bootmem_info_node and
> put_page_bootmem for sparse-vmemmap
> memory-hotplug: implement register_page_bootmem_info_section of
> sparse-vmemmap
> memory-hotplug: free memmap of sparse-vmemmap
> memory_hotplug: clear zone when the memory is removed
> memory-hotplug: add node_device_release
> memory-hotplug: remove sysfs file of node
>
> arch/ia64/mm/init.c | 16 +
> arch/powerpc/mm/mem.c | 14 +
> arch/powerpc/platforms/pseries/hotplug-memory.c | 16 +-
> arch/s390/mm/init.c | 8 +
> arch/sh/mm/init.c | 15 +
> arch/tile/mm/init.c | 8 +
> arch/x86/include/asm/pgtable_types.h | 1 +
> arch/x86/mm/init_32.c | 10 +
> arch/x86/mm/init_64.c | 333 ++++++++++++++++++++++
> arch/x86/mm/pageattr.c | 47 ++--
> drivers/acpi/acpi_memhotplug.c | 51 +++-
> drivers/acpi/scan.c | 3 +-
> drivers/base/memory.c | 90 ++++++-
> drivers/base/node.c | 8 +
> drivers/firmware/memmap.c | 78 +++++-
> include/acpi/acpi_bus.h | 1 +
> include/linux/firmware-map.h | 6 +
> include/linux/memory.h | 5 +
> include/linux/memory_hotplug.h | 25 +-
> include/linux/mm.h | 5 +-
> include/linux/mmzone.h | 19 ++
> mm/memory_hotplug.c | 337 +++++++++++++++++++++--
> mm/sparse.c | 5 +-
> 23 files changed, 1010 insertions(+), 91 deletions(-)
>
--
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>
WARNING: multiple messages have this Message-ID (diff)
From: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>
To: Wen Congyang <wency@cn.fujitsu.com>
Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org,
linuxppc-dev@lists.ozlabs.org, linux-acpi@vger.kernel.org,
linux-s390@vger.kernel.org, linux-sh@vger.kernel.org,
linux-ia64@vger.kernel.org, cmetcalf@tilera.com,
rientjes@google.com, liuj97@gmail.com, len.brown@intel.com,
benh@kernel.crashing.org, paulus@samba.org, cl@linux.com,
minchan.kim@gmail.com, akpm@linux-foundation.org,
kosaki.motohiro@jp.fujitsu.com
Subject: Re: [RFC PATCH v5 00/19] memory-hotplug: hot-remove physical memory
Date: Fri, 27 Jul 2012 10:35:41 +0000 [thread overview]
Message-ID: <50126EFD.1060002@jp.fujitsu.com> (raw)
In-Reply-To: <50126B83.3050201@cn.fujitsu.com>
Hi Wen,
2012/07/27 19:20, Wen Congyang wrote:
> This patch series aims to support physical memory hot-remove.
>
> The patches can free/remove following things:
>
> - acpi_memory_info : [RFC PATCH 4/19]
> - /sys/firmware/memmap/X/{end, start, type} : [RFC PATCH 8/19]
> - iomem_resource : [RFC PATCH 9/19]
> - mem_section and related sysfs files : [RFC PATCH 10-11, 13-16/19]
> - page table of removed memory : [RFC PATCH 12/19]
> - node and related sysfs files : [RFC PATCH 18-19/19]
>
> If you find lack of function for physical memory hot-remove, please let me
> know.
>
> change log of v5:
> * merge the patchset to clear page table and the patchset to hot remove
> memory(from ishimatsu) to one big patchset.
Thank you for merging patches. I'll review next Monday.
Thanks,
Yasuaki Ishimatsu
> [RFC PATCH v5 1/19]
> * rename remove_memory() to offline_memory()/offline_pages()
>
> [RFC PATCH v5 2/19]
> * new patch: implement offline_memory(). This function offlines pages,
> update memory block's state, and notify the userspace that the memory
> block's state is changed.
>
> [RFC PATCH v5 4/19]
> * offline and remove memory in acpi_memory_disable_device() too.
>
> [RFC PATCH v5 17/19]
> * new patch: add a new function __remove_zone() to revert the things done
> in the function __add_zone().
>
> [RFC PATCH v5 18/19]
> * flush work befor reseting node device.
>
> change log of v4:
> * remove "memory-hotplug : unify argument of firmware_map_add_early/hotplug"
> from the patch series, since the patch is a bugfix. It is being disccussed
> on other thread. But for testing the patch series, the patch is needed.
> So I added the patch as [PATCH 0/13].
>
> [RFC PATCH v4 2/13]
> * check memory is online or not at remove_memory()
> * add memory_add_physaddr_to_nid() to acpi_memory_device_remove() for
> getting node id
>
> [RFC PATCH v4 3/13]
> * create new patch : check memory is online or not at online_pages()
>
> [RFC PATCH v4 4/13]
> * add __ref section to remove_memory()
> * call firmware_map_remove_entry() before remove_sysfs_fw_map_entry()
>
> [RFC PATCH v4 11/13]
> * rewrite register_page_bootmem_memmap() for removing page used as PT/PMD
>
> change log of v3:
> * rebase to 3.5.0-rc6
>
> [RFC PATCH v2 2/13]
> * remove extra kobject_put()
>
> * The patch was commented by Wen. Wen's comment is
> "acpi_memory_device_remove() should ignore a return value of
> remove_memory() since caller does not care the return value".
> But I did not change it since I think caller should care the
> return value. And I am trying to fix it as follow:
>
> https://lkml.org/lkml/2012/7/5/624
>
> [RFC PATCH v2 4/13]
> * remove a firmware_memmap_entry allocated by kzmalloc()
>
> change log of v2:
> [RFC PATCH v2 2/13]
> * check whether memory block is offline or not before calling offline_memory()
> * check whether section is valid or not in is_memblk_offline()
> * call kobject_put() for each memory_block in is_memblk_offline()
>
> [RFC PATCH v2 3/13]
> * unify the end argument of firmware_map_add_early/hotplug
>
> [RFC PATCH v2 4/13]
> * add release_firmware_map_entry() for freeing firmware_map_entry
>
> [RFC PATCH v2 6/13]
> * add release_memory_block() for freeing memory_block
>
> [RFC PATCH v2 11/13]
> * fix wrong arguments of free_pages()
>
>
> Wen Congyang (5):
> memory-hotplug: implement offline_memory()
> memory-hotplug: store the node id in acpi_memory_device
> memory-hotplug: export the function acpi_bus_remove()
> memory-hotplug: call acpi_bus_remove() to remove memory device
> memory-hotplug: introduce new function arch_remove_memory()
>
> Yasuaki Ishimatsu (14):
> memory-hotplug: rename remove_memory() to
> offline_memory()/offline_pages()
> memory-hotplug: offline and remove memory when removing the memory
> device
> memory-hotplug: check whether memory is present or not
> memory-hotplug: remove /sys/firmware/memmap/X sysfs
> memory-hotplug: does not release memory region in PAGES_PER_SECTION
> chunks
> memory-hotplug: add memory_block_release
> memory-hotplug: remove_memory calls __remove_pages
> memory-hotplug: check page type in get_page_bootmem
> memory-hotplug: move register_page_bootmem_info_node and
> put_page_bootmem for sparse-vmemmap
> memory-hotplug: implement register_page_bootmem_info_section of
> sparse-vmemmap
> memory-hotplug: free memmap of sparse-vmemmap
> memory_hotplug: clear zone when the memory is removed
> memory-hotplug: add node_device_release
> memory-hotplug: remove sysfs file of node
>
> arch/ia64/mm/init.c | 16 +
> arch/powerpc/mm/mem.c | 14 +
> arch/powerpc/platforms/pseries/hotplug-memory.c | 16 +-
> arch/s390/mm/init.c | 8 +
> arch/sh/mm/init.c | 15 +
> arch/tile/mm/init.c | 8 +
> arch/x86/include/asm/pgtable_types.h | 1 +
> arch/x86/mm/init_32.c | 10 +
> arch/x86/mm/init_64.c | 333 ++++++++++++++++++++++
> arch/x86/mm/pageattr.c | 47 ++--
> drivers/acpi/acpi_memhotplug.c | 51 +++-
> drivers/acpi/scan.c | 3 +-
> drivers/base/memory.c | 90 ++++++-
> drivers/base/node.c | 8 +
> drivers/firmware/memmap.c | 78 +++++-
> include/acpi/acpi_bus.h | 1 +
> include/linux/firmware-map.h | 6 +
> include/linux/memory.h | 5 +
> include/linux/memory_hotplug.h | 25 +-
> include/linux/mm.h | 5 +-
> include/linux/mmzone.h | 19 ++
> mm/memory_hotplug.c | 337 +++++++++++++++++++++--
> mm/sparse.c | 5 +-
> 23 files changed, 1010 insertions(+), 91 deletions(-)
>
WARNING: multiple messages have this Message-ID (diff)
From: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>
To: Wen Congyang <wency@cn.fujitsu.com>
Cc: linux-s390@vger.kernel.org, linux-ia64@vger.kernel.org,
linux-acpi@vger.kernel.org, len.brown@intel.com,
linux-sh@vger.kernel.org, linux-kernel@vger.kernel.org,
cmetcalf@tilera.com, linux-mm@kvack.org, paulus@samba.org,
minchan.kim@gmail.com, kosaki.motohiro@jp.fujitsu.com,
rientjes@google.com, cl@linux.com, linuxppc-dev@lists.ozlabs.org,
akpm@linux-foundation.org, liuj97@gmail.com
Subject: Re: [RFC PATCH v5 00/19] memory-hotplug: hot-remove physical memory
Date: Fri, 27 Jul 2012 19:35:41 +0900 [thread overview]
Message-ID: <50126EFD.1060002@jp.fujitsu.com> (raw)
In-Reply-To: <50126B83.3050201@cn.fujitsu.com>
Hi Wen,
2012/07/27 19:20, Wen Congyang wrote:
> This patch series aims to support physical memory hot-remove.
>
> The patches can free/remove following things:
>
> - acpi_memory_info : [RFC PATCH 4/19]
> - /sys/firmware/memmap/X/{end, start, type} : [RFC PATCH 8/19]
> - iomem_resource : [RFC PATCH 9/19]
> - mem_section and related sysfs files : [RFC PATCH 10-11, 13-16/19]
> - page table of removed memory : [RFC PATCH 12/19]
> - node and related sysfs files : [RFC PATCH 18-19/19]
>
> If you find lack of function for physical memory hot-remove, please let me
> know.
>
> change log of v5:
> * merge the patchset to clear page table and the patchset to hot remove
> memory(from ishimatsu) to one big patchset.
Thank you for merging patches. I'll review next Monday.
Thanks,
Yasuaki Ishimatsu
> [RFC PATCH v5 1/19]
> * rename remove_memory() to offline_memory()/offline_pages()
>
> [RFC PATCH v5 2/19]
> * new patch: implement offline_memory(). This function offlines pages,
> update memory block's state, and notify the userspace that the memory
> block's state is changed.
>
> [RFC PATCH v5 4/19]
> * offline and remove memory in acpi_memory_disable_device() too.
>
> [RFC PATCH v5 17/19]
> * new patch: add a new function __remove_zone() to revert the things done
> in the function __add_zone().
>
> [RFC PATCH v5 18/19]
> * flush work befor reseting node device.
>
> change log of v4:
> * remove "memory-hotplug : unify argument of firmware_map_add_early/hotplug"
> from the patch series, since the patch is a bugfix. It is being disccussed
> on other thread. But for testing the patch series, the patch is needed.
> So I added the patch as [PATCH 0/13].
>
> [RFC PATCH v4 2/13]
> * check memory is online or not at remove_memory()
> * add memory_add_physaddr_to_nid() to acpi_memory_device_remove() for
> getting node id
>
> [RFC PATCH v4 3/13]
> * create new patch : check memory is online or not at online_pages()
>
> [RFC PATCH v4 4/13]
> * add __ref section to remove_memory()
> * call firmware_map_remove_entry() before remove_sysfs_fw_map_entry()
>
> [RFC PATCH v4 11/13]
> * rewrite register_page_bootmem_memmap() for removing page used as PT/PMD
>
> change log of v3:
> * rebase to 3.5.0-rc6
>
> [RFC PATCH v2 2/13]
> * remove extra kobject_put()
>
> * The patch was commented by Wen. Wen's comment is
> "acpi_memory_device_remove() should ignore a return value of
> remove_memory() since caller does not care the return value".
> But I did not change it since I think caller should care the
> return value. And I am trying to fix it as follow:
>
> https://lkml.org/lkml/2012/7/5/624
>
> [RFC PATCH v2 4/13]
> * remove a firmware_memmap_entry allocated by kzmalloc()
>
> change log of v2:
> [RFC PATCH v2 2/13]
> * check whether memory block is offline or not before calling offline_memory()
> * check whether section is valid or not in is_memblk_offline()
> * call kobject_put() for each memory_block in is_memblk_offline()
>
> [RFC PATCH v2 3/13]
> * unify the end argument of firmware_map_add_early/hotplug
>
> [RFC PATCH v2 4/13]
> * add release_firmware_map_entry() for freeing firmware_map_entry
>
> [RFC PATCH v2 6/13]
> * add release_memory_block() for freeing memory_block
>
> [RFC PATCH v2 11/13]
> * fix wrong arguments of free_pages()
>
>
> Wen Congyang (5):
> memory-hotplug: implement offline_memory()
> memory-hotplug: store the node id in acpi_memory_device
> memory-hotplug: export the function acpi_bus_remove()
> memory-hotplug: call acpi_bus_remove() to remove memory device
> memory-hotplug: introduce new function arch_remove_memory()
>
> Yasuaki Ishimatsu (14):
> memory-hotplug: rename remove_memory() to
> offline_memory()/offline_pages()
> memory-hotplug: offline and remove memory when removing the memory
> device
> memory-hotplug: check whether memory is present or not
> memory-hotplug: remove /sys/firmware/memmap/X sysfs
> memory-hotplug: does not release memory region in PAGES_PER_SECTION
> chunks
> memory-hotplug: add memory_block_release
> memory-hotplug: remove_memory calls __remove_pages
> memory-hotplug: check page type in get_page_bootmem
> memory-hotplug: move register_page_bootmem_info_node and
> put_page_bootmem for sparse-vmemmap
> memory-hotplug: implement register_page_bootmem_info_section of
> sparse-vmemmap
> memory-hotplug: free memmap of sparse-vmemmap
> memory_hotplug: clear zone when the memory is removed
> memory-hotplug: add node_device_release
> memory-hotplug: remove sysfs file of node
>
> arch/ia64/mm/init.c | 16 +
> arch/powerpc/mm/mem.c | 14 +
> arch/powerpc/platforms/pseries/hotplug-memory.c | 16 +-
> arch/s390/mm/init.c | 8 +
> arch/sh/mm/init.c | 15 +
> arch/tile/mm/init.c | 8 +
> arch/x86/include/asm/pgtable_types.h | 1 +
> arch/x86/mm/init_32.c | 10 +
> arch/x86/mm/init_64.c | 333 ++++++++++++++++++++++
> arch/x86/mm/pageattr.c | 47 ++--
> drivers/acpi/acpi_memhotplug.c | 51 +++-
> drivers/acpi/scan.c | 3 +-
> drivers/base/memory.c | 90 ++++++-
> drivers/base/node.c | 8 +
> drivers/firmware/memmap.c | 78 +++++-
> include/acpi/acpi_bus.h | 1 +
> include/linux/firmware-map.h | 6 +
> include/linux/memory.h | 5 +
> include/linux/memory_hotplug.h | 25 +-
> include/linux/mm.h | 5 +-
> include/linux/mmzone.h | 19 ++
> mm/memory_hotplug.c | 337 +++++++++++++++++++++--
> mm/sparse.c | 5 +-
> 23 files changed, 1010 insertions(+), 91 deletions(-)
>
WARNING: multiple messages have this Message-ID (diff)
From: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>
To: Wen Congyang <wency@cn.fujitsu.com>
Cc: <linux-mm@kvack.org>, <linux-kernel@vger.kernel.org>,
<linuxppc-dev@lists.ozlabs.org>, <linux-acpi@vger.kernel.org>,
<linux-s390@vger.kernel.org>, <linux-sh@vger.kernel.org>,
<linux-ia64@vger.kernel.org>, <cmetcalf@tilera.com>,
<rientjes@google.com>, <liuj97@gmail.com>, <len.brown@intel.com>,
<benh@kernel.crashing.org>, <paulus@samba.org>, <cl@linux.com>,
<minchan.kim@gmail.com>, <akpm@linux-foundation.org>,
<kosaki.motohiro@jp.fujitsu.com>
Subject: Re: [RFC PATCH v5 00/19] memory-hotplug: hot-remove physical memory
Date: Fri, 27 Jul 2012 19:35:41 +0900 [thread overview]
Message-ID: <50126EFD.1060002@jp.fujitsu.com> (raw)
In-Reply-To: <50126B83.3050201@cn.fujitsu.com>
Hi Wen,
2012/07/27 19:20, Wen Congyang wrote:
> This patch series aims to support physical memory hot-remove.
>
> The patches can free/remove following things:
>
> - acpi_memory_info : [RFC PATCH 4/19]
> - /sys/firmware/memmap/X/{end, start, type} : [RFC PATCH 8/19]
> - iomem_resource : [RFC PATCH 9/19]
> - mem_section and related sysfs files : [RFC PATCH 10-11, 13-16/19]
> - page table of removed memory : [RFC PATCH 12/19]
> - node and related sysfs files : [RFC PATCH 18-19/19]
>
> If you find lack of function for physical memory hot-remove, please let me
> know.
>
> change log of v5:
> * merge the patchset to clear page table and the patchset to hot remove
> memory(from ishimatsu) to one big patchset.
Thank you for merging patches. I'll review next Monday.
Thanks,
Yasuaki Ishimatsu
> [RFC PATCH v5 1/19]
> * rename remove_memory() to offline_memory()/offline_pages()
>
> [RFC PATCH v5 2/19]
> * new patch: implement offline_memory(). This function offlines pages,
> update memory block's state, and notify the userspace that the memory
> block's state is changed.
>
> [RFC PATCH v5 4/19]
> * offline and remove memory in acpi_memory_disable_device() too.
>
> [RFC PATCH v5 17/19]
> * new patch: add a new function __remove_zone() to revert the things done
> in the function __add_zone().
>
> [RFC PATCH v5 18/19]
> * flush work befor reseting node device.
>
> change log of v4:
> * remove "memory-hotplug : unify argument of firmware_map_add_early/hotplug"
> from the patch series, since the patch is a bugfix. It is being disccussed
> on other thread. But for testing the patch series, the patch is needed.
> So I added the patch as [PATCH 0/13].
>
> [RFC PATCH v4 2/13]
> * check memory is online or not at remove_memory()
> * add memory_add_physaddr_to_nid() to acpi_memory_device_remove() for
> getting node id
>
> [RFC PATCH v4 3/13]
> * create new patch : check memory is online or not at online_pages()
>
> [RFC PATCH v4 4/13]
> * add __ref section to remove_memory()
> * call firmware_map_remove_entry() before remove_sysfs_fw_map_entry()
>
> [RFC PATCH v4 11/13]
> * rewrite register_page_bootmem_memmap() for removing page used as PT/PMD
>
> change log of v3:
> * rebase to 3.5.0-rc6
>
> [RFC PATCH v2 2/13]
> * remove extra kobject_put()
>
> * The patch was commented by Wen. Wen's comment is
> "acpi_memory_device_remove() should ignore a return value of
> remove_memory() since caller does not care the return value".
> But I did not change it since I think caller should care the
> return value. And I am trying to fix it as follow:
>
> https://lkml.org/lkml/2012/7/5/624
>
> [RFC PATCH v2 4/13]
> * remove a firmware_memmap_entry allocated by kzmalloc()
>
> change log of v2:
> [RFC PATCH v2 2/13]
> * check whether memory block is offline or not before calling offline_memory()
> * check whether section is valid or not in is_memblk_offline()
> * call kobject_put() for each memory_block in is_memblk_offline()
>
> [RFC PATCH v2 3/13]
> * unify the end argument of firmware_map_add_early/hotplug
>
> [RFC PATCH v2 4/13]
> * add release_firmware_map_entry() for freeing firmware_map_entry
>
> [RFC PATCH v2 6/13]
> * add release_memory_block() for freeing memory_block
>
> [RFC PATCH v2 11/13]
> * fix wrong arguments of free_pages()
>
>
> Wen Congyang (5):
> memory-hotplug: implement offline_memory()
> memory-hotplug: store the node id in acpi_memory_device
> memory-hotplug: export the function acpi_bus_remove()
> memory-hotplug: call acpi_bus_remove() to remove memory device
> memory-hotplug: introduce new function arch_remove_memory()
>
> Yasuaki Ishimatsu (14):
> memory-hotplug: rename remove_memory() to
> offline_memory()/offline_pages()
> memory-hotplug: offline and remove memory when removing the memory
> device
> memory-hotplug: check whether memory is present or not
> memory-hotplug: remove /sys/firmware/memmap/X sysfs
> memory-hotplug: does not release memory region in PAGES_PER_SECTION
> chunks
> memory-hotplug: add memory_block_release
> memory-hotplug: remove_memory calls __remove_pages
> memory-hotplug: check page type in get_page_bootmem
> memory-hotplug: move register_page_bootmem_info_node and
> put_page_bootmem for sparse-vmemmap
> memory-hotplug: implement register_page_bootmem_info_section of
> sparse-vmemmap
> memory-hotplug: free memmap of sparse-vmemmap
> memory_hotplug: clear zone when the memory is removed
> memory-hotplug: add node_device_release
> memory-hotplug: remove sysfs file of node
>
> arch/ia64/mm/init.c | 16 +
> arch/powerpc/mm/mem.c | 14 +
> arch/powerpc/platforms/pseries/hotplug-memory.c | 16 +-
> arch/s390/mm/init.c | 8 +
> arch/sh/mm/init.c | 15 +
> arch/tile/mm/init.c | 8 +
> arch/x86/include/asm/pgtable_types.h | 1 +
> arch/x86/mm/init_32.c | 10 +
> arch/x86/mm/init_64.c | 333 ++++++++++++++++++++++
> arch/x86/mm/pageattr.c | 47 ++--
> drivers/acpi/acpi_memhotplug.c | 51 +++-
> drivers/acpi/scan.c | 3 +-
> drivers/base/memory.c | 90 ++++++-
> drivers/base/node.c | 8 +
> drivers/firmware/memmap.c | 78 +++++-
> include/acpi/acpi_bus.h | 1 +
> include/linux/firmware-map.h | 6 +
> include/linux/memory.h | 5 +
> include/linux/memory_hotplug.h | 25 +-
> include/linux/mm.h | 5 +-
> include/linux/mmzone.h | 19 ++
> mm/memory_hotplug.c | 337 +++++++++++++++++++++--
> mm/sparse.c | 5 +-
> 23 files changed, 1010 insertions(+), 91 deletions(-)
>
next prev parent reply other threads:[~2012-07-27 10:35 UTC|newest]
Thread overview: 145+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-27 10:20 [RFC PATCH v5 00/19] memory-hotplug: hot-remove physical memory Wen Congyang
2012-07-27 10:20 ` Wen Congyang
2012-07-27 10:20 ` Wen Congyang
2012-07-27 10:20 ` Wen Congyang
2012-07-27 10:22 ` [RFC PATCH 0/19] firmware_map : unify argument of firmware_map_add_early/hotplug Wen Congyang
2012-07-27 10:22 ` Wen Congyang
2012-07-27 10:22 ` Wen Congyang
2012-07-27 10:22 ` Wen Congyang
2012-07-27 10:24 ` [PATCH 0.5/19] remove memory info from list before freeing it Wen Congyang
2012-07-27 10:24 ` Wen Congyang
2012-07-27 10:24 ` Wen Congyang
2012-07-27 10:24 ` Wen Congyang
2012-07-27 10:25 ` [RFC PATCH v5 01/19] memory-hotplug: rename remove_memory() to offline_memory()/offline_pages() Wen Congyang
2012-07-27 10:25 ` Wen Congyang
2012-07-27 10:25 ` Wen Congyang
2012-07-27 10:25 ` Wen Congyang
2012-07-27 10:26 ` [RFC PATCH v5 02/19] memory-hotplug: implement offline_memory() Wen Congyang
2012-07-27 10:26 ` Wen Congyang
2012-07-27 10:26 ` Wen Congyang
2012-07-27 10:26 ` Wen Congyang
2012-07-27 10:27 ` [RFC PATCH v5 03/19] memory-hotplug: store the node id in acpi_memory_device Wen Congyang
2012-07-27 10:27 ` Wen Congyang
2012-07-27 10:27 ` Wen Congyang
2012-07-27 10:27 ` Wen Congyang
2012-07-27 10:27 ` [RFC PATCH v5 04/19] memory-hotplug: offline and remove memory when removing the memory device Wen Congyang
2012-07-27 10:27 ` Wen Congyang
2012-07-27 10:27 ` Wen Congyang
2012-07-27 10:27 ` Wen Congyang
2012-07-27 10:28 ` [RFC PATCH v5 05/19] memory-hotplug: check whether memory is present or not Wen Congyang
2012-07-27 10:28 ` Wen Congyang
2012-07-27 10:28 ` Wen Congyang
2012-07-27 10:28 ` Wen Congyang
2012-07-27 20:17 ` Tony Luck
2012-07-27 20:17 ` Tony Luck
2012-07-27 20:17 ` Tony Luck
2012-07-27 20:17 ` Tony Luck
2012-07-30 1:57 ` Wen Congyang
2012-07-30 1:57 ` Wen Congyang
2012-07-30 1:57 ` Wen Congyang
2012-07-30 1:57 ` Wen Congyang
2012-07-27 10:28 ` [RFC PATCH v5 06/19] memory-hotplug: export the function acpi_bus_remove() Wen Congyang
2012-07-27 10:28 ` Wen Congyang
2012-07-27 10:28 ` Wen Congyang
2012-07-27 10:28 ` Wen Congyang
2012-07-27 10:29 ` [RFC PATCH v5 07/19] memory-hotplug: call acpi_bus_remove() to remove memory device Wen Congyang
2012-07-27 10:29 ` Wen Congyang
2012-07-27 10:29 ` Wen Congyang
2012-07-27 10:29 ` Wen Congyang
2012-07-27 10:30 ` [RFC PATCH v5 08/19] memory-hotplug: remove /sys/firmware/memmap/X sysfs Wen Congyang
2012-07-27 10:30 ` Wen Congyang
2012-07-27 10:30 ` Wen Congyang
2012-07-27 10:30 ` Wen Congyang
2012-07-27 10:30 ` [RFC PATCH v5 09/19] memory-hotplug: does not release memory region in PAGES_PER_SECTION chunks Wen Congyang
2012-07-27 10:30 ` Wen Congyang
2012-07-27 10:30 ` Wen Congyang
2012-07-27 10:30 ` Wen Congyang
2012-07-27 10:31 ` [RFC PATCH v5 10/19] memory-hotplug: add memory_block_release Wen Congyang
2012-07-27 10:31 ` Wen Congyang
2012-07-27 10:31 ` Wen Congyang
2012-07-27 10:31 ` Wen Congyang
2012-07-27 10:31 ` [RFC PATCH v5 11/19] memory-hotplug: remove_memory calls __remove_pages Wen Congyang
2012-07-27 10:31 ` Wen Congyang
2012-07-27 10:31 ` Wen Congyang
2012-07-27 10:31 ` Wen Congyang
2012-07-27 10:32 ` [RFC PATCH v5 12/19] memory-hotplug: introduce new function arch_remove_memory() Wen Congyang
2012-07-27 10:32 ` Wen Congyang
2012-07-27 10:32 ` Wen Congyang
2012-07-27 10:32 ` Wen Congyang
2012-07-30 10:23 ` Heiko Carstens
2012-07-30 10:23 ` Heiko Carstens
2012-07-30 10:23 ` Heiko Carstens
2012-07-30 10:23 ` Heiko Carstens
2012-07-30 10:35 ` Wen Congyang
2012-07-30 10:35 ` Wen Congyang
2012-07-30 10:35 ` Wen Congyang
2012-07-30 10:35 ` Wen Congyang
2012-07-31 12:40 ` Gerald Schaefer
2012-07-31 12:40 ` Gerald Schaefer
2012-07-31 12:40 ` Gerald Schaefer
2012-07-31 12:40 ` Gerald Schaefer
2012-08-01 1:42 ` Wen Congyang
2012-08-01 1:42 ` Wen Congyang
2012-08-01 1:42 ` Wen Congyang
2012-08-01 1:42 ` Wen Congyang
2012-08-01 1:42 ` Wen Congyang
2012-08-01 2:44 ` jencce zhou
2012-08-01 2:44 ` jencce zhou
2012-08-01 2:44 ` jencce zhou
2012-08-01 2:44 ` jencce zhou
2012-08-01 6:06 ` Wen Congyang
2012-08-01 6:06 ` Wen Congyang
2012-08-01 6:06 ` Wen Congyang
2012-08-01 6:06 ` Wen Congyang
2012-07-27 10:32 ` [RFC PATCH v5 13/19] memory-hotplug: check page type in get_page_bootmem Wen Congyang
2012-07-27 10:32 ` Wen Congyang
2012-07-27 10:32 ` Wen Congyang
2012-07-27 10:32 ` Wen Congyang
2012-07-27 10:33 ` [RFC PATCH v5 14/19] memory-hotplug: move register_page_bootmem_info_node and put_page_bootmem for sparse-vmemmap Wen Congyang
2012-07-27 10:33 ` Wen Congyang
2012-07-27 10:33 ` Wen Congyang
2012-07-27 10:33 ` [RFC PATCH v5 14/19] memory-hotplug: move register_page_bootmem_info_node and put_page_bootmem for s Wen Congyang
2012-07-27 10:34 ` [RFC PATCH v5 15/19] memory-hotplug: implement register_page_bootmem_info_section of sparse-vmemmap Wen Congyang
2012-07-27 10:34 ` Wen Congyang
2012-07-27 10:34 ` Wen Congyang
2012-07-27 10:34 ` Wen Congyang
2012-07-27 10:34 ` [RFC PATCH v5 16/19] memory-hotplug: free memmap " Wen Congyang
2012-07-27 10:34 ` Wen Congyang
2012-07-27 10:34 ` Wen Congyang
2012-07-27 10:34 ` Wen Congyang
2012-07-31 12:22 ` Gerald Schaefer
2012-07-31 12:22 ` Gerald Schaefer
2012-07-31 12:22 ` Gerald Schaefer
2012-07-31 12:22 ` Gerald Schaefer
2012-08-01 6:09 ` Wen Congyang
2012-08-01 6:09 ` Wen Congyang
2012-08-01 6:09 ` Wen Congyang
2012-08-01 6:09 ` Wen Congyang
2012-07-27 10:35 ` [RFC PATCH v5 17/19] memory_hotplug: clear zone when the memory is removed Wen Congyang
2012-07-27 10:35 ` Wen Congyang
2012-07-27 10:35 ` Wen Congyang
2012-07-27 10:35 ` Wen Congyang
2012-07-27 10:35 ` Yasuaki Ishimatsu [this message]
2012-07-27 10:35 ` [RFC PATCH v5 00/19] memory-hotplug: hot-remove physical memory Yasuaki Ishimatsu
2012-07-27 10:35 ` Yasuaki Ishimatsu
2012-07-27 10:35 ` Yasuaki Ishimatsu
2012-07-27 10:35 ` [RFC PATCH v5 18/19] memory-hotplug: add node_device_release Wen Congyang
2012-07-27 10:35 ` Wen Congyang
2012-07-27 10:35 ` Wen Congyang
2012-07-27 10:35 ` Wen Congyang
2012-07-27 10:36 ` [RFC PATCH v5 19/19] memory-hotplug: remove sysfs file of node Wen Congyang
2012-07-27 10:36 ` Wen Congyang
2012-07-27 10:36 ` Wen Congyang
2012-07-27 10:36 ` Wen Congyang
2012-07-27 10:45 ` Yasuaki Ishimatsu
2012-07-27 10:45 ` Yasuaki Ishimatsu
2012-07-27 10:45 ` Yasuaki Ishimatsu
2012-07-27 10:45 ` Yasuaki Ishimatsu
2012-07-30 2:03 ` Wen Congyang
2012-07-30 2:03 ` Wen Congyang
2012-07-30 2:03 ` Wen Congyang
2012-07-30 2:03 ` Wen Congyang
2012-07-30 3:47 ` Wen Congyang
2012-07-30 3:47 ` Wen Congyang
2012-07-30 3:47 ` Wen Congyang
2012-07-30 3:47 ` Wen Congyang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50126EFD.1060002@jp.fujitsu.com \
--to=isimatu.yasuaki@jp.fujitsu.com \
--cc=akpm@linux-foundation.org \
--cc=benh@kernel.crashing.org \
--cc=cl@linux.com \
--cc=cmetcalf@tilera.com \
--cc=kosaki.motohiro@jp.fujitsu.com \
--cc=len.brown@intel.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=liuj97@gmail.com \
--cc=minchan.kim@gmail.com \
--cc=paulus@samba.org \
--cc=rientjes@google.com \
--cc=wency@cn.fujitsu.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.