)]}'
{
  "commit": "3168ecbe1c04ec3feb7cb42388a17d7f047fe1a2",
  "tree": "b8e0a03d787c2219b1d1fd833193de7abc59442e",
  "parents": [
    "12aee278b50c4a94a93fa0b4d201ae35d792c696"
  ],
  "author": {
    "name": "Johannes Weiner",
    "email": "hannes@cmpxchg.org",
    "time": "Thu Oct 31 16:34:13 2013 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@linux-foundation.org",
    "time": "Thu Oct 31 16:58:13 2013 -0700"
  },
  "message": "mm: memcg: use proper memcg in limit bypass\n\nCommit 84235de394d9 (\"fs: buffer: move allocation failure loop into the\nallocator\") allowed __GFP_NOFAIL allocations to bypass the limit if they\nfail to reclaim enough memory for the charge.  But because the main test\ncase was on a 3.2-based system, the patch missed the fact that on newer\nkernels the charge function needs to return root_mem_cgroup when\nbypassing the limit, and not NULL.  This will corrupt whatever memory is\nat NULL + percpu pointer offset.  Fix this quickly before problems are\nreported.\n\nSigned-off-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nAcked-by: Michal Hocko \u003cmhocko@suse.cz\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": "497ec33ff22d6de772e761c6d13394480b266dc6",
      "old_mode": 33188,
      "old_path": "mm/memcontrol.c",
      "new_id": "623d5c8bb1e16a10807282f0d58fe7aa23a5d3ce",
      "new_mode": 33188,
      "new_path": "mm/memcontrol.c"
    }
  ]
}
