)]}'
{
  "commit": "7e47682ea555e7c1edef1d8fd96e2aa4c12abe59",
  "tree": "6012cbc180ae7d633be4ed2ff1f1f6f7f188c1a0",
  "parents": [
    "d770e558e21961ad6cfdf0ff7df0eb5d7d4f0754"
  ],
  "author": {
    "name": "Aleksa Sarai",
    "email": "cyphar@cyphar.com",
    "time": "Tue Jun 09 21:32:09 2015 +1000"
  },
  "committer": {
    "name": "Tejun Heo",
    "email": "tj@kernel.org",
    "time": "Tue Jul 14 17:29:23 2015 -0400"
  },
  "message": "cgroup: allow a cgroup subsystem to reject a fork\n\nAdd a new cgroup subsystem callback can_fork that conditionally\nstates whether or not the fork is accepted or rejected by a cgroup\npolicy. In addition, add a cancel_fork callback so that if an error\noccurs later in the forking process, any state modified by can_fork can\nbe reverted.\n\nAllow for a private opaque pointer to be passed from cgroup_can_fork to\ncgroup_post_fork, allowing for the fork state to be stored by each\nsubsystem separately.\n\nAlso add a tagging system for cgroup_subsys.h to allow for CGROUP_\u003cTAG\u003e\nenumerations to be be defined and used. In addition, explicitly add a\nCGROUP_CANFORK_COUNT macro to make arrays easier to define.\n\nThis is in preparation for implementing the pids cgroup subsystem.\n\nSigned-off-by: Aleksa Sarai \u003ccyphar@cyphar.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "93755a6292995cd20ec5a3df0528f9a72fbf5616",
      "old_mode": 33188,
      "old_path": "include/linux/cgroup-defs.h",
      "new_id": "83e37d8c4d80fe2f56948ba841728b78b7fe463c",
      "new_mode": 33188,
      "new_path": "include/linux/cgroup-defs.h"
    },
    {
      "type": "modify",
      "old_id": "a593e299162eb0f318f1d9647adfc3c236599661",
      "old_mode": 33188,
      "old_path": "include/linux/cgroup.h",
      "new_id": "a71fe2a3984ef0b6319c09f4e5607ac0d8314664",
      "new_mode": 33188,
      "new_path": "include/linux/cgroup.h"
    },
    {
      "type": "modify",
      "old_id": "e4a96fb14403569928e49db77d5a7ff00b30a9fd",
      "old_mode": 33188,
      "old_path": "include/linux/cgroup_subsys.h",
      "new_id": "ec43bce7e1ea188a3efc365deee55c95546e4eb0",
      "new_mode": 33188,
      "new_path": "include/linux/cgroup_subsys.h"
    },
    {
      "type": "modify",
      "old_id": "f89d9292eee62540ff1c2f81ed0a658cbd279642",
      "old_mode": 33188,
      "old_path": "kernel/cgroup.c",
      "new_id": "a59dd1a6b74a80db6b1568951c66434ec46e66e0",
      "new_mode": 33188,
      "new_path": "kernel/cgroup.c"
    },
    {
      "type": "modify",
      "old_id": "92b98cc0ee7639270d75aa64b59236d3c3283b69",
      "old_mode": 33188,
      "old_path": "kernel/cgroup_freezer.c",
      "new_id": "f1b30ad5dc6d925685f92ecbc0918b7c78018f30",
      "new_mode": 33188,
      "new_path": "kernel/cgroup_freezer.c"
    },
    {
      "type": "modify",
      "old_id": "1bfefc6f96a4ea92507741cf1e935c6dab04c2b1",
      "old_mode": 33188,
      "old_path": "kernel/fork.c",
      "new_id": "40e3af12c55e5c225dda47349890f3c10e1bf68e",
      "new_mode": 33188,
      "new_path": "kernel/fork.c"
    },
    {
      "type": "modify",
      "old_id": "78b4bad10081c6b23894ac1d5d7b6900ab32362a",
      "old_mode": 33188,
      "old_path": "kernel/sched/core.c",
      "new_id": "d811652fe6f598633ca9a955b7aace4fe5b923c5",
      "new_mode": 33188,
      "new_path": "kernel/sched/core.c"
    }
  ]
}
