)]}'
{
  "log": [
    {
      "commit": "3f2e05e90e0846c42626e3d272454f26be34a1bc",
      "tree": "8a1701fcb7cde32373b6d7ceca09376416bf94eb",
      "parents": [
        "9ec52099e4b8678a60e9f93e41ad87885d64f3e6"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Mon Oct 02 14:12:31 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 08:03:31 2006 -0700"
      },
      "message": "[PATCH] BLOCK: Revert patch to hack around undeclared sigset_t in linux/compat.h\n\nRevert Andrew Morton\u0027s patch to temporarily hack around the lack of a\ndeclaration of sigset_t in linux/compat.h to make the block-disablement\npatches build on IA64.  This got accidentally pushed to Linus and should\nbe fixed in a different manner.\n\nAlso make linux/compat.h #include asm/signal.h to gain a definition of\nsigset_t so that it can externally declare sigset_from_compat().\n\nThis has been compile-tested for i386, x86_64, ia64, mips, mips64, frv, ppc and\nppc64 and run-tested on frv.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1a657f78dcc8ea7c53eaa1f2a45ea2315738c15f",
      "tree": "a19972027792082fed505c8d540f7d877e37c0ab",
      "parents": [
        "1c0d04c9e44f4a248335c33d2be7c7f7b06ff359"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Oct 02 02:18:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:25 2006 -0700"
      },
      "message": "[PATCH] introduce get_task_pid() to fix unsafe get_pid()\n\nproc_pid_make_inode:\n\n\tei-\u003epid \u003d get_pid(task_pid(task));\n\nI think this is not safe.  get_pid() can be preempted after checking \"pid\n!\u003d NULL\".  Then the task exits, does detach_pid(), and RCU frees the pid.\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": "1c0d04c9e44f4a248335c33d2be7c7f7b06ff359",
      "tree": "6eb913a14a86311158e9a36cc28cd765b179b023",
      "parents": [
        "5e61feafa2c641c2a013ba94eec56c411011cc94"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:18:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:25 2006 -0700"
      },
      "message": "[PATCH] proc: comment what proc_fill_cache does\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": "5e61feafa2c641c2a013ba94eec56c411011cc94",
      "tree": "2d6285e3261b106dc8a98cb9aa522096754c862a",
      "parents": [
        "7bcd6b0efd5216f2f208e92150b0e5b9bea2c210"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:18:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:25 2006 -0700"
      },
      "message": "[PATCH] proc: remove the useless SMP-safe comments from /proc\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": "7bcd6b0efd5216f2f208e92150b0e5b9bea2c210",
      "tree": "c27e9291d2579fe0914133cf9d9c18d853351a5f",
      "parents": [
        "8e95bd936df2d3fc0e773068aa34350306a5c52a"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:18:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:25 2006 -0700"
      },
      "message": "[PATCH] proc: remove trailing blank entry from pid_entry arrays\n\nIt was pointed out that since I am taking ARRAY_SIZE anyway the trailing empty\nentry is silly and just wastes space.\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": "8e95bd936df2d3fc0e773068aa34350306a5c52a",
      "tree": "fe8c3cdeb892d73e2302c2595d4790e49e2ba858",
      "parents": [
        "b0fa9db6abdb2875a6d3069ddc6a2846a73fa5cd"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:18:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:24 2006 -0700"
      },
      "message": "[PATCH] proc: properly compute TGID_OFFSET\n\nThe value doesn\u0027t change but this ensures I will have the proper value when\nother files are added to proc_base_stuff.\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": "b0fa9db6abdb2875a6d3069ddc6a2846a73fa5cd",
      "tree": "840fd70ce726f94ff389d97dd012e53ae02f1dcf",
      "parents": [
        "a593d6edeb0a5a2c6e6919b225cec668a375df52"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Oct 02 02:18:54 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:24 2006 -0700"
      },
      "message": "[PATCH] proc: drop tasklist lock in task_state()\n\ntask_state() needs tasklist_lock to protect -\u003eparent/-\u003ereal_parent.  However\ntask-\u003eparent points to nowhere only when the actions below happen in order\n\n\t1) release_task(task)\n\t2) release_task(task-\u003eparent)\n\t3) a grace period passed\n\nBut 3) implies that the memory ops from 1) should be finished, so pid_alive()\ncan\u0027t be true in such a case.\n\nOtherwise, we don\u0027t care if -\u003eparent/-\u003ereal_parent changes under us.\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": "a593d6edeb0a5a2c6e6919b225cec668a375df52",
      "tree": "f61ea811ad6c9d6bbba9268bdb08cf507fab5e93",
      "parents": [
        "5e6b3f42edc20e988b186fbfb9eec174294222ea"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Oct 02 02:18:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:24 2006 -0700"
      },
      "message": "[PATCH] proc: convert do_task_stat() to use lock_task_sighand()\n\nDrop tasklist_lock. -\u003esiglock protects almost all interesting data\n(including sub-threads traversal) except:\n\n\t-\u003esignal-\u003etty\n\t\tprotected by tty_mutex\n\n\t-\u003ereal_parent\n\t\tthe task can\u0027t be unhashed while we are holding\n\t\t-\u003esiglock, so -\u003ereal_parent can change from under us\n\t\tbut we can safely dereference it under rcu_read_lock()\n\n\t-\u003epgrp/-\u003esession\n\t\twe can get inconsistent numbers if the task does\n\t\tsys_setsid/daemonize at the same time. I hope this\n\t\tis acceptable.\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": "5e6b3f42edc20e988b186fbfb9eec174294222ea",
      "tree": "3a99b922dab485df36e3a839b315b1ef2af5b0e9",
      "parents": [
        "7fbaac005cab2f3b4d6999cdb32fb93d442c5cdb"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Oct 02 02:18:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:24 2006 -0700"
      },
      "message": "[PATCH] proc: convert task_sig() to use lock_task_sighand()\n\nlock_task_sighand() can take -\u003esiglock without holding tasklist_lock.\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": "7fbaac005cab2f3b4d6999cdb32fb93d442c5cdb",
      "tree": "5e97a4a30d7659ff688500e997387c38d042faa4",
      "parents": [
        "72d9dcfc7afd80fe98334ec23531b638ee54df8b"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:18:51 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:24 2006 -0700"
      },
      "message": "[PATCH] proc: Use pid_task instead of open coding it\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": "72d9dcfc7afd80fe98334ec23531b638ee54df8b",
      "tree": "63d03e1e77457d479d65a48ac1df11032ad9197f",
      "parents": [
        "61a28784028e6d55755e4d0f39bee8d9bf2ee8d9"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:18:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:24 2006 -0700"
      },
      "message": "[PATCH] proc: Merge proc_tid_attr and proc_tgid_attr\n\nThe implementation is exactly the same and there is currently nothing to\ndistinguish proc_tid_attr, and proc_tgid_attr.  So it is pointless to have two\nseparate implementations.\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": "61a28784028e6d55755e4d0f39bee8d9bf2ee8d9",
      "tree": "ee114d76871f98da80ab14e9a86416da27a1787e",
      "parents": [
        "444ceed8d186631fdded5e3f24dc20b93d0d3fda"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:18:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:24 2006 -0700"
      },
      "message": "[PATCH] proc: Remove the hard coded inode numbers\n\nThe hard coded inode numbers in proc currently limit its maintainability,\nits flexibility, and what can be done with the rest of system.  /proc limits\npid-max to 32768 on 32 bit systems it limits fd-max to 32768 on all systems,\nand placing the pid in the inode number really gets in the way of implementing\nsubdirectories of per process information.\n\nEver since people started adding to the middle of the file type enumeration we\nhaven\u0027t been maintaing the historical inode numbers, all we have really\nsucceeded in doing is keeping the pid in the proc inode number.  The pid is\nalready available in the directory name so no information is lost removing it\nfrom the inode number.\n\nSo if something in user space cares if we remove the inode number from the\n/proc inode it is almost certainly broken.\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": "444ceed8d186631fdded5e3f24dc20b93d0d3fda",
      "tree": "c543ebbb4d1c8448770502be32c9166f2c3ef485",
      "parents": [
        "801199ce805a2412bbcd9bfe213092ec656013dd"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:18:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:24 2006 -0700"
      },
      "message": "[PATCH] proc: Factor out an instantiate method from every lookup method\n\nTo remove the hard coded proc inode numbers it is necessary to be able to\ncreate the proc inodes during readdir.  The instantiate methods are the subset\nof lookup that is needed to accomplish that.\n\nThis first step just splits the lookup methods into 2 functions.\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": "801199ce805a2412bbcd9bfe213092ec656013dd",
      "tree": "18e465cd852cc8a5105fea4e08b6a63503ee8077",
      "parents": [
        "c5f2420a063fcc5a4cd6610c3ef6934827853001"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 02 02:18:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:24 2006 -0700"
      },
      "message": "[PATCH] proc: Make the generation of the self symlink table driven\n\nThis patch generalizes the concept of files in /proc that are related to\nprocesses but live in the root directory of /proc\n\nIdeally this would reuse infrastructure from the rest of the process specific\nparts of proc but unfortunately security_task_to_inode must not be called on\nfiles that are not strictly per process.  security_task_to_inode really needs\nto be reexamined as the security label can change in important places that we\nare not currently catching, but I\u0027m not certain that simplifies this problem.\n\nBy at least matching the structure of the rest of proc we get more idiom reuse\nand it becomes easier to spot problems in the way things are put together.\n\nLater things like /proc/mounts are likely to be moved into proc_base as well.\nIf union mounts are ever supported we may be able to make /proc a union mount,\nand properly split it into 2 filesystems.\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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "ce71ec36840368b877fb63bd14c8e67ab62d08b1",
      "tree": "55ea3caaa339881dfd66d787b3dbbb964825d07a",
      "parents": [
        "17ff785691503f63ec648df82a7fdaece7695561"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Sat Sep 30 23:29:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:30 2006 -0700"
      },
      "message": "[PATCH] r/o bind mounts: monitor zeroing of i_nlink\n\nSome filesystems, instead of simply decrementing i_nlink, simply zero it\nduring an unlink operation.  We need to catch these in addition to the\ndecrement operations.\n\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "17ff785691503f63ec648df82a7fdaece7695561",
      "tree": "9777f4787253941c723aac1e13ab37fb285bcc4a",
      "parents": [
        "d8c76e6f45c111c32a4b3e50a2adc9210737b0d8"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Sat Sep 30 23:29:05 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:30 2006 -0700"
      },
      "message": "[PATCH] r/o bind mounts: clean up OCFS2 nlink handling\n\nOCFS2 does some operations on i_nlink, then reverts them if some of its\noperations fail to complete.  This does not fit in well with the\ndrop_nlink() logic where we expect i_nlink to stay at zero once it gets\nthere.\n\nSo, delay all of the nlink operations until we\u0027re sure that the operations\nhave completed.  Also, introduce a small helper to check whether an inode\nhas proper \"unlinkable\" i_nlink counts no matter whether it is a directory\nor regular inode.\n\nThis patch is broken out from the others because it does contain some\nlogical changes.\n\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d8c76e6f45c111c32a4b3e50a2adc9210737b0d8",
      "tree": "25521b59d48c6d8c9aec1af54dbe5008ad4b215b",
      "parents": [
        "9a53c3a783c2fa9b969628e65695c11c3e51e673"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Sat Sep 30 23:29:04 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:30 2006 -0700"
      },
      "message": "[PATCH] r/o bind mount prepwork: inc_nlink() helper\n\nThis is mostly included for parity with dec_nlink(), where we will have some\nmore hooks.  This one should stay pretty darn straightforward for now.\n\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9a53c3a783c2fa9b969628e65695c11c3e51e673",
      "tree": "5a6115e18ee105246d46e3db3d5b07749d232f5b",
      "parents": [
        "aab520e2f6c80160cabd187a8d0292d1cec8ff68"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Sat Sep 30 23:29:03 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:30 2006 -0700"
      },
      "message": "[PATCH] r/o bind mounts: unlink: monitor i_nlink\n\nWhen a filesystem decrements i_nlink to zero, it means that a write must be\nperformed in order to drop the inode from the filesystem.\n\nWe\u0027re shortly going to have keep filesystems from being remounted r/o between\nthe time that this i_nlink decrement and that write occurs.\n\nSo, add a little helper function to do the decrements.  We\u0027ll tie into it in a\nbit to note when i_nlink hits zero.\n\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "aab520e2f6c80160cabd187a8d0292d1cec8ff68",
      "tree": "e066da750f4aba3e5b472a2fafd5d267876420e2",
      "parents": [
        "6902d925d568cd5bfda8a1a328bf08d26d1bab46"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Sat Sep 30 23:29:02 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:30 2006 -0700"
      },
      "message": "[PATCH] r/o bind mount prepwork: move open_namei()\u0027s vfs_create()\n\nThe code around vfs_create() in open_namei() is getting a bit too complex.\nRight now, there is at least the reference count on the dentry, and the\ni_mutex to worry about.  Soon, we\u0027ll also have mnt_writecount.\n\nSo, break the vfs_create() call out of open_namei(), and into a helper\nfunction.  This duplicates the call to may_open(), but that isn\u0027t such a bad\nthing since the arguments (acc_mode and flag) were being heavily massaged\nanyway.\n\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6902d925d568cd5bfda8a1a328bf08d26d1bab46",
      "tree": "02f3cc489d0e47fb688587222d1793bd9298679b",
      "parents": [
        "db5fed26b2e0beed939b773dd5896077a1794d65"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Sat Sep 30 23:29:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:30 2006 -0700"
      },
      "message": "[PATCH] r/o bind mounts: prepare for write access checks: collapse if()\n\nWe\u0027re shortly going to be adding a bunch more permission checks in these\nfunctions.  That requires adding either a bunch of new if() conditions, or\nsome gotos.  This patch collapses existing if()s and uses gotos instead to\nprepare for the upcoming changes.\n\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8f0ab5147951267134612570604cf8341901a80c",
      "tree": "d394edb3ab69396128e7971136f05fd71d863ece",
      "parents": [
        "9acc1853519a0473620d424105f9d49ea5b4e62e"
      ],
      "author": {
        "name": "Jay Lan",
        "email": "jlan@engr.sgi.com",
        "time": "Sat Sep 30 23:28:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:29 2006 -0700"
      },
      "message": "[PATCH] csa: convert CONFIG tag for extended accounting routines\n\nThere were a few accounting data/macros that are used in CSA but are #ifdef\u0027ed\ninside CONFIG_BSD_PROCESS_ACCT.  This patch is to change those ifdef\u0027s from\nCONFIG_BSD_PROCESS_ACCT to CONFIG_TASK_XACCT.  A few defines are moved from\nkernel/acct.c and include/linux/acct.h to kernel/tsacct.c and\ninclude/linux/tsacct_kern.h.\n\nSigned-off-by: Jay Lan \u003cjlan@sgi.com\u003e\nCc: Shailabh Nagar \u003cnagar@watson.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Jes Sorensen \u003cjes@sgi.com\u003e\nCc: Chris Sturtivant \u003ccsturtiv@sgi.com\u003e\nCc: Tony Ernst \u003ctee@sgi.com\u003e\nCc: Guillaume Thouvenin \u003cguillaume.thouvenin@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "eed4e51fb60c3863c134a5e9f6006b29805ead97",
      "tree": "edb0a80d75c454ad77001f3bd1a87933cbcff53f",
      "parents": [
        "543ade1fc901db4c3dbe9fb27241fb977f1f3eea"
      ],
      "author": {
        "name": "Badari Pulavarty",
        "email": "pbadari@us.ibm.com",
        "time": "Sat Sep 30 23:28:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:29 2006 -0700"
      },
      "message": "[PATCH] Add vector AIO support\n\nThis work is initially done by Zach Brown to add support for vectored aio.\nThese are the core changes for AIO to support\nIOCB_CMD_PREADV/IOCB_CMD_PWRITEV.\n\n[akpm@osdl.org: huge build fix]\nSigned-off-by: Zach Brown \u003czach.brown@oracle.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nAcked-by: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "543ade1fc901db4c3dbe9fb27241fb977f1f3eea",
      "tree": "cdd1a1f67a718adf71e92fe08e4b3d33bf3dbadc",
      "parents": [
        "ee0b3e671baff681d69fbf0db33b47603c0a8280"
      ],
      "author": {
        "name": "Badari Pulavarty",
        "email": "pbadari@us.ibm.com",
        "time": "Sat Sep 30 23:28:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:28 2006 -0700"
      },
      "message": "[PATCH] Streamline generic_file_* interfaces and filemap cleanups\n\nThis patch cleans up generic_file_*_read/write() interfaces.  Christoph\nHellwig gave me the idea for this clean ups.\n\nIn a nutshell, all filesystems should set .aio_read/.aio_write methods and use\ndo_sync_read/ do_sync_write() as their .read/.write methods.  This allows us\nto cleanup all variants of generic_file_* routines.\n\nFinal available interfaces:\n\ngeneric_file_aio_read() - read handler\ngeneric_file_aio_write() - write handler\ngeneric_file_aio_write_nolock() - no lock write handler\n\n__generic_file_aio_write_nolock() - internal worker routine\n\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.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": "ee0b3e671baff681d69fbf0db33b47603c0a8280",
      "tree": "3202ff815b2196c6c353bc5b28d7a2800df273ec",
      "parents": [
        "027445c37282bc1ed26add45e573ad2d3e4860a5"
      ],
      "author": {
        "name": "Badari Pulavarty",
        "email": "pbadari@us.ibm.com",
        "time": "Sat Sep 30 23:28:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:28 2006 -0700"
      },
      "message": "[PATCH] Remove readv/writev methods and use aio_read/aio_write instead\n\nThis patch removes readv() and writev() methods and replaces them with\naio_read()/aio_write() methods.\n\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.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": "027445c37282bc1ed26add45e573ad2d3e4860a5",
      "tree": "93eab101a938ffebaea64703033c8649df4d73f0",
      "parents": [
        "9ea0f9499d15c49df23e7aac4332d830c40e12d0"
      ],
      "author": {
        "name": "Badari Pulavarty",
        "email": "pbadari@us.ibm.com",
        "time": "Sat Sep 30 23:28:46 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:28 2006 -0700"
      },
      "message": "[PATCH] Vectorize aio_read/aio_write fileop methods\n\nThis patch vectorizes aio_read() and aio_write() methods to prepare for\ncollapsing all aio \u0026 vectored operations into one interface - which is\naio_read()/aio_write().\n\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Michael Holzheu \u003cHOLZHEU@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9ea0f9499d15c49df23e7aac4332d830c40e12d0",
      "tree": "e6a68575b3aa3a6ee0db0acf1c6469c0308bf0a7",
      "parents": [
        "5a2618e6a972f305496daa257a56a09dd3acca29"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Sat Sep 30 23:28:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:28 2006 -0700"
      },
      "message": "[PATCH] reiserfs: eliminate minimum window size for bitmap searching\n\nWhen a file system becomes fragmented (using MythTV, for example), the\nbigalloc window searching ends up causing huge performance problems.  In a\nfile system presented by a user experiencing this bug, the file system was\n90% free, but no 32-block free windows existed on the entire file system.\nThis causes the allocator to scan the entire file system for each 128k\nwrite before backing down to searching for individual blocks.\n\nIn the end, finding a contiguous window for all the blocks in a write is an\nadvantageous special case, but one that can be found naturally when such a\nwindow exists anyway.\n\nThis patch removes the bigalloc window searching, and has been proven to\nfix the test case described above.\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5a2618e6a972f305496daa257a56a09dd3acca29",
      "tree": "e2b64f244f3e4c413be0734c54ba25de62ff0138",
      "parents": [
        "5065227b46235ec0131b383cc2f537069b55c6b6"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Sat Sep 30 23:28:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:28 2006 -0700"
      },
      "message": "[PATCH] reiserfs: use generic_file_open for open() checks\n\nThe other common disk-based file systems (I checked ext[23], xfs, jfs)\ncheck to ensure that opens of files \u003e 2 GB fail unless O_LARGEFILE is\nspecified.  They check via generic_file_open or their own open routine.\n\nReiserFS doesn\u0027t have an f_op-\u003eopen defined, and as such, it\u0027s possible to\nopen files \u003e 2 GB without O_LARGEFILE.\n\nThis patch adds the f_op-\u003eopen member to conform with the expected\nbehavior.\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: \u003creiserfs-dev@namesys.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5065227b46235ec0131b383cc2f537069b55c6b6",
      "tree": "12187734ef619626c901b9d2b43ad72286d4d258",
      "parents": [
        "6f01046b35d940079822827498a7dd6d3eec8c6b"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Sat Sep 30 23:28:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:28 2006 -0700"
      },
      "message": "[PATCH] reiserfs: on-demand bitmap loading\n\nThis is the patch the three previous ones have been leading up to.\n\nIt changes the behavior of ReiserFS from loading and caching all the bitmaps\nas special, to treating the bitmaps like any other bit of metadata and just\nletting the system-wide caches figure out what to hang on to.\n\nBuffer heads are allocated on the fly, so there is no need to retain pointers\nto all of them.  The caching of the metadata occurs when the data is read and\nupdated, and is considered invalid and uncached until then.\n\nI needed to remove the vs-4040 check for performing a duplicate operation on a\nparticular bit.  The reason is that while the other sites for working with\nbitmaps are allowed to schedule, is_reusable() is called from do_balance(),\nwhich will panic if a schedule occurs in certain places.\n\nThe benefit of on-demand bitmaps clearly outweighs a sanity check that depends\non a compile-time option that is discouraged.\n\n[akpm@osdl.org: warning fix]\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: \u003creiserfs-dev@namesys.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6f01046b35d940079822827498a7dd6d3eec8c6b",
      "tree": "e65426389691c9d3e7d4f29da73725d15ee8e2f6",
      "parents": [
        "0b3dc17bc0c0997bde9f5d7691ec0cae24258cf7"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Sat Sep 30 23:28:43 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:27 2006 -0700"
      },
      "message": "[PATCH] reiserfs: reorganize bitmap loading functions\n\nThis patch moves the bitmap loading code from super.c to bitmap.c\n\nThe code is also restructured somewhat.  The only difference between new\nformat bitmaps and old format bitmaps is where they are.  That\u0027s a two liner\nbefore loading the block to use the correct one.  There\u0027s no need for an\nentirely separate code path.\n\nThe load path is generally the same, with the pattern being to throw out a\nbunch of requests and then wait for them, then cache the metadata from the\ncontents.\n\nAgain, like the previous patches, the purpose is to set up for later ones.\n\nUpdate: There was a bug in the previously posted version of this that resulted\nin corruption.  The problem was that bitmap 0 on new format file systems must\nbe treated specially, and wasn\u0027t.  A stupid bug with an easy fix.\n\nThis is hopefully the last fix for the disaster that is the reiserfs bitmap\npatch set.\n\nIf a bitmap block was full, first_zero_hint would end up at zero since it\nwould never be changed from it\u0027s zeroed out value.  This just sets it\nbeyond the end of the bitmap block.  If any bits are freed, it will be\nreset to a valid bit.  When info-\u003efree_count \u003d 0, then we already know it\u0027s\nfull.\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: \u003creiserfs-dev@namesys.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0b3dc17bc0c0997bde9f5d7691ec0cae24258cf7",
      "tree": "ecdbb6f830737358706b0ba7c628f47f9fdc0ff4",
      "parents": [
        "e1fabd3ccf02901374bffa434e0af472749a5bd9"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Sat Sep 30 23:28:42 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:27 2006 -0700"
      },
      "message": "[PATCH] reiserfs: clean up bitmap block buffer head references\n\nSimilar to the SB_JOURNAL cleanup that was accepted a while ago, this patch\nuses a temporary variable for buffer head references from the bitmap info\narray.\n\nThis makes the code much more readable in some areas.\n\nIt also uses proper reference counting, doing a get_bh() after using the\npointer from the array and brelse()\u0027ing it later.  This may seem silly, but a\nlater patch will replace the simple temporary variables with an actual read,\nso the reference freeing will be used then.\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: \u003creiserfs-dev@namesys.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e1fabd3ccf02901374bffa434e0af472749a5bd9",
      "tree": "66d618e98020422874a521142ca2da797c9930f3",
      "parents": [
        "8ef386092d7c2891bd7acefb2a87f878f7e9a0d6"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Sat Sep 30 23:28:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:27 2006 -0700"
      },
      "message": "[PATCH] reiserfs: fix is_reusable bitmap check to not traverse the bitmap info array\n\nThere is a check in is_reusable to determine if a particular block is a bitmap\nblock.  It verifies this by going through the array of bitmap block buffer\nheads and comparing the block number to each one.\n\nBitmap blocks are at defined locations on the disk in both old and current\nformats.  Simply checking against the known good values is enough.\n\nThis is a trivial optimization for a non-production codepath, but this is the\nfirst in a series of patches that will ultimately remove the buffer heads from\nthat array.\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: \u003creiserfs-dev@namesys.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "54f67f631dfc25ca7a8b19200e34013abc974337",
      "tree": "96c481c2723e1f5f626110c9a7f1c4a07b9ee056",
      "parents": [
        "89bbc03c01f68e627a2b120963f136e2815f0d84"
      ],
      "author": {
        "name": "Petr Vandrovec",
        "email": "petr@vandrovec.name",
        "time": "Sat Sep 30 23:27:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:23 2006 -0700"
      },
      "message": "[PATCH] Move ncpfs 32bit compat ioctl to ncpfs\n\nThe ncp specific compat ioctls are clearly local to one file system, so the\ncode can better live there.\n\nThis version of the patch moves everything into the generic ioctl handler\nand uses it for both 32 and 64 bit calls.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Petr Vandrovec \u003cpetr@vandrovec.name\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f5579f8c7d7e2c9eb62b566c511b21091a778157",
      "tree": "76d3df1e8e3865bc3867f3934df081933d1e9ee6",
      "parents": [
        "4636d93b461779cd95156cc5f5d53690a5d6a07b"
      ],
      "author": {
        "name": "Josef \u0027Jeff\u0027 Sipek",
        "email": "jeffpc@josefsipek.net",
        "time": "Sat Sep 30 23:27:35 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:21 2006 -0700"
      },
      "message": "[PATCH] VFS: Use SEEK_{SET, CUR, END} instead of hardcoded values\n\nVFS: Use SEEK_{SET,CUR,END} instead of hardcoded values\n\nSigned-off-by: Josef \u0027Jeff\u0027 Sipek \u003cjeffpc@josefsipek.net\u003e\nAcked-by: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "82b0547cfae1fb2ee26cad588f6d49a347d24740",
      "tree": "67575452152d0e51a573f66053c29c2028f3701e",
      "parents": [
        "52978be636374c4bfb61220b37fa12f55a071c46"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Sep 30 23:27:22 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:19 2006 -0700"
      },
      "message": "[PATCH] Create fs/utimes.c\n\n* fs/open.c is getting bit crowdy\n* preparation to lutimes(2)\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "52978be636374c4bfb61220b37fa12f55a071c46",
      "tree": "36444be7bdbc0cdd99d903c0ad87316c93427517",
      "parents": [
        "1a2f67b459bb7846d4a15924face63eb2683acc2"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Sep 30 23:27:21 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:19 2006 -0700"
      },
      "message": "[PATCH] kmemdup: some users\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "130c6b98984a058068ea595c465fba2beb48b9ef",
      "tree": "7dbcc6470bf522db5d94bc90c72f633755ecc74a",
      "parents": [
        "4d81715fc5dfa1680ad47d7edf3ac4a74c5bf104"
      ],
      "author": {
        "name": "Richard Knutsson",
        "email": "ricknu-0@student.ltu.se",
        "time": "Sat Sep 30 23:27:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:19 2006 -0700"
      },
      "message": "[PATCH] fs/partitions: Conversion to generic boolean\n\nConversion of booleans to: generic-boolean.patch (2006-08-23)\n\nSigned-off-by: Richard Knutsson \u003cricknu-0@student.ltu.se\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4d81715fc5dfa1680ad47d7edf3ac4a74c5bf104",
      "tree": "ec5de5f1e7aa18911fe76957e106fc3492048e86",
      "parents": [
        "c49c31115067bc7c9a51ffdc735a515151dfa3eb"
      ],
      "author": {
        "name": "Richard Knutsson",
        "email": "ricknu-0@student.ltu.se",
        "time": "Sat Sep 30 23:27:14 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:19 2006 -0700"
      },
      "message": "[PATCH] fs/jfs: Conversion to generic boolean\n\nConversion of booleans to: generic-boolean.patch (2006-08-23)\n\nSigned-off-by: Richard Knutsson \u003cricknu-0@student.ltu.se\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c49c31115067bc7c9a51ffdc735a515151dfa3eb",
      "tree": "1ffeddacb5cf06fbdb8a1fc385eb9ee5f1c3174c",
      "parents": [
        "6e21828743247270d09a86756a0c11702500dbfb"
      ],
      "author": {
        "name": "Richard Knutsson",
        "email": "ricknu-0@student.ltu.se",
        "time": "Sat Sep 30 23:27:12 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:19 2006 -0700"
      },
      "message": "[PATCH] fs/ntfs: Conversion to generic boolean\n\nConversion of booleans to: generic-boolean.patch (2006-08-23)\n\nSigned-off-by: Richard Knutsson \u003cricknu-0@student.ltu.se\u003e\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0fe23479577124bd2687e6783e39fa0fa4c28005",
      "tree": "954ae8c079fd10cd52bf212ca5cd2530ec5c2315",
      "parents": [
        "50be345560f1ffdcb15cc0e146416b80529a2ef2"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@kernel.dk",
        "time": "Mon Sep 04 15:41:16 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:34 2006 +0200"
      },
      "message": "[PATCH] Update axboe@suse.de email address\n\nAs people often look for the copyright in files to see who to mail,\nupdate the link to a neutral one.\n\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "50be345560f1ffdcb15cc0e146416b80529a2ef2",
      "tree": "056278d82ea7fcbd26d9cc95c806d3978bbbb56e",
      "parents": [
        "bcfd8d36151e531e1c6c731f1fbf792509a1c494"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Mon Sep 04 15:37:57 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:33 2006 +0200"
      },
      "message": "[PATCH] fix creating zero sized bio mempools in low memory system\n\nIn the very low memory systems is in the init_bio call\nscale parameter set to zero and it leads to creating\nzero sized mempool.\n\nThis patch prevents pool_entries parameter become zero,\nso the created pool have at least 1 entry.\n\nMempool with 0 entries lead to incorrect behaviour\nof mempool_free. (Alloc requests are not waken up\nand system stalls in mempool_alloc-\u003eioschedule).\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "5e6d12b2c8be2cac099df6dcb8b26884f24d2621",
      "tree": "2ac881cd0670f0bd5bfa0438bc1570b169e7af3b",
      "parents": [
        "65934a9a028b88e83e2b0f8b36618fe503349f8e"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Thu Aug 31 12:55:23 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:32 2006 +0200"
      },
      "message": "[PATCH] CONFIG_BLOCK internal.h cleanups\n\n- forward declare struct superblock\n- use inlines, not macros\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "9361401eb7619c033e2394e4f9f6d410d6719ac7",
      "tree": "04b94a71f2366988c17740d1c16cfbdec41d5d2e",
      "parents": [
        "d366e40a1cabd453be6e2609caa7e12f9ca17b1f"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Sat Sep 30 20:45:40 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:31 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Make it possible to disable the block layer [try #6]\n\nMake it possible to disable the block layer.  Not all embedded devices require\nit, some can make do with just JFFS2, NFS, ramfs, etc - none of which require\nthe block layer to be present.\n\nThis patch does the following:\n\n (*) Introduces CONFIG_BLOCK to disable the block layer, buffering and blockdev\n     support.\n\n (*) Adds dependencies on CONFIG_BLOCK to any configuration item that controls\n     an item that uses the block layer.  This includes:\n\n     (*) Block I/O tracing.\n\n     (*) Disk partition code.\n\n     (*) All filesystems that are block based, eg: Ext3, ReiserFS, ISOFS.\n\n     (*) The SCSI layer.  As far as I can tell, even SCSI chardevs use the\n     \t block layer to do scheduling.  Some drivers that use SCSI facilities -\n     \t such as USB storage - end up disabled indirectly from this.\n\n     (*) Various block-based device drivers, such as IDE and the old CDROM\n     \t drivers.\n\n     (*) MTD blockdev handling and FTL.\n\n     (*) JFFS - which uses set_bdev_super(), something it could avoid doing by\n     \t taking a leaf out of JFFS2\u0027s book.\n\n (*) Makes most of the contents of linux/blkdev.h, linux/buffer_head.h and\n     linux/elevator.h contingent on CONFIG_BLOCK being set.  sector_div() is,\n     however, still used in places, and so is still available.\n\n (*) Also made contingent are the contents of linux/mpage.h, linux/genhd.h and\n     parts of linux/fs.h.\n\n (*) Makes a number of files in fs/ contingent on CONFIG_BLOCK.\n\n (*) Makes mm/bounce.c (bounce buffering) contingent on CONFIG_BLOCK.\n\n (*) set_page_dirty() doesn\u0027t call __set_page_dirty_buffers() if CONFIG_BLOCK\n     is not enabled.\n\n (*) fs/no-block.c is created to hold out-of-line stubs and things that are\n     required when CONFIG_BLOCK is not set:\n\n     (*) Default blockdev file operations (to give error ENODEV on opening).\n\n (*) Makes some /proc changes:\n\n     (*) /proc/devices does not list any blockdevs.\n\n     (*) /proc/diskstats and /proc/partitions are contingent on CONFIG_BLOCK.\n\n (*) Makes some compat ioctl handling contingent on CONFIG_BLOCK.\n\n (*) If CONFIG_BLOCK is not defined, makes sys_quotactl() return -ENODEV if\n     given command other than Q_SYNC or if a special device is specified.\n\n (*) In init/do_mounts.c, no reference is made to the blockdev routines if\n     CONFIG_BLOCK is not defined.  This does not prohibit NFS roots or JFFS2.\n\n (*) The bdflush, ioprio_set and ioprio_get syscalls can now be absent (return\n     error ENOSYS by way of cond_syscall if so).\n\n (*) The seclvl_bd_claim() and seclvl_bd_release() security calls do nothing if\n     CONFIG_BLOCK is not set, since they can\u0027t then happen.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "d366e40a1cabd453be6e2609caa7e12f9ca17b1f",
      "tree": "509768047fd75b116c1158204abad07ff9fe80b7",
      "parents": [
        "4cb50dc2eaeddb0bc20bc4cd108c4fec99f5045a"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 29 19:06:29 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:31 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Remove no-longer necessary linux/buffer_head.h inclusions [try #6]\n\nRemove inclusions of linux/buffer_head.h that are no longer necessary due to the\ntransfer of a number of things out of there.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "4cb50dc2eaeddb0bc20bc4cd108c4fec99f5045a",
      "tree": "f15ede5614ff497dca3cd1342fbecfbe33c2715a",
      "parents": [
        "188f83dfe0eeecd1427d0d255cc97dbf7ef6b4b7"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 29 19:06:27 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:30 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Remove no-longer necessary linux/mpage.h inclusions [try #6]\n\nRemove inclusions of linux/mpage.h that are no longer necessary due to the\ntransfer of generic_writepages().\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "188f83dfe0eeecd1427d0d255cc97dbf7ef6b4b7",
      "tree": "72a36a42e6b1f4693b4c39dc70d25241418dc228",
      "parents": [
        "52a700c5675f399c07e6e57328291e57f13ef3bb"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Aug 31 12:50:04 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:30 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Move the msdos device ioctl compat stuff to the msdos driver [try #6]\n\nMove the msdos device ioctl compat stuff from fs/compat_ioctl.c to the msdos\ndriver so that the msdos header file doesn\u0027t need to be included.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "52a700c5675f399c07e6e57328291e57f13ef3bb",
      "tree": "4ef1a3a7d66f589ad2e5f7d769da8c30f172a70e",
      "parents": [
        "e322ff07fb2d0f05c02d85e7c6b30d23f308c20f"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 29 19:06:23 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:29 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Move the Ext3 device ioctl compat stuff to the Ext3 driver [try #6]\n\nMove the Ext3 device ioctl compat stuff from fs/compat_ioctl.c to the Ext3\ndriver so that the Ext3 header file doesn\u0027t need to be included.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "e322ff07fb2d0f05c02d85e7c6b30d23f308c20f",
      "tree": "56c6817342087294f5242dbea9eaaa38098a9046",
      "parents": [
        "52b499c438ff60991eb3855ca090782569b3e8cf"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 29 19:06:20 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:29 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Move the Ext2 device ioctl compat stuff to the Ext2 driver [try #6]\n\nMove the Ext2 device ioctl compat stuff from fs/compat_ioctl.c to the Ext2\ndriver so that the Ext2 header file doesn\u0027t need to be included.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "52b499c438ff60991eb3855ca090782569b3e8cf",
      "tree": "ce6dde5d3488a0ba0497c4c49d99d3b94ce921c0",
      "parents": [
        "36695673b012096228ebdc1b39a6a5850daa474e"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 29 19:06:18 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:28 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Move the ReiserFS device ioctl compat stuff to the ReiserFS driver [try #6]\n\nMove the ReiserFS device ioctl compat stuff from fs/compat_ioctl.c to the\nReiserFS driver so that the ReiserFS header file doesn\u0027t need to be included.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "36695673b012096228ebdc1b39a6a5850daa474e",
      "tree": "4b617e27256750f367b2b50653981c70db0ce2d0",
      "parents": [
        "863d5b822c02d0e7215fb84ca79e9f8c3e35f04e"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 29 19:06:16 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:28 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Move common FS-specific ioctls to linux/fs.h [try #6]\n\nMove common FS-specific ioctls from linux/ext2_fs.h to linux/fs.h as FS_IOC_*\nand FS_IOC32_* and have the users of them use those as a base.\n\nAlso move the GETFLAGS/SETFLAGS flags to linux/fs.h as FS_*_FL macros, and then\nhave the other users use them as a base.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "863d5b822c02d0e7215fb84ca79e9f8c3e35f04e",
      "tree": "86e2fd2507a78a1adc6a7126f26c38ebf2ee4d1d",
      "parents": [
        "b71e8a4ce03b3098c7801ee5e6e08d1a39a226c2"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 29 19:06:14 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:27 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Move the loop device ioctl compat stuff to the loop driver [try #6]\n\nMove the loop device ioctl compat stuff from fs/compat_ioctl.c to the loop\ndriver so that the loop header file doesn\u0027t need to be included.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "b71e8a4ce03b3098c7801ee5e6e08d1a39a226c2",
      "tree": "69e287c96181862f911b19dfd37abb968d26bdaf",
      "parents": [
        "811d736f9e8013966e1a5a930c0db09508bdbb15"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 29 19:06:11 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:27 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Move __invalidate_device() to block_dev.c [try #6]\n\nMove __invalidate_device() from fs/inode.c to fs/block_dev.c so that it can\nmore easily be disabled when the block layer is disabled.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "811d736f9e8013966e1a5a930c0db09508bdbb15",
      "tree": "566225f7991f987007ccc2e8d99255f21041b6cb",
      "parents": [
        "7b0de42d7c5a471741ede4e71727d88000e6ea59"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 29 19:06:09 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:26 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Dissociate generic_writepages() from mpage stuff [try #6]\n\nDissociate the generic_writepages() function from the mpage stuff, moving its\ndeclaration to linux/mm.h and actually emitting a full implementation into\nmm/page-writeback.c.\n\nThe implementation is a partial duplicate of mpage_writepages() with all BIO\nreferences removed.\n\nIt is used by NFS to do writeback.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "7b0de42d7c5a471741ede4e71727d88000e6ea59",
      "tree": "808b27ad3b2f4a83a97bcc4c001970fab96ff7b6",
      "parents": [
        "07f3f05c1e3052b8656129b2a5aca9f888241a34"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 29 19:06:07 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:26 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Remove dependence on existence of blockdev_superblock [try #6]\n\nMove blockdev_superblock extern declaration from fs/fs-writeback.c to a\nheaderfile and remove the dependence on it by wrapping it in a macro.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "07f3f05c1e3052b8656129b2a5aca9f888241a34",
      "tree": "3338b004d518a0d2189efdc3fb88e94e1c02c0ce",
      "parents": [
        "65e6f5bc8149165efb9d7bdbd142bb837d5edfeb"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Sat Sep 30 20:52:18 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@kernel.dk",
        "time": "Sat Sep 30 20:52:18 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Move extern declarations out of fs/*.c into header files [try #6]\n\nCreate a new header file, fs/internal.h, for common definitions local to the\nsources in the fs/ directory.\n\nMove extern definitions that should be in header files from fs/*.c to\nfs/internal.h or other main header files where they span directories.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "65e6f5bc8149165efb9d7bdbd142bb837d5edfeb",
      "tree": "6da4d9fd5260c007964c2c56cd77bbde452825b2",
      "parents": [
        "831058dec3735665fe91bd0d37b6a8cf56b91abd"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 29 19:06:03 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:32:12 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Don\u0027t call block_sync_page() from AFS [try #6]\n\nThe AFS filesystem no longer needs to override its sync_page() op.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "cf9a2ae8d49948f861b56e5333530e491a9da190",
      "tree": "21f0b0d781b3e60cc60464d39b6d95681201b37e",
      "parents": [
        "4090959aee403817ff386415f9bc602c1a0882ef"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 29 19:05:54 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:31:19 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Move functions out of buffer code [try #6]\n\nMove some functions out of the buffering code that aren\u0027t strictly buffering\nspecific.  This is a precursor to being able to disable the block layer.\n\n (*) Moved some stuff out of fs/buffer.c:\n\n     (*) The file sync and general sync stuff moved to fs/sync.c.\n\n     (*) The superblock sync stuff moved to fs/super.c.\n\n     (*) do_invalidatepage() moved to mm/truncate.c.\n\n     (*) try_to_release_page() moved to mm/filemap.c.\n\n (*) Moved some related declarations between header files:\n\n     (*) declarations for do_invalidatepage() and try_to_release_page() moved\n     \t to linux/mm.h.\n\n     (*) __set_page_dirty_buffers() moved to linux/buffer_head.h.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "cf342e52e3117391868fb4bd900ce772a27a5a1a",
      "tree": "4e9d48d0680bfd8dc90de645c891a6fa47931fdd",
      "parents": [
        "25034d7a83cf77667f3d65822484b305d4be6b25"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Aug 29 09:17:41 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:31:18 2006 +0200"
      },
      "message": "[PATCH] Don\u0027t need to disable interrupts for tasklist_lock\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "caa38fb0f481a3cb732b115cb59bfa6b59b6daaf",
      "tree": "c68f069f58748813e9195b6205936846aba2e43e",
      "parents": [
        "5404bc7a87b9949cf61e0174b21f80e73239ab25"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Sun Jul 23 01:41:26 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:29:42 2006 +0200"
      },
      "message": "[PATCH] ext3: make meta data reads use READ_META\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "fc46379daf90dce57bf765c81d3b39f55150aac2",
      "tree": "43aa28f0db6c73f137550b0b2e2ec29b9f9a1fc6",
      "parents": [
        "89850f7ee905410c89f9295e89dc4c33502a34ac"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Aug 29 09:05:44 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:29:36 2006 +0200"
      },
      "message": "[PATCH] cfq-iosched: kill cfq_exit_lock\n\ncfq_exit_lock is protecting two things now:\n\n- The per-ioc rbtree of cfq_io_contexts\n\n- The per-cfqd linked list of cfq_io_contexts\n\nThe per-cfqd linked list can be protected by the queue lock, as it is (by\ndefinition) per cfqd as the queue lock is.\n\nThe per-ioc rbtree is mainly used and updated by the process itself only.\nThe only outside use is the io priority changing. If we move the\npriority changing to not browsing the rbtree, we can remove any locking\nfrom the rbtree updates and lookup completely. Let the sys_ioprio syscall\njust mark processes as having the iopriority changed and lazily update\nthe private cfq io contexts the next time io is queued, and we can\nremove this locking as well.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "c0341b0f47722fbe5ab45f436fc6ddc1c58c0a6f",
      "tree": "63279f95e7250a3c465eb061be97fff071d0903b",
      "parents": [
        "ae1390d8c3e2142e5cf6d192951d6e2b1fa213c5",
        "1b06e7926694178e146ff708b2c15a6da64c9765"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:36:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:36:55 2006 -0700"
      },
      "message": "Merge git://oss.sgi.com:8090/xfs/xfs-2.6\n\n* git://oss.sgi.com:8090/xfs/xfs-2.6: (49 commits)\n  [XFS] Remove v1 dir trace macro - missed in a past commit.\n  [XFS] 955947: Infinite loop in xfs_bulkstat() on formatter() error\n  [XFS] pv 956241, author: nathans, rv: vapo - make ino validation checks\n  [XFS] pv 956240, author: nathans, rv: vapo - Minor fixes in\n  [XFS] Really fix use after free in xfs_iunpin.\n  [XFS] Collapse sv_init and init_sv into just the one interface.\n  [XFS] standardize on one sema init macro\n  [XFS] Reduce endian flipping in alloc_btree, same as was done for\n  [XFS] Minor cleanup from dio locking fix, remove an extra conditional.\n  [XFS] Fix kmem_zalloc_greedy warnings on 64 bit platforms.\n  [XFS] pv 955157, rv bnaujok - break the loop on EFAULT formatter() error\n  [XFS] pv 955157, rv bnaujok - break the loop on formatter() error\n  [XFS] Fixes the leak in reservation space because we weren\u0027t ungranting\n  [XFS] Add lock annotations to xfs_trans_update_ail and\n  [XFS] Fix a porting botch on the realtime subvol growfs code path.\n  [XFS] Minor code rearranging and cleanup to prevent some coverity false\n  [XFS] Remove a no-longer-correct debug assert from dio completion\n  [XFS] Add a greedy allocation interface, allocating within a min/max size\n  [XFS] Improve error handling for the zero-fsblock extent detection code.\n  [XFS] Be more defensive with page flags (error/private) for metadata\n  ...\n"
    },
    {
      "commit": "632dd2053a1146c826ceb6f26ab689389c05e751",
      "tree": "439c457364f5b58e2de09950e5e0854968e3cde2",
      "parents": [
        "327dcaadc0bc08ad081aa8e36b6ec7ad7aa45e30"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Fri Sep 29 02:01:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:18:25 2006 -0700"
      },
      "message": "[PATCH] Kcore elf note namesz field fix\n\no As per ELF specifications, it looks like that elf note \"namesz\" field\n  contains the length of \"name\" including the size of null character.  And\n  currently we are filling \"namesz\" without taking into the consideration\n  the null character size.\n\no Kexec-tools performs this check deligently hence I ran into the issue\n  while trying to open /proc/kcore in kexec-tools for some info.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\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": "327dcaadc0bc08ad081aa8e36b6ec7ad7aa45e30",
      "tree": "68bec9183fcee79370e076244be347dd20d5dd9f",
      "parents": [
        "74d392aaabfc890cc1f0e80fc5ff13e5d3bcf4c9"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Sep 29 02:01:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:18:25 2006 -0700"
      },
      "message": "[PATCH] expand_fdtable(): remove pointless unlock+lock\n\nThis unlock/lock on a super-unlikely path isn\u0027t worth the kernel text.\n\nCc: Vadim Lobanov \u003cvlobanov@speakeasy.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "74d392aaabfc890cc1f0e80fc5ff13e5d3bcf4c9",
      "tree": "e70c15452798ac7745d9f9f0f8bb732286d77784",
      "parents": [
        "3706baa8b1ba0d71d52fd0c656752a6495f6364a"
      ],
      "author": {
        "name": "Vadim Lobanov",
        "email": "vlobanov@speakeasy.net",
        "time": "Fri Sep 29 02:01:43 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:18:25 2006 -0700"
      },
      "message": "[PATCH] Clean up expand_fdtable() and expand_files()\n\nPerform a code cleanup against the expand_fdtable() and expand_files()\nfunctions inside fs/file.c.  It aims to make the flow of code within these\nfunctions simpler and easier to understand, via added comments and modest\nrefactoring.\n\nSigned-off-by: Vadim Lobanov \u003cvlobanov@speakeasy.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "39f0247d3823e4e0bf8f6838a10362864b1e1053",
      "tree": "f5808b2bb5fd719c42c7068e2dc43a4b8f402304",
      "parents": [
        "f0c8bd164e1a0585d7e46896553136b4f488bd19"
      ],
      "author": {
        "name": "Andreas Gruenbacher",
        "email": "agruen@suse.de",
        "time": "Fri Sep 29 02:01:35 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:18:24 2006 -0700"
      },
      "message": "[PATCH] Access Control Lists for tmpfs\n\nAdd access control lists for tmpfs.\n\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f0c8bd164e1a0585d7e46896553136b4f488bd19",
      "tree": "75cbeec5113da7c20c6ee9ef09bdaea82014738a",
      "parents": [
        "4e6fd33b75602ced4c5d43e99a10a1d13f33d4f4"
      ],
      "author": {
        "name": "Andreas Gruenbacher",
        "email": "agruen@suse.de",
        "time": "Fri Sep 29 02:01:34 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:18:24 2006 -0700"
      },
      "message": "[PATCH] Generic infrastructure for acls\n\nThe patches solve the following problem: We want to grant access to devices\nbased on who is logged in from where, etc.  This includes switching back and\nforth between multiple user sessions, etc.\n\nUsing ACLs to define device access for logged-in users gives us all the\nflexibility we need in order to fully solve the problem.\n\nDevice special files nowadays usually live on tmpfs, hence tmpfs ACLs.\n\nDifferent distros have come up with solutions that solve the problem to\ndifferent degrees: SUSE uses a resource manager which tracks login sessions\nand sets ACLs on device inodes as appropriate.  RedHat uses pam_console, which\nchanges the primary file ownership to the logged-in user.  Others use a set of\ngroups that users must be in in order to be granted the appropriate accesses.\n\nThe freedesktop.org project plans to implement a combination of a\nconsole-tracker and a HAL-device-list based solution to grant access to\ndevices to users, and more distros will likely follow this approach.\n\nThese patches have first been posted here on 2 February 2005, and again\non 8 January 2006. We have been shipping them in SLES9 and SLES10 with\nno problems reported.  The previous submission is archived here:\n\n   http://lkml.org/lkml/2006/1/8/229\n   http://lkml.org/lkml/2006/1/8/230\n   http://lkml.org/lkml/2006/1/8/231\n\nThis patch:\n\nAdd some infrastructure for access control lists on in-memory\nfilesystems such as tmpfs.\n\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4e6fd33b75602ced4c5d43e99a10a1d13f33d4f4",
      "tree": "f22573e7d57532c4393ae26bea08866decad2813",
      "parents": [
        "8c6ba51bdad0de0dc2a2e2415d4dac2d0db6c1a1"
      ],
      "author": {
        "name": "Chris Snook",
        "email": "csnook@redhat.com",
        "time": "Fri Sep 29 02:01:33 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:18:23 2006 -0700"
      },
      "message": "[PATCH] enforce RLIMIT_NOFILE in poll()\n\nPOSIX states that poll() shall fail with EINVAL if nfds \u003e OPEN_MAX.  In\nthis context, POSIX is referring to sysconf(OPEN_MAX), which is the value\nof current-\u003esignal-\u003erlim[RLIMIT_NOFILE].rlim_cur in the linux kernel, not\nthe compile-time constant which happens to also be named OPEN_MAX.  In the\ncurrent code, an application may poll up to max_fdset file descriptors,\neven if this exceeds RLIMIT_NOFILE.  The current code also breaks\napplications which poll more than max_fdset descriptors, which worked circa\n2.4.18 when the check was against NR_OPEN, which is 1024*1024.  This patch\nenforces the limit precisely as POSIX defines, even if RLIMIT_NOFILE has\nbeen changed at run time with ulimit -n.\n\nTo elaborate on the rationale for this, there are three cases:\n\n1) RLIMIT_NOFILE is at the default value of 1024\n\nIn this (default) case, the patch changes nothing.  Calls with nfds \u003e 1024\nfail with EINVAL both before and after the patch, and calls with nfds \u003c\u003d\n1024 pass the check both before and after the patch, since 1024 is the\ninitial value of max_fdset.\n\n2) RLIMIT_NOFILE has been raised above the default\n\nIn this case, poll() becomes more permissive, allowing polling up to\nRLIMIT_NOFILE file descriptors even if less than 1024 have been opened.\nThe patch won\u0027t introduce new errors here.  If an application somehow\ndepends on poll() failing when it polls with duplicate or invalid file\ndescriptors, it\u0027s already broken, since this is already allowed below 1024,\nand will also work above 1024 if enough file descriptors have been open at\nsome point to cause max_fdset to have been increased above nfds.\n\n3) RLIMIT_NOFILE has been lowered below the default\n\nIn this case, the system administrator or the user has gone out of their\nway to protect the system from inefficient (or malicious) applications\nwasting kernel memory.  The current code allows polling up to 1024 file\ndescriptors even if RLIMIT_NOFILE is much lower, which is not what the user\nor administrator intended.  Well-written applications which only poll\nvalid, unique file descriptors will never notice the difference, because\nthey\u0027ll hit the limit on open() first.  If an application gets broken\nbecause of the patch in this case, then it was already poorly/maliciously\ndesigned, and allowing it to work in the past was a violation of POSIX and\na DoS risk on low-resource systems.\n\nWith this patch, poll() will permit exactly what POSIX suggests, no more,\nno less, and for any run-time value set with ulimit -n, not just 256 or\n1024.  There are existing apps which which poll a large number of file\ndescriptors, some of which may be invalid, and if those numbers stradle\n1024, they currently fail with or without the patch in -mm, though they\nworked fine under 2.4.18.\n\nSigned-off-by: Chris Snook \u003ccsnook@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e518ddb7ba44a3d852c0e41961365844c76eb2bf",
      "tree": "82bda48f6dac153015ef02fe6f8ccbbfa15151d0",
      "parents": [
        "c16a02d6f5fcfe05dc6fd40aa80a8e1d055300db"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andi@rhlx01.fht-esslingen.de",
        "time": "Fri Sep 29 02:01:22 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:18:22 2006 -0700"
      },
      "message": "[PATCH] fs/namei.c: replace multiple current-\u003efs by shortcut variable\n\nReplace current-\u003efs by fs helper variable to reduce some indirection\noverhead and (at least at the moment, before the current_thread_info() %gs\nPDA improvement is available) get rid of more costly current references.\nReduces fs/namei.o from 37786 to 37082 Bytes (704 Bytes saved).\n\n[akpm@osdl.org: cleanup]\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": "6ea36ddbd1abfe867f1e874a8312bfd811e5fd2c",
      "tree": "c70f28e5e644440cfa93dac2effdde9040866e9c",
      "parents": [
        "d826380b305971ff9825ef005ff039d655542bbb"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Sep 29 02:01:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:18:20 2006 -0700"
      },
      "message": "[PATCH] Ban register_filesystem(NULL);\n\nEveryone passes valid pointer there.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "d826380b305971ff9825ef005ff039d655542bbb"
}
