diff options
Diffstat (limited to 'drivers/base/memory.c')
-rw-r--r-- | drivers/base/memory.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/base/memory.c b/drivers/base/memory.c index abf407e45467..6ee2181adc3f 100644 --- a/drivers/base/memory.c +++ b/drivers/base/memory.c @@ -665,14 +665,16 @@ static int init_memory_block(unsigned long block_id, unsigned long state, mem->nr_vmemmap_pages = nr_vmemmap_pages; INIT_LIST_HEAD(&mem->group_next); + ret = register_memory(mem); + if (ret) + return ret; + if (group) { mem->group = group; list_add(&mem->group_next, &group->memory_blocks); } - ret = register_memory(mem); - - return ret; + return 0; } static int add_memory_block(unsigned long base_section_nr) |