)]}'
{
  "commit": "4508378b9523e22a2a0175d8bf64d932fb10a67d",
  "tree": "f7ebd57322edc18ff91ed7d71236fbbd5633c21c",
  "parents": [
    "1af8efe965676ab30d6c8a5b1fccc9229f339a3b"
  ],
  "author": {
    "name": "KAMEZAWA Hiroyuki",
    "email": "kamezawa.hiroyu@jp.fujitsu.com",
    "time": "Tue Jul 26 16:08:24 2011 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@linux-foundation.org",
    "time": "Tue Jul 26 16:49:42 2011 -0700"
  },
  "message": "memcg: fix vmscan count in small memcgs\n\nCommit 246e87a93934 (\"memcg: fix get_scan_count() for small targets\")\nfixes the memcg/kswapd behavior against small targets and prevent vmscan\npriority too high.\n\nBut the implementation is too naive and adds another problem to small\nmemcg.  It always force scan to 32 pages of file/anon and doesn\u0027t handle\nswappiness and other rotate_info.  It makes vmscan to scan anon LRU\nregardless of swappiness and make reclaim bad.  This patch fixes it by\nadjusting scanning count with regard to swappiness at el.\n\nAt a test \"cat 1G file under 300M limit.\" (swappiness\u003d20)\n before patch\n        scanned_pages_by_limit 360919\n        scanned_anon_pages_by_limit 180469\n        scanned_file_pages_by_limit 180450\n        rotated_pages_by_limit 31\n        rotated_anon_pages_by_limit 25\n        rotated_file_pages_by_limit 6\n        freed_pages_by_limit 180458\n        freed_anon_pages_by_limit 19\n        freed_file_pages_by_limit 180439\n        elapsed_ns_by_limit 429758872\n after patch\n        scanned_pages_by_limit 180674\n        scanned_anon_pages_by_limit 24\n        scanned_file_pages_by_limit 180650\n        rotated_pages_by_limit 35\n        rotated_anon_pages_by_limit 24\n        rotated_file_pages_by_limit 11\n        freed_pages_by_limit 180634\n        freed_anon_pages_by_limit 0\n        freed_file_pages_by_limit 180634\n        elapsed_ns_by_limit 367119089\n        scanned_pages_by_system 0\n\nthe numbers of scanning anon are decreased(as expected), and elapsed time\nreduced. By this patch, small memcgs will work better.\n(*) Because the amount of file-cache is much bigger than anon,\n    recalaim_stat\u0027s rotate-scan counter make scanning files more.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Ying Han \u003cyinghan@google.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": "91cee9dfc501f1575e5f3c5aa7bddfce77a3480a",
      "old_mode": 33188,
      "old_path": "mm/vmscan.c",
      "new_id": "f87702a376d0c50dacdf65d23759445d8c4e4f13",
      "new_mode": 33188,
      "new_path": "mm/vmscan.c"
    }
  ]
}
