)]}'
{
  "log": [
    {
      "commit": "30e49c263e36341b60b735cbef5ca37912549264",
      "tree": "103e74c41db97476ae38cdd4ffc18e4da03f28e8",
      "parents": [
        "b461cc03828c743aed6b3855b9ab0d39a9d54ec5"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:10 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:39 2007 -0700"
      },
      "message": "pid namespaces: allow cloning of new namespace\n\nWhen clone() is invoked with CLONE_NEWPID, create a new pid namespace and then\ncreate a new struct pid for the new process.  Allocate pid_t\u0027s for the new\nprocess in the new pid namespace and all ancestor pid namespaces.  Make the\nnewly cloned process the session and process group leader.\n\nSince the active pid namespace is special and expected to be the first entry\nin pid-\u003eupid_list, preserve the order of pid namespaces.\n\nThe size of \u0027struct pid\u0027 is dependent on the the number of pid namespaces the\nprocess exists in, so we use multiple pid-caches\u0027.  Only one pid cache is\ncreated during system startup and this used by processes that exist only in\ninit_pid_ns.\n\nWhen a process clones its pid namespace, we create additional pid caches as\nnecessary and use the pid cache to allocate \u0027struct pids\u0027 for that depth.\n\nNote, that with this patch the newly created namespace won\u0027t work, since the\nrest of the kernel still uses global pids, but this is to be fixed soon.  Init\npid namespace still works.\n\n[oleg@tv-sign.ru: merge fix]\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b461cc03828c743aed6b3855b9ab0d39a9d54ec5",
      "tree": "b39ff42df1564adf800d9c4a01ba78ed14f8f9a2",
      "parents": [
        "07543f5c75cee744b791cf7716c69571486fe753"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:09 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:39 2007 -0700"
      },
      "message": "pid namespaces: miscellaneous preparations for pid namespaces\n\n* remove pid.h from pid_namespaces.h;\n* rework is_(cgroup|global)_init;\n* optimize (get|put)_pid_ns for init_pid_ns;\n* declare task_child_reaper to return actual reaper.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "07543f5c75cee744b791cf7716c69571486fe753",
      "tree": "3e0d78f869114e5a6e2629fc157ee8f9023316bd",
      "parents": [
        "425fb2b4bf5dde24be4a82e9a2c344bb49ac92e4"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:39 2007 -0700"
      },
      "message": "pid namespaces: make proc have multiple superblocks - one for each namespace\n\nEach pid namespace have to be visible through its own proc mount.  Thus we\nneed to have per-namespace proc trees with their own superblocks.\n\nWe cannot easily show different pid namespace via one global proc tree, since\neach pid refers to different tasks in different namespaces.  E.g.  pid 1\nrefers to the init task in the initial namespace and to some other task when\nseeing from another namespace.  Moreover - pid, exisintg in one namespace may\nnot exist in the other.\n\nThis approach has one move advantage is that the tasks from the init namespace\ncan see what tasks live in another namespace by reading entries from another\nproc tree.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "198fe21b0a17fe9c68cb519ecc566534b04f122b",
      "tree": "690825669858d0f458fc137e42adf77cdf370ea4",
      "parents": [
        "7af5729474b5b8ad385adadab78d6e723e7655a3"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:06 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:39 2007 -0700"
      },
      "message": "pid namespaces: helpers to find the task by its numerical ids\n\nWhen searching the task by numerical id on may need to find it using global\npid (as it is done now in kernel) or by its virtual id, e.g.  when sending a\nsignal to a task from one namespace the sender will specify the task\u0027s virtual\nid and we should find the task by this value.\n\n[akpm@linux-foundation.org: fix gfs2 linkage]\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7af5729474b5b8ad385adadab78d6e723e7655a3",
      "tree": "197f8da3e7afd65554f0c0a070eb93036b720fa8",
      "parents": [
        "8ef047aaaeb811247a5639c92e2f2ae1221a28dd"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:06 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:39 2007 -0700"
      },
      "message": "pid namespaces: helpers to obtain pid numbers\n\nWhen showing pid to user or getting the pid numerical id for in-kernel use the\nvalue of this id may differ depending on the namespace.\n\nThis set of helpers is used to get the global pid nr, the virtual (i.e.  seen\nby task in its namespace) nr and the nr as it is seen from the specified\nnamespace.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8ef047aaaeb811247a5639c92e2f2ae1221a28dd",
      "tree": "296a61f66daa8ac42b3d77a53d06a97eb71155c9",
      "parents": [
        "faacbfd3a6808bf87d8f353b42eceeaba2c78a47"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:39 2007 -0700"
      },
      "message": "pid namespaces: make alloc_pid(), free_pid() and put_pid() work with struct upid\n\nEach struct upid element of struct pid has to be initialized properly, i.e.\nits nr mst be allocated from appropriate pidmap and ns set to appropriate\nnamespace.\n\nWhen allocating a new pid, we need to know the namespace this pid will live\nin, so the additional argument is added to alloc_pid().\n\nOn the other hand, the rest of the kernel still uses the pid-\u003enr and\npid-\u003epid_chain fields, so these ones are still initialized, but this will be\nremoved soon.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "faacbfd3a6808bf87d8f353b42eceeaba2c78a47",
      "tree": "c05ad8985ec2367550cbb3321934fd0e8e9208d2",
      "parents": [
        "4c3f2ead5a3dff9069a45560ba4d007c8ae2e2ee"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:04 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:38 2007 -0700"
      },
      "message": "pid namespaces: add support for pid namespaces hierarchy\n\nEach namespace has a parent and is characterized by its \"level\".  Level is the\nnumber of the namespace generation.  E.g.  init namespace has level 0, after\ncloning new one it will have level 1, the next one - 2 and so on and so forth.\n This level is not explicitly limited.\n\nTrue hierarchy must have some way to find each namespace\u0027s children, but it is\nnot used in the patches, so this ability is not added (yet).\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4c3f2ead5a3dff9069a45560ba4d007c8ae2e2ee",
      "tree": "ab47621edf01f64485c99cf2cde56762339c86f1",
      "parents": [
        "60347f6716aa49831ac311e04d77ccdc50dc024a"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Thu Oct 18 23:40:03 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:38 2007 -0700"
      },
      "message": "pid namespaces: introduce struct upid\n\nSince task will be visible from different pid namespaces each of them have to\nbe addressed by multiple pids.  struct upid is to store the information about\nwhich id refers to which namespace.\n\nThe constuciton looks like this.  Each struct pid carried the reference\ncounter and the list of tasks attached to this pid.  At its end it has a\nvariable length array of struct upid-s.  Each struct upid has a numerical id\n(pid itself), pointer to the namespace, this ID is valid in and is hashed into\na pid_hash for searching the pids.\n\nThe nr and pid_chain fields are kept in struct pid for a while to make kernel\nstill work (no patch initialize the upids yet), but it will be removed at the\nend of this series when we switch to upids completely.\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "60347f6716aa49831ac311e04d77ccdc50dc024a",
      "tree": "82e666fef22f43550da42ad368a61a5e9a59ef96",
      "parents": [
        "8bf9725c29f2589237dd696d06a204230add0ba3"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:03 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:38 2007 -0700"
      },
      "message": "pid namespaces: prepare proc_flust_task() to flush entries from multiple proc trees\n\nThe first part is trivial - we just make the proc_flush_task() to operate on\narbitrary vfsmount with arbitrary ids and pass the pid and global proc_mnt to\nit.\n\nThe other change is more tricky: I moved the proc_flush_task() call in\nrelease_task() higher to address the following problem.\n\nWhen flushing task from many proc trees we need to know the set of ids (not\njust one pid) to find the dentries\u0027 names to flush.  Thus we need to pass the\ntask\u0027s pid to proc_flush_task() as struct pid is the only object that can\nprovide all the pid numbers.  But after __exit_signal() task has detached all\nhis pids and this information is lost.\n\nThis creates a tiny gap for proc_pid_lookup() to bring some dentries back to\ntree and keep them in hash (since pids are still alive before __exit_signal())\ntill the next shrink, but since proc_flush_task() does not provide a 100%\nguarantee that the dentries will be flushed, this is OK to do so.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8bf9725c29f2589237dd696d06a204230add0ba3",
      "tree": "abe1a29924a592808250121435dcd12789336e8a",
      "parents": [
        "2e4a707269a409950c3f315010c20f9719c594e2"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:02 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:38 2007 -0700"
      },
      "message": "pid namespaces: introduce MS_KERNMOUNT flag\n\nThis flag tells the .get_sb callback that this is a kern_mount() call so that\nit can trust *data pointer to be valid in-kernel one.  If this flag is passed\nfrom the user process, it is cleared since the *data pointer is not a valid\nkernel object.\n\nRunning a few steps forward - this will be needed for proc to create the\nsuperblock and store a valid pid namespace on it during the namespace\ncreation.  The reason, why the namespace cannot live without proc mount is\ndescribed in the appropriate patch.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4e6045f134784f4b158b3c0f7a282b04bd816887",
      "tree": "3304628f666c8524accd10f40da48cfba8b08608",
      "parents": [
        "cf7b708c8d1d7a27736771bcf4c457b332b0f818"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Oct 18 23:39:55 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:38 2007 -0700"
      },
      "message": "workqueue: debug flushing deadlocks with lockdep\n\nIn the following scenario:\n\ncode path 1:\n  my_function() -\u003e lock(L1); ...; flush_workqueue(); ...\n\ncode path 2:\n  run_workqueue() -\u003e my_work() -\u003e ...; lock(L1); ...\n\nyou can get a deadlock when my_work() is queued or running\nbut my_function() has acquired L1 already.\n\nThis patch adds a pseudo-lock to each workqueue to make lockdep\nwarn about this scenario.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cf7b708c8d1d7a27736771bcf4c457b332b0f818",
      "tree": "10f80257b052313b283f18ddfe35145882e0b47f",
      "parents": [
        "a6f5e06378970a2687332c2d54046245fcff1e7e"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:39:54 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:37 2007 -0700"
      },
      "message": "Make access to task\u0027s nsproxy lighter\n\nWhen someone wants to deal with some other taks\u0027s namespaces it has to lock\nthe task and then to get the desired namespace if the one exists.  This is\nslow on read-only paths and may be impossible in some cases.\n\nE.g.  Oleg recently noticed a race between unshare() and the (sent for\nreview in cgroups) pid namespaces - when the task notifies the parent it\nhas to know the parent\u0027s namespace, but taking the task_lock() is\nimpossible there - the code is under write locked tasklist lock.\n\nOn the other hand switching the namespace on task (daemonize) and releasing\nthe namespace (after the last task exit) is rather rare operation and we\ncan sacrifice its speed to solve the issues above.\n\nThe access to other task namespaces is proposed to be performed\nlike this:\n\n     rcu_read_lock();\n     nsproxy \u003d task_nsproxy(tsk);\n     if (nsproxy !\u003d NULL) {\n             / *\n               * work with the namespaces here\n               * e.g. get the reference on one of them\n               * /\n     } / *\n         * NULL task_nsproxy() means that this task is\n         * almost dead (zombie)\n         * /\n     rcu_read_unlock();\n\nThis patch has passed the review by Eric and Oleg :) and,\nof course, tested.\n\n[clg@fr.ibm.com: fix unshare()]\n[ebiederm@xmission.com: Update get_net_ns_by_pid]\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Cedric Le Goater \u003cclg@fr.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": "b460cbc581a53cc088ceba80608021dd49c63c43",
      "tree": "83c28d0adbc15f4157c77b40fa60c40a71cb8673",
      "parents": [
        "3743ca05ff464b8a9e345c08a6c9ce30485f9805"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Thu Oct 18 23:39:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:37 2007 -0700"
      },
      "message": "pid namespaces: define is_global_init() and is_container_init()\n\nis_init() is an ambiguous name for the pid\u003d\u003d1 check.  Split it into\nis_global_init() and is_container_init().\n\nA cgroup init has it\u0027s tsk-\u003epid \u003d\u003d 1.\n\nA global init also has it\u0027s tsk-\u003epid \u003d\u003d 1 and it\u0027s active pid namespace\nis the init_pid_ns.  But rather than check the active pid namespace,\ncompare the task structure with \u0027init_pid_ns.child_reaper\u0027, which is\ninitialized during boot to the /sbin/init process and never changes.\n\nChangelog:\n\n\t2.6.22-rc4-mm2-pidns1:\n\t- Use \u0027init_pid_ns.child_reaper\u0027 to determine if a given task is the\n\t  global init (/sbin/init) process. This would improve performance\n\t  and remove dependence on the task_pid().\n\n\t2.6.21-mm2-pidns2:\n\n\t- [Sukadev Bhattiprolu] Changed is_container_init() calls in {powerpc,\n\t  ppc,avr32}/traps.c for the _exception() call to is_global_init().\n\t  This way, we kill only the cgroup if the cgroup\u0027s init has a\n\t  bug rather than force a kernel panic.\n\n[akpm@linux-foundation.org: fix comment]\n[sukadev@us.ibm.com: Use is_global_init() in arch/m32r/mm/fault.c]\n[bunk@stusta.de: kernel/pid.c: remove unused exports]\n[sukadev@us.ibm.com: Fix capability.c to work with threaded init]\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nAcked-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Herbert Poetzel \u003cherbert@13thfloor.at\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "88f21d818255bc61c002478d21caf52f8a9b8def",
      "tree": "de16e38862622b3d295f7850cdb006922307fb8d",
      "parents": [
        "2894d650cd9715d00ca196c711265819ef6ebd2d"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Thu Oct 18 23:39:50 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:37 2007 -0700"
      },
      "message": "pid namespaces: rename child_reaper() function\n\nRename the child_reaper() function to task_child_reaper() to be similar to\nother task_* functions and to distinguish the function from \u0027struct\npid_namspace.child_reaper\u0027.\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Pavel Emelianov \u003cxemul@openvz.org\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Herbert Poetzel \u003cherbert@13thfloor.at\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2894d650cd9715d00ca196c711265819ef6ebd2d",
      "tree": "dbfe07c3276c2b6aa7d9a4be633da7fa1e12d97b",
      "parents": [
        "baf8f0f82dd79e374bf6fa9e996393df2bae3c21"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Thu Oct 18 23:39:49 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:37 2007 -0700"
      },
      "message": "pid namespaces: define and use task_active_pid_ns() wrapper\n\nWith multiple pid namespaces, a process is known by some pid_t in every\nancestor pid namespace.  Every time the process forks, the child process also\ngets a pid_t in every ancestor pid namespace.\n\nWhile a process is visible in \u003e\u003d1 pid namespaces, it can see pid_t\u0027s in only\none pid namespace.  We call this pid namespace it\u0027s \"active pid namespace\",\nand it is always the youngest pid namespace in which the process is known.\n\nThis patch defines and uses a wrapper to find the active pid namespace of a\nprocess.  The implementation of the wrapper will be changed in when support\nfor multiple pid namespaces are added.\n\nChangelog:\n\t2.6.22-rc4-mm2-pidns1:\n\t- [Pavel Emelianov, Alexey Dobriyan] Back out the change to use\n\t  task_active_pid_ns() in child_reaper() since task-\u003ensproxy\n\t  can be NULL during task exit (so child_reaper() continues to\n\t  use init_pid_ns).\n\n\t  to implement child_reaper() since init_pid_ns.child_reaper to\n\t  implement child_reaper() since tsk-\u003ensproxy can be NULL during exit.\n\n\t2.6.21-rc6-mm1:\n\t- Rename task_pid_ns() to task_active_pid_ns() to reflect that a\n\t  process can have multiple pid namespaces.\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nAcked-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Herbert Poetzel \u003cherbert@13thfloor.at\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "baf8f0f82dd79e374bf6fa9e996393df2bae3c21",
      "tree": "2cf18de413871812527147cd8fbf32d1dbbe7bee",
      "parents": [
        "a05f7b15deb2903d9f0b5df33ddd4d186d5ecac1"
      ],
      "author": {
        "name": "Pavel Emelianov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:39:48 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:37 2007 -0700"
      },
      "message": "pid namespaces: dynamic kmem cache allocator for pid namespaces\n\nAdd kmem_cache to pid_namespace to allocate pids from.\n\nSince both implementations expand the struct pid to carry more numerical\nvalues each namespace should have separate cache to store pids of different\nsizes.\n\nEach kmem cache is name \"pid_\u003cNR\u003e\", where \u003cNR\u003e is the number of numerical ids\non the pid.  Different namespaces with same level of nesting will have same\ncaches.\n\nThis patch has two FIXMEs that are to be fixed after we reach the consensus\nabout the struct pid itself.\n\nThe first one is that the namespace to free the pid from in free_pid() must be\ntaken from pid.  Now the init_pid_ns is used.\n\nThe second FIXME is about the cache allocation.  When we do know how long the\nobject will be then we\u0027ll have to calculate this size in create_pid_cachep.\nRight now the sizeof(struct pid) value is used.\n\n[akpm@linux-foundation.org: coding-style repair]\nSigned-off-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nAcked-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nAcked-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a05f7b15deb2903d9f0b5df33ddd4d186d5ecac1",
      "tree": "559d774c0e31d61396b32a86558a3f4c9711b658",
      "parents": [
        "a47afb0f9d794d525a372c8d69902147cc88222a"
      ],
      "author": {
        "name": "Pavel Emelianov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:39:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:37 2007 -0700"
      },
      "message": "pid namespaces: make get_pid_ns() return the namespace itself\n\nMake get_pid_ns() return the namespace itself to look like the other getters\nand make the code using it look nicer.\n\nSigned-off-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nAcked-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@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": "a47afb0f9d794d525a372c8d69902147cc88222a",
      "tree": "7bd67280e2edc1c3b1803d4a93bee794088e9342",
      "parents": [
        "858d72ead4864da0fb0b89b919524125ce998e27"
      ],
      "author": {
        "name": "Pavel Emelianov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:39:46 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:37 2007 -0700"
      },
      "message": "pid namespaces: round up the API\n\nThe set of functions process_session, task_session, process_group and\ntask_pgrp is confusing, as the names can be mixed with each other when looking\nat the code for a long time.\n\nThe proposals are to\n* equip the functions that return the integer with _nr suffix to\n  represent that fact,\n* and to make all functions work with task (not process) by making\n  the common prefix of the same name.\n\nFor monotony the routines signal_session() and set_signal_session() are\nreplaced with task_session_nr() and set_task_session(), especially since they\nare only used with the explicit task-\u003esignal dereference.\n\nSigned-off-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nAcked-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@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": "858d72ead4864da0fb0b89b919524125ce998e27",
      "tree": "19ea321ca3b505efecb2053a829daf89a6a22529",
      "parents": [
        "846c7bb055747989891f5cd2bb6e8d56243ba1e7"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Thu Oct 18 23:39:45 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:37 2007 -0700"
      },
      "message": "cgroups: implement namespace tracking subsystem\n\nWhen a task enters a new namespace via a clone() or unshare(), a new cgroup\nis created and the task moves into it.\n\nThis version names cgroups which are automatically created using\ncgroup_clone() as \"node_\u003cpid\u003e\" where pid is the pid of the unsharing or\ncloned process.  (Thanks Pavel for the idea) This is safe because if the\nprocess unshares again, it will create\n\n\t/cgroups/(...)/node_\u003cpid\u003e/node_\u003cpid\u003e\n\nThe only possibilities (AFAICT) for a -EEXIST on unshare are\n\n\t1. pid wraparound\n\t2. a process fails an unshare, then tries again.\n\nCase 1 is unlikely enough that I ignore it (at least for now).  In case 2, the\nnode_\u003cpid\u003e will be empty and can be rmdir\u0027ed to make the subsequent unshare()\nsucceed.\n\nChangelog:\n\tName cloned cgroups as \"node_\u003cpid\u003e\".\n\n[clg@fr.ibm.com: fix order of cgroup subsystems in init/Kconfig]\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Cedric Le Goater \u003cclg@fr.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": "846c7bb055747989891f5cd2bb6e8d56243ba1e7",
      "tree": "e044041366efa8298157c4ae86615d68d30dd6d2",
      "parents": [
        "c2e2c7fa1cb2cf2b114a6c9bc132b6601db5a7c8"
      ],
      "author": {
        "name": "Balbir Singh",
        "email": "balbir@linux.vnet.ibm.com",
        "time": "Thu Oct 18 23:39:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Add cgroupstats\n\nThis patch is inspired by the discussion at\nhttp://lkml.org/lkml/2007/4/11/187 and implements per cgroup statistics\nas suggested by Andrew Morton in http://lkml.org/lkml/2007/4/11/263.  The\npatch is on top of 2.6.21-mm1 with Paul\u0027s cgroups v9 patches (forward\nported)\n\nThis patch implements per cgroup statistics infrastructure and re-uses\ncode from the taskstats interface.  A new set of cgroup operations are\nregistered with commands and attributes.  It should be very easy to\n*extend* per cgroup statistics, by adding members to the cgroupstats\nstructure.\n\nThe current model for cgroupstats is a pull, a push model (to post\nstatistics on interesting events), should be very easy to add.  Currently\nuser space requests for statistics by passing the cgroup file\ndescriptor.  Statistics about the state of all the tasks in the cgroup\nis returned to user space.\n\nTODO\u0027s/NOTE:\n\nThis patch provides an infrastructure for implementing cgroup statistics.\nBased on the needs of each controller, we can incrementally add more statistics,\nevent based support for notification of statistics, accumulation of taskstats\ninto cgroup statistics in the future.\n\nSample output\n\n# ./cgroupstats -C /cgroup/a\nsleeping 2, blocked 0, running 1, stopped 0, uninterruptible 0\n\n# ./cgroupstats -C /cgroup/\nsleeping 154, blocked 0, running 0, stopped 0, uninterruptible 0\n\nIf the approach looks good, I\u0027ll enhance and post the user space utility for\nthe same\n\nFeedback, comments, test results are always welcome!\n\n[akpm@linux-foundation.org: build fix]\nSigned-off-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: Jay Lan \u003cjlan@engr.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "006cb99200a38a8e3b0cbc1be48035a08921e601",
      "tree": "9bbbc71000469f94dbd4fbc04b4fb2ff8777604b",
      "parents": [
        "62d0df64065e7c135d0002f069444fbdfc64768f"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:43 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Task Control Groups: simple task cgroup debug info subsystem\n\nThis example subsystem exports debugging information as an aid to diagnosing\nrefcount leaks, etc, in the cgroup framework.\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.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": "62d0df64065e7c135d0002f069444fbdfc64768f",
      "tree": "9087bf336182ab9c619460ba2370a223200179bc",
      "parents": [
        "8793d854edbc2774943a4b0de3304dc73991159a"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:42 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Task Control Groups: example CPU accounting subsystem\n\nThis example demonstrates how to use the generic cgroup subsystem for a\nsimple resource tracker that counts, for the processes in a cgroup, the\ntotal CPU time used and the %CPU used in the last complete 10 second interval.\n\nPortions contributed by Balbir Singh \u003cbalbir@in.ibm.com\u003e\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.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": "8793d854edbc2774943a4b0de3304dc73991159a",
      "tree": "380b3403a0fedfcce61d9af5af1ffbcc71017abf",
      "parents": [
        "81a6a5cdd2c5cd70874b88afe524ab09e9e869af"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:39 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Task Control Groups: make cpusets a client of cgroups\n\nRemove the filesystem support logic from the cpusets system and makes cpusets\na cgroup subsystem\n\nThe \"cpuset\" filesystem becomes a dummy filesystem; attempts to mount it get\npassed through to the cgroup filesystem with the appropriate options to\nemulate the old cpuset filesystem behaviour.\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.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": "81a6a5cdd2c5cd70874b88afe524ab09e9e869af",
      "tree": "ba46c47a0692b687a96e52e61bfda4f14457017f",
      "parents": [
        "817929ec274bcfe771586d338bb31d1659615686"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:38 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Task Control Groups: automatic userspace notification of idle cgroups\n\nAdd the following files to the cgroup filesystem:\n\nnotify_on_release - configures/reports whether the cgroup subsystem should\nattempt to run a release script when this cgroup becomes unused\n\nrelease_agent - configures/reports the release agent to be used for this\nhierarchy (top level in each hierarchy only)\n\nreleasable - reports whether this cgroup would have been auto-released if\nnotify_on_release was true and a release agent was configured (mainly useful\nfor debugging)\n\nTo avoid locking issues, invoking the userspace release agent is done via a\nworkqueue task; cgroups that need to have their release agents invoked by\nthe workqueue task are linked on to a list.\n\n[pj@sgi.com: Need to include kmod.h]\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "817929ec274bcfe771586d338bb31d1659615686",
      "tree": "5a96ed1afd308016e8720437a00bf2f114e907cb",
      "parents": [
        "a424316ca154317367c7ddf89997d1c80e4a8051"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Task Control Groups: shared cgroup subsystem group arrays\n\nReplace the struct css_set embedded in task_struct with a pointer; all tasks\nthat have the same set of memberships across all hierarchies will share a\ncss_set object, and will be linked via their css_sets field to the \"tasks\"\nlist_head in the css_set.\n\nAssuming that many tasks share the same cgroup assignments, this reduces\noverall space usage and keeps the size of the task_struct down (three pointers\nadded to task_struct compared to a non-cgroups kernel, no matter how many\nsubsystems are registered).\n\n[akpm@linux-foundation.org: fix a printk]\n[akpm@linux-foundation.org: build fix]\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: 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": "a424316ca154317367c7ddf89997d1c80e4a8051",
      "tree": "ed349926c41aad5be6d62c9074ff72a0d9ac32c2",
      "parents": [
        "697f41610863c9264a7ae26dac9a387c9dda8c84"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:35 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Task Control Groups: add procfs interface\n\nAdd:\n\n/proc/cgroups - general system info\n\n/proc/*/cgroup - per-task cgroup membership info\n\n[a.p.zijlstra@chello.nl: cgroups: bdi init hooks]\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "697f41610863c9264a7ae26dac9a387c9dda8c84",
      "tree": "9d4321f93abe36920a8e9d5239d120803f6cabbc",
      "parents": [
        "b4f48b6363c81ca743ef46943ef23fd72e60f679"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:34 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Task Control Groups: add cgroup_clone() interface\n\nAdd support for cgroup_clone(), a way to create new cgroups intended to\nbe used for systems such as namespace unsharing.  A new subsystem callback,\npost_clone(), is added to allow subsystems to automatically configure cloned\ncgroups.\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.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": "b4f48b6363c81ca743ef46943ef23fd72e60f679",
      "tree": "40437b78e2d7a7d9d71e7bd63bc96e1ad02daa94",
      "parents": [
        "355e0c48b757b7fcc79ccb98fda8105ed37a1598"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:33 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Task Control Groups: add fork()/exit() hooks\n\nThis adds the necessary hooks to the fork() and exit() paths to ensure\nthat new children inherit their parent\u0027s cgroup assignments, and that\nexiting processes release reference counts on their cgroups.\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.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": "355e0c48b757b7fcc79ccb98fda8105ed37a1598",
      "tree": "f9687961979a808e46620f4bdf9af05de2fd68e2",
      "parents": [
        "bbcb81d09104f0d440974b994c1fc508ccbe9503"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:33 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Add cgroup write_uint() helper method\n\nAdd write_uint() helper method for cgroup subsystems\n\nThis helper is analagous to the read_uint() helper method for\nreporting u64 values to userspace. It\u0027s designed to reduce the amount\nof boilerplate requierd for creating new cgroup subsystems.\n\nSigned-off-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": "bbcb81d09104f0d440974b994c1fc508ccbe9503",
      "tree": "6d9ef3e2c611bb0a8f63519196f7bd7725b7ea1a",
      "parents": [
        "ddbcc7e8e50aefe467c01cac3dec71f118cd8ac2"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:32 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Task Control Groups: add tasks file interface\n\nAdd the per-directory \"tasks\" file for cgroupfs mounts; this allows the\nuser to determine which tasks are members of a cgroup by reading a\ncgroup\u0027s \"tasks\", and to move a task into a cgroup by writing its pid to\nits \"tasks\".\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.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": "ddbcc7e8e50aefe467c01cac3dec71f118cd8ac2",
      "tree": "0881a031e669582f819d572339e955b04abfc3d2",
      "parents": [
        "55a230aae650157720becc09cadb7d10efbf5013"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:30 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Task Control Groups: basic task cgroup framework\n\nGeneric Process Control Groups\n--------------------------\n\nThere have recently been various proposals floating around for\nresource management/accounting and other task grouping subsystems in\nthe kernel, including ResGroups, User BeanCounters, NSProxy\ncgroups, and others.  These all need the basic abstraction of being\nable to group together multiple processes in an aggregate, in order to\ntrack/limit the resources permitted to those processes, or control\nother behaviour of the processes, and all implement this grouping in\ndifferent ways.\n\nThis patchset provides a framework for tracking and grouping processes\ninto arbitrary \"cgroups\" and assigning arbitrary state to those\ngroupings, in order to control the behaviour of the cgroup as an\naggregate.\n\nThe intention is that the various resource management and\nvirtualization/cgroup efforts can also become task cgroup\nclients, with the result that:\n\n- the userspace APIs are (somewhat) normalised\n\n- it\u0027s easier to test e.g. the ResGroups CPU controller in\n conjunction with the BeanCounters memory controller, or use either of\nthem as the resource-control portion of a virtual server system.\n\n- the additional kernel footprint of any of the competing resource\n management systems is substantially reduced, since it doesn\u0027t need\n to provide process grouping/containment, hence improving their\n chances of getting into the kernel\n\nThis patch:\n\nAdd the main task cgroups framework - the cgroup filesystem, and the\nbasic structures for tracking membership and associating subsystem state\nobjects to tasks.\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.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": "8f731f7d83d6c6a3eeb32cce79bfcddbf7fac8cc",
      "tree": "706de5d8801259311a7a3b3987bc3b6e6511637d",
      "parents": [
        "cb680c1be62e9898fc2ca2a89d9fdba7c84a5c81"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu Oct 18 23:39:28 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:35 2007 -0700"
      },
      "message": "kernel-api docbook: fix content problems\n\nFix kernel-api docbook contents problems.\n\ndocproc: linux-2.6.23-git13/include/asm-x86/unaligned_32.h: No such file or directory\nWarning(linux-2.6.23-git13//include/linux/list.h:482): bad line: \t\t\tof list entry\nWarning(linux-2.6.23-git13//mm/filemap.c:864): No description found for parameter \u0027ra\u0027\nWarning(linux-2.6.23-git13//block/ll_rw_blk.c:3760): No description found for parameter \u0027req\u0027\nWarning(linux-2.6.23-git13//include/linux/input.h:1077): No description found for parameter \u0027private\u0027\nWarning(linux-2.6.23-git13//include/linux/input.h:1077): No description found for parameter \u0027cdev\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: WU Fengguang \u003cwfg@mail.ustc.edu.cn\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cb680c1be62e9898fc2ca2a89d9fdba7c84a5c81",
      "tree": "967eba31bdb120305697f5d0292964abead07962",
      "parents": [
        "4d20851d3757ba5bece263a4c8c5a2bd4983cb5d"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Thu Oct 18 23:39:27 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:35 2007 -0700"
      },
      "message": "reiserfs: ignore on disk s_bmap_nr value\n\nImplement support for file systems larger than 8 TiB.\n\nThe reiserfs superblock contains a 16 bit value for counting the number of\nbitmap blocks.  The rest of the disk format supports file systems up to 2^32\nblocks, but the bitmap block limitation artificially limits this to 8 TiB with\na 4KiB block size.\n\nRather than trust the superblock\u0027s 16-bit bitmap block count, we calculate it\ndynamically based on the number of blocks in the file system.  When an\nincorrect value is observed in the superblock, it is zeroed out, ensuring that\nolder kernels will not be able to mount the file system.\n\nUserspace support has already been implemented and shipped in reiserfsprogs\n3.6.20.\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4d20851d3757ba5bece263a4c8c5a2bd4983cb5d",
      "tree": "ac89f9cf860801675e587c38c39fd9e6bd2204da",
      "parents": [
        "3ee1667042c350003b9d3f35e5666cc8c43ce8aa"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Thu Oct 18 23:39:26 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:35 2007 -0700"
      },
      "message": "reiserfs: remove first_zero_hint\n\nThe first_zero_hint metadata caching was never actually used, and it\u0027s of\ndubious optimization quality.  This patch removes it.\n\nIt doesn\u0027t actually shrink the size of the reiserfs_bitmap_info struct, since\nthat doesn\u0027t work with block sizes larger than 8K.  There was a big fixme in\nthere, and with all the work lately in allowing block size \u003e page size, I\nmight as well kill the fixme as well.\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ee1667042c350003b9d3f35e5666cc8c43ce8aa",
      "tree": "331217461b684c298397d7347431c500c5969148",
      "parents": [
        "6c57c2c8d3862c8d5b908669654f6565da74ec19"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Thu Oct 18 23:39:25 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:35 2007 -0700"
      },
      "message": "reiserfs: fix usage of signed ints for block numbers\n\nDo a quick signedness check for block numbers.  There are a number of places\nwhere signed integers are used for block numbers, which limits the usable file\nsystem size to 8 TiB.  The disk format, excepting a problem which will be\nfixed in the following patch, supports file systems up to 16 TiB in size.\nThis patch cleans up those sites so that we can enable the full usable size.\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c2a9159cdd8b334a0dfaf69d8b07cd57b5272baa",
      "tree": "5a1d45afd49cd11d488173f6351bcfe432c2139a",
      "parents": [
        "1c099244485ff8bb93c2cd41304a445adc7f54e6"
      ],
      "author": {
        "name": "Jose R. Santos",
        "email": "jrs@us.ibm.com",
        "time": "Thu Oct 18 23:39:22 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:35 2007 -0700"
      },
      "message": "jbd: config_jbd_debug cannot create /proc entry\n\nThe jbd-debug file used to be located in /proc/sys/fs/jbd-debug, but\ncreate_proc_entry() does not do lookups on file names that are more that\none directory deep.  This causes the entry creation to fail and hence, no\nproc file is created.\n\nInstead of fixing this on procfs might as well move the jbd2-debug file to\ndebugfs which would be the preferred location for this kind of tunable.\nThe new location is now /sys/kernel/debug/jbd/jbd-debug.\n\n[akpm@linux-foundation.org: zillions of cleanups]\nSigned-off-by: Jose R. Santos \u003cjrs@us.ibm.com\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1c099244485ff8bb93c2cd41304a445adc7f54e6",
      "tree": "f507d266b76162bdee29ce1f0d32296fb0ca46ab",
      "parents": [
        "8c3478a523a48470eb11a23f01249250684677d9"
      ],
      "author": {
        "name": "Chris Snook",
        "email": "csnook@redhat.com",
        "time": "Thu Oct 18 23:39:21 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:34 2007 -0700"
      },
      "message": "jbd: remove printk() from J_ASSERT macros\n\nRemove printk from J_ASSERT to preserve registers during BUG.\n\nSigned-off-by: Chris Snook \u003ccsnook@redhat.com\u003e\nCc: \"Stephen C. Tweedie\" \u003csct@redhat.com\u003e\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b293d758470e971253eec42b817bc9ef1213b228",
      "tree": "aafc6011762436cf3076798fee7140145908852c",
      "parents": [
        "fe9d4f576324999ac521c931f3b3eee0c8e45544"
      ],
      "author": {
        "name": "Samuel Thibault",
        "email": "samuel.thibault@ens-lyon.org",
        "time": "Thu Oct 18 23:39:17 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:34 2007 -0700"
      },
      "message": "Console events and accessibility\n\nSome external modules like Speakup need to monitor console output.\n\nThis adds a VT notifier that such modules can use to get console output events:\nallocation, deallocation, writes, other updates (cursor position, switch, etc.)\n\n[akpm@linux-foundation.org: fix headers_check]\nSigned-off-by: Samuel Thibault \u003csamuel.thibault@ens-lyon.org\u003e\nCc: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fe9d4f576324999ac521c931f3b3eee0c8e45544",
      "tree": "8ff6ad770e15e81d00c87b945cb60326f28aee6b",
      "parents": [
        "3ed75eb8f1cd89565966599c4f77d2edb086d5b0"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Thu Oct 18 23:39:16 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:34 2007 -0700"
      },
      "message": "Add kernel/notifier.c\n\nThere is separate notifier header, but no separate notifier .c file.\n\nExtract notifier code out of kernel/sys.c which will remain for\nmisc syscalls I hope. Merge kernel/die_notifier.c into kernel/notifier.c.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "41ab4396e19fba338baf28044d3e48385744b930",
      "tree": "b817fc991bfef4b3d84e76f4793e1483ed4d4238",
      "parents": [
        "c18479fe017b9d3b65b7682f2b9e711389441186"
      ],
      "author": {
        "name": "Samuel Thibault",
        "email": "samuel.thibault@ens-lyon.org",
        "time": "Thu Oct 18 23:39:12 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:33 2007 -0700"
      },
      "message": "Console keyboard events and accessibility\n\nSome blind people use a kernel engine called Speakup which uses hardware\nsynthesis to speak what gets displayed on the screen.  They use the\nPC keyboard to control this engine (start/stop, accelerate, ...) and\nalso need to get keyboard feedback (to make sure to know what they are\ntyping, the caps lock status, etc.)\n\nUp to now, the way it was done was very ugly.  Below is a patch to add a\nnotifier list for permitting a far better implementation, see ChangeLog\nabove for details.\n\nYou may wonder why this can\u0027t be done at the input layer.  The problem\nis that what people want to monitor is the console keyboard, i.e. all\ninput keyboards that got attached to the console, and with the currently\nactive keymap (i.e. keysyms, not only keycodes).\n\nThis adds a keyboard notifier that such modules can use to get the keyboard\nevents and possibly eat them, at several stages:\n\n- keycodes: even before translation into keysym.\n- unbound keycodes: when no keysym is bound.\n- unicode: when the keycode would get translated into a unicode character.\n- keysym: when the keycode would get translated into a keysym.\n- post_keysym: after the keysym got interpreted, so as to see the result\n  (caps lock, etc.)\n\nThis also provides access to k_handler so as to permit simulation of\nkeypresses.\n\n[akpm@linux-foundation.org: various fixes]\nSigned-off-by: Samuel Thibault \u003csamuel.thibault@ens-lyon.org\u003e\nCc: Jiri Kosina \u003cjkosina@suse.cz\u003e\nCc: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c18479fe017b9d3b65b7682f2b9e711389441186",
      "tree": "510d56a218d4542e337368276ada7e2c5482cee3",
      "parents": [
        "50899561aa15b9227009ae40e58852c32fc81944"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Thu Oct 18 23:39:11 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:33 2007 -0700"
      },
      "message": "put declaration of put_filesystem() in fs.h\n\nDeclarations go into headers.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: Ram Pai \u003clinuxram@us.ibm.com\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4fa4d23fa20de67df919030c1216295664866ad7",
      "tree": "90e80f8a40665a351950ef25ab9de85b3647a23a",
      "parents": [
        "a9e82d3a02247af6b729be0a963862d70cb25bf9",
        "4f1e5ba0977570b7a198bb3ac110ccc5f532821b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 19:31:54 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 19:31:54 2007 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6\n\n* \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:\n  pcnet32: remove private net_device_stats structure\n  vortex_up should initialize \"err\"\n  pcnet32: remove compile warnings in non-napi mode\n  pcnet32: fix non-napi packet reception\n  fix EMAC driver for proper napi_synchronize API\n  sky2: shutdown cleanup\n  napi_synchronize: waiting for NAPI\n  forcedeth msi bugfix\n  gianfar: fix obviously wrong #ifdef CONFIG_GFAR_NAPI placement\n  fs_enet: Update for API changes\n  gianfar: remove orphan struct.\n  forcedeth: fix rx-work condition in nv_rx_process_optimized() too\n"
    },
    {
      "commit": "a9e82d3a02247af6b729be0a963862d70cb25bf9",
      "tree": "8f1f02bf0f1371391f2077a270bc32c0beddcc6a",
      "parents": [
        "58f9b52ee8712283f7ffedb661df678c61e88a91",
        "85ad93ad56f4baf52e7c40f2e01c4df8e14d4c9c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 16:00:02 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 16:00:02 2007 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6: (37 commits)\n  ide: set drive-\u003eautotune in ide_pci_setup_ports()\n  triflex: always tune PIO\n  opti621: always tune PIO\n  cy82c693: always tune PIO\n  cs5520: always tune PIO\n  alim15x3: always tune PIO\n  ide: add IDE_HFLAG_LEGACY_IRQS host flag\n  ide: add IDE_HFLAG_SERIALIZE host flag\n  ide: add IDE_HFLAG_ERROR_STOPS_FIFO host flag\n  piix: add DECLARE_ICH_DEV() macro\n  pdc202xx_old: add DECLARE_PDC2026X_DEV() macro\n  pdc202xx_new: add DECLARE_PDCNEW_DEV() macro\n  aec62xx: no need to disable UDMA in -\u003einit_hwif method for ATP850UF\n  ide: remove .init_setup from ide_pci_device_t\n  serverworks: remove -\u003einit_setup\n  scc_pata: remove -\u003einit_setup\n  pdc202xx_old: remove -\u003einit_setup\n  pdc202xx_new: remove -\u003einit_setup\n  hpt366: remove -\u003einit_setup\n  cmd64x: remove -\u003einit_setup\n  ...\n"
    },
    {
      "commit": "3985ee3b4c5f9e1d73623b92715375b089c54353",
      "tree": "13741edc5575b3ebb436f94b04e338b3b0701e9f",
      "parents": [
        "1c51361a9867021dd7444b56d87834003d4ca67d"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:11 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:11 2007 +0200"
      },
      "message": "ide: add IDE_HFLAG_LEGACY_IRQS host flag\n\nAdd IDE_HFLAG_LEGACY_IRQS host flag to tell ide_pci_setup_ports() to set\nhwif-\u003eirq to legacy IRQ 14/15 (iff hwif-\u003eirq is not already set) and convert\natiixp, piix, serverworks, sis5513 and slc90e66 host drivers to use it.\n\nWhile at it:\n\n* In piix.c add IDE_HFLAGS_PIIX define and don\u0027t use -\u003einit_hwif for MPIIX.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "1c51361a9867021dd7444b56d87834003d4ca67d",
      "tree": "2b14e5a4d85b9d46571c5839bbcce6f90be8b616",
      "parents": [
        "ed67b92385a5afddc98d5ff0894b2854c4a54dac"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:10 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:10 2007 +0200"
      },
      "message": "ide: add IDE_HFLAG_SERIALIZE host flag\n\nAdd IDE_HFLAG_SERIALIZE host flag to tell ide_pci_setup_ports() to set\nhwif/mate-\u003eserialized and convert aec62xx, cs5530 and sc1200 host drivers\nto use it.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "ed67b92385a5afddc98d5ff0894b2854c4a54dac",
      "tree": "bb5a72cbc383ffdc759c1c12a18fc5be54df69e2",
      "parents": [
        "40d2dd7ef3df468814a34cd3d31486408e604468"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:10 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:10 2007 +0200"
      },
      "message": "ide: add IDE_HFLAG_ERROR_STOPS_FIFO host flag\n\nAdd IDE_HFLAG_ERROR_STOPS_FIFO host flag and use it instead\nof hwif-\u003eerr_stops_fifo.  As a side-effect this change fixes\nhwif-\u003eerr_stops_fifo not being restored by ide_hwif_restore().\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "942278ef6424c5d661ad0a8202ef60dc0f268a95",
      "tree": "e452ea271db596beb85a495e20d821691cf8e13f",
      "parents": [
        "7ed5829758d8d6c5486ec54fb4414b7683541fad"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:09 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:09 2007 +0200"
      },
      "message": "ide: remove .init_setup from ide_pci_device_t\n\nNow that all users were fixed we can safely remove it.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "5f8b6c34854a966fe5eb7241fde0419d47d5d408",
      "tree": "052afd508d9cd314f503d938182db55355f1b392",
      "parents": [
        "9adf768a398745c539623210502b521e671c59d7"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:07 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:07 2007 +0200"
      },
      "message": "ide: add -\u003emwdma_mask and -\u003eswdma_mask to ide_pci_device_t (take 2)\n\n* Add -\u003emwdma_mask and -\u003eswdma_mask to ide_pci_device_t.\n\n* Set ide_hwif_t DMA masks using DMA masks from ide_pci_device_t in\n  setup-pci.c::ide_pci_setup_ports() (iff DMA base is valid and -\u003einit_hwif\n  method may still override them).\n\n* Convert IDE PCI host drivers to use ide_pci_device_t DMA masks.\n\nWhile at it:\n\n* Use ATA_{UDMA,MWDMA,SWDMA}* defines.\n\n* hpt34x.c: add separate ide_pci_device_t instances for HPT343 and HPT345.\n\n* serverworks.c: fix DMA masks being set before checking DMA base.\n\nv2:\n* Add missing masks to DECLARE_GENERIC_PCI_DEV() macro.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "238e4f142c33bb34440cc64029dde7b9fbc4e65f",
      "tree": "5fc96f650cf6d326a4bc1e0026cd8ddeb9b9aa94",
      "parents": [
        "9ffcf364f9d0aca3ea79e9987c368eb75925460e"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:07 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:07 2007 +0200"
      },
      "message": "ide: add IDE_HFLAG_NO_LBA48 and IDE_HFLAG_NO_LBA48_DMA host flags\n\nAdd IDE_HFLAG_NO_LBA48[_DMA] host flags, use it instead of hwif-\u003eno_lba48[_dma]\nand then remove no longer needed hwif-\u003eno_lba48[_dma].  As a side-effect\nthis change fixes hwif-\u003eno_lba48_dma not being restored by ide_hwif_restore().\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "9ffcf364f9d0aca3ea79e9987c368eb75925460e",
      "tree": "2916b96c1c020acd5ce19aa07fce0d6790567916",
      "parents": [
        "47b687882c02f802dd5bbe1227effe006820246e"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:07 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:07 2007 +0200"
      },
      "message": "ide: remove -\u003einit_setup_dma from ide_pci_device_t (take 2)\n\n* Make ide_pci_device_t.host_flags u32 and add IDE_HFLAG_CS5520 host flag.\n\n* Pass ide_pci_device_t *d to setup-pci.c::ide_get_or_set_dma_base()\n  and use d-\u003ename instead of hwif-\u003ecds-\u003ename.\n\n* Set IDE_HFLAG_CS5520 host flag in cs5520 host driver and use it in\n  ide_get_or_set_dma_base() to find out which PCI BAR to use, remove no longer\n  needed cs5520.c::cs5520_init_setup_dma() and ide_pci_device_t.init_setup_dma.\n\n  This fixes PCI bus-mastering not being checked for CS5510/CS5520 hosts.\n\nv2:\n* It is wrong to check simplex bits on CS5510/CS5520 as v1 did.\n  (Noticed by Alan).\n\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "47b687882c02f802dd5bbe1227effe006820246e",
      "tree": "7b9048ebfa0a53203e4e3c55649f28e352a143cc",
      "parents": [
        "7cab14a79973893392111b8f887856a54621f759"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:06 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:06 2007 +0200"
      },
      "message": "ide: add IDE_HFLAG_NO_{DMA,AUTODMA} host flags\n\nAdd IDE_HFLAG_NO_{DMA,AUTODMA} host flags.  Convert all host drivers using\nide_pci_device_t to use these flags instead of d-\u003eautodma and then remove no\nlonger needed d-\u003eautodma.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "7cab14a79973893392111b8f887856a54621f759",
      "tree": "925ad89a10daa3584e05806eadffb628ef97313b",
      "parents": [
        "33c1002ed912ac9dacedd5d5b166da3b72d18460"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:06 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:06 2007 +0200"
      },
      "message": "ide: add IDE_HFLAG_BOOTABLE host flag\n\nAdd IDE_HFLAG_BOOTABLE host flag and IDE_HFLAG_OFF_BOARD define.  Convert\nall host drivers using ide_pci_device_t to use IDE_HFLAG_{BOOTABLE,OFF_BOARD}\ninstead of d-\u003ebootable and then remove no longer needed d-\u003ebootable.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "33c1002ed912ac9dacedd5d5b166da3b72d18460",
      "tree": "c129987c6935542a8bd95924873ac6bf0e1e756c",
      "parents": [
        "1c3dd326ad790934fd88ec086e75a9d61ddaef8a"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:06 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:06 2007 +0200"
      },
      "message": "ide: add IDE_HFLAG_NO_ATAPI_DMA host flag\n\nAdd IDE_HFLAG_NO_ATAPI_DMA host flag and set it in host drivers which\ndon\u0027t support ATAPI DMA.  Then remove no longer needed hwif-\u003eatapi_dma.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "1b678347121001c3c230c6eccfdf9f65c3ec1a4e",
      "tree": "06fbd912de1d6cb032db4a25868fb8600d344c06",
      "parents": [
        "d85714d81cc0408daddb68c10f7fd69eafe7c213"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri Oct 19 00:30:05 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:05 2007 +0200"
      },
      "message": "ide: Add ide_get_paired_drive() helper\n\nThis adds a helper to get to the \"other\" drive on a pair connected\nto a given hwif.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Andrew Morton \u003cakpm@osdl.org\u003e\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "58f9b52ee8712283f7ffedb661df678c61e88a91",
      "tree": "fe6d2e1bca6befd8ca347487a7c053b8136320ad",
      "parents": [
        "2af170dd241810212cbdbdc802ba7d39e3fb23b9",
        "c70878b4e0b6cf8d2f1e46319e48e821ef4a8aba"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 15:12:41 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 15:12:41 2007 -0700"
      },
      "message": "Merge ssh://master.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt\n\n* ssh://master.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt:\n  hrtimer: hook compat_sys_nanosleep up to high res timer code\n  hrtimer: Rework hrtimer_nanosleep to make sys_compat_nanosleep easier\n"
    },
    {
      "commit": "2af170dd241810212cbdbdc802ba7d39e3fb23b9",
      "tree": "3d16719aa102444337f161c457502704a4967a53",
      "parents": [
        "ab08ed1770140ebcf1be1657087689832b755874",
        "3be6cbd73f74b4a3da82cc7d6e1688a4ae595fc7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 15:08:35 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 15:08:35 2007 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:\n  [libata] kill ata_sg_is_last()\n  Update libata driver for bf548 atapi controller against the 2.6.24 tree.\n  libata-sff: Correct use of check_status()\n  drivers/ata: add support to Freescale 3.0Gbps SATA Controller\n  pata_acpi: fix build breakage if !CONFIG_PM\n"
    },
    {
      "commit": "54e840dd5021ae03c5d2b4158b191bb67f584b75",
      "tree": "f5df7580707828ebdcafbbc6cb719ddaec5a5fdd",
      "parents": [
        "32c15bb978c0e6ff65b3012a6af5a14c899005ce",
        "480b9434c542ddf2833aaed3dabba71bc0b787b5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:54:03 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:54:03 2007 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched:\n  sched: reduce schedstat variable overhead a bit\n  sched: add KERN_CONT annotation\n  sched: cleanup, make struct rq comments more consistent\n  sched: cleanup, fix spacing\n  sched: fix return value of wait_for_completion_interruptible()\n"
    },
    {
      "commit": "a57793651ff1a09ef18bade998632435ca2dc13f",
      "tree": "fffc839d7b001f196421f09f0a06491588835fe1",
      "parents": [
        "9cf52b2921fbe62566b6b2ee79f71203749c9e5e",
        "52f095ee88d8851866bc7694ab991ca5abf21d5e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:40:30 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:40:30 2007 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (51 commits)\n  [IPV6]: Fix again the fl6_sock_lookup() fixed locking\n  [NETFILTER]: nf_conntrack_tcp: fix connection reopening fix\n  [IPV6]: Fix race in ipv6_flowlabel_opt() when inserting two labels\n  [IPV6]: Lost locking in fl6_sock_lookup\n  [IPV6]: Lost locking when inserting a flowlabel in ipv6_fl_list\n  [NETFILTER]: xt_sctp: fix mistake to pass a pointer where array is required\n  [NET]: Fix OOPS due to missing check in dev_parse_header().\n  [TCP]: Remove lost_retrans zero seqno special cases\n  [NET]: fix carrier-on bug?\n  [NET]: Fix uninitialised variable in ip_frag_reasm()\n  [IPSEC]: Rename mode to outer_mode and add inner_mode\n  [IPSEC]: Disallow combinations of RO and AH/ESP/IPCOMP\n  [IPSEC]: Use the top IPv4 route\u0027s peer instead of the bottom\n  [IPSEC]: Store afinfo pointer in xfrm_mode\n  [IPSEC]: Add missing BEET checks\n  [IPSEC]: Move type and mode map into xfrm_state.c\n  [IPSEC]: Fix length check in xfrm_parse_spi\n  [IPSEC]: Move ip_summed zapping out of xfrm6_rcv_spi\n  [IPSEC]: Get nexthdr from caller in xfrm6_rcv_spi\n  [IPSEC]: Move tunnel parsing for IPv4 out of xfrm4_input\n  ...\n"
    },
    {
      "commit": "9cf52b2921fbe62566b6b2ee79f71203749c9e5e",
      "tree": "5705ab0af0adfb7043407b5a4ffbf43fcbff42bd",
      "parents": [
        "952184304fbf030f0133d8b66a91b2847dce729e",
        "5c45708352a040f19caceb683c78bc86aad466f6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:39:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:39:44 2007 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6\n\n* \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:\n  [SPARC/64]: Consolidate of_register_driver\n  [SPARC] Videopix Frame Grabber: Convert device_lock_sem to mutex\n  [SPARC]: Support for new termios.\n  [SPARC64]: Check of_get_property() return in pci_determine_mem_io_space().\n  [SPARC64]: Fix boot failures due to bootmem.\n  [SPARC64]: Implement atomic backoff.\n"
    },
    {
      "commit": "d8c98618f4bb8161cc0c14e110b07ba37249332b",
      "tree": "0b546c06c0b9946cdb3274c98a0a9d4c5084ea5d",
      "parents": [
        "ac0191517c3b5f2cf68ab36756d64ef035c4a770"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "cminyard@mvista.com",
        "time": "Thu Oct 18 03:07:11 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:32 2007 -0700"
      },
      "message": "IPMI: add 0.9 support\n\nAdd support for IPMI 0.9 systems to the IPMI driver.  Just handle a shorter\nget device ID command with less information.\n\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nCc: Stian Jordet \u003cliste@jordet.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fcfa4724116589d6a5fac92af410b6f12d41b5bb",
      "tree": "e709e6e51e8475836f56478a4645bbeeb8daf134",
      "parents": [
        "650dd0c7faf8126aaa261833dc9171a070deeaf3"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "cminyard@mvista.com",
        "time": "Thu Oct 18 03:07:09 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:32 2007 -0700"
      },
      "message": "IPMI: add polled interface\n\nCurrently the IPMI watchdog timer sets the watchdog timeout on a panic, but it\ndoesn\u0027t actually poll the interface to make sure the message goes out.\n\nAdd an interface for polling the IPMI driver, and add code to the IPMI\nwatchdog timer to poll the interface when the timer is set from a panic.\n\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e8c44319c691dfb4a0b039b095204c040df9b01a",
      "tree": "66e9262f8a2659afc9b88c570fe6980b32974177",
      "parents": [
        "c80544dc0b87bb65038355e7aafdc30be16b26ab"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Thu Oct 18 03:07:07 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:32 2007 -0700"
      },
      "message": "Replace __attribute_pure__ with __pure\n\nTo be consistent with the use of attributes in the rest of the kernel\nreplace all use of __attribute_pure__ with __pure and delete the definition\nof __attribute_pure__.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\nCc: Bryan Wu \u003cbryan.wu@analog.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0e9663ee452ffce0d429656ebbcfe69417a30e92",
      "tree": "a72825f122c9e38d4adc42ebcfd127f366da4a0f",
      "parents": [
        "f33321141b273d60cbb3a8f56a5489baad82ba5e"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Thu Oct 18 03:07:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:31 2007 -0700"
      },
      "message": "fuse: add blksize field to fuse_attr\n\nThere are cases when the filesystem will be passed the buffer from a single\nread or write call, namely:\n\n 1) in \u0027direct-io\u0027 mode (not O_DIRECT), read/write requests don\u0027t go\n    through the page cache, but go directly to the userspace fs\n\n 2) currently buffered writes are done with single page requests, but\n    if Nick\u0027s -\u003eperform_write() patch goes it, it will be possible to\n    do larger write requests.  But only if the original write() was\n    also bigger than a page.\n\nIn these cases the filesystem might want to give a hint to the app\nabout the optimal I/O size.\n\nAllow the userspace filesystem to supply a blksize value to be returned by\nstat() and friends.  If the field is zero, it defaults to the old\nPAGE_CACHE_SIZE value.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f33321141b273d60cbb3a8f56a5489baad82ba5e",
      "tree": "b6443b674600dcdb8c33aa6d44b7a673edc255b4",
      "parents": [
        "b25e82e5673c750116e8b01a4fc7d09be7809f8c"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Thu Oct 18 03:07:04 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:31 2007 -0700"
      },
      "message": "fuse: add support for mandatory locking\n\nFor mandatory locking the userspace filesystem needs to know the lock\nownership for read, write and truncate operations.\n\nThis patch adds the necessary fields to the protocol.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b25e82e5673c750116e8b01a4fc7d09be7809f8c",
      "tree": "03d23ccbca6e87ba98efeba445ff714455dba0bb",
      "parents": [
        "93a8c3cd9e9834dc5f5c373336f3a0065521152d"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Thu Oct 18 03:07:03 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:31 2007 -0700"
      },
      "message": "fuse: add helper for asynchronous writes\n\nThis patch adds a new helper function fuse_write_fill() which makes it\npossible to send WRITE requests asynchronously.\n\nA new flag for WRITE requests is also added which indicates that this a write\nfrom the page cache, and not a \"normal\" file write.\n\nThis patch is in preparation for writable mmap support.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a9ff4f87056cd31a8232b88d013dc6c9ad719c18",
      "tree": "8ddcc01ae8b6615a9a530fb51c52825b315ee266",
      "parents": [
        "6ff958edbf39c014eb06b65ad25b736be08c4e63"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Thu Oct 18 03:07:02 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:31 2007 -0700"
      },
      "message": "fuse: support BSD locking semantics\n\nIt is trivial to add support for flock(2) semantics to the existing protocol,\nby setting the lock owner field to the file pointer, and passing a new\nFUSE_LK_FLOCK flag with the locking request.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6ff958edbf39c014eb06b65ad25b736be08c4e63",
      "tree": "f87af1ae11b321cfa38c25378229f25942797385",
      "parents": [
        "17637cbaba592076c221dc045ca78422b4af6290"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Thu Oct 18 03:07:02 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:31 2007 -0700"
      },
      "message": "fuse: add atomic open+truncate support\n\nThis patch allows fuse filesystems to implement open(..., O_TRUNC) as a single\nrequest, instead of separate truncate and open requests.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "17637cbaba592076c221dc045ca78422b4af6290",
      "tree": "9b8148b29cb2c776cd96278c0710a890054a2b78",
      "parents": [
        "d139d7ffd0c1e81e2a809909b4f8b121a0dc119a"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Thu Oct 18 03:07:01 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:30 2007 -0700"
      },
      "message": "fuse: improve utimes support\n\nAdd two new flags for setattr: FATTR_ATIME_NOW and FATTR_MTIME_NOW.  These\nmean, that atime or mtime should be changed to the current time.\n\nAlso it is now possible to update atime or mtime individually, not just\ntogether.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d139d7ffd0c1e81e2a809909b4f8b121a0dc119a",
      "tree": "e8c9dd746bfd8ae16d17596009608c4c1a153217",
      "parents": [
        "49d4914fd7c10ae846d0f30d5f6f4732cc68499c"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Thu Oct 18 03:07:00 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:30 2007 -0700"
      },
      "message": "VFS: allow filesystems to implement atomic open+truncate\n\nAdd a new attribute flag ATTR_OPEN, with the meaning: \"truncation was\ninitiated by open() due to the O_TRUNC flag\".\n\nThis way filesystems wanting to implement truncation within their -\u003eopen()\nmethod can ignore such truncate requests.\n\nThis is a quick \u0026 dirty hack, but it comes for free.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Andreas Dilger \u003cadilger@clusterfs.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c79e322f63592c00b25b17af6a1782fad6c6fe6e",
      "tree": "d3cbacb295b82c036553f68f5a060c67ae16bfa3",
      "parents": [
        "1fb69e7817296da8a6824804bb206ca1e7f31425"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Thu Oct 18 03:06:59 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:30 2007 -0700"
      },
      "message": "fuse: add file handle to getattr operation\n\nAdd necessary protocol changes for supplying a file handle with the getattr\noperation.  Step the API version to 7.9.\n\nThis patch doesn\u0027t actually supply the file handle, because that needs some\nkind of VFS support, which we haven\u0027t yet been able to agree upon.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0f0a89ebe1ccf7c280534f69577cdd182941eb6a",
      "tree": "f82d98ac18168ff8b7757cd8ac66e93e46695e30",
      "parents": [
        "4176ed593866b5e4bcf86896e0734315ad46661b"
      ],
      "author": {
        "name": "Takashi Sato",
        "email": "sho@tnes.nec.co.jp",
        "time": "Thu Oct 18 03:06:56 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:29 2007 -0700"
      },
      "message": "ext3: support large blocksize up to PAGESIZE\n\nThis patch set supports large block size(\u003e4k, \u003c\u003d64k) in ext3 just enlarging\nthe block size limit.  But it is NOT possible to have 64kB blocksize on\next3 without some changes to the directory handling code.  The reason is\nthat an empty 64kB directory block would have a rec_len \u003d\u003d (__u16)2^16 \u003d\u003d\n0, and this would cause an error to be hit in the filesystem.  The proposed\nsolution is treat 64k rec_len with a an impossible value like rec_len \u003d\n0xffff to handle this.\n\nThe Patch-set consists of the following 2 patches.\n  [1/2]  ext3: enlarge blocksize\n         - Allow blocksize up to pagesize\n\n  [2/2]  ext3: fix rec_len overflow\n         - prevent rec_len from overflow with 64KB blocksize\n\nNow on 64k page ppc64 box runs with this patch set we could create a 64k\nblock size ext3, and able to handle empty directory block.\n\nSigned-off-by: Takashi Sato \u003csho@tnes.nec.co.jp\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nAcked-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b8dc93cbe91324b922395919cd5df4cca2fe55f6",
      "tree": "724a8813d6b5119619a6b8c499a59825575ae0c9",
      "parents": [
        "66ffb04ca5ec43ca763e8a9802ca3244f5519ae1"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Thu Oct 18 03:06:54 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:29 2007 -0700"
      },
      "message": "bit_spin_lock: use lock bitops\n\nConvert bit_spin_lock to new locking bitops.  Slub can use the non-atomic\nstore version to clear (Christoph?)\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "761bb431908e84d1793c5eb6c2ae2cc4926bed3e",
      "tree": "6b9afbc8b7156573da0d095390e4dbb3b16fd82c",
      "parents": [
        "4603ac180a824197c2262747948d0179eb076e9c"
      ],
      "author": {
        "name": "Satyam Sharma",
        "email": "satyam@infradead.org",
        "time": "Thu Oct 18 03:06:38 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:28 2007 -0700"
      },
      "message": "Redefine {un}register_hotcpu_notifier() !HOTPLUG_CPU stubs\n\nThe return of the present \"do {} while\" based stub definition of\nregister_hotcpu_notifier() cannot be checked.  This makes the stub\nasymmetric w.r.t.  the real HOTPLUG_CPU\u003dy implementation that is\nint-returning.  So let us redefine this to be consistent with the full\nversion.  Also do the same for unregister_hotcpu_notifier().\n\nWe cannot define these as static inline functions due to an existing GCC\nbug (#33172).  So define as macros that return appropriately instead (int\n\u00270\u0027 for the register_hotcpu_notifier case and void for\nunregister_hotcpu_notifier).\n\nSigned-off-by: Satyam Sharma \u003csatyam@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f494f8fcb18e962839a82d542fbe6bed9cf5be07",
      "tree": "bf5b0ce1119df05607a8111bed5047fffb305709",
      "parents": [
        "c66f08be7e3ad0a28bcd9a0aef766fdf08ea0ec6"
      ],
      "author": {
        "name": "Michael Neuling",
        "email": "mneuling@au1.ibm.com",
        "time": "Thu Oct 18 03:06:35 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:28 2007 -0700"
      },
      "message": "add-scaled-time-to-taskstats-based-process-accounting fix\n\nThis moves the new items to the end of the taskstats struct as\nrequested by Balbir and yourself.\n\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Jay Lan \u003cjlan@engr.sgi.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c66f08be7e3ad0a28bcd9a0aef766fdf08ea0ec6",
      "tree": "d147c0a43a66973014d924a6020388a249c509a7",
      "parents": [
        "898eb71cb17644964c5895fb190e79e3d0c49679"
      ],
      "author": {
        "name": "Michael Neuling",
        "email": "mikey@neuling.org",
        "time": "Thu Oct 18 03:06:34 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:28 2007 -0700"
      },
      "message": "Add scaled time to taskstats based process accounting\n\nThis adds items to the taststats struct to account for user and system\ntime based on scaling the CPU frequency and instruction issue rates.\n\nAdds account_(user|system)_time_scaled callbacks which architectures\ncan use to account for time using this mechanism.\n\nSigned-off-by: Michael Neuling \u003cmikey@neuling.org\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Jay Lan \u003cjlan@engr.sgi.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "65f76a82ec7a0374fad85211535330e203740475",
      "tree": "351838854d96086ee86e4daaaf64dbd9c0264b30",
      "parents": [
        "1c0a387c1f9e48e480579d3b4e0f9c1a36c77751"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Thu Oct 18 03:06:22 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:26 2007 -0700"
      },
      "message": "Char: cyclades, fix some -W warnings\n\nMost of them are signedness, the rest unused function parameters.\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ebafeeff0fea029099e9952f233e0794106897a6",
      "tree": "50bc3ca7f9d4c7153c3e98bda28199dcc6eff948",
      "parents": [
        "c43422053bea7a5ce09f18d0c50a606fe1a549f4"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Thu Oct 18 03:06:20 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:26 2007 -0700"
      },
      "message": "Char: cyclades, remove bottom half processing\n\nThe work done in bottom half doesn\u0027t cost much cpu time (e.g.  tty_hangup\nitself schedules its own bottom half), it\u0027s possible to do the work in isr\ndirectly and save hence some .text.\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Paul Fulghum \u003cpaulkf@microgate.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "72c2d5823fc7be799a12184974c3bdc57acea3c4",
      "tree": "5c17418efb57cd5b2cdc0d751f577b2c64012423",
      "parents": [
        "7058cb02ddab4bce70a46e519804fccb7ac0a060"
      ],
      "author": {
        "name": "Andrew Morgan",
        "email": "morgan@kernel.org",
        "time": "Thu Oct 18 03:05:59 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:24 2007 -0700"
      },
      "message": "V3 file capabilities: alter behavior of cap_setpcap\n\nThe non-filesystem capability meaning of CAP_SETPCAP is that a process, p1,\ncan change the capabilities of another process, p2.  This is not the\nmeaning that was intended for this capability at all, and this\nimplementation came about purely because, without filesystem capabilities,\nthere was no way to use capabilities without one process bestowing them on\nanother.\n\nSince we now have a filesystem support for capabilities we can fix the\nimplementation of CAP_SETPCAP.\n\nThe most significant thing about this change is that, with it in effect, no\nprocess can set the capabilities of another process.\n\nThe capabilities of a program are set via the capability convolution\nrules:\n\n   pI(post-exec) \u003d pI(pre-exec)\n   pP(post-exec) \u003d (X(aka cap_bset) \u0026 fP) | (pI(post-exec) \u0026 fI)\n   pE(post-exec) \u003d fE ? pP(post-exec) : 0\n\nat exec() time.  As such, the only influence the pre-exec() program can\nhave on the post-exec() program\u0027s capabilities are through the pI\ncapability set.\n\nThe correct implementation for CAP_SETPCAP (and that enabled by this patch)\nis that it can be used to add extra pI capabilities to the current process\n- to be picked up by subsequent exec()s when the above convolution rules\nare applied.\n\nHere is how it works:\n\nLet\u0027s say we have a process, p. It has capability sets, pE, pP and pI.\nGenerally, p, can change the value of its own pI to pI\u0027 where\n\n   (pI\u0027 \u0026 ~pI) \u0026 ~pP \u003d 0.\n\nThat is, the only new things in pI\u0027 that were not present in pI need to\nbe present in pP.\n\nThe role of CAP_SETPCAP is basically to permit changes to pI beyond\nthe above:\n\n   if (pE \u0026 CAP_SETPCAP) {\n      pI\u0027 \u003d anything; /* ie., even (pI\u0027 \u0026 ~pI) \u0026 ~pP !\u003d 0  */\n   }\n\nThis capability is useful for things like login, which (say, via\npam_cap) might want to raise certain inheritable capabilities for use\nby the children of the logged-in user\u0027s shell, but those capabilities\nare not useful to or needed by the login program itself.\n\nOne such use might be to limit who can run ping. You set the\ncapabilities of the \u0027ping\u0027 program to be \"\u003d cap_net_raw+i\", and then\nonly shells that have (pI \u0026 CAP_NET_RAW) will be able to run\nit. Without CAP_SETPCAP implemented as described above, login(pam_cap)\nwould have to also have (pP \u0026 CAP_NET_RAW) in order to raise this\ncapability and pass it on through the inheritable set.\n\nSigned-off-by: Andrew Morgan \u003cmorgan@kernel.org\u003e\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fc6cd25b738c2369d7ed3a6ef2ca248b51fcd2d4",
      "tree": "bd3708eac72edf06097a8a2ed72c3a3fea0b0998",
      "parents": [
        "f429cd37a21b8efc825bdbb22db7f033564cbc98"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Oct 18 03:05:54 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:23 2007 -0700"
      },
      "message": "sysctl: Error on bad sysctl tables\n\nAfter going through the kernels sysctl tables several times it has become\nclear that code review and testing is just not effective in prevent\nproblematic sysctl tables from being used in the stable kernel.  I certainly\ncan\u0027t seem to fix the problems as fast as they are introduced.\n\nTherefore this patch adds sysctl_check_table which is called when a sysctl\ntable is registered and checks to see if we have a problematic sysctl table.\n\nThe biggest part of the code is the table of valid binary sysctl entries, but\nsince we have frozen our set of binary sysctls this table should not need to\nchange, and it makes it much easier to detect when someone unintentionally\nadds a new binary sysctl value.\n\nAs best as I can determine all of the several hundred errors spewed on boot up\nnow are legitimate.\n\n[bunk@kernel.org: kernel/sysctl_check.c must #include \u003clinux/string.h\u003e]\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f429cd37a21b8efc825bdbb22db7f033564cbc98",
      "tree": "1a6da3cc2c674ebc5b7afabfab16b670658f6038",
      "parents": [
        "c65f92398ec4ebfcaef91309bf055028a9899d6f"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Oct 18 03:05:33 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:23 2007 -0700"
      },
      "message": "sysctl: properly register the irda binary sysctl numbers\n\nGrumble.  These numbers should have been in sysctl.h from the beginning if we\never expected anyone to use them.  Oh well put them there now so we can find\nthem and make maintenance easier.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Samuel Ortiz \u003csamuel@sortiz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "25398a158d86b993fa5bf36f5a6752134b584d60",
      "tree": "38a1db45fdeb8cfa691cf6f1b38a762773e5b950",
      "parents": [
        "0d135a4a8c77f248afd908bc3cf5bd833062589d"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Oct 18 03:05:30 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:23 2007 -0700"
      },
      "message": "sysctl: parport remove binary paths\n\nThe sysctl binary paths don\u0027t look as if they even code work, .data is not\nfilled in, and all of the proc_handlers look at extra1 and there is not\nstrategy routine.\n\nSo just kill the binary paths.\n\nIn addition this patch removes the setting of extra1 on directories.  It\ndoesn\u0027t look like the parport code ever examines it, and it\u0027s bad sysctl form.\n\n[bunk@kernel.org: remove parport_device_num()]\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "49a0c45833c9aa9852ba02c9df0f18029509d0a9",
      "tree": "0884aec3c522e495aa8a412b44fc6c8c24522639",
      "parents": [
        "d8217f076b73441dd3869c0c880df000655084cc"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Oct 18 03:05:23 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:22 2007 -0700"
      },
      "message": "sysctl: Factor out sysctl_data.\n\nThere as been no easy way to wrap the default sysctl strategy routine except\nfor returning 0.  Which is not always what we want.  The few instances I have\nseen that want different behaviour have written their own version of\nsysctl_data.  While not too hard it is unnecessary code and has the potential\nfor extra bugs.\n\nSo to make these situations easier and make that part of sysctl more symetric\nI have factord sysctl_data out of do_sysctl_strategy and exported as a\nfunction everyone can use.\n\nFurther having sysctl_data be an explicit function makes checking for badly\nformed sysctl tables much easier.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d8217f076b73441dd3869c0c880df000655084cc",
      "tree": "279c6bda7b3ad8bc8cd8099681a93d59fd193f26",
      "parents": [
        "d32c4f2626acc385d5187bd5c0c24f442328dc60"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Oct 18 03:05:22 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:22 2007 -0700"
      },
      "message": "sysctl core: Stop using the unnecessary ctl_table typedef\n\nIn sysctl.h the typedef struct ctl_table ctl_table violates coding style isn\u0027t\nneeded and is a bit of a nuisance because it makes it harder to recognize\nctl_table is a type name.\n\nSo this patch removes it from the generic sysctl code.  Hopefully I will have\nenough energy to send the rest of my patches will follow and to remove it from\nthe rest of the kernel.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8f286c33f1e838d631f4a3260b33efce4bc5973c",
      "tree": "adf48bc9faabd41ddff8609f9c7de86373ccce11",
      "parents": [
        "34c6538413e5648b63cb785add509f500b3a7b11"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Oct 18 03:05:07 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:21 2007 -0700"
      },
      "message": "stop using DMA_xxBIT_MASK\n\nNow that we have DMA_BIT_MASK(), these macros are pointless.\n\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "34c6538413e5648b63cb785add509f500b3a7b11",
      "tree": "3f2e1c4fe134fa123bf5047a640dee425be0a098",
      "parents": [
        "2c6221483169ddd4c04797cd7296ed4fe52fcdd7"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "bbpetkov@yahoo.de",
        "time": "Thu Oct 18 03:05:06 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:21 2007 -0700"
      },
      "message": "unify DMA_..BIT_MASK definitions: v3.1\n\nRemove redundant DMA_..BIT_MASK definitions across two drivers.  The\ncomputation of the majority of the bitmasks is done by the compiler.  The\ninitial split of the patch touching each a different file got removed due\nto possible git bisect breakage.\n\nSigned-off-by: Borislav Petkov \u003cbbpetkov@yahoo.de\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Muli Ben-Yehuda \u003cmuli@il.ibm.com\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nReviewed-by: Satyam Sharma \u003csatyam@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2c6221483169ddd4c04797cd7296ed4fe52fcdd7",
      "tree": "1db73f0bf60b036abe995350637a9a3e916c0ec2",
      "parents": [
        "6212e3a388fdda3f19fa660ef5a30edf54d1dcfd"
      ],
      "author": {
        "name": "Tony Breeds",
        "email": "tony@bakeyournoodle.com",
        "time": "Thu Oct 18 03:04:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:20 2007 -0700"
      },
      "message": "Fix discrepancy between VDSO based gettimeofday() and sys_gettimeofday().\n\nOn platforms that copy sys_tz into the vdso (currently only x86_64, soon to\ninclude powerpc), it is possible for the vdso to get out of sync if a user\ncalls (admittedly unusual) settimeofday(NULL, ptr).\n\nThis patch adds a hook for architectures that set\nCONFIG_GENERIC_TIME_VSYSCALL to ensure when sys_tz is updated they can also\nupdatee their copy in the vdso.\n\nSigned-off-by: Tony Breeds \u003ctony@bakeyournoodle.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nAcked-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6212e3a388fdda3f19fa660ef5a30edf54d1dcfd",
      "tree": "7218bbf29af36ff0c36aa2af8323a5206ea44b1c",
      "parents": [
        "9cd9a0058dd35268b24fa16795a92c800f4086d4"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 18 03:04:56 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:20 2007 -0700"
      },
      "message": "Remove struct task_struct::io_wait\n\nHell knows what happened in commit 63b05203af57e7de4f3bb63b8b81d43bc196d32b\nduring 2.6.9 development.  Commit introduced io_wait field which remained\nwrite-only than and still remains write-only.\n\nAlso garbage collect macros which \"use\" io_wait.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c7e0831d385d620a58d95b25e4afa9b643f9a411",
      "tree": "d3dde7c47276aeb6fad0a1f25fa6b74cc5dacfc1",
      "parents": [
        "efa4d2fb047b25a6be67fe92178a2a78da6b3f6a"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Oct 18 03:04:55 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:20 2007 -0700"
      },
      "message": "Hibernation: Check if ACPI is enabled during restore in the right place\n\nThe following scenario leads to total confusion of the platform firmware on\nsome boxes (eg. HPC nx6325):\n* Hibernate with ACPI enabled\n* Resume passing \"acpi\u003doff\" to the boot kernel\n\nTo prevent this from happening it\u0027s necessary to check if ACPI is enabled (and\nenable it if that\u0027s not the case) _right_ _after_ control has been transfered\nfrom the boot kernel to the image kernel, before device_power_up() is called\n(ie.  with interrupts disabled).   Enabling ACPI after calling\ndevice_power_up() turns out to be insufficient.\n\nFor this reason, introduce new hibernation callback -\u003eleave() that will be\nexecuted before device_power_up() by the restored image kernel.   To make it\nwork, it also is necessary to move swsusp_suspend() from swsusp.c to disk.c\n(it\u0027s name is changed to \"create_image\", which is more up to the point).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8f4ce8c32f2dc2bc2411cafe39976fc5c0adfabf",
      "tree": "04f9009812e13f97b3eaae6385a0bb49cc2312b1",
      "parents": [
        "438e2ce68dfd4af4cfcec2f873564fb921db4bb5"
      ],
      "author": {
        "name": "Andres Salomon",
        "email": "dilinger@debian.org",
        "time": "Thu Oct 18 03:04:50 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:19 2007 -0700"
      },
      "message": "serial: turn serial console suspend a boot rather than compile time option\n\nCurrently, there\u0027s a CONFIG_DISABLE_CONSOLE_SUSPEND that allows one to stop\nthe serial console from being suspended when the rest of the machine goes\nto sleep.  This is incredibly useful for debugging power management-related\nthings; however, having it as a compile-time option has proved to be\nincredibly inconvenient for us (OLPC).  There are plenty of times that we\nwant serial console to not suspend, but for the most part we\u0027d like serial\nconsole to be suspended.\n\nThis drops CONFIG_DISABLE_CONSOLE_SUSPEND, and replaces it with a kernel\nboot parameter (no_console_suspend).  By default, the serial console will\nbe suspended along with the rest of the system; by passing\n\u0027no_console_suspend\u0027 to the kernel during boot, serial console will remain\nalive during suspend.\n\nFor now, this is pretty serial console specific; further fixes could be\napplied to make this work for things like netconsole.\n\nSigned-off-by: Andres Salomon \u003cdilinger@debian.org\u003e\nAcked-by: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e42837bcd35b75bb59ae5d3e62f87be1aeeb05c3",
      "tree": "aa9666b080dc75ef3fa27992f042a422f7a979b7",
      "parents": [
        "2e1318956ce6bf149af5c5e98499b5cd99f99c89"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Oct 18 03:04:45 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:19 2007 -0700"
      },
      "message": "freezer: introduce freezer-friendly waiting macros\n\nIntroduce freezer-friendly wrappers around wait_event_interruptible() and\nwait_event_interruptible_timeout(), originally defined in \u003clinux/wait.h\u003e, to\nbe used in freezable kernel threads.  Make some of the freezable kernel\nthreads use them.\n\nThis is necessary for the freezer to stop sending signals to kernel threads,\nwhich is implemented in the next patch.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@nigel.suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b3dac3b304bdfbb06e92b0d4bba9ecab006795e6",
      "tree": "850b1162febb536b2ae31d1ff10378057322aa7a",
      "parents": [
        "74f270af0c1ed5b9d4413784256959dcfe3593ce"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Oct 18 03:04:43 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:18 2007 -0700"
      },
      "message": "PM: Rename hibernation_ops to platform_hibernation_ops\n\nRename \u0027struct hibernation_ops\u0027 to \u0027struct platform_hibernation_ops\u0027 in\nanalogy with \u0027struct platform_suspend_ops\u0027.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74f270af0c1ed5b9d4413784256959dcfe3593ce",
      "tree": "5b74248167be086b0050a84f9ebe072bbb43fdb3",
      "parents": [
        "f242d9196fd1ef4e6bf0e50d2e7f32866fb145c2"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Oct 18 03:04:42 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:18 2007 -0700"
      },
      "message": "PM: Rework struct hibernation_ops\n\nDuring hibernation we also need to tell the ACPI core that we\u0027re going to put\nthe system into the S4 sleep state.  For this reason, an additional method in\n\u0027struct hibernation_ops\u0027 is needed, playing the role of set_target() in\n\u0027struct platform_suspend_operations\u0027.  Moreover, the role of the .prepare()\nmethod is now different, so it\u0027s better to introduce another method, that in\ngeneral may be different from .prepare(), that will be used to prepare the\nplatform for creating the hibernation image (.prepare() is used anyway to\nnotify the platform that we\u0027re going to enter the low power state after the\nimage has been saved).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f242d9196fd1ef4e6bf0e50d2e7f32866fb145c2",
      "tree": "f611d44e54e7633ff1d94169cf83485472127e08",
      "parents": [
        "e6c5eb9541f2197a3ffab90b1c7a3250a9b51bf6"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Oct 18 03:04:41 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:18 2007 -0700"
      },
      "message": "PM: Make suspend_ops static\n\nThe variable suspend_ops representing the set of global platform-specific\nsuspend-related operations, used by the PM core, need not be exported outside\nof kernel/power/main.c .   Make it static.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e6c5eb9541f2197a3ffab90b1c7a3250a9b51bf6",
      "tree": "ac227415da22d4345f8e72a6a8e781757b6ce85a",
      "parents": [
        "26398a70ea35f153feb799fa850c71685667712b"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Oct 18 03:04:41 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:18 2007 -0700"
      },
      "message": "PM: Rework struct platform_suspend_ops\n\nThere is no reason why the .prepare() and .finish() methods in \u0027struct\nplatform_suspend_ops\u0027 should take any arguments, since architectures don\u0027t use\nthese methods\u0027 argument in any practically meaningful way (ie.  either the\ntarget system sleep state is conveyed to the platform by .set_target(), or\nthere is only one suspend state supported and it is indicated to the PM core\nby .valid(), or .prepare() and .finish() aren\u0027t defined at all).   There also\nis no reason why .finish() should return any result.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "26398a70ea35f153feb799fa850c71685667712b",
      "tree": "e75959ef010bf3521bce2a33e59565c34b0c109d",
      "parents": [
        "95d9ffbe01fb21d524c86bf77871255066bc6e55"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Oct 18 03:04:40 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:18 2007 -0700"
      },
      "message": "PM: Rename struct pm_ops and related things\n\nThe name of \u0027struct pm_ops\u0027 suggests that it is related to the power\nmanagement in general, but in fact it is only related to suspend.   Moreover,\nits name should indicate what this structure is used for, so it seems\nreasonable to change it to \u0027struct platform_suspend_ops\u0027.   In that case, the\nname of the global variable of this type used by the PM core and the names of\nrelated functions should be changed accordingly.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "95d9ffbe01fb21d524c86bf77871255066bc6e55",
      "tree": "647355f56f85b1038ffc81fa50ff2c3878ab6597",
      "parents": [
        "a065c86e1bfcdd36709025d018965afea3f3a2b6"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Oct 18 03:04:39 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:18 2007 -0700"
      },
      "message": "PM: Move definition of struct pm_ops to suspend.h\n\nMove the definition of \u0027struct pm_ops\u0027 and related functions from \u003clinux/pm.h\u003e\nto \u003clinux/suspend.h\u003e .\n\nThere are, at least, the following reasons to do that:\n* \u0027struct pm_ops\u0027 is specifically related to suspend and not to the power\n  management in general.\n* As long as \u0027struct pm_ops\u0027 is defined in \u003clinux/pm.h\u003e, any modification of it\n  causes the entire kernel to be recompiled, which is unnecessary and annoying.\n* Some suspend-related features are already defined in \u003clinux/suspend.h\u003e, so it\n  is logical to move the definition of \u0027struct pm_ops\u0027 into there.\n* \u0027struct hibernation_ops\u0027, being the hibernation-related counterpart of\n  \u0027struct pm_ops\u0027, is defined in \u003clinux/suspend.h\u003e .\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "04c227140fed77587432667a574b14736a06dd7f",
      "tree": "56cc470fae9f0d78d499c9ab2ab526acb35440e4",
      "parents": [
        "d85714d81cc0408daddb68c10f7fd69eafe7c213"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Mon Oct 15 16:06:04 2007 -0500"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Oct 18 22:54:18 2007 +0200"
      },
      "message": "hrtimer: Rework hrtimer_nanosleep to make sys_compat_nanosleep easier\n\nPull the copy_to_user out of hrtimer_nanosleep and into the callers\n(common_nsleep, sys_nanosleep) in preparation for converting\ncompat_sys_nanosleep to use hrtimers.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "3be6cbd73f74b4a3da82cc7d6e1688a4ae595fc7",
      "tree": "a077cf70d1cd438db34f5def23dd8f72f42b5a8c",
      "parents": [
        "858c9c406688bc7244986b5836265071edfd1d3f"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Oct 18 16:21:18 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Oct 18 16:21:18 2007 -0400"
      },
      "message": "[libata] kill ata_sg_is_last()\n\nShort term, this works around a bug introduced by early sg-chaining\nwork.\n\nLong term, removing this function eliminates a branch from a hot\npath loop in each scatter/gather table build.  Also, as this code\ndemonstrates, we don\u0027t need to _track_ the end of the s/g list, as\nlong as we mark it in some way.  And doing so programatically is nice.\nSo its a useful cleanup, regardless of its short term effects.\n\nBased conceptually on a quick patch by Jens Axboe.\n\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "480b9434c542ddf2833aaed3dabba71bc0b787b5",
      "tree": "78c2638ac583cc57165ee1393ebbbbbe367f46fb",
      "parents": [
        "cc4ea79588e688ea9b1161650979a194dd709169"
      ],
      "author": {
        "name": "Ken Chen",
        "email": "kenchen@google.com",
        "time": "Thu Oct 18 21:32:56 2007 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 18 21:32:56 2007 +0200"
      },
      "message": "sched: reduce schedstat variable overhead a bit\n\nschedstat is useful in investigating CPU scheduler behavior.  Ideally,\nI think it is beneficial to have it on all the time.  However, the\ncost of turning it on in production system is quite high, largely due\nto number of events it collects and also due to its large memory\nfootprint.\n\nMost of the fields probably don\u0027t need to be full 64-bit on 64-bit\narch.  Rolling over 4 billion events will most like take a long time\nand user space tool can be made to accommodate that.  I\u0027m proposing\nkernel to cut back most of variable width on 64-bit system.  (note,\nthe following patch doesn\u0027t affect 32-bit system).\n\nSigned-off-by: Ken Chen \u003ckenchen@google.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "009e8c965fd72a78636b9a96c7015109c5c70176",
      "tree": "9ebf33292c45a3b33985400e0fec13d6de4a9217",
      "parents": [
        "1b83336bb9fa4f110b5b0a4378a82cd5f0fd0ac8"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Oct 18 05:12:21 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 18 05:12:21 2007 -0700"
      },
      "message": "[NETFILTER]: xt_sctp: fix mistake to pass a pointer where array is required\n\nMacros like SCTP_CHUNKMAP_XXX(chukmap) require chukmap to be an array,\nbut match_packet() passes a pointer to these macros. Also remove the\nELEMCOUNT macro and fix a bug in SCTP_CHUNKMAP_COPY.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "1b83336bb9fa4f110b5b0a4378a82cd5f0fd0ac8"
}
