[PATCH] x86_64 bootmem: sparse_mem/kexec merge bug.
authorEric W. Biederman <ebiederm@xmission.com>
Sat, 6 Aug 2005 19:47:36 +0000 (13:47 -0600)
committerLinus Torvalds <torvalds@g5.osdl.org>
Sat, 6 Aug 2005 20:06:30 +0000 (13:06 -0700)
When the sparse mem changes and the kexec changes
were merged into setup.c they came in, in the wrong order.
This patch changes the order so we don't run sparse_init
which uses the bootmem allocator until we all of the
reserve_bootmem calls has been made.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/x86_64/kernel/setup.c

index 0aa526298e92948cb5bd909304ff635e575f2360..116a491e2961bbca273d7319559e285be6e2aed0 100644 (file)
@@ -645,15 +645,15 @@ void __init setup_arch(char **cmdline_p)
                }
        }
 #endif
-
-       sparse_init();
-
 #ifdef CONFIG_KEXEC
        if (crashk_res.start != crashk_res.end) {
                reserve_bootmem(crashk_res.start,
                        crashk_res.end - crashk_res.start + 1);
        }
 #endif
+
+       sparse_init();
+
        paging_init();
 
        check_ioapic();