Re: [PATCH 3/7] Update the [register,unregister]_memory routines
From: Nathan Fontenot <hidden>
Date: 2010-07-13 15:47:14
Also in:
lkml
On 07/13/2010 01:20 AM, KAMEZAWA Hiroyuki wrote:
On Mon, 12 Jul 2010 10:44:10 -0500 Nathan Fontenot [off-list ref] wrote:quoted
This patch moves the register/unregister_memory routines to avoid a forward declaration. It also moves the sysfs file creation and deletion for each directory into the register/ unregister routines to avoid duplicating it with these updates. Signed-off-by: Nathan Fontenot <redacted> --- drivers/base/memory.c | 93 +++++++++++++++++++++++++------------------------- 1 file changed, 48 insertions(+), 45 deletions(-) Index: linux-2.6/drivers/base/memory.c ===================================================================--- linux-2.6.orig/drivers/base/memory.c 2010-07-09 14:23:17.000000000 -0500 +++ linux-2.6/drivers/base/memory.c 2010-07-09 14:23:20.000000000 -0500@@ -87,31 +87,6 @@ EXPORT_SYMBOL(unregister_memory_isolate_notifier); /* - * register_memory - Setup a sysfs device for a memory block - */ -static -int register_memory(struct memory_block *memory, struct mem_section *section) -{ - int error; - - memory->sysdev.cls = &memory_sysdev_class; - memory->sysdev.id = __section_nr(section); - - error = sysdev_register(&memory->sysdev); - return error; -} - -static void -unregister_memory(struct memory_block *memory) -{ - BUG_ON(memory->sysdev.cls != &memory_sysdev_class); - - /* drop the ref. we got in remove_memory_block() */ - kobject_put(&memory->sysdev.kobj); - sysdev_unregister(&memory->sysdev); -} - -/* * use this as the physical section index that this memsection * uses. */@@ -346,6 +321,53 @@ sysdev_remove_file(&mem->sysdev, &attr_##attr_name) /* + * register_memory - Setup a sysfs device for a memory block + */ +static +int register_memory(struct memory_block *memory, struct mem_section *section, + int nid, enum mem_add_context context) +{ + int ret; + + memory->sysdev.cls = &memory_sysdev_class; + memory->sysdev.id = __section_nr(section); +
Why not block-ID but section-ID ?
Using the beginning section id as the id here makes the splitting of memory_block's easier since we can assume that the id is unique.
-Kame