)]}'
{
  "log": [
    {
      "commit": "bf47fdcda65b44dbd674eeedcaa06e0aa28a5a00",
      "tree": "3545b51ec24c6c8dba0e1645656f3df5a5fee113",
      "parents": [
        "8218c74c02a7bdb5db2e40a2100534bdeb83475b"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Mon Oct 02 02:18:16 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:21 2006 -0700"
      },
      "message": "[PATCH] namespaces: utsname: remove system_utsname\n\nThe system_utsname isn\u0027t needed now that kernel/sysctl.c is fixed.\nNuke it.\n\nSigned-off-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: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8218c74c02a7bdb5db2e40a2100534bdeb83475b",
      "tree": "46cda61ccbc2f4226e1ac6c8bffadf400ec28947",
      "parents": [
        "4865ecf1315b450ab3317a745a6678c04d311e40"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Mon Oct 02 02:18:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:21 2006 -0700"
      },
      "message": "[PATCH] namespaces: utsname: sysctl\n\nSysctl uts patch.  This will need to be done another way, but since sysctl\nitself needs to be container aware, \u0027the right thing\u0027 is a separate patchset.\n\n[akpm@osdl.org: ia64 build fix]\n[sam.vilain@catalyst.net.nz: cleanup]\n[sam.vilain@catalyst.net.nz: add proc_do_utsns_string]\nSigned-off-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: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4865ecf1315b450ab3317a745a6678c04d311e40",
      "tree": "6cf5d3028f8642eba2a8094eb413db080cc9219c",
      "parents": [
        "96b644bdec977b97a45133e5b4466ba47a7a5e65"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Mon Oct 02 02:18:14 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:21 2006 -0700"
      },
      "message": "[PATCH] namespaces: utsname: implement utsname namespaces\n\nThis patch defines the uts namespace and some manipulators.\nAdds the uts namespace to task_struct, and initializes a\nsystem-wide init namespace.\n\nIt leaves a #define for system_utsname so sysctl will compile.\nThis define will be removed in a separate patch.\n\n[akpm@osdl.org: build fix, cleanup]\nSigned-off-by: Serge Hallyn \u003cserue@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\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "96b644bdec977b97a45133e5b4466ba47a7a5e65",
      "tree": "4c6d1f0d54746aa06132628379b2a0efec5e1701",
      "parents": [
        "e9ff3990f08e9a0c2839cc22808b01732ea5b3e4"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Mon Oct 02 02:18:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:21 2006 -0700"
      },
      "message": "[PATCH] namespaces: utsname: use init_utsname when appropriate\n\nIn some places, particularly drivers and __init code, the init utsns is the\nappropriate one to use.  This patch replaces those with a the init_utsname\nhelper.\n\nChanges: Removed several uses of init_utsname().  Hope I picked all the\n\tright ones in net/ipv4/ipconfig.c.  These are now changed to\n\tutsname() (the per-process namespace utsname) in the previous\n\tpatch (2/7)\n\n[akpm@osdl.org: CIFS fix]\nSigned-off-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: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e9ff3990f08e9a0c2839cc22808b01732ea5b3e4",
      "tree": "c638a7b89f0c5e8adc410316d06ca1de8b8dabee",
      "parents": [
        "0bdd7aab7f0ecd5d337910816aa058c18398628e"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Mon Oct 02 02:18:11 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:21 2006 -0700"
      },
      "message": "[PATCH] namespaces: utsname: switch to using uts namespaces\n\nReplace references to system_utsname to the per-process uts namespace\nwhere appropriate.  This includes things like uname.\n\nChanges: Per Eric Biederman\u0027s comments, use the per-process uts namespace\n\tfor ELF_PLATFORM, sunrpc, and parts of net/ipv4/ipconfig.c\n\n[jdike@addtoit.com: UML fix]\n[clg@fr.ibm.com: cleanup]\n[akpm@osdl.org: build fix]\nSigned-off-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: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0bdd7aab7f0ecd5d337910816aa058c18398628e",
      "tree": "b4f89c36e84fc48e756e0fe1dc052839e42a012f",
      "parents": [
        "fab413a334a7b3dd2688c5cd5d4718476e430ea4"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Mon Oct 02 02:18:10 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:21 2006 -0700"
      },
      "message": "[PATCH] namespaces: utsname: introduce temporary helpers\n\nDefine utsname() and init_utsname() which return \u0026system_utsname.  Users of\nsystem_utsname will be changed to use these helpers, after which\nsystem_utsname will disappear.\n\nSigned-off-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: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fab413a334a7b3dd2688c5cd5d4718476e430ea4",
      "tree": "2ffc4f9e97545bbd3608636abc0b4d9d4c09847c",
      "parents": [
        "1651e14e28a2d9f446018ef522882e0709a2ce4f"
      ],
      "author": {
        "name": "Cedric Le Goater",
        "email": "clg@fr.ibm.com",
        "time": "Mon Oct 02 02:18:09 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:21 2006 -0700"
      },
      "message": "[PATCH] namespaces: exit_task_namespaces() invalidates nsproxy\n\nexit_task_namespaces() has replaced the former exit_namespace().  It\ninvalidates task-\u003ensproxy and associated namespaces.  This is an issue for\nthe (futur) pid namespace which is required to be valid in exit_notify().\n\nThis patch moves exit_task_namespaces() after exit_notify() to keep nsproxy\nvalid.\n\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Serge E. Hallyn \u003cserue@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\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1651e14e28a2d9f446018ef522882e0709a2ce4f",
      "tree": "401ff78624fdc4b445f3f95174a223acaf6a4ca0",
      "parents": [
        "0437eb594e6e5e699248f865482e61034be846d0"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Mon Oct 02 02:18:08 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:20 2006 -0700"
      },
      "message": "[PATCH] namespaces: incorporate fs namespace into nsproxy\n\nThis moves the mount namespace into the nsproxy.  The mount namespace count\nnow refers to the number of nsproxies point to it, rather than the number of\ntasks.  As a result, the unshare_namespace() function in kernel/fork.c no\nlonger checks whether it is being shared.\n\nSigned-off-by: Serge Hallyn \u003cserue@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\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0437eb594e6e5e699248f865482e61034be846d0",
      "tree": "1cf333f108c6d613f54b2a91fe1ad0f12a04bace",
      "parents": [
        "ab516013ad9ca47f1d3a936fa81303bfbf734d52"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Mon Oct 02 02:18:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:20 2006 -0700"
      },
      "message": "[PATCH] nsproxy: move init_nsproxy into kernel/nsproxy.c\n\nMove the init_nsproxy definition out of arch/ into kernel/nsproxy.c.  This\navoids all arches having to be updated.  Compiles and boots on s390.\n\nSigned-off-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: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ab516013ad9ca47f1d3a936fa81303bfbf734d52",
      "tree": "643ea9c4c3d28958cb42dd87b1856f74edd22b11",
      "parents": [
        "b1ba4ddde0cf67991d89f039365eaaeda61aa027"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Mon Oct 02 02:18:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:20 2006 -0700"
      },
      "message": "[PATCH] namespaces: add nsproxy\n\nThis patch adds a nsproxy structure to the task struct.  Later patches will\nmove the fs namespace pointer into this structure, and introduce a new utsname\nnamespace into the nsproxy.\n\nThe vserver and openvz functionality, then, would be implemented in large part\nby virtualizing/isolating more and more resources into namespaces, each\ncontained in the nsproxy.\n\n[akpm@osdl.org: build fix]\nSigned-off-by: Serge Hallyn \u003cserue@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\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b1ba4ddde0cf67991d89f039365eaaeda61aa027",
      "tree": "fe5b2ea0eb589014542b05c7a68b46131097e961",
      "parents": [
        "f5dd3d6fadf98a53b35d20427ca198fda42f1251"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Oct 02 02:18:05 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:20 2006 -0700"
      },
      "message": "[PATCH] make kernel/sysctl.c:_proc_do_string() static\n\nThis patch makes the needlessly global _proc_do_string() static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f5dd3d6fadf98a53b35d20427ca198fda42f1251",
      "tree": "2e1deb1d0fb69002f459ae8dc90b2d26c24ca480",
      "parents": [
        "12fd352038c037ba3a7071a2ca8597c55114abc3"
      ],
      "author": {
        "name": "Sam Vilain",
        "email": "sam.vilain@catalyst.net.nz",
        "time": "Mon Oct 02 02:18:04 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:20 2006 -0700"
      },
      "message": "[PATCH] proc: sysctl: add _proc_do_string helper\n\nThe logic in proc_do_string is worth re-using without passing in a\nctl_table structure (say, we want to calculate a pointer and pass that in\ninstead); pass in the two fields it uses from that structure as explicit\narguments.\n\nSigned-off-by: Sam Vilain \u003csam.vilain@catalyst.net.nz\u003e\nCc: Serge E. Hallyn \u003cserue@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\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "12fd352038c037ba3a7071a2ca8597c55114abc3",
      "tree": "a3d8c7ba34bd340167c160474bab8104d1d78baa",
      "parents": [
        "eed2965af1bae30f746e936d80ad4fabb9e208c8"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Oct 02 02:18:03 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:20 2006 -0700"
      },
      "message": "[PATCH] nfsd: lockdep annotation\n\nwhile doing a kernel make modules_install install over an NFS mount.\n\n  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n  [ INFO: possible recursive locking detected ]\n  ---------------------------------------------\n  nfsd/9550 is trying to acquire lock:\n   (\u0026inode-\u003ei_mutex){--..}, at: [\u003cc034c845\u003e] mutex_lock+0x1c/0x1f\n\n  but task is already holding lock:\n   (\u0026inode-\u003ei_mutex){--..}, at: [\u003cc034c845\u003e] mutex_lock+0x1c/0x1f\n\n  other info that might help us debug this:\n  2 locks held by nfsd/9550:\n   #0:  (hash_sem){..--}, at: [\u003ccc895223\u003e] exp_readlock+0xd/0xf [nfsd]\n   #1:  (\u0026inode-\u003ei_mutex){--..}, at: [\u003cc034c845\u003e] mutex_lock+0x1c/0x1f\n\n  stack backtrace:\n   [\u003cc0103508\u003e] show_trace_log_lvl+0x58/0x152\n   [\u003cc0103b8b\u003e] show_trace+0xd/0x10\n   [\u003cc0103c2f\u003e] dump_stack+0x19/0x1b\n   [\u003cc012aa57\u003e] __lock_acquire+0x77a/0x9a3\n   [\u003cc012af4a\u003e] lock_acquire+0x60/0x80\n   [\u003cc034c6c2\u003e] __mutex_lock_slowpath+0xa7/0x20e\n   [\u003cc034c845\u003e] mutex_lock+0x1c/0x1f\n   [\u003cc0162edc\u003e] vfs_unlink+0x34/0x8a\n   [\u003ccc891d98\u003e] nfsd_unlink+0x18f/0x1e2 [nfsd]\n   [\u003ccc89884f\u003e] nfsd3_proc_remove+0x95/0xa2 [nfsd]\n   [\u003ccc88f0d4\u003e] nfsd_dispatch+0xc0/0x178 [nfsd]\n   [\u003cc033e84d\u003e] svc_process+0x3a5/0x5ed\n   [\u003ccc88f5ba\u003e] nfsd+0x1a7/0x305 [nfsd]\n   [\u003cc0101005\u003e] kernel_thread_helper+0x5/0xb\n  DWARF2 unwinder stuck at kernel_thread_helper+0x5/0xb\n  Leftover inexact backtrace:\n   [\u003cc0103b8b\u003e] show_trace+0xd/0x10\n   [\u003cc0103c2f\u003e] dump_stack+0x19/0x1b\n   [\u003cc012aa57\u003e] __lock_acquire+0x77a/0x9a3\n   [\u003cc012af4a\u003e] lock_acquire+0x60/0x80\n   [\u003cc034c6c2\u003e] __mutex_lock_slowpath+0xa7/0x20e\n   [\u003cc034c845\u003e] mutex_lock+0x1c/0x1f\n   [\u003cc0162edc\u003e] vfs_unlink+0x34/0x8a\n   [\u003ccc891d98\u003e] nfsd_unlink+0x18f/0x1e2 [nfsd]\n   [\u003ccc89884f\u003e] nfsd3_proc_remove+0x95/0xa2 [nfsd]\n   [\u003ccc88f0d4\u003e] nfsd_dispatch+0xc0/0x178 [nfsd]\n   [\u003cc033e84d\u003e] svc_process+0x3a5/0x5ed\n   [\u003ccc88f5ba\u003e] nfsd+0x1a7/0x305 [nfsd]\n   [\u003cc0101005\u003e] kernel_thread_helper+0x5/0xb\n\n  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n  [ INFO: possible recursive locking detected ]\n  ---------------------------------------------\n  nfsd/9580 is trying to acquire lock:\n   (\u0026inode-\u003ei_mutex){--..}, at: [\u003cc034cc1d\u003e] mutex_lock+0x1c/0x1f\n\n  but task is already holding lock:\n   (\u0026inode-\u003ei_mutex){--..}, at: [\u003cc034cc1d\u003e] mutex_lock+0x1c/0x1f\n\n  other info that might help us debug this:\n  2 locks held by nfsd/9580:\n   #0:  (hash_sem){..--}, at: [\u003ccc89522b\u003e] exp_readlock+0xd/0xf [nfsd]\n   #1:  (\u0026inode-\u003ei_mutex){--..}, at: [\u003cc034cc1d\u003e] mutex_lock+0x1c/0x1f\n\n  stack backtrace:\n   [\u003cc0103508\u003e] show_trace_log_lvl+0x58/0x152\n   [\u003cc0103b8b\u003e] show_trace+0xd/0x10\n   [\u003cc0103c2f\u003e] dump_stack+0x19/0x1b\n   [\u003cc012aa63\u003e] __lock_acquire+0x77a/0x9a3\n   [\u003cc012af56\u003e] lock_acquire+0x60/0x80\n   [\u003cc034ca9a\u003e] __mutex_lock_slowpath+0xa7/0x20e\n   [\u003cc034cc1d\u003e] mutex_lock+0x1c/0x1f\n   [\u003ccc892ad1\u003e] nfsd_setattr+0x2c8/0x499 [nfsd]\n   [\u003ccc893ede\u003e] nfsd_create_v3+0x31b/0x4ac [nfsd]\n   [\u003ccc8984a1\u003e] nfsd3_proc_create+0x128/0x138 [nfsd]\n   [\u003ccc88f0d4\u003e] nfsd_dispatch+0xc0/0x178 [nfsd]\n   [\u003cc033ec1d\u003e] svc_process+0x3a5/0x5ed\n   [\u003ccc88f5ba\u003e] nfsd+0x1a7/0x305 [nfsd]\n   [\u003cc0101005\u003e] kernel_thread_helper+0x5/0xb\n  DWARF2 unwinder stuck at kernel_thread_helper+0x5/0xb\n  Leftover inexact backtrace:\n   [\u003cc0103b8b\u003e] show_trace+0xd/0x10\n   [\u003cc0103c2f\u003e] dump_stack+0x19/0x1b\n   [\u003cc012aa63\u003e] __lock_acquire+0x77a/0x9a3\n   [\u003cc012af56\u003e] lock_acquire+0x60/0x80\n   [\u003cc034ca9a\u003e] __mutex_lock_slowpath+0xa7/0x20e\n   [\u003cc034cc1d\u003e] mutex_lock+0x1c/0x1f\n   [\u003ccc892ad1\u003e] nfsd_setattr+0x2c8/0x499 [nfsd]\n   [\u003ccc893ede\u003e] nfsd_create_v3+0x31b/0x4ac [nfsd]\n   [\u003ccc8984a1\u003e] nfsd3_proc_create+0x128/0x138 [nfsd]\n   [\u003ccc88f0d4\u003e] nfsd_dispatch+0xc0/0x178 [nfsd]\n   [\u003cc033ec1d\u003e] svc_process+0x3a5/0x5ed\n   [\u003ccc88f5ba\u003e] nfsd+0x1a7/0x305 [nfsd]\n   [\u003cc0101005\u003e] kernel_thread_helper+0x5/0xb\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "eed2965af1bae30f746e936d80ad4fabb9e208c8",
      "tree": "bcb8d2f435f612f6b0d3cc6eac8b39e8dd22f45b",
      "parents": [
        "bfd241600a3b0db4fe43c859f1460d0a958d924a"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:18:02 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:20 2006 -0700"
      },
      "message": "[PATCH] knfsd: allow admin to set nthreads per node\n\nAdd /proc/fs/nfsd/pool_threads which allows the sysadmin (or a userspace\ndaemon) to read and change the number of nfsd threads in each pool.  The\nformat is a list of space-separated integers, one per pool.\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bfd241600a3b0db4fe43c859f1460d0a958d924a",
      "tree": "7f04604adee7249e686d1db0cac93f1fee8bc5b6",
      "parents": [
        "eec09661dc82e90a31051d045a94026a91aceb82"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:18:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:20 2006 -0700"
      },
      "message": "[PATCH] knfsd: make rpc threads pools numa aware\n\nActually implement multiple pools.  On NUMA machines, allocate a svc_pool per\nNUMA node; on SMP a svc_pool per CPU; otherwise a single global pool.  Enqueue\nsockets on the svc_pool corresponding to the CPU on which the socket bh is run\n(i.e.  the NIC interrupt CPU).  Threads have their cpu mask set to limit them\nto the CPUs in the svc_pool that owns them.\n\nThis is the patch that allows an Altix to scale NFS traffic linearly\nbeyond 4 CPUs and 4 NICs.\n\nIncorporates changes and feedback from Neil Brown, Trond Myklebust, and\nChristoph Hellwig.\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "eec09661dc82e90a31051d045a94026a91aceb82",
      "tree": "2d487c532ce0fc0535709b599a034838e142ce75",
      "parents": [
        "a74554429eada89a7ddb47317e6a2968d03e41a2"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:18:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:20 2006 -0700"
      },
      "message": "[PATCH] knfsd: use svc_set_num_threads to manage threads in knfsd\n\nReplace the existing list of all nfsd threads with new code using\nsvc_create_pooled().\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a74554429eada89a7ddb47317e6a2968d03e41a2",
      "tree": "0ebf1550dd1fdafd2900af44ea85d75831172fa3",
      "parents": [
        "9a24ab5749a31aa10ee60d9310ad72f24d7c38ab"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:19 2006 -0700"
      },
      "message": "[PATCH] knfsd: add svc_set_num_threads\n\nCurrently knfsd keeps its own list of all nfsd threads in nfssvc.c; add a new\nway of managing the list of all threads in a svc_serv.  Add\nsvc_create_pooled() to allow creation of a svc_serv whose threads are managed\nby the sunrpc code.  Add svc_set_num_threads() to manage the number of threads\nin a service, either per-pool or globally across the service.\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9a24ab5749a31aa10ee60d9310ad72f24d7c38ab",
      "tree": "bae1805492889c3d59017571c062ce4a02e024aa",
      "parents": [
        "3262c816a3d7fb1eaabce633caa317887ed549ae"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:19 2006 -0700"
      },
      "message": "[PATCH] knfsd: add svc_get\n\nadd svc_get() for those occasions when we need to temporarily bump up\nsvc_serv-\u003esv_nrthreads as a pseudo refcount.\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3262c816a3d7fb1eaabce633caa317887ed549ae",
      "tree": "5b635d8b62b9724ab2b1e5563aad37e35b894406",
      "parents": [
        "c081a0c7cfe42adf8e8b9c2b8d0b2ec7f47603e8"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:19 2006 -0700"
      },
      "message": "[PATCH] knfsd: split svc_serv into pools\n\nSplit out the list of idle threads and pending sockets from svc_serv into a\nnew svc_pool structure, and allocate a fixed number (in this patch, 1) of\npools per svc_serv.  The new structure contains a lock which takes over\nseveral of the duties of svc_serv-\u003esv_lock, which is now relegated to\nprotecting only sv_tempsocks, sv_permsocks, and sv_tmpcnt in svc_serv.\n\nThe point is to move the hottest fields out of svc_serv and into svc_pool,\nallowing a following patch to arrange for a svc_pool per NUMA node or per CPU.\n This is a major step towards making the NFS server NUMA-friendly.\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c081a0c7cfe42adf8e8b9c2b8d0b2ec7f47603e8",
      "tree": "b8be50680c576427f29195946332bacd56eb1055",
      "parents": [
        "5685f0fa1c24b138d041ef129ed419c5effa40e1"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:19 2006 -0700"
      },
      "message": "[PATCH] knfsd: test and set SK_BUSY atomically\n\nThe SK_BUSY bit in svc_sock-\u003esk_flags ensures that we do not attempt to\nenqueue a socket twice.  Currently, setting and clearing the bit is protected\nby svc_serv-\u003esv_lock.  As I intend to reduce the data that the lock protects\nso it\u0027s not held when svc_sock_enqueue() tests and sets SK_BUSY, that test and\nset needs to be atomic.\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5685f0fa1c24b138d041ef129ed419c5effa40e1",
      "tree": "068c413c32cc7735a590d4ec16efe55894e67b80",
      "parents": [
        "1a68d952af5f43032012d26dd0d5164c9e9986bc"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:19 2006 -0700"
      },
      "message": "[PATCH] knfsd: convert sk_reserved to atomic_t\n\nConvert the svc_sock-\u003esk_reserved variable from an int protected by\nsvc_serv-\u003esv_lock, to an atomic.  This reduces (by 1) the number of places we\nneed to take the (effectively global) svc_serv-\u003esv_lock.\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1a68d952af5f43032012d26dd0d5164c9e9986bc",
      "tree": "6c660f3ee27205a4c4f18883b2205f873cf396be",
      "parents": [
        "c45c357d7dbc9e94338f44349e0035149da86b26"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:19 2006 -0700"
      },
      "message": "[PATCH] knfsd: use new lock for svc_sock deferred list\n\nProtect the svc_sock-\u003esk_deferred list with a new lock svc_sock-\u003esk_defer_lock\ninstead of svc_serv-\u003esv_lock.  Using the more fine-grained lock reduces the\nnumber of places we need to take the svc_serv lock.\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c45c357d7dbc9e94338f44349e0035149da86b26",
      "tree": "b04388ccaccd5fb304b4bd8be57258d52e79f886",
      "parents": [
        "36bdfc8bae51339aa27ef8e4ce148185293061ae"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:54 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:19 2006 -0700"
      },
      "message": "[PATCH] knfsd: convert sk_inuse to atomic_t\n\nConvert the svc_sock-\u003esk_inuse counter from an int protected by\nsvc_serv-\u003esv_lock, to an atomic.  This reduces the number of places we need to\ntake the (effectively global) svc_serv-\u003esv_lock.\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "36bdfc8bae51339aa27ef8e4ce148185293061ae",
      "tree": "deab54ff70d6991c1e5be0d9efe97d10f65375b0",
      "parents": [
        "4a3ae42dc312dbdffee803efaf393421b79f997a"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:54 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:19 2006 -0700"
      },
      "message": "[PATCH] knfsd: move tempsock aging to a timer\n\nFollowing are 11 patches from Greg Banks which combine to make knfsd more\nNuma-aware.  They reduce hitting on \u0027global\u0027 data structures, and create some\ndata-structures that can be node-local.\n\nknfsd threads are bound to a particular node, and the thread to handle a new\nrequest is chosen from the threads that are attach to the node that received\nthe interrupt.\n\nThe distribution of threads across nodes can be controlled by a new file in\nthe \u0027nfsd\u0027 filesystem, though the default approach of an even spread is\nprobably fine for most sites.\n\nSome (old) numbers that show the efficacy of these patches: N \u003d\u003d number of\nNICs \u003d\u003d number of CPUs \u003d\u003d nmber of clients.  Number of NUMA nodes \u003d\u003d N/2\n\nN\tThroughput, MiB/s\tCPU usage, % (max\u003dN*100)\n\tBefore\tAfter\t\tBefore\tAfter\n\t---\t------\t----\t\t-----\t-----\n\t4\t312\t435\t\t350\t228\n\t6\t500\t656\t\t501\t418\n\t8\t562\t804\t\t690\t589\n\nThis patch:\n\nMove the aging of RPC/TCP connection sockets from the main svc_recv() loop to\na timer which uses a mark-and-sweep algorithm every 6 minutes.  This reduces\nthe amount of work that needs to be done in the main RPC loop and the length\nof time we need to hold the (effectively global) svc_serv-\u003esv_lock.\n\n[akpm@osdl.org: cleanup]\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4a3ae42dc312dbdffee803efaf393421b79f997a",
      "tree": "d18249c89fc1a5ab273beec1639cde769a0b6e96",
      "parents": [
        "7dcf91ec6698fe8564ad91bbe42740aacaa0d9ee"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Oct 02 02:17:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:18 2006 -0700"
      },
      "message": "[PATCH] knfsd: Correctly handle error condition from lockd_up\n\nIf lockd_up fails - what should we expect?  Do we have to later call\nlockd_down?\n\nWell the nfs client thinks \"no\", the nfs server thinks \"yes\".  lockd thinks\n\"yes\".\n\nThe only answer that really makes sense is \"no\" !!\n\nSo:\n  Make lockd_up only increment  nlmsvc_users on success.\n  Make nfsd handle errors from lockd_up properly.\n  Make sure lockd_up(0) never fails when lockd is running\n    so that the \u0027reclaimer\u0027 call to lockd_up doesn\u0027t need to\n    be error checked.\n\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7dcf91ec6698fe8564ad91bbe42740aacaa0d9ee",
      "tree": "65c5406dffd6a12c2ae7a26fc59448163cc3f78e",
      "parents": [
        "3dfb4210535303bb4c2e0ff1c4fdd4dfe9b93472"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Oct 02 02:17:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:18 2006 -0700"
      },
      "message": "[PATCH] knfsd: Move makesock failed warning into make_socks.\n\nThus it is printed for any path that leads to failure (make_socks is called\nfrom two places).\n\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3dfb4210535303bb4c2e0ff1c4fdd4dfe9b93472",
      "tree": "c4f9b8f7755dc44060af914ffc720fc196ef30c6",
      "parents": [
        "6fb2b47fa16c81317ec282248e6cff521cca31c2"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Oct 02 02:17:51 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:18 2006 -0700"
      },
      "message": "[PATCH] knfsd: Check return value of lockd_up in write_ports\n\nWe should be checking the return value of lockd_up when adding a new socket to\nnfsd.  So move the lockd_up before the svc_addsock and check the return value.\n\nThe move is because lockd_down is easy, but there is no easy way to remove a\nrecently added socket.\n\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6fb2b47fa16c81317ec282248e6cff521cca31c2",
      "tree": "226d823e900aba03fb7ee55cab3a9137fd5d9077",
      "parents": [
        "896440d560de3bca6813e83792f431edf5073318"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Oct 02 02:17:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:18 2006 -0700"
      },
      "message": "[PATCH] knfsd: Drop \u0027serv\u0027 option to svc_recv and svc_process\n\nIt isn\u0027t needed as it is available in rqstp-\u003erq_server, and dropping it allows\nsome local vars to be dropped.\n\n[akpm@osdl.org: build fix]\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "896440d560de3bca6813e83792f431edf5073318",
      "tree": "38f140167006e40c969d89797af2719ce3e387ad",
      "parents": [
        "bc6f02e516b487ada46823fb05f237a0ef705f92"
      ],
      "author": {
        "name": "Josh Triplett",
        "email": "josht@us.ibm.com",
        "time": "Mon Oct 02 02:17:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:18 2006 -0700"
      },
      "message": "[PATCH] nfsd: add lock annotations to e_start and e_stop\n\ne_start acquires svc_export_cache.hash_lock, and e_stop releases it.  Add\nlock annotations to these two functions so that sparse can check callers\nfor lock pairing, and so that sparse will not complain about these\nfunctions since they intentionally use locks in this manner.\n\nSigned-off-by: Josh Triplett \u003cjosh@freedesktop.org\u003e\nCc: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bc6f02e516b487ada46823fb05f237a0ef705f92",
      "tree": "17ab76373f238bc8888e357c92a91834d3be367b",
      "parents": [
        "b41b66d63c730cc45a1024e1f1e67439e507e40f"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:18 2006 -0700"
      },
      "message": "[PATCH] knfsd: Use SEQ_START_TOKEN instead of hardcoded magic (void*)1\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nAcked-by: NeilBrown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b41b66d63c730cc45a1024e1f1e67439e507e40f",
      "tree": "85f623c087a90ccf08a8264c638df5504f972c0d",
      "parents": [
        "80212d59e32a8a8e030c2ddc5861d8ff70542c56"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Oct 02 02:17:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:18 2006 -0700"
      },
      "message": "[PATCH] knfsd: allow sockets to be passed to nfsd via \u0027portlist\u0027\n\nUserspace should create and bind a socket (but not connectted) and write the\n\u0027fd\u0027 to portlist.  This will cause the nfs server to listen on that socket.\n\nTo close a socket, the name of the socket - as read from \u0027portlist\u0027 can be\nwritten to \u0027portlist\u0027 with a preceding \u0027-\u0027.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "80212d59e32a8a8e030c2ddc5861d8ff70542c56",
      "tree": "fb708f92e50ab8a1c13b68d4e6e3db8b50bd07a8",
      "parents": [
        "02a375f0ac4bc2e9b767fabb6b2f9915547226a7"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Oct 02 02:17:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:18 2006 -0700"
      },
      "message": "[PATCH] knfsd: define new nfsdfs file: portlist - contains list of ports\n\nThis file will list all ports that nfsd has open.\nDefault when TCP enabled will be\n   ipv4 udp 0.0.0.0 2049\n   ipv4 tcp 0.0.0.0 2049\n\nLater, the list of ports will be settable.\n\n\u0027portlist\u0027 chosen rather than \u0027ports\u0027, to avoid unnecessary confusion with\nnon-mainline patches which created \u0027ports\u0027 with different semantics.\n\n[akpm@osdl.org: cleanups, build fix]\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "02a375f0ac4bc2e9b767fabb6b2f9915547226a7",
      "tree": "997bf0cb90d644acd2f573b9e04cf92eaf216e08",
      "parents": [
        "6658d3a7bbfd1768a7b599def47939417f0ee8ef"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Oct 02 02:17:46 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:18 2006 -0700"
      },
      "message": "[PATCH] knfsd: separate out some parts of nfsd_svc, which start nfs servers\n\nSeparate out the code for creating a new service, and for creating initial\nsockets.\n\nSome of these new functions will have multiple callers soon.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6658d3a7bbfd1768a7b599def47939417f0ee8ef",
      "tree": "fd3ddac035bac92204836de1e11a0078fe54d5b9",
      "parents": [
        "24e36663c375df577d2dcae437713481ffd6850c"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Oct 02 02:17:46 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:17 2006 -0700"
      },
      "message": "[PATCH] knfsd: remove nfsd_versbits as intermediate storage for desired versions\n\nWe have an array \u0027nfsd_version\u0027 which lists the available versions of nfsd,\nand \u0027nfsd_versions\u0027 (poor choice there :-() which lists the currently active\nversions.\n\nThen we have a bitmap - nfsd_versbits which says which versions are wanted.\nThe bits in this bitset cause content to be copied from nfsd_version to\nnfsd_versions when nfsd starts.\n\nThis patch removes nfsd_versbits and moves information directly from\nnfsd_version to nfsd_versions when requests for version changes arrive.\n\nNote that this doesn\u0027t make it possible to change versions while the server is\nrunning.  This is because serv-\u003esv_xdrsize is calculated when a service is\ncreated, and used when threads are created, and xdrsize depends on the active\nversions.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "24e36663c375df577d2dcae437713481ffd6850c",
      "tree": "dd738e582b663c433eef3a53eb593a518439a285",
      "parents": [
        "bc591ccff27e6a85d3a0d6fcb16cfadcc45267a8"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Oct 02 02:17:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:17 2006 -0700"
      },
      "message": "[PATCH] knfsd: be more selective in which sockets lockd listens on\n\nCurrently lockd listens on UDP always, and TCP if CONFIG_NFSD_TCP is set.\n\nHowever as lockd performs services of the client as well, this is a problem.\nIf CONFIG_NfSD_TCP is not set, and a tcp mount is used, the server will not be\nable to call back to lockd.\n\nSo:\n - add an option to lockd_up saying which protocol is needed\n - Always open sockets for which an explicit port was given, otherwise\n   only open a socket of the type required\n - Change nfsd to do one lockd_up per socket rather than one per thread.\n\nThis\n - removes the dependancy on CONFIG_NFSD_TCP\n - means that lockd may open sockets other than at startup\n - means that lockd will *not* listen on UDP if the only\n   mounts are TCP mount (and nfsd hasn\u0027t started).\n\nThe latter is the only one that concerns me at all - I don\u0027t know if this\nmight be a problem with some servers.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bc591ccff27e6a85d3a0d6fcb16cfadcc45267a8",
      "tree": "20692a805b32ce5541f7175192f8ab81975434ec",
      "parents": [
        "40f10522173c34e56cb9bf2fd37c62f69a427f1b"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Oct 02 02:17:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:17 2006 -0700"
      },
      "message": "[PATCH] knfsd: add a callback for when last rpc thread finishes\n\nnfsd has some cleanup that it wants to do when the last thread exits, and\nthere will shortly be some more.  So collect this all into one place and\ndefine a callback for an rpc service to call when the service is about to be\ndestroyed.\n\n[akpm@osdl.org: cleanups, build fix]\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "40f10522173c34e56cb9bf2fd37c62f69a427f1b",
      "tree": "eadd3c0956b4523acadfa961d41841f873afc714",
      "parents": [
        "b06c7b43335788a62f77a9be9cc8eb479a929853"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:43 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:17 2006 -0700"
      },
      "message": "[PATCH] knfsd: remove an unused variable from auth_unix_lookup()\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b06c7b43335788a62f77a9be9cc8eb479a929853",
      "tree": "8d03fc86d84d3f3f70d612442b2ba9a7fba7e3c0",
      "parents": [
        "3e3b480096568d58d931df6104ef7ca80757efd3"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:42 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:17 2006 -0700"
      },
      "message": "[PATCH] knfsd: remove an unused variable from e_show()\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3e3b480096568d58d931df6104ef7ca80757efd3",
      "tree": "bc57536cd52f2ba59c03ab23c003aae0628abba9",
      "parents": [
        "a406c3664e171ca8f20dfb339074b26eb2674ac0"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:41 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:17 2006 -0700"
      },
      "message": "[PATCH] knfsd: add some missing newlines in printks\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a406c3664e171ca8f20dfb339074b26eb2674ac0",
      "tree": "be0333419c9c966f7190726132fb8957b51641bc",
      "parents": [
        "e16b38f71322efd8a221f64b6ddc0748d21d2e1a"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:41 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:17 2006 -0700"
      },
      "message": "[PATCH] cpumask: export node_to_cpu_mask consistently\n\ncpumask: ensure that node_to_cpumask() is available to modules for all\nsupported combinations of architecture and CONFIG_NUMA.\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e16b38f71322efd8a221f64b6ddc0748d21d2e1a",
      "tree": "da1932ba711a23fbbdf09d8c8cc8dbb02b1190d1",
      "parents": [
        "0f532f3861d2c4e5aa7dcd33fb18e9975eb28457"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:17 2006 -0700"
      },
      "message": "[PATCH] cpumask: export cpu_online_map and cpu_possible_map consistently\n\ncpumask: ensure that the cpu_online_map and cpu_possible_map bitmasks, and\nhence all the macros in \u003clinux/cpumask.h\u003e that require them, are available to\nmodules for all supported combinations of architecture and CONFIG_SMP.\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0f532f3861d2c4e5aa7dcd33fb18e9975eb28457",
      "tree": "4b4cf436bbc94a1659fdb25314ff7b17624e80a1",
      "parents": [
        "ca8af486765852302931bb69075871d5564e1e5b"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@melbourne.sgi.com",
        "time": "Mon Oct 02 02:17:39 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:17 2006 -0700"
      },
      "message": "[PATCH] cpumask: add highest_possible_node_id\n\ncpumask: add highest_possible_node_id(), analogous to\nhighest_possible_processor_id().\n\n[pj@sgi.com: fix typo]\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ca8af486765852302931bb69075871d5564e1e5b",
      "tree": "b298caf449ec0ab49bb7a477258c39e87227a985",
      "parents": [
        "fd0fbcc27fd72a11dacc3f1a1681ee4dfd256a0b"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Mon Oct 02 02:17:38 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:16 2006 -0700"
      },
      "message": "[PATCH] isdn: work around excessive udelay()\n\nAs reported in http://bugzilla.kernel.org/show_bug.cgi?id\u003d6970, ISDN can issue\nexcessively-long udelays, which triggers a build-time error on ARM.\n\nThis is very sucky of ISDN, but I doubt if anyone is going to suddenly fix it.\nSo change the macro to do the microsecond counting itself.\n\nCc: \u003ctch@wpkg.org\u003e\nCc: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fd0fbcc27fd72a11dacc3f1a1681ee4dfd256a0b",
      "tree": "174ad2a7044a04b878c89cd407e8e63435efd4f3",
      "parents": [
        "8bb31b9d5340ed3dfef45d322f59fcf18a0d598b"
      ],
      "author": {
        "name": "Tilman Schmidt",
        "email": "tilman@imap.cc",
        "time": "Mon Oct 02 02:17:37 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:16 2006 -0700"
      },
      "message": "[PATCH] isdn4linux: Gigaset driver: fix __must_check warning\n\nThis patch to the Siemens Gigaset driver fixes the compile warning\n\"ignoring return value of \u0027class_device_create_file\u0027, declared with\nattribute warn_unused_result\" appearing with CONFIG_ENABLE_MUST_CHECK\u003dy in\nrelease 2.6.18-rc1-mm1.\n\nSigned-off-by: Tilman Schmidt \u003ctilman@imap.cc\u003e\nAcked-by: Hansjoerg Lipp \u003chjlipp@web.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8bb31b9d5340ed3dfef45d322f59fcf18a0d598b",
      "tree": "b0c225ebc5ed8ca6b0ad3c10b09f715d9ad67ad9",
      "parents": [
        "99219a3fbc2dcf2eaa954f7b2ac27299fd7894cd"
      ],
      "author": {
        "name": "Ankita Garg",
        "email": "ankita@in.ibm.com",
        "time": "Mon Oct 02 02:17:36 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:16 2006 -0700"
      },
      "message": "[PATCH] Linux Kernel Dump Test Module\n\nA simple module to test Linux Kernel Dump mechanism.  This module uses\njprobes to install/activate pre-defined crash points.  At different crash\npoints, various types of crashing scenarios are created like a BUG(),\npanic(), exception, recursive loop and stack overflow.  The user can\nactivate a crash point with specific type by providing parameters at the\ntime of module insertion.  Please see the file header for usage\ninformation.  The module is based on the Linux Kernel Dump Test Tool by\nFernando \u003chttp://lkdtt.sourceforge.net\u003e.\n\nThis module could be merged with mainline. Jprobes is used here so that the\ncontext in which crash point is hit, could be maintained. This implements\nall the crash points as done by LKDTT except the one in the middle of\ntasklet_action().\n\nSigned-off-by: Ankita Garg \u003cankita@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "99219a3fbc2dcf2eaa954f7b2ac27299fd7894cd",
      "tree": "895abde156c9fbeea9c5a87cfaaa411d4ad175c6",
      "parents": [
        "f2aa85a0ccd90110e76c6375535adc3ae358f971"
      ],
      "author": {
        "name": "bibo,mao",
        "email": "bibo.mao@intel.com",
        "time": "Mon Oct 02 02:17:35 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:16 2006 -0700"
      },
      "message": "[PATCH] kretprobe spinlock deadlock patch\n\nkprobe_flush_task() possibly calls kfree function during holding\nkretprobe_lock spinlock, if kfree function is probed by kretprobe that will\nincur spinlock deadlock.  This patch moves kfree function out scope of\nkretprobe_lock.\n\nSigned-off-by: bibo, mao \u003cbibo.mao@intel.com\u003e\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f2aa85a0ccd90110e76c6375535adc3ae358f971",
      "tree": "dc4db8faacd37ec0d09ec719b53b8550cbe0dbc9",
      "parents": [
        "62c27be0dd8144e11bd3ed054a0fb890579925f8"
      ],
      "author": {
        "name": "bibo,mao",
        "email": "bibo.mao@intel.com",
        "time": "Mon Oct 02 02:17:34 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:16 2006 -0700"
      },
      "message": "[PATCH] disallow kprobes on notifier_call_chain\n\nWhen kprobe is re-entered, the re-entered kprobe kernel path will will call\natomic_notifier_call_chain function, if this function is kprobed that will\nincur numerous kprobe recursive fault.  This patch disallows kprobes on\natomic_notifier_call_chain function.\n\nSigned-off-by: bibo, mao \u003cbibo.mao@intel.com\u003e\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "62c27be0dd8144e11bd3ed054a0fb890579925f8",
      "tree": "1884eaafd723059b903b81db513ca3bf5b06774b",
      "parents": [
        "09b18203d772db318ef92f6908c439ee5a35a4f9"
      ],
      "author": {
        "name": "bibo,mao",
        "email": "bibo.mao@intel.com",
        "time": "Mon Oct 02 02:17:33 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:16 2006 -0700"
      },
      "message": "[PATCH] kprobe whitespace cleanup\n\nWhitespace is used to indent, this patch cleans up these sentences by\nkernel coding style.\n\nSigned-off-by: bibo, mao \u003cbibo.mao@intel.com\u003e\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "09b18203d772db318ef92f6908c439ee5a35a4f9",
      "tree": "70d05f58602ab72b761360dd91ac55f59a9d9600",
      "parents": [
        "b3f827cb0fe0660c2eacea2c2f9bdb1f225ff768"
      ],
      "author": {
        "name": "Ananth N Mavinakayanahalli",
        "email": "ananth@in.ibm.com",
        "time": "Mon Oct 02 02:17:32 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:16 2006 -0700"
      },
      "message": "[PATCH] Update Documentation/kprobes.txt\n\nDocumentation/kprobes.txt updated to reflect:\n\no In-kernel symbol resolution\no CONFIG_KALLSYMS dependency\no Usage of JPROBE_ENTRY\no Addition of regs_return_value()\n\nAlso update the references list and usage examples to use correct module\ninterfaces.\n\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nAcked-by: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b3f827cb0fe0660c2eacea2c2f9bdb1f225ff768",
      "tree": "ae912b3b929526184eeca0519550635dc39b5362",
      "parents": [
        "412998cf6bce78b8dc5f68660e09bf3b4fcbb210"
      ],
      "author": {
        "name": "Ananth N Mavinakayanahalli",
        "email": "ananth@in.ibm.com",
        "time": "Mon Oct 02 02:17:31 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:16 2006 -0700"
      },
      "message": "[PATCH] Add regs_return_value() helper\n\nAdd the regs_return_value() macro to extract the return value in an\narchitecture agnostic manner, given the pt_regs.\n\nOther architecture maintainers may want to add similar helpers.\n\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nSigned-off-by: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "412998cf6bce78b8dc5f68660e09bf3b4fcbb210",
      "tree": "109202550c743399c7b3a1b7c216aaa35e074d38",
      "parents": [
        "3a872d89baae821a0f6e2c1055d4b47650661137"
      ],
      "author": {
        "name": "Ananth N Mavinakayanahalli",
        "email": "ananth@in.ibm.com",
        "time": "Mon Oct 02 02:17:31 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:16 2006 -0700"
      },
      "message": "[PATCH] kprobes: handle symbol resolution when \u003cmodule:.symbol\u003e is specified\n\nkallsyms_lookup_name() allows for \u003cmodule:symbol\u003e style specification for\nlooking up symbol addresses.  Handle the case where the user specifies\n\u003cmodule:.symbol\u003e on powerpc, given that 64-bit powerpc uses function\ndescriptors.\n\nSigned-off-by: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3a872d89baae821a0f6e2c1055d4b47650661137",
      "tree": "5ac6aa55e04960e02f25ff5079078f975957b1b3",
      "parents": [
        "782237a2418e2561a87c86a4832726931adce737"
      ],
      "author": {
        "name": "Ananth N Mavinakayanahalli",
        "email": "ananth@in.ibm.com",
        "time": "Mon Oct 02 02:17:30 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:16 2006 -0700"
      },
      "message": "[PATCH] Kprobes: Make kprobe modules more portable\n\nIn an effort to make kprobe modules more portable, here is a patch that:\n\no Introduces the \"symbol_name\" field to struct kprobe.\n  The symbol-\u003eaddress resolution now happens in the kernel in an\n  architecture agnostic manner. 64-bit powerpc users no longer have\n  to specify the \".symbols\"\no Introduces the \"offset\" field to struct kprobe to allow a user to\n  specify an offset into a symbol.\no The legacy mechanism of specifying the kprobe.addr is still supported.\n  However, if both the kprobe.addr and kprobe.symbol_name are specified,\n  probe registration fails with an -EINVAL.\no The symbol resolution code uses kallsyms_lookup_name(). So\n  CONFIG_KPROBES now depends on CONFIG_KALLSYMS\no Apparantly kprobe modules were the only legitimate out-of-tree user of\n  the kallsyms_lookup_name() EXPORT. Now that the symbol resolution\n  happens in-kernel, remove the EXPORT as suggested by Christoph Hellwig\no Modify tcp_probe.c that uses the kprobe interface so as to make it\n  work on multiple platforms (in its earlier form, the code wouldn\u0027t\n  work, say, on powerpc)\n\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nSigned-off-by: Prasanna S Panchamukhi \u003cprasanna@in.ibm.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "782237a2418e2561a87c86a4832726931adce737",
      "tree": "2d647654b23bb2867e3c785d22090c7f12298f78",
      "parents": [
        "2425c08b37244005ff221efe4957d8aaff18609c"
      ],
      "author": {
        "name": "Cedric Le Goater",
        "email": "clg@fr.ibm.com",
        "time": "Mon Oct 02 02:17:28 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:15 2006 -0700"
      },
      "message": "[PATCH] s390: update fs3270 to use a struct pid\n\nReplaces the pid_t value with a struct pid to avoid pid wrap around\nproblems.\n\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2425c08b37244005ff221efe4957d8aaff18609c",
      "tree": "488a298587acb651bd6964c0f9d53c9f48327362",
      "parents": [
        "43fa1adb9334bf4585cd53144eb5911488f85bc7"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:28 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:15 2006 -0700"
      },
      "message": "[PATCH] usb: fixup usb so it uses struct pid\n\nThe problem with remembering a user space process by its pid is that it is\npossible that the process will exit, pid wrap around will occur.\nConverting to a struct pid avoid that problem, and paves the way for\nimplementing a pid namespace.\n\nAlso since usb is the only user of kill_proc_info_as_uid rename\nkill_proc_info_as_uid to kill_pid_info_as_uid and have the new version take\na struct pid.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "43fa1adb9334bf4585cd53144eb5911488f85bc7",
      "tree": "64be64424e7db15e1872077f900870895ccac85b",
      "parents": [
        "a03fcb730b4fe7da14ca4405f23dbde717b1d2b9"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:27 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:15 2006 -0700"
      },
      "message": "[PATCH] file: Add locking to f_getown\n\nThis has been needed for a long time, but now with the advent of a\nreference counted struct pid there are real consequences for getting this\nwrong.\n\nSomeone I think it was Oleg Nesterov pointed out that this construct was\nmissing locking, when I introduced struct pid.  After taking time to review\nthe locking construct already present I figured out which lock needs to be\ntaken.  The other paths that access f_owner.pid take either the f_owner\nread or the write lock.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a03fcb730b4fe7da14ca4405f23dbde717b1d2b9",
      "tree": "0a24b625def867ddfa7e04a82b15905b77284743",
      "parents": [
        "f40f50d3bb33b52dfd550ca80be7daaddad21883"
      ],
      "author": {
        "name": "Cedric Le Goater",
        "email": "clg@fr.ibm.com",
        "time": "Mon Oct 02 02:17:26 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:15 2006 -0700"
      },
      "message": "[PATCH] update mq_notify to use a struct pid\n\nMessage queues can signal a process waiting for a message.\n\nThis patch replaces the pid_t value with a struct pid to avoid pid wrap\naround problems.\n\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nAcked-by: Eric Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f40f50d3bb33b52dfd550ca80be7daaddad21883",
      "tree": "4197df6e1da9e986dc6a1a6cb507844ad0ae53fe",
      "parents": [
        "3fbc96486459324e182717b03c50c90c880be6ec"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:25 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:15 2006 -0700"
      },
      "message": "[PATCH] Use struct pspace in next_pidmap and find_ge_pid\n\nThis updates my proc: readdir race fix (take 3) patch\nto account for the changes made by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nto introduce struct pspace.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3fbc96486459324e182717b03c50c90c880be6ec",
      "tree": "c2b5ccb3f64913daeb040c21652e4b421cc76bca",
      "parents": [
        "aa5a6662f93f52605b6c447ba6f7291e92f515c5"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Mon Oct 02 02:17:24 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:15 2006 -0700"
      },
      "message": "[PATCH] Define struct pspace\n\nDefine a per-container pid space object.  And create one instance of this\nobject, init_pspace, to define the entire pid space.  Subsequent patches\nwill provide/use interfaces to create/destroy pid spaces.\n\nIts a subset/rework of Eric Biederman\u0027s patch\nhttp://lkml.org/lkml/2006/2/6/285 .\n\nSigned-off-by: Eric Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "aa5a6662f93f52605b6c447ba6f7291e92f515c5",
      "tree": "233cfe0942063c81a582d8451ddd2a38d40566e9",
      "parents": [
        "d387cae075b0aec479adbdfb71df39f7de8e9adb"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Mon Oct 02 02:17:23 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:15 2006 -0700"
      },
      "message": "[PATCH] Move pidmap to pspace.h\n\nMove struct pidmap and PIDMAP_ENTRIES to a new file, include/linux/pspace.h\nwhere it will be used in subsequent patches to define pid spaces.\n\nIts a subset of Eric Biederman\u0027s patch http://lkml.org/lkml/2006/2/6/285\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d387cae075b0aec479adbdfb71df39f7de8e9adb",
      "tree": "fe5c9a3b105f3edf4049c16dda4085c5f356fafe",
      "parents": [
        "c88be3eb2e01bbb21c9ccdc3805f0d3546c1898c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Oct 02 02:17:22 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:15 2006 -0700"
      },
      "message": "[PATCH] pid: simplify pid iterators\n\nI think it is hardly possible to read the current do_each_task_pid().  The\nnew version is much simpler and makes the code smaller.\n\nOnly the do_each_task_pid change is tested, the do_each_pid_task isn\u0027t.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c88be3eb2e01bbb21c9ccdc3805f0d3546c1898c",
      "tree": "a308559e3a7778d85b7aa5d8486832bdcc9899d6",
      "parents": [
        "6a1f3b84557774a46af68747c92d8f36382027ae"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:21 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:15 2006 -0700"
      },
      "message": "[PATCH] pids coding style use struct pidmap in next_pidmap\n\nUse struct pidmap instead of pidmap_t.\n\nThis updates my proc: readdir race fix (take 3) patch\nto account for the changes made by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nto kill pidmap_t.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6a1f3b84557774a46af68747c92d8f36382027ae",
      "tree": "ab0c42601a07e7b9ea92cbf6a6ecf1d486302bdf",
      "parents": [
        "b68e31d0ebbcc909d1941f9f230c9d062a3a13d3"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Mon Oct 02 02:17:20 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:14 2006 -0700"
      },
      "message": "[PATCH] pids: coding style: use struct pidmap\n\nUse struct pidmap instead of pidmap_t.\n\nIts a subset of Eric Biederman\u0027s patch http://lkml.org/lkml/2006/2/6/271.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b68e31d0ebbcc909d1941f9f230c9d062a3a13d3",
      "tree": "b32902e5de02081cbb9eca49d7bb0b444e2b4f23",
      "parents": [
        "ed97bd37efd8ff7398d3a7eedf4bcbf245f5dad3"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Oct 02 02:17:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:14 2006 -0700"
      },
      "message": "[PATCH] const struct tty_operations\n\nAs part of an SMP cleanliness pass over UML, I consted a bunch of\nstructures in order to not have to document their locking.  One of these\nstructures was a struct tty_operations.  In order to const it in UML\nwithout introducing compiler complaints, the declaration of\ntty_set_operations needs to be changed, and then all of its callers need to\nbe fixed.\n\nThis patch declares all struct tty_operations in the tree as const.  In all\ncases, they are static and used only as input to tty_set_operations.  As an\nextra check, I ran an i386 allyesconfig build which produced no extra\nwarnings.\n\n53 drivers are affected.  I checked the history of a bunch of them, and in\nmost cases, there have been only a handful of maintenance changes in the\nlast six months.  serial_core.c was the busiest one that I looked at.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ed97bd37efd8ff7398d3a7eedf4bcbf245f5dad3",
      "tree": "79817438dc5b3e004ba91d593228dc8aefcda3e8",
      "parents": [
        "07acaf28d21e710bcf1cec91c0cfdb1a7b5e3d65"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andi@rhlx01.fht-esslingen.de",
        "time": "Mon Oct 02 02:17:17 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:14 2006 -0700"
      },
      "message": "[PATCH] fs/inode.c tweaks\n\nOnly touch inode\u0027s i_mtime and i_ctime to make them equal to \"now\" in case\nthey aren\u0027t yet (don\u0027t just update timestamp unconditionally).  Uninline\nthe hash function to save 259 Bytes.\n\nThis tiny inode change which may improve cache behaviour also shaves off 8\nBytes from file_update_time() on i386.\n\nIncluded a tiny codestyle cleanup, too.\n\nSigned-off-by: Andreas Mohr \u003candi@lisas.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "07acaf28d21e710bcf1cec91c0cfdb1a7b5e3d65",
      "tree": "4c3d332089cd67a1f9595c19c6576179726a4621",
      "parents": [
        "609d7fa9565c754428d2520cac2accc9052e1245"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 02 02:17:16 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:14 2006 -0700"
      },
      "message": "[PATCH] Remove NULL check in register_nls()\n\nEverybody passes valid pointer there.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "609d7fa9565c754428d2520cac2accc9052e1245",
      "tree": "1c5114ec3720166fe99ce3885e8767929a8a84e0",
      "parents": [
        "bde0d2c98bcfc9acc83ac79c33a6ac1335b95a92"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:14 2006 -0700"
      },
      "message": "[PATCH] file: modify struct fown_struct to use a struct pid\n\nFile handles can be requested to send sigio and sigurg to processes.  By\ntracking the destination processes using struct pid instead of pid_t we make\nthe interface safe from all potential pid wrap around problems.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bde0d2c98bcfc9acc83ac79c33a6ac1335b95a92",
      "tree": "1bacec61e5bd5fadaef630e95e8cc1ae618b94ff",
      "parents": [
        "81af8d67d4fc35b1ee6e0feb1f1b34b3a33eeb44"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:14 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:14 2006 -0700"
      },
      "message": "[PATCH] vt: Make vt_pid a struct pid (making it pid wrap around safe).\n\nI took a good hard look at the locking and it appears the locking on vt_pid\nis the console semaphore.  Every modified path is called under the console\nsemaphore except reset_vc when it is called from fn_SAK or do_SAK both of\nwhich appear to be in interrupt context.  In addition I need to be careful\nbecause in the presence of an oops the console_sem may be arbitrarily\ndropped.\n\nWhich leads me to conclude the current locking is inadequate for my needs.\n\nGiven the weird cases we could hit because of oops printing instead of\nintroducing an extra spin lock to protect the data and keep the pid to\nsignal and the signal to send in sync, I have opted to use xchg on just the\nstruct pid * pointer instead.\n\nDue to console_sem we will stay in sync between vt_pid and vt_mode except\nfor a small window during a SAK, or oops handling.  SAK handling should\nkill any user space process that care, and oops handling we are broken\nanyway.  Besides the worst that can happen is that I try to send the wrong\nsignal.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "81af8d67d4fc35b1ee6e0feb1f1b34b3a33eeb44",
      "tree": "0217dde7d28427e9b6ac587fd4edb9fb1f8f11b4",
      "parents": [
        "5feb8f5f8403d8874a04aac443692dfe83bd63d2"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:13 2006 -0700"
      },
      "message": "[PATCH] vt: rework the console spawning variables\n\nThis is such a rare path it took me a while to figure out how to test\nthis after soring out the locking.\n\nThis patch does several things.\n- The variables used are moved into a structure and declared in vt_kern.h\n- A spinlock is added so we don\u0027t have SMP races updating the values.\n- Instead of raw pid_t value a struct_pid is used to guard against\n  pid wrap around issues, if the daemon to spawn a new console dies.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5feb8f5f8403d8874a04aac443692dfe83bd63d2",
      "tree": "8dc23051350f9a4bd22c3172dc570e96e73f3e50",
      "parents": [
        "bbf73147e2d46611fbdcbc126f887c614c32350b"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:12 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:13 2006 -0700"
      },
      "message": "[PATCH] pid: implement pid_nr\n\nAs we stop storing pid_t\u0027s and move to storing struct pid *.  We need a way to\nget the pid_t from the struct pid to report to user space what we have stored.\n\nHaving a clean well defined way to do this is especially important as we move\nto multiple pid spaces as may need to report a different value to the caller\ndepending on which pid space the caller is in.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bbf73147e2d46611fbdcbc126f887c614c32350b",
      "tree": "1d396e49bab0d19f6712b9a82e939dacce447261",
      "parents": [
        "c4b92fc112f7be5cce308128236ff75cc98535c3"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:11 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:13 2006 -0700"
      },
      "message": "[PATCH] pid: export the symbols needed to use struct pid *\n\npids aren\u0027t something that drivers should care about.  However there are a lot\nof helper layers in the kernel that do care, and are built as modules.  Before\nI can convert them to using struct pid instead of pid_t I need to export the\nappropriate symbols so they can continue to be built.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c4b92fc112f7be5cce308128236ff75cc98535c3",
      "tree": "ea4dfac4355c64decbf6aa1ca65af76af43b90fb",
      "parents": [
        "558cb325485aaf655130f140e8ddd25392f6c972"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:10 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:13 2006 -0700"
      },
      "message": "[PATCH] pid: implement signal functions that take a struct pid *\n\nCurrently the signal functions all either take a task or a pid_t argument.\nThis patch implements variants that take a struct pid *.  After all of the\nusers have been update it is my intention to remove the variants that take a\npid_t as using pid_t can be more work (an extra hash table lookup) and\ndifficult to get right in the presence of multiple pid namespaces.\n\nThere are two kinds of functions introduced in this patch.  The are the\ngeneral use functions kill_pgrp and kill_pid which take a priv argument that\nis ultimately used to create the appropriate siginfo information, Then there\nare _kill_pgrp_info, kill_pgrp_info, kill_pid_info the internal implementation\nhelpers that take an explicit siginfo.\n\nThe distinction is made because filling out an explcit siginfo is tricky, and\nwill be even more tricky when pid namespaces are introduced.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "558cb325485aaf655130f140e8ddd25392f6c972",
      "tree": "adfea6c0b901cf6591209d29091ff5ac298843c3",
      "parents": [
        "22c935f47c03399c78e64c71b757eb36fa917ff6"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:09 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:13 2006 -0700"
      },
      "message": "[PATCH] pid: add do_each_pid_task\n\nTo avoid pid rollover confusion the kernel needs to work with struct pid *\ninstead of pid_t.  Currently there is not an iterator that walks through all\nof the tasks of a given pid type starting with a struct pid.  This prevents us\nreplacing some pid_t instances with struct pid.  So this patch adds\ndo_each_pid_task which walks through the set of task for a given pid type\nstarting with a struct pid.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "22c935f47c03399c78e64c71b757eb36fa917ff6",
      "tree": "801968ba95a13b13d25b8c7202ee0efdc4e03ad9",
      "parents": [
        "f6c7a1f34e92b0b561024ead9fa70623683025e4"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:09 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:13 2006 -0700"
      },
      "message": "[PATCH] pid: implement access helpers for a tacks various process groups\n\nIn the last round of cleaning up the pid hash table a more general struct pid\nwas introduced, that can be referenced counted.\n\nWith the more general struct pid most if not all places where we store a pid_t\nwe can now store a struct pid * and remove the need for a hash table lookup,\nand avoid any possible problems with pid roll over.\n\nLooking forward to the pid namespaces struct pid * gives us an absolute form a\npid so we can compare and use them without caring which pid namespace we are\nin.\n\nThis patchset introduces the infrastructure needed to use struct pid instead\nof pid_t, and then it goes on to convert two different kernel users that\ncurrently store a pid_t value.\n\nThere are a lot more places to go but this is enough to get the basic idea.\n\nBefore we can merge a pid namespace patch all of the kernel pid_t users need\nto be examined.  Those that deal with user space processes need to be\nconverted to using a struct pid *.  Those that deal with kernel processes need\nto converted to using the kthread api.  A rare few that only use their current\nprocesses pid values get to be left alone.\n\nThis patch:\n\ntask_session returns the struct pid of a tasks session.\ntask_pgrp    returns the struct pid of a tasks process group.\ntask_tgid    returns the struct pid of a tasks thread group.\ntask_pid     returns the struct pid of a tasks process id.\n\nThese can be used to avoid unnecessary hash table lookups, and to implement\nsafe pid comparisions in the face of a pid namespace.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f6c7a1f34e92b0b561024ead9fa70623683025e4",
      "tree": "6906523c635c28ccf7b1d4f726e8ac67cf22d362",
      "parents": [
        "20cdc894c45d2e4ab0c69e95a56b7c5ed36ae0dd"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:13 2006 -0700"
      },
      "message": "[PATCH] proc: give the root directory a task\n\nHelper functions in base.c like proc_pident_readdir and proc_pident_lookup\nassume the directories have an associated task, and cannot currently be used\non the /proc root directory because it does not have such a task.\n\nThis small changes allows for base.c to be simplified and later when multiple\npid spaces are introduced it makes getting the needed context information\ntrivial.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "20cdc894c45d2e4ab0c69e95a56b7c5ed36ae0dd",
      "tree": "889b369ebf1a54a96e8a93c2d8c49921ed2fc4b4",
      "parents": [
        "28a6d67179da6964d1640d379c5e5d4f46dd0042"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:13 2006 -0700"
      },
      "message": "[PATCH] proc: modify proc_pident_lookup to be completely table driven\n\nCurrently proc_pident_lookup gets the names and types from a table and then\nhas a huge switch statement to get the inode and file operations it needs.\nThat is silly and is becoming increasingly hard to maintain so I just put all\nof the information in the table.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "28a6d67179da6964d1640d379c5e5d4f46dd0042",
      "tree": "dac1acf4a94f5718699d287603933f49df55d1e5",
      "parents": [
        "0804ef4b0de7121261f77c565b20a11ac694e877"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmisison.com",
        "time": "Mon Oct 02 02:17:05 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:13 2006 -0700"
      },
      "message": "[PATCH] proc: reorder the functions in base.c\n\nThere were enough changes in my last round of cleaning up proc I had to break\nup the patch series into smaller chunks, and my last chunk never got resent.\n\nThis patchset gives proc dynamic inode numbers (the static inode numbers were\na pain to maintain and prevent all kinds of things), and removes the horrible\nswitch statements that had to be kept in sync with everything else.  Being\nfully table driver takes us 90% of the way of being able to register new\nprocess specific attributes in proc.\n\nThis patch:\n\nGroup the functions by what they implement instead of by type of operation.\nAs it existed base.c was quickly approaching the point where it could not be\nfollowed.\n\nNo functionality or code changes asside from adding/removing forward\ndeclartions are implemented in this patch.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0804ef4b0de7121261f77c565b20a11ac694e877",
      "tree": "ff12e3b999dc2ce66d97fce5d76cd7df073c0d5c",
      "parents": [
        "2bc2d61a9638dab670d8361e928d1a5a291173ef"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:17:04 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:12 2006 -0700"
      },
      "message": "[PATCH] proc: readdir race fix (take 3)\n\nThe problem: An opendir, readdir, closedir sequence can fail to report\nprocess ids that are continually in use throughout the sequence of system\ncalls.  For this race to trigger the process that proc_pid_readdir stops at\nmust exit before readdir is called again.\n\nThis can cause ps to fail to report processes, and it is in violation of\nposix guarantees and normal application expectations with respect to\nreaddir.\n\nCurrently there is no way to work around this problem in user space short\nof providing a gargantuan buffer to user space so the directory read all\nhappens in on system call.\n\nThis patch implements the normal directory semantics for proc, that\nguarantee that a directory entry that is neither created nor destroyed\nwhile reading the directory entry will be returned.  For directory that are\neither created or destroyed during the readdir you may or may not see them.\n Furthermore you may seek to a directory offset you have previously seen.\n\nThese are the guarantee that ext[23] provides and that posix requires, and\nmore importantly that user space expects.  Plus it is a simple semantic to\nimplement reliable service.  It is just a matter of calling readdir a\nsecond time if you are wondering if something new has show up.\n\nThese better semantics are implemented by scanning through the pids in\nnumerical order and by making the file offset a pid plus a fixed offset.\n\nThe pid scan happens on the pid bitmap, which when you look at it is\nremarkably efficient for a brute force algorithm.  Given that a typical\ncache line is 64 bytes and thus covers space for 64*8 \u003d\u003d 200 pids.  There\nare only 40 cache lines for the entire 32K pid space.  A typical system\nwill have 100 pids or more so this is actually fewer cache lines we have to\nlook at to scan a linked list, and the worst case of having to scan the\nentire pid bitmap is pretty reasonable.\n\nIf we need something more efficient we can go to a more efficient data\nstructure for indexing the pids, but for now what we have should be\nsufficient.\n\nIn addition this takes no additional locks and is actually less code than\nwhat we are doing now.\n\nAlso another very subtle bug in this area has been fixed.  It is possible\nto catch a task in the middle of de_thread where a thread is assuming the\nthread of it\u0027s thread group leader.  This patch carefully handles that case\nso if we hit it we don\u0027t fail to return the pid, that is undergoing the\nde_thread dance.\n\nThanks to KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e for\nproviding the first fix, pointing this out and working on it.\n\n[oleg@tv-sign.ru: fix it]\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Jean Delvare \u003cjdelvare@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2bc2d61a9638dab670d8361e928d1a5a291173ef",
      "tree": "f5d4cf9d3bac97f3da0bd5eb03e76797d47070cd",
      "parents": [
        "a58cbd7c249f3079dd62d6391a33b9f43f2bfbef"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Mon Oct 02 02:17:02 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:12 2006 -0700"
      },
      "message": "[PATCH] list module taint flags in Oops/panic\n\nWhen listing loaded modules during an oops or panic, also list each\nmodule\u0027s Tainted flags if non-zero (P: Proprietary or F: Forced load only).\n\nIf a module is did not taint the kernel, it is just listed like\n\tusbcore\nbut if it did taint the kernel, it is listed like\n\twizmodem(PF)\n\nExample:\n[ 3260.121718] Unable to handle kernel NULL pointer dereference at 0000000000000000 RIP:\n[ 3260.121729]  [\u003cffffffff8804c099\u003e] :dump_test:proc_dump_test+0x99/0xc8\n[ 3260.121742] PGD fe8d067 PUD 264a6067 PMD 0\n[ 3260.121748] Oops: 0002 [1] SMP\n[ 3260.121753] CPU 1\n[ 3260.121756] Modules linked in: dump_test(P) snd_pcm_oss snd_mixer_oss snd_seq snd_seq_device ide_cd generic ohci1394 snd_hda_intel snd_hda_codec snd_pcm snd_timer snd ieee1394 snd_page_alloc piix ide_core arcmsr aic79xx scsi_transport_spi usblp\n[ 3260.121785] Pid: 5556, comm: bash Tainted: P      2.6.18-git10 #1\n\n[Alternatively, I can look into listing tainted flags with \u0027lsmod\u0027,\nbut that won\u0027t help in oopsen/panics so much.]\n\n[akpm@osdl.org: cleanup]\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a58cbd7c249f3079dd62d6391a33b9f43f2bfbef",
      "tree": "2763960f7e5eff16e5e4b91aea55ebc3b58333aa",
      "parents": [
        "322acc96d4bd3debea11cd0160b18bd5d7ff0d73"
      ],
      "author": {
        "name": "Dean Nelson",
        "email": "dcn@sgi.com",
        "time": "Mon Oct 02 02:17:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:12 2006 -0700"
      },
      "message": "[PATCH] make genpool allocator adhere to kernel-doc standards\n\nThe exported kernel interfaces of genpool allocator need to adhere to\nthe requirements of kernel-doc.\n\nSigned-off-by: Dean Nelson \u003cdcn@sgi.com\u003e\nCc: Steve Wise \u003cswise@opengridcomputing.com\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "322acc96d4bd3debea11cd0160b18bd5d7ff0d73",
      "tree": "230e9c35e0ce4dac5bd1a49085152624045fb616",
      "parents": [
        "d834c16516d1ebec4766fc58c059bf01311e6045"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Mon Oct 02 02:17:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:12 2006 -0700"
      },
      "message": "[PATCH] LIB: add gen_pool_destroy()\n\nModules using the genpool allocator need to be able to destroy the data\nstructure when unloading.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Dean Nelson \u003cdcn@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d834c16516d1ebec4766fc58c059bf01311e6045",
      "tree": "8095561ebb7b01bd21e1f6ca548a3ea0b2bca675",
      "parents": [
        "4e9011d50d77ce7d234272e203235d8ecffd61a1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 13:17:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 13:17:44 2006 -0700"
      },
      "message": "pccard_store_cis: fix wrong error handling\n\nThe test for the error from pcmcia_replace_cis() was incorrect, and\nwould always trigger (because if an error didn\u0027t happen, the \"ret\" value\nwould not be zero, it would be the passed-in count).\n\nReported and debugged by Fabrice Bellet \u003cfabrice@bellet.info\u003e\n\nRather than just fix the single broken test, make the code in question\nuse an understandable code-sequence instead, fixing the whole function\nto be more readable.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4e9011d50d77ce7d234272e203235d8ecffd61a1",
      "tree": "0161b6ce6fccc3c07cebf9ed566cbd7530a34177",
      "parents": [
        "82965addad66fce61a92c5f03104ea90b0b87124"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sun Oct 01 02:22:41 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 10:39:01 2006 -0700"
      },
      "message": "[PATCH] rtc-sysfs fix\n\nIt\u0027s not clear how this thinko got through..\n\nCc: Olaf Hering \u003colaf@aepfle.de\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nCc: Alessandro Zummo \u003calessandro.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "82965addad66fce61a92c5f03104ea90b0b87124",
      "tree": "b099c6ef559ea7790b84df5ce34fa54bca46e24f",
      "parents": [
        "f0b364a13d7fba001c0571d954f165dfaf5f434a",
        "2cc1a4134f51b4aff7c7486d857e6773f493e370"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:40:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:40:55 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart:\n  [AGPGART] printk fixups.\n  [AGPGART] Use pci_get_slot not pci_find_slot\n"
    },
    {
      "commit": "f0b364a13d7fba001c0571d954f165dfaf5f434a",
      "tree": "9cd8bf4e800295e5dbf279e63b9793223fd20577",
      "parents": [
        "5a73fdc5ea836d2edc5e02890b51185fe304d7d3",
        "bfeeb0f57940b143a55dcc7ee88e8842108d9145"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:40:35 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:40:35 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq:\n  [CPUFREQ] Make acpi-cpufreq unsticky again.\n  [CPUFREQ] longhaul: remove duplicated code.\n  [CPUFREQ] Longhaul - Disable arbiter CLE266\n  [CPUFREQ] Fix section mismatch warning\n  [CPUFREQ] Fix cut-n-paste bug in suspend printk\n"
    },
    {
      "commit": "5a73fdc5ea836d2edc5e02890b51185fe304d7d3",
      "tree": "ca5c79c348eae9d4297952cb9f7ea188bf18bdaf",
      "parents": [
        "789e6ac0a7cbbb38402293256a295302fd8a1100"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 30 23:29:38 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:34 2006 -0700"
      },
      "message": "[PATCH] Some config.h removals\n\nDuring tracking down a PAE compile failure, I found that config.h was being\nincluded in a bunch of places in i386 code.  It is no longer necessary, so\ndrop it.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "789e6ac0a7cbbb38402293256a295302fd8a1100",
      "tree": "65a1c946f72bdbc8226c2fab5882cc56b9da031e",
      "parents": [
        "a93cb055a23f3172c1e6a22ac1dc4f1c07929b08"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 30 23:29:38 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:34 2006 -0700"
      },
      "message": "[PATCH] paravirt: update pte hook\n\nAdd a pte_update_hook which notifies about pte changes that have been made\nwithout using the set_pte / clear_pte interfaces.  This allows shadow mode\nhypervisors which do not trap on page table access to maintain synchronized\nshadows.\n\nIt also turns out, there was one pte update in PAE mode that wasn\u0027t using any\naccessor interface at all for setting NX protection.  Considering it is PAE\nspecific, and the accessor is i386 specific, I didn\u0027t want to add a generic\nencapsulation of this behavior yet.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a93cb055a23f3172c1e6a22ac1dc4f1c07929b08",
      "tree": "b2118140583912c78d42a3ba950be39815addc14",
      "parents": [
        "d6d861e3c963b4077c83e078e3e300c4b81f93e7"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 30 23:29:37 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:34 2006 -0700"
      },
      "message": "[PATCH] paravirt: remove set pte atomic\n\nNow that ptep_establish has a definition in PAE i386 3-level paging code, the\nonly paging model which is insane enough to have multi-word hardware PTEs\nwhich are not efficient to set atomically, we can remove the ghost of\nset_pte_atomic from other architectures which falesly duplicated it, and\nremove all knowledge of it from the generic pgtable code.\n\nset_pte_atomic is now a private pte operator which is specific to i386\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d6d861e3c963b4077c83e078e3e300c4b81f93e7",
      "tree": "842071ac905575aa0ea8bedd3a1ac5db29416bcf",
      "parents": [
        "23002d88be309a7c78db69363c9d933a29a3b0bb"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 30 23:29:36 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:34 2006 -0700"
      },
      "message": "[PATCH] paravirt: optimize ptep establish for pae\n\nThe ptep_establish macro is only used on user-level PTEs, for P-\u003eP mapping\nchanges.  Since these always happen under protection of the pagetable lock,\nthe strong synchronization of a 64-bit cmpxchg is not needed, in fact, not\neven a lock prefix needs to be used.  We can simply instead clear the P-bit,\nfollowed by a normal set.  The write ordering is still important to avoid the\npossibility of the TLB snooping a partially written PTE and getting a bad\nmapping installed.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "23002d88be309a7c78db69363c9d933a29a3b0bb",
      "tree": "ecd99ef70c0f38ff81bf2e3c6d7caeed2b88b41e",
      "parents": [
        "25e4df5bae333a06cd2c9b88baf14432652dc9f7"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 30 23:29:35 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:34 2006 -0700"
      },
      "message": "[PATCH] paravirt: kpte flush\n\nCreate a new PTE function which combines clearing a kernel PTE with the\nsubsequent flush.  This allows the two to be easily combined into a single\nhypercall or paravirt-op.  More subtly, reverse the order of the flush for\nkmap_atomic.  Instead of flushing on establishing a mapping, flush on clearing\na mapping.  This eliminates the possibility of leaving stale kmap entries\nwhich may still have valid TLB mappings.  This is required for direct mode\nhypervisors, which need to reprotect all mappings of a given page when\nchanging the page type from a normal page to a protected page (such as a page\ntable or descriptor table page).  But it also provides some nicer semantics\nfor real hardware, by providing extra debug-proofing against using stale\nmappings, as well as ensuring that no stale mappings exist when changing the\ncacheability attributes of a page, which could lead to cache conflicts when\ntwo different types of mappings exist for the same page.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "25e4df5bae333a06cd2c9b88baf14432652dc9f7",
      "tree": "d1391bf273a3a30cc428fee24a626207f5dc331b",
      "parents": [
        "6606c3e0da5360799e07ae24b05080cc85c68e72"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 30 23:29:34 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:34 2006 -0700"
      },
      "message": "[PATCH] paravirt: combine flush accessed dirty.patch\n\nRemove ptep_test_and_clear_{dirty|young} from i386, and instead use the\ndominating functions, ptep_clear_flush_{dirty|young}.  This allows the TLB\npage flush to be contained in the same macro, and allows for an eager\noptimization - if reading the PTE initially returned dirty/accessed, we can\nassume the fact that no subsequent update to the PTE which cleared accessed /\ndirty has occurred, as the only way A/D bits can change without holding the\npage table lock is if a remote processor clears them.  This eliminates an\nextra branch which came from the generic version of the code, as we know that\nno other CPU could have cleared the A/D bit, so the flush will always be\nneeded.\n\nWe still export these two defines, even though we do not actually define\nthe macros in the i386 code:\n\n #define __HAVE_ARCH_PTEP_TEST_AND_CLEAR_YOUNG\n #define __HAVE_ARCH_PTEP_TEST_AND_CLEAR_DIRTY\n\nThe reason for this is that the only use of these functions is within the\ngeneric clear_flush functions, and we want a strong guarantee that there\nare no other users of these functions, so we want to prevent the generic\ncode from defining them for us.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6606c3e0da5360799e07ae24b05080cc85c68e72",
      "tree": "5072acfc3b36e48ec84fe28805d160cbc9b28900",
      "parents": [
        "9888a1cae3f859db38b9604e3df1c02177161bb0"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 30 23:29:33 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:33 2006 -0700"
      },
      "message": "[PATCH] paravirt: lazy mmu mode hooks.patch\n\nImplement lazy MMU update hooks which are SMP safe for both direct and shadow\npage tables.  The idea is that PTE updates and page invalidations while in\nlazy mode can be batched into a single hypercall.  We use this in VMI for\nshadow page table synchronization, and it is a win.  It also can be used by\nPPC and for direct page tables on Xen.\n\nFor SMP, the enter / leave must happen under protection of the page table\nlocks for page tables which are being modified.  This is because otherwise,\nyou end up with stale state in the batched hypercall, which other CPUs can\nrace ahead of.  Doing this under the protection of the locks guarantees the\nsynchronization is correct, and also means that spurious faults which are\ngenerated during this window by remote CPUs are properly handled, as the page\nfault handler must re-check the PTE under protection of the same lock.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9888a1cae3f859db38b9604e3df1c02177161bb0",
      "tree": "5954dc5e1a2dc1251a57a41aa15b7776a530f230",
      "parents": [
        "3dc907951446b9317b1887223caa4e083390de9f"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 30 23:29:31 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:33 2006 -0700"
      },
      "message": "[PATCH] paravirt: pte clear not present\n\nChange pte_clear_full to a more appropriately named pte_clear_not_present,\nallowing optimizations when not-present mapping changes need not be reflected\nin the hardware TLB for protected page table modes.  There is also another\ncase that can use it in the fremap code.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3dc907951446b9317b1887223caa4e083390de9f",
      "tree": "addff9ee95e0caea5e895a1a674e49f38254fddd",
      "parents": [
        "bd4c8ce41a2e2f0c5bf54343ab54e8e09faec021"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 30 23:29:30 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:33 2006 -0700"
      },
      "message": "[PATCH] paravirt: remove read hazard from cow\n\nWe don\u0027t want to read PTEs directly like this after they have been modified,\nas a lazy MMU implementation of direct page tables may not have written the\nupdated PTE back to memory yet.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bd4c8ce41a2e2f0c5bf54343ab54e8e09faec021",
      "tree": "e8a7d3cfafbe6ee35672953718ba4223e450d938",
      "parents": [
        "d025c9db7f31fc0554ce7fb2dfc78d35a77f3487"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sat Sep 30 23:29:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:33 2006 -0700"
      },
      "message": "[PATCH] invalidate_inode_pages2(): ignore page refcounts\n\nThe recent fix to invalidate_inode_pages() (git commit 016eb4a) managed to\nunfix invalidate_inode_pages2().\n\nThe problem is that various bits of code in the kernel can take transient refs\non pages: the page scanner will do this when inspecting a batch of pages, and\nthe lru_cache_add() batching pagevecs also hold a ref.\n\nNet result is transient failures in invalidate_inode_pages2().  This affects\nNFS directory invalidation (observed) and presumably also block-backed\ndirect-io (not yet reported).\n\nFix it by reverting invalidate_inode_pages2() back to the old version which\nignores the page refcounts.\n\nWe may come up with something more clever later, but for now we need a 2.6.18\nfix for NFS.\n\nCc: Chuck Lever \u003ccel@citi.umich.edu\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d025c9db7f31fc0554ce7fb2dfc78d35a77f3487",
      "tree": "5da0a10cbc4b1a5cd5f04d7af2df334352df3728",
      "parents": [
        "e239ca540594cff00adcce163dc332b27015d8e5"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Sep 30 23:29:28 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:33 2006 -0700"
      },
      "message": "[PATCH] Support piping into commands in /proc/sys/kernel/core_pattern\n\nUsing the infrastructure created in previous patches implement support to\npipe core dumps into programs.\n\nThis is done by overloading the existing core_pattern sysctl\nwith a new syntax:\n\n|program\n\nWhen the first character of the pattern is a \u0027|\u0027 the kernel will instead\nthreat the rest of the pattern as a command to run.  The core dump will be\nwritten to the standard input of that program instead of to a file.\n\nThis is useful for having automatic core dump analysis without filling up\ndisks.  The program can do some simple analysis and save only a summary of\nthe core dump.\n\nThe core dump proces will run with the privileges and in the name space of\nthe process that caused the core dump.\n\nI also increased the core pattern size to 128 bytes so that longer command\nlines fit.\n\nMost of the changes comes from allowing core dumps without seeks.  They are\nfairly straight forward though.\n\nOne small incompatibility is that if someone had a core pattern previously\nthat started with \u0027|\u0027 they will get suddenly new behaviour.  I think that\u0027s\nunlikely to be a real problem though.\n\nAdditional background:\n\n\u003e Very nice, do you happen to have a program that can accept this kind of\n\u003e input for crash dumps?  I\u0027m guessing that the embedded people will\n\u003e really want this functionality.\n\nI had a cheesy demo/prototype.  Basically it wrote the dump to a file again,\nran gdb on it to get a backtrace and wrote the summary to a shared directory.\nThen there was a simple CGI script to generate a \"top 10\" crashes HTML\nlisting.\n\nUnfortunately this still had the disadvantage to needing full disk space for a\ndump except for deleting it afterwards (in fact it was worse because over the\npipe holes didn\u0027t work so if you have a holey address map it would require\nmore space).\n\nFortunately gdb seems to be happy to handle /proc/pid/fd/xxx input pipes as\ncores (at least it worked with zsh\u0027s \u003d(cat core) syntax), so it would be\nlikely possible to do it without temporary space with a simple wrapper that\ncalls it in the right way.  I ran out of time before doing that though.\n\nThe demo prototype scripts weren\u0027t very good.  If there is really interest I\ncan dig them out (they are currently on a laptop disk on the desk with the\nlaptop itself being in service), but I would recommend to rewrite them for any\nserious application of this and fix the disk space problem.\n\nAlso to be really useful it should probably find a way to automatically fetch\nthe debuginfos (I cheated and just installed them in advance).  If nobody else\ndoes it I can probably do the rewrite myself again at some point.\n\nMy hope at some point was that desktops would support it in their builtin\ncrash reporters, but at least the KDE people I talked too seemed to be happy\nwith their user space only solution.\n\nAlan sayeth:\n\n  I don\u0027t believe that piping as such as neccessarily the right model, but\n  the ability to intercept and processes core dumps from user space is asked\n  for by many enterprise users as well.  They want to know about, capture,\n  analyse and process core dumps, often centrally and in automated form.\n\n[akpm@osdl.org: loff_t !\u003d unsigned long]\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e239ca540594cff00adcce163dc332b27015d8e5",
      "tree": "8dfb5c0be4864d738df5a5282e56d9e57ce8261f",
      "parents": [
        "d6cbd281d189977b38eac7eb2a4678de19b6b483"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Sep 30 23:29:27 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:33 2006 -0700"
      },
      "message": "[PATCH] Create call_usermodehelper_pipe()\n\nA new member in the ever growing family of call_usermode* functions is\nborn.  The new call_usermodehelper_pipe() function allows to pipe data to\nthe stdin of the called user mode progam and behaves otherwise like the\nnormal call_usermodehelp() (except that it always waits for the child to\nfinish)\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d6cbd281d189977b38eac7eb2a4678de19b6b483",
      "tree": "f853d303687275cd4328bfac53780b7c7c2c67ef",
      "parents": [
        "65da4d81f48e092f71feaf04bf2ccd096b5a5171"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Sep 30 23:29:26 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:33 2006 -0700"
      },
      "message": "[PATCH] Some cleanup in the pipe code\n\nSplit the big and hard to read do_pipe function into smaller pieces.\n\nThis creates new create_write_pipe/free_write_pipe/create_read_pipe\nfunctions.  These functions are made global so that they can be used by\nother parts of the kernel.\n\nThe resulting code is more generic and easier to read and has cleaner error\nhandling and less gotos.\n\n[akpm@osdl.org: cleanup]\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "65da4d81f48e092f71feaf04bf2ccd096b5a5171",
      "tree": "a6822f8aac500b3ab8dae04a2abc615ec4e187ea",
      "parents": [
        "af907dc8cd4157d629e48533b3400786467340d5"
      ],
      "author": {
        "name": "Amol Lad",
        "email": "amol@verismonetworks.com",
        "time": "Sat Sep 30 23:29:25 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:32 2006 -0700"
      },
      "message": "[PATCH] ioremap balanced with iounmap for drivers/serial/sunsu.c\n\nioremap must be balanced by an iounmap and failing to do so can result\nin a memory leak.\n\nSigned-off-by: Amol Lad \u003camol@verismonetworks.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: David S. Miller \u003cdavem@sunset.davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "af907dc8cd4157d629e48533b3400786467340d5",
      "tree": "9eaba954eed9be9133a60a94e342fef46b8f9a03",
      "parents": [
        "a141a04330bd6eadf7081a0860dc786be7d09c46"
      ],
      "author": {
        "name": "Amol Lad",
        "email": "amol@verismonetworks.com",
        "time": "Sat Sep 30 23:29:25 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:32 2006 -0700"
      },
      "message": "[PATCH] ioremap balanced with iounmap for drivers/serial/mux.c\n\nioremap must be balanced by an iounmap and failing to do so can result\nin a memory leak.\n\nSigned-off-by: Amol Lad \u003camol@verismonetworks.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a141a04330bd6eadf7081a0860dc786be7d09c46",
      "tree": "d493b835c4c204f55a96b556539743d708cb065b",
      "parents": [
        "be618f550cb499db263e2ce22c5ad4f4dbfd53e6"
      ],
      "author": {
        "name": "Amol Lad",
        "email": "amol@verismonetworks.com",
        "time": "Sat Sep 30 23:29:24 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:32 2006 -0700"
      },
      "message": "[PATCH] ioremap balanced with iounmap for drivers/serial/mpsc.c\n\nioremap must be balanced by an iounmap and failing to do so can result\nin a memory leak.\n\nSigned-off-by: Amol Lad \u003camol@verismonetworks.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Mark A. Greer \u003cmgreer@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "be618f550cb499db263e2ce22c5ad4f4dbfd53e6"
}
