mm, nobootmem: do memset() after memblock_reserve()
authorJoonsoo Kim <iamjoonsoo.kim@lge.com>
Mon, 29 Apr 2013 22:08:53 +0000 (15:08 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 29 Apr 2013 22:54:39 +0000 (15:54 -0700)
Currently, we do memset() before reserving the area.  This may not cause
any problem, but it is somewhat weird.  So change execution order.

Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Cc: Yinghai Lu <yinghai@kernel.org>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Cc: Jiang Liu <liuj97@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/nobootmem.c

index a31be7a..bdd3fa2 100644 (file)
@@ -45,9 +45,9 @@ static void * __init __alloc_memory_core_early(int nid, u64 size, u64 align,
        if (!addr)
                return NULL;
 
+       memblock_reserve(addr, size);
        ptr = phys_to_virt(addr);
        memset(ptr, 0, size);
-       memblock_reserve(addr, size);
        /*
         * The min_count is set to 0 so that bootmem allocated blocks
         * are never reported as leaks.