)]}'
{
  "commit": "76cdd58e558669366adfaded436fda01b30cce3e",
  "tree": "deaccb499752c928919693edea65f9ea4c1fe756",
  "parents": [
    "1c12c4cf9411eb130b245fa8d0fbbaf989477c7b"
  ],
  "author": {
    "name": "Heiko Carstens",
    "email": "heiko.carstens@de.ibm.com",
    "time": "Wed May 14 16:05:52 2008 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@linux-foundation.org",
    "time": "Wed May 14 19:11:15 2008 -0700"
  },
  "message": "memory_hotplug: always initialize pageblock bitmap\n\nTrying to online a new memory section that was added via memory hotplug\nsometimes results in crashes when the new pages are added via __free_page.\n Reason for that is that the pageblock bitmap isn\u0027t initialized and hence\ncontains random stuff.  That means that get_pageblock_migratetype()\nreturns also random stuff and therefore\n\n\tlist_add(\u0026page-\u003elru,\n\t\t\u0026zone-\u003efree_area[order].free_list[migratetype]);\n\nin __free_one_page() tries to do a list_add to something that isn\u0027t even\nnecessarily a list.\n\nThis happens since 86051ca5eaf5e560113ec7673462804c54284456 (\"mm: fix\nusemap initialization\") which makes sure that the pageblock bitmap gets\nonly initialized for pages present in a zone.  Unfortunately for hot-added\nmemory the zones \"grow\" after the memmap and the pageblock memmap have\nbeen initialized.  Which means that the new pages have an unitialized\nbitmap.  To solve this the calls to grow_zone_span() and grow_pgdat_span()\nare moved to __add_zone() just before the initialization happens.\n\nThe patch also moves the two functions since __add_zone() is the only\ncaller and I didn\u0027t want to add a forward declaration.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Gerald Schaefer \u003cgerald.schaefer@de.ibm.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "656ad1c65422f0440a56b422b8431891e5304827",
      "old_mode": 33188,
      "old_path": "mm/memory_hotplug.c",
      "new_id": "833f854eabe50ad226696667db7e49d332840bb6",
      "new_mode": 33188,
      "new_path": "mm/memory_hotplug.c"
    },
    {
      "type": "modify",
      "old_id": "bdd5c432c426fdf6714ff90e1eebdfccfdccee8c",
      "old_mode": 33188,
      "old_path": "mm/page_alloc.c",
      "new_id": "63835579323a7ca70722154f5b3e6560872da409",
      "new_mode": 33188,
      "new_path": "mm/page_alloc.c"
    }
  ]
}
