Revert "x86-64: Reverse order of bootmem lists"
As requested by Thomas Gleixner <tglx@linutronix.de>: "5d3d0f7704ed0bc7eaca0501eeae3e5da1ea6c87 breaks a couple of ARM boards, which depend on the historical bootmem allocation order. There is a cleaner solution around to remove the pgdat list completely, but this is a topic for post 2.6.14 Andi signalled ACK already." Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
1340258002
commit
6e3254c4e2
12
mm/bootmem.c
12
mm/bootmem.c
|
@ -61,17 +61,9 @@ static unsigned long __init init_bootmem_core (pg_data_t *pgdat,
|
|||
{
|
||||
bootmem_data_t *bdata = pgdat->bdata;
|
||||
unsigned long mapsize = ((end - start)+7)/8;
|
||||
static struct pglist_data *pgdat_last;
|
||||
|
||||
pgdat->pgdat_next = NULL;
|
||||
/* Add new nodes last so that bootmem always starts
|
||||
searching in the first nodes, not the last ones */
|
||||
if (pgdat_last)
|
||||
pgdat_last->pgdat_next = pgdat;
|
||||
else {
|
||||
pgdat_list = pgdat;
|
||||
pgdat_last = pgdat;
|
||||
}
|
||||
pgdat->pgdat_next = pgdat_list;
|
||||
pgdat_list = pgdat;
|
||||
|
||||
mapsize = ALIGN(mapsize, sizeof(long));
|
||||
bdata->node_bootmem_map = phys_to_virt(mapstart << PAGE_SHIFT);
|
||||
|
|
Loading…
Reference in New Issue
Block a user