)]}'
{
  "log": [
    {
      "commit": "c863d835b7cd9a3c08a941d4ae59b8faefa31422",
      "tree": "7adaf842da7d85ec63ff633ab21327e4edce1936",
      "parents": [
        "e930438c42e744ef1f8bfdbb338253c9f384df42"
      ],
      "author": {
        "name": "Bharata B Rao",
        "email": "bharata@linux.vnet.ibm.com",
        "time": "Mon Apr 13 14:40:15 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 15:04:33 2009 -0700"
      },
      "message": "memcg: fix documentation\n\nThe description about various statistics from memory.stat is not accurate\nand confusing at times.\n\nCorrect this along with a few other minor cleanups.\n\nSigned-off-by: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@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"
    },
    {
      "commit": "5341cfab94ec05b8a45726f9fe15e71c0cd9b915",
      "tree": "356a84dcea116446e06bed9b5ab6eb2dc4eb2152",
      "parents": [
        "bdff549ebeff92b1a6952e5501caf16a6f8898c8"
      ],
      "author": {
        "name": "Andrea Righi",
        "email": "righi.andrea@gmail.com",
        "time": "Mon Apr 13 14:39:58 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 15:04:30 2009 -0700"
      },
      "message": "res_counter: update documentation\n\nAfter the introduction of resource counters hierarchies\n(28dbc4b6a01fb579a9441c7b81e3d3413dc452df) the prototypes of\nres_counter_init() and res_counter_charge() have been changed.\n\nKeep the documentation consistent with the actual function prototypes.\n\nSigned-off-by: Andrea Righi \u003crighi.andrea@gmail.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5af8c4e0fac9838428bd718040b664043a05f37c",
      "tree": "75a01d98ed244db45fe3c734c4a81c1a3d92ac37",
      "parents": [
        "46e0bb9c12f4bab539736f1714cbf16600f681ec",
        "577c9c456f0e1371cbade38eaf91ae8e8a308555"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 08 17:25:42 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 08 17:26:00 2009 +0200"
      },
      "message": "Merge commit \u0027v2.6.30-rc1\u0027 into sched/urgent\n\nMerge reason: update to latest upstream to queue up fix\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "811158b147a503fbdf9773224004ffd32002d1fe",
      "tree": "0a11dcfefe721bfc38ea9f1f4a238822dbae0dda",
      "parents": [
        "4e76c5ccd5ac9bd003467d3bb0f49b18572dd4cd",
        "b26e0ed4936b743b693a4cc1413561fa3e4eaf65"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 03 15:24:35 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 03 15:24:35 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (28 commits)\n  trivial: Update my email address\n  trivial: NULL noise: drivers/mtd/tests/mtd_*test.c\n  trivial: NULL noise: drivers/media/dvb/frontends/drx397xD_fw.h\n  trivial: Fix misspelling of \"Celsius\".\n  trivial: remove unused variable \u0027path\u0027 in alloc_file()\n  trivial: fix a pdlfush -\u003e pdflush typo in comment\n  trivial: jbd header comment typo fix for JBD_PARANOID_IOFAIL\n  trivial: wusb: Storage class should be before const qualifier\n  trivial: drivers/char/bsr.c: Storage class should be before const qualifier\n  trivial: h8300: Storage class should be before const qualifier\n  trivial: fix where cgroup documentation is not correctly referred to\n  trivial: Give the right path in Documentation example\n  trivial: MTD: remove EOL from MODULE_DESCRIPTION\n  trivial: Fix typo in bio_split()\u0027s documentation\n  trivial: PWM: fix of #endif comment\n  trivial: fix typos/grammar errors in Kconfig texts\n  trivial: Fix misspelling of firmware\n  trivial: cgroups: documentation typo and spelling corrections\n  trivial: Update contact info for Jochen Hein\n  trivial: fix typo \"resgister\" -\u003e \"register\"\n  ...\n"
    },
    {
      "commit": "0b7f569e45bb6be142d87017030669a6a7d327a1",
      "tree": "8df7877b95c093ebf4cb4e1006cea16f75fc79b7",
      "parents": [
        "81d39c20f5ee2437d71709beb82597e2a38efbbc"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Thu Apr 02 16:57:38 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 02 19:04:55 2009 -0700"
      },
      "message": "memcg: fix OOM killer under memcg\n\nThis patch tries to fix OOM Killer problems caused by hierarchy.\nNow, memcg itself has OOM KILL function (in oom_kill.c) and tries to\nkill a task in memcg.\n\nBut, when hierarchy is used, it\u0027s broken and correct task cannot\nbe killed. For example, in following cgroup\n\n\t/groupA/\thierarchy\u003d1, limit\u003d1G,\n\t\t01\tnolimit\n\t\t02\tnolimit\nAll tasks\u0027 memory usage under /groupA, /groupA/01, groupA/02 is limited to\ngroupA\u0027s 1Gbytes but OOM Killer just kills tasks in groupA.\n\nThis patch provides makes the bad process be selected from all tasks\nunder hierarchy. BTW, currently, oom_jiffies is updated against groupA\nin above case. oom_jiffies of tree should be updated.\n\nTo see how oom_jiffies is used, please check mem_cgroup_oom_called()\ncallers.\n\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: const fix]\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b6719ec1ad54e47e40633b19703f2c1254708842",
      "tree": "3db0fe0ec0a92a006562de9b012d2a89ddce19eb",
      "parents": [
        "66bdc9cfc77ba89a9ee6c82d28375b646ab4bb1d"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Apr 02 16:57:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 02 19:04:54 2009 -0700"
      },
      "message": "cgroups: more documentation for remount and release_agent\n\nThis won\u0027t remove cpuacct from the mounted hierachy:\n # mount -t cgroup -o cpu,cpuacct xxx /mnt\n # mount -o remount,cpu /mnt\n\nBecause for this usage mount(8) will append the new options to the original\noptions.\n\nAnd this will get you right:\n # mount [-t cgroup] -o remount,cpu xxx /mnt\n\nAlso document how to specify or change release_agent.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nReviewd-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ec64f51545fffbc4cb968f0cea56341a4b07e85a",
      "tree": "575d890a6759d81f3324fa2a22ca6ab14a41eefc",
      "parents": [
        "38460b48d06440de46b34cb778bd6c4855030754"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Thu Apr 02 16:57:26 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 02 19:04:54 2009 -0700"
      },
      "message": "cgroup: fix frequent -EBUSY at rmdir\n\nIn following situation, with memory subsystem,\n\n\t/groupA use_hierarchy\u003d\u003d1\n\t\t/01 some tasks\n\t\t/02 some tasks\n\t\t/03 some tasks\n\t\t/04 empty\n\nWhen tasks under 01/02/03 hit limit on /groupA, hierarchical reclaim\nis triggered and the kernel walks tree under groupA. In this case,\nrmdir /groupA/04 fails with -EBUSY frequently because of temporal\nrefcnt from the kernel.\n\nIn general. cgroup can be rmdir\u0027d if there are no children groups and\nno tasks. Frequent fails of rmdir() is not useful to users.\n(And the reason for -EBUSY is unknown to users.....in most cases)\n\nThis patch tries to modify above behavior, by\n\t- retries if css_refcnt is got by someone.\n\t- add \"return value\" to pre_destroy() and allows subsystem to\n\t  say \"we\u0027re really busy!\"\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ef12fefabf94b6a902ad3abd3eb124b00560c445",
      "tree": "07a23161b84b11379691ab36e6c44464d801b9ac",
      "parents": [
        "c5f8d99585d7b5b7e857fabf8aefd0174903a98c"
      ],
      "author": {
        "name": "Bharata B Rao",
        "email": "bharata@linux.vnet.ibm.com",
        "time": "Tue Mar 31 10:02:22 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 01 16:49:38 2009 +0200"
      },
      "message": "cpuacct: add per-cgroup utime/stime statistics\n\nAdd per-cgroup cpuacct controller statistics like the system and user\ntime consumed by the group of tasks.\n\nChangelog:\n\nv7\n- Changed the name of the statistic from utime to user and from stime to\n  system so that in future we could easily add other statistics like irq,\n  softirq, steal times etc easily.\n\nv6\n- Fixed a bug in the error path of cpuacct_create() (pointed by Li Zefan).\n\nv5\n- In cpuacct_stats_show(), use cputime64_to_clock_t() since we are\n  operating on a 64bit variable here.\n\nv4\n- Remove comments in cpuacct_update_stats() which explained why rcu_read_lock()\n  was needed (as per Peter Zijlstra\u0027s review comments).\n- Don\u0027t say that percpu_counter_read() is broken in Documentation/cpuacct.txt\n  as per KAMEZAWA Hiroyuki\u0027s review comments.\n\nv3\n- Fix a small race in the cpuacct hierarchy walk.\n\nv2\n- stime and utime now exported in clock_t units instead of msecs.\n- Addressed the code review comments from Balbir and Li Zefan.\n- Moved to -tip tree.\n\nv1\n- Moved the stime/utime accounting to cpuacct controller.\n\nEarlier versions\n- http://lkml.org/lkml/2009/2/25/129\n\nSigned-off-by: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nSigned-off-by: Balaji Rao \u003cbalajirrao@gmail.com\u003e\nCc: Dhaval Giani \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nTested-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c20090331043222.GA4093@in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "21acb9caa2e30b100e9a1943d995bb99d40f4035",
      "tree": "0c09bde664cb75b0b5e27745628ab458e2472f60",
      "parents": [
        "6d5e147dd034d9ceedc89fe39f4284700944f0c8"
      ],
      "author": {
        "name": "Thadeu Lima de Souza Cascardo",
        "email": "cascardo@holoscopio.com",
        "time": "Wed Feb 04 10:12:08 2009 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 30 15:22:02 2009 +0200"
      },
      "message": "trivial: fix where cgroup documentation is not correctly referred to\n\ncgroup documentation was moved to Documentation/cgroups/. There are some\nplaces that still refer to Documentation/controllers/,\nDocumentation/cgroups.txt and Documentation/cpusets.txt. Fix those.\n\nSigned-off-by: Thadeu Lima de Souza Cascardo \u003ccascardo@holoscopio.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "6d5e147dd034d9ceedc89fe39f4284700944f0c8",
      "tree": "bda23a8be6c8270278050e7227bd67e20d5fc362",
      "parents": [
        "2a7af8ca8bc632a9dc138bff7f88a23fa3e5937a"
      ],
      "author": {
        "name": "Thadeu Lima de Souza Cascardo",
        "email": "cascardo@holoscopio.com",
        "time": "Tue Feb 03 11:57:13 2009 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 30 15:22:02 2009 +0200"
      },
      "message": "trivial: Give the right path in Documentation example\n\nWhile the Documentation example creates /cgroup/test, it removes\n/test/cgroup, which is clearly not the intended path. Change that to\n/cgroup/test.\n\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Thadeu Lima de Souza Cascardo \u003ccascardo@holoscopio.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "caa790ba6cb88dccfab356960d93e2f4e0bd8704",
      "tree": "c022a12722ba2e60a0091736c23f80918d3610fd",
      "parents": [
        "c0496f4ec5f03df3caf2aa384158a78c6adc79c0"
      ],
      "author": {
        "name": "Chris Samuel",
        "email": "chris@csamuel.org",
        "time": "Sat Jan 17 00:01:18 2009 +1100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 30 15:21:58 2009 +0200"
      },
      "message": "trivial: cgroups: documentation typo and spelling corrections\n\nMinor typo and spelling corrections fixed whilst reading\nto learn about cgroups capabilities.\n\nSigned-off-by: Chris Samuel \u003cchris@csamuel.org\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "3fd076dd955a34c35dc456f4ef676e03cdced044",
      "tree": "c3eff65f38b43224d0142d1db1dbd9def0edbd4a",
      "parents": [
        "152de30bced150617e5731a9fe2364c9d04fe26c"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Feb 20 15:38:48 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 20 17:57:49 2009 -0800"
      },
      "message": "cpuset: various documentation fixes and updates\n\nI noticed the old commit 8f5aa26c75b7722e80c0c5c5bb833d41865d7019\n(\"cpusets: update_cpumask documentation fix\") is not a complete fix,\nresulting in inconsistent paragraphs.  This patch fixes it and does other\nfixes and updates:\n\n- s/migrate_all_tasks()/migrate_live_tasks()/\n- describe more cpuset control files\n- s/cpumask_t/struct cpumask/\n- document cpu hotplug and change of \u0027sched_relax_domain_level\u0027 may cause\n  domain rebuild\n- document various ways to query and modify cpusets\n- the equivalent of \"mount -t cpuset\" is \"mount -t cgroup -o cpuset,noprefix\"\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b851ee7921fabdd7dfc96ffc4e9609f5062bd12b",
      "tree": "7f226e34bbb825d3fdb6967f5c4fb77d5983eb06",
      "parents": [
        "b6d6c5175809934e04a606d9193ef04924a7a7d9"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Feb 18 14:48:14 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 15:37:53 2009 -0800"
      },
      "message": "cgroups: update documentation about css_set hash table\n\nThe css_set hash table was introduced in 2.6.26, so update the\ndocumentation accordingly.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8d50d369d1b3ccc4d96ce01f62146173ee7064ca",
      "tree": "e48c19188cb9eba15e73702e0f2e33bd7aba0d84",
      "parents": [
        "85d9fc89fb0f0703df6444f260187c088a8d59ff"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Thu Jan 29 14:25:14 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 29 18:04:44 2009 -0800"
      },
      "message": "memcg: update document to mention that swapoff should be tested\n\nConsidering the recently found problem \"memcg: fix refcnt handling at\nswapoff\", it\u0027s better to mention swapoff behavior in the memcg_test\ndocument.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45ce80fb6b6f9594d1396d44dd7e7c02d596fef8",
      "tree": "2409270f7073c08329ac01c82df0509a264af48c",
      "parents": [
        "23964d2d02984d44aeb2d84d7ffb3359e728df43"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 15 13:50:59 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 15 16:39:37 2009 -0800"
      },
      "message": "cgroups: consolidate cgroup documents\n\nMove Documentation/cpusets.txt and Documentation/controllers/* to\nDocumentation/cgroups/\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "999cd8a450f8f93701669a61cac4d3b19eca07e8",
      "tree": "990e5b08e6db971d2e9943f89abf39e7c8f4cb1e",
      "parents": [
        "b5a84319a4343a0db753436fd8147e61eaafa7ea"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Wed Jan 07 18:08:36 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 08 08:31:10 2009 -0800"
      },
      "message": "cgroups: add a per-subsystem hierarchy_mutex\n\nThese patches introduce new locking/refcount support for cgroups to\nreduce the need for subsystems to call cgroup_lock(). This will\nultimately allow the atomicity of cgroup_rmdir() (which was removed\nrecently) to be restored.\n\nThese three patches give:\n\n1/3 - introduce a per-subsystem hierarchy_mutex which a subsystem can\n     use to prevent changes to its own cgroup tree\n\n2/3 - use hierarchy_mutex in place of calling cgroup_lock() in the\n     memory controller\n\n3/3 - introduce a css_tryget() function similar to the one recently\n      proposed by Kamezawa, but avoiding spurious refcount failures in\n      the event of a race between a css_tryget() and an unsuccessful\n      cgroup_rmdir()\n\nFuture patches will likely involve:\n\n- using hierarchy mutex in place of cgroup_lock() in more subsystems\n where appropriate\n\n- restoring the atomicity of cgroup_rmdir() with respect to cgroup_create()\n\nThis patch:\n\nAdd a hierarchy_mutex to the cgroup_subsys object that protects changes to\nthe hierarchy observed by that subsystem.  It is taken by the cgroup\nsubsystem (in addition to cgroup_mutex) for the following operations:\n\n- linking a cgroup into that subsystem\u0027s cgroup tree\n- unlinking a cgroup from that subsystem\u0027s cgroup tree\n- moving the subsystem to/from a hierarchy (including across the\n  bind() callback)\n\nThus if the subsystem holds its own hierarchy_mutex, it can safely\ntraverse its own hierarchy.\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nTested-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "18e7f1f0d34be4a39f7f47324a3e26b43fddb714",
      "tree": "91ac7e598579b6a2eff140cb1478d198557afc2c",
      "parents": [
        "5cdc38f98596662620b822a4e13f797c3f2f65e0"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Jan 07 18:07:32 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 08 08:31:01 2009 -0800"
      },
      "message": "cgroups: documentation updates\n\n- remove \u0027releasable\u0027 since it has been moved to the debug subsys.\n- update lock requirements of subsys callbacks.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3b1b3f6e57064aa8f91c290fe51cda4c74642902",
      "tree": "2cf60a7bae5f184acbea4bff859be4e4132f9794",
      "parents": [
        "687446760bd008df96655cb8c5900f8e48a7118c"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Nov 12 13:26:50 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 12 17:17:16 2008 -0800"
      },
      "message": "freezer_cg: disable writing freezer.state of root cgroup\n\nWith this change, control file \u0027freezer.state\u0027 doesn\u0027t exist in root\ncgroup, making root cgroup unfreezable.\n\nI think it\u0027s reasonable to disallow freeze tasks in the root cgroup.  And\nthen we can avoid fork overhead when freezer subsystem is compiled but not\nused.\n\nAlso make writing invalid value to freezer.state returns EINVAL rather\nthan EIO.  This is more consistent with other cgroup subsystem.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: \"Serge E. Hallyn\" \u003cserue@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"
    },
    {
      "commit": "bde5ab65581a63e9f4f4bacfae8f201d04d25bed",
      "tree": "b159612b2acc416878a1a80a0aea47f7469163d2",
      "parents": [
        "1aece34833721d64eb33fc15cd923c727296d3d3"
      ],
      "author": {
        "name": "Matt Helsley",
        "email": "matthltc@us.ibm.com",
        "time": "Sat Oct 18 20:27:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:34 2008 -0700"
      },
      "message": "container freezer: document the cgroup freezer subsystem.\n\nDescribe why we need the freezer subsystem and how to use it in a\ndocumentation file.  Since the cgroups.txt file is focused on the\nsubsystem-agnostic portions of cgroups make a directory and move the old\ncgroups.txt file at the same time.\n\nSigned-off-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: containers@lists.linux-foundation.org\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ]
}
