)]}'
{
  "commit": "7ea1530ab3fdfa85441061909cc8040e84776fd4",
  "tree": "f3af0f8ed40a6df90bdbb9396d6163d59798a821",
  "parents": [
    "13808910713a98cc1159291e62cdfec92cc94d05"
  ],
  "author": {
    "name": "Christoph Lameter",
    "email": "clameter@sgi.com",
    "time": "Tue Oct 16 01:25:29 2007 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@woody.linux-foundation.org",
    "time": "Tue Oct 16 09:42:58 2007 -0700"
  },
  "message": "Memoryless nodes: introduce mask of nodes with memory\n\nIt is necessary to know if nodes have memory since we have recently begun to\nadd support for memoryless nodes.  For that purpose we introduce a two new\nnode states: N_HIGH_MEMORY and N_NORMAL_MEMORY.\n\nA node has its bit in N_HIGH_MEMORY set if it has any memory regardless of the\ntype of mmemory.  If a node has memory then it has at least one zone defined\nin its pgdat structure that is located in the pgdat itself.\n\nA node has its bit in N_NORMAL_MEMORY set if it has a lower zone than\nZONE_HIGHMEM.  This means it is possible to allocate memory that is not\nsubject to kmap.\n\nN_HIGH_MEMORY and N_NORMAL_MEMORY can then be used in various places to insure\nthat we do the right thing when we encounter a memoryless node.\n\n[akpm@linux-foundation.org: build fix]\n[Lee.Schermerhorn@hp.com: update N_HIGH_MEMORY node state for memory hotadd]\n[y-goto@jp.fujitsu.com: Fix memory hotplug + sparsemem build]\nSigned-off-by: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nAcked-by: Bob Picco \u003cbob.picco@hp.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@skynet.ie\u003e\nSigned-off-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.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": "583e6b843d2a86f5094c25932f90ea1c3b1621ff",
      "old_mode": 33188,
      "old_path": "include/linux/nodemask.h",
      "new_id": "ccee962f3559b6e97e7e8243439091dc2b9e080d",
      "new_mode": 33188,
      "new_path": "include/linux/nodemask.h"
    },
    {
      "type": "modify",
      "old_id": "df9d554bea3081ec75b45e828326e015b62c0338",
      "old_mode": 33188,
      "old_path": "mm/memory_hotplug.c",
      "new_id": "9c12ae5e3695af07d44b9d60fe3782fdb16903a5",
      "new_mode": 33188,
      "new_path": "mm/memory_hotplug.c"
    },
    {
      "type": "modify",
      "old_id": "0cc5b3e198e5e2ccab5b97846e80a1894f20ccca",
      "old_mode": 33188,
      "old_path": "mm/page_alloc.c",
      "new_id": "07dfd89992fa6d0ee90cf0ca6646a43d7dd926e2",
      "new_mode": 33188,
      "new_path": "mm/page_alloc.c"
    }
  ]
}
