The function release_firmware_map_entry() references the function __meminit firmware_map_find_entry_in_list(). So it should also have __meminit. And since the firmware_map_entry->kobj is initialized with memmap_ktype, the memmap_ktype should also be prefixed by __refdata. Signed-off-by: Tang Chen <tangchen@xxxxxxxxxxxxxx> --- drivers/firmware/memmap.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/firmware/memmap.c b/drivers/firmware/memmap.c index 0710179..658fdd4 100644 --- a/drivers/firmware/memmap.c +++ b/drivers/firmware/memmap.c @@ -103,7 +103,7 @@ to_memmap_entry(struct kobject *kobj) return container_of(kobj, struct firmware_map_entry, kobj); } -static void release_firmware_map_entry(struct kobject *kobj) +static void __meminit release_firmware_map_entry(struct kobject *kobj) { struct firmware_map_entry *entry = to_memmap_entry(kobj); @@ -127,7 +127,7 @@ static void release_firmware_map_entry(struct kobject *kobj) kfree(entry); } -static struct kobj_type memmap_ktype = { +static struct kobj_type __refdata memmap_ktype = { .release = release_firmware_map_entry, .sysfs_ops = &memmap_attr_ops, .default_attrs = def_attrs, -- 1.7.1 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>