)]}'
{
  "commit": "14797e2363c2b2f1ce139fd1c5a215e4e05aa1d9",
  "tree": "a56edaa680c7c338a5a3043aa24897d7f668b6c9",
  "parents": [
    "549927620b04a8f8073ce2ee2a8977f209af2ee5"
  ],
  "author": {
    "name": "KOSAKI Motohiro",
    "email": "kosaki.motohiro@jp.fujitsu.com",
    "time": "Wed Jan 07 18:08:18 2009 -0800"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@linux-foundation.org",
    "time": "Thu Jan 08 08:31:08 2009 -0800"
  },
  "message": "memcg: add inactive_anon_is_low()\n\nThe inactive_anon_is_low() is key component of active/inactive anon\nbalancing on reclaim.  However current inactive_anon_is_low() function\nonly consider global reclaim.\n\nTherefore, we need following ugly scan_global_lru() condition.\n\n\tif (lru \u003d\u003d LRU_ACTIVE_ANON \u0026\u0026\n\t    (!scan_global_lru(sc) || inactive_anon_is_low(zone))) {\n\t\tshrink_active_list(nr_to_scan, zone, sc, priority, file);\n\t\treturn 0;\n\nit cause that memcg reclaim always deactivate pages when shrink_list() is\ncalled.  To make mem_cgroup_inactive_anon_is_low() improve active/inactive\nanon balancing of memcgroup.\n\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Cyrill Gorcunov \u003cgorcunov@gmail.com\u003e\nCc: \"Pekka Enberg\" \u003cpenberg@cs.helsinki.fi\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\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\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "59ac95a645085ef552a67490c980dd00a5bde5ac",
      "old_mode": 33188,
      "old_path": "include/linux/memcontrol.h",
      "new_id": "aad9377c98289ebbc4b93588107b439c6d5f8941",
      "new_mode": 33188,
      "new_path": "include/linux/memcontrol.h"
    },
    {
      "type": "modify",
      "old_id": "457d671029b81cf92867955e4ab9edd53aef6e49",
      "old_mode": 33188,
      "old_path": "mm/memcontrol.c",
      "new_id": "6611328460e91a15bbc4d304cadc369cdfb9b600",
      "new_mode": 33188,
      "new_path": "mm/memcontrol.c"
    },
    {
      "type": "modify",
      "old_id": "e2b31a522a664d93c1262ac47e9c3de3b9090129",
      "old_mode": 33188,
      "old_path": "mm/vmscan.c",
      "new_id": "b2bc06bffcfb177697d9125e64763ba92560f985",
      "new_mode": 33188,
      "new_path": "mm/vmscan.c"
    }
  ]
}
