]> Pileus Git - ~andy/linux/blobdiff - mm/memory_hotplug.c
ARM: 7953/1: mm: ensure TLB invalidation is complete before enabling MMU
[~andy/linux] / mm / memory_hotplug.c
index a512a47241a4e19cde1819c124c03a9091bb604e..a650db29606fe73171df9d7c5326da56bbec500b 100644 (file)
@@ -1107,17 +1107,18 @@ int __ref add_memory(int nid, u64 start, u64 size)
        if (ret)
                return ret;
 
-       lock_memory_hotplug();
-
        res = register_memory_resource(start, size);
        ret = -EEXIST;
        if (!res)
-               goto out;
+               return ret;
 
        {       /* Stupid hack to suppress address-never-null warning */
                void *p = NODE_DATA(nid);
                new_pgdat = !p;
        }
+
+       lock_memory_hotplug();
+
        new_node = !node_online(nid);
        if (new_node) {
                pgdat = hotadd_new_pgdat(nid, start);