)]}'
{
  "commit": "475049809977bf3975d78f2d2fd992e19ce2d59e",
  "tree": "36cda7a7735a38e92a6dc2ed58395cd3f337494d",
  "parents": [
    "1abaf3326bf2a2fabd6a0b6258e9cb33d734050a"
  ],
  "author": {
    "name": "Roel Kluin",
    "email": "roel.kluin@gmail.com",
    "time": "Tue Mar 10 12:55:45 2009 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@linux-foundation.org",
    "time": "Tue Mar 10 15:55:10 2009 -0700"
  },
  "message": "mm: get_nid_for_pfn() returns int\n\nget_nid_for_pfn() returns int\n\nPresumably the (nid \u003c 0) case has never happened.\n\nWe do know that it is happening on one system while creating a symlink for\na memory section so it should also happen on the same system if\nunregister_mem_sect_under_nodes() were called to remove the same symlink.\n\nThe test was actually added in response to a problem with an earlier\nversion reported by Yasunori Goto where one or more of the leading pages\nof a memory section on the 2nd node of one of his systems was\nuninitialized because I believe they coincided with a memory hole.\n\nThat earlier version did not ignore uninitialized pages and determined\nthe nid by considering only the 1st page of each memory section.  This\ncaused the symlink to the 1st memory section on the 2nd node to be\nincorrectly created in /sys/devices/system/node/node0 instead of\n/sys/devices/system/node/node1.  The problem was fixed by adding the\ntest to skip over uninitialized pages.\n\nI suspect we have not seen any reports of the non-removal\nof a symlink due to the incorrect declaration of the nid\nvariable in unregister_mem_sect_under_nodes() because\n  - systems where a memory section could have an uninitialized\n    range of leading pages are probably rare.\n  - memory remove is probably not done very frequently on the\n    systems that are capable of demonstrating the problem.\n  - lingering symlink(s) that should have been removed may\n    have simply gone unnoticed.\n\n[garyhade@us.ibm.com: wrote changelog]\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nCc: Gary Hade \u003cgaryhade@us.ibm.com\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": "43fa90b837eec4e4e79f6b5ef4d2fb99139317f1",
      "old_mode": 33188,
      "old_path": "drivers/base/node.c",
      "new_id": "f8f578a71b25c311c31c27989789d5e2fe53f9ef",
      "new_mode": 33188,
      "new_path": "drivers/base/node.c"
    }
  ]
}
