Commit 6e3254c4e2927c117044a02acf5f5b56e1373053

Authored by Linus Torvalds
1 parent 1340258002

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>

Showing 1 changed file with 3 additions and 11 deletions Side-by-side Diff

... ... @@ -61,17 +61,9 @@
61 61 {
62 62 bootmem_data_t *bdata = pgdat->bdata;
63 63 unsigned long mapsize = ((end - start)+7)/8;
64   - static struct pglist_data *pgdat_last;
65 64  
66   - pgdat->pgdat_next = NULL;
67   - /* Add new nodes last so that bootmem always starts
68   - searching in the first nodes, not the last ones */
69   - if (pgdat_last)
70   - pgdat_last->pgdat_next = pgdat;
71   - else {
72   - pgdat_list = pgdat;
73   - pgdat_last = pgdat;
74   - }
  65 + pgdat->pgdat_next = pgdat_list;
  66 + pgdat_list = pgdat;
75 67  
76 68 mapsize = ALIGN(mapsize, sizeof(long));
77 69 bdata->node_bootmem_map = phys_to_virt(mapstart << PAGE_SHIFT);