)]}'
{
  "commit": "f517dfe6d161bf37a9355c86ea5cb605b06d5963",
  "tree": "610e29e1cbcd1f50888bcf131390d900f51f82b9",
  "parents": [
    "0938e135aa8513f9bc379a408d3c6c1fd24eb46a"
  ],
  "author": {
    "name": "Naoya Horiguchi",
    "email": "n-horiguchi@ah.jp.nec.com",
    "time": "Wed Jun 12 14:05:04 2013 -0700"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@linuxfoundation.org",
    "time": "Thu Jun 20 11:58:46 2013 -0700"
  },
  "message": "mm: migration: add migrate_entry_wait_huge()\n\ncommit 30dad30922ccc733cfdbfe232090cf674dc374dc upstream.\n\nWhen we have a page fault for the address which is backed by a hugepage\nunder migration, the kernel can\u0027t wait correctly and do busy looping on\nhugepage fault until the migration finishes.  As a result, users who try\nto kick hugepage migration (via soft offlining, for example) occasionally\nexperience long delay or soft lockup.\n\nThis is because pte_offset_map_lock() can\u0027t get a correct migration entry\nor a correct page table lock for hugepage.  This patch introduces\nmigration_entry_wait_huge() to solve this.\n\nSigned-off-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Wanpeng Li \u003cliwanp@linux.vnet.ibm.com\u003e\nReviewed-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "47ead515c81197fc897bc7ef37fead3d9ab4b39f",
      "old_mode": 33188,
      "old_path": "include/linux/swapops.h",
      "new_id": "c5fd30d2a415a48964eb1fb2aaaac0db255656e1",
      "new_mode": 33188,
      "new_path": "include/linux/swapops.h"
    },
    {
      "type": "modify",
      "old_id": "69b21bb9bdbb59813a0b124ff5c9d831f3630660",
      "old_mode": 33188,
      "old_path": "mm/hugetlb.c",
      "new_id": "a69243982a08bc088c08e52c308f066c26435821",
      "new_mode": 33188,
      "new_path": "mm/hugetlb.c"
    },
    {
      "type": "modify",
      "old_id": "37cd07b90da6de61d3f9346bd696eff5ce92172c",
      "old_mode": 33188,
      "old_path": "mm/migrate.c",
      "new_id": "5f588b1f2f6d983ed6deec7ec07b381399ad60e6",
      "new_mode": 33188,
      "new_path": "mm/migrate.c"
    }
  ]
}
