)]}'
{
  "log": [
    {
      "commit": "112d421df2fddc0278584b084f4fcfedd144c5f4",
      "tree": "29ae7aef63427f4163f25222e4712b08a80703c7",
      "parents": [
        "151b6a5f1d4c547c92ec67a5a6fedc16f435956e"
      ],
      "author": {
        "name": "Jan Harkes",
        "email": "jaharkes@cs.cmu.edu",
        "time": "Fri Sep 17 23:26:01 2010 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Sep 19 11:03:09 2010 -0700"
      },
      "message": "Coda: mount hangs because of missed REQ_WRITE rename\n\nCoda\u0027s REQ_* defines were renamed to avoid clashes with the block layer\n(commit 4aeefdc69f7b: \"coda: fixup clash with block layer REQ_*\ndefines\").\n\nHowever one was missed and response messages are no longer matched with\nrequests and waiting threads are no longer woken up.  This patch fixes\nthis.\n\nSigned-off-by: Jan Harkes \u003cjaharkes@cs.cmu.edu\u003e\n[ Also fixed up whitespace while at it  -Linus ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5f4874903df3562b9d5649fc1cf7b8c6bb238e42",
      "tree": "b66dbafa2fd3f32c6df72752d95cad260abd35bd",
      "parents": [
        "03a7ab083e4d619136d6f07ce70fa9de0bc436fc"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Sep 09 14:45:00 2010 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Sep 17 14:00:10 2010 +0100"
      },
      "message": "GFS2: gfs2_logd should be using interruptible waits\n\nLooks like this crept in, in a recent update.\n\nReported-by:  Krzysztof Urbaniak \u003curban@bash.org.pl\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "03a7ab083e4d619136d6f07ce70fa9de0bc436fc",
      "tree": "a6b54d32e2c43991cd60193843ebef076e38d6d0",
      "parents": [
        "7bb419041bab2c0efa6e78e9e9e3d9c6ebc75fae",
        "460cf3411b858ad509d5255e0dfaf862a83c0299"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 16 12:59:11 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 16 12:59:11 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:\n  cifs: fix potential double put of TCP session reference\n"
    },
    {
      "commit": "de8d4f5d758786a2cbcfa54a6a85ce747e5637e3",
      "tree": "a09c0a4f8fe995bea2dde0ea4fa5dbdd32cf3fd4",
      "parents": [
        "75e1c70fc31490ef8a373ea2a4bea2524099b478",
        "827e3457022d0bb0b1bb8a0eb88501876fe7dcf0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 14 17:04:48 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 14 17:04:48 2010 -0700"
      },
      "message": "Merge branch \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6\n\n* \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:\n  SUNRPC: Fix the NFSv4 and RPCSEC_GSS Kconfig dependencies\n  statfs() gives ESTALE error\n  NFS: Fix a typo in nfs_sockaddr_match_ipaddr6\n  sunrpc: increase MAX_HASHTABLE_BITS to 14\n  gss:spkm3 miss returning error to caller when import security context\n  gss:krb5 miss returning error to caller when import security context\n  Remove incorrect do_vfs_lock message\n  SUNRPC: cleanup state-machine ordering\n  SUNRPC: Fix a race in rpc_info_open\n  SUNRPC: Fix race corrupting rpc upcall\n  Fix null dereference in call_allocate\n"
    },
    {
      "commit": "75e1c70fc31490ef8a373ea2a4bea2524099b478",
      "tree": "4fc943276b4a34374ac26d69e63b815bf66c2451",
      "parents": [
        "bfa88ea7ee9e6b4fd673e45a8cc0a8e0b7ef4761"
      ],
      "author": {
        "name": "Jeff Moyer",
        "email": "jmoyer@redhat.com",
        "time": "Fri Sep 10 14:16:00 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 14 17:02:37 2010 -0700"
      },
      "message": "aio: check for multiplication overflow in do_io_submit\n\nTavis Ormandy pointed out that do_io_submit does not do proper bounds\nchecking on the passed-in iocb array:\n\n       if (unlikely(nr \u003c 0))\n               return -EINVAL;\n\n       if (unlikely(!access_ok(VERIFY_READ, iocbpp, (nr*sizeof(iocbpp)))))\n               return -EFAULT;                      ^^^^^^^^^^^^^^^^^^\n\nThe attached patch checks for overflow, and if it is detected, the\nnumber of iocbs submitted is scaled down to a number that will fit in\nthe long.  This is an ok thing to do, as sys_io_submit is documented as\nreturning the number of iocbs submitted, so callers should handle a\nreturn value of less than the \u0027nr\u0027 argument passed in.\n\nReported-by: Tavis Ormandy \u003ctaviso@cmpxchg8b.com\u003e\nSigned-off-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "460cf3411b858ad509d5255e0dfaf862a83c0299",
      "tree": "3ff261b74c1751b9b0edd904f8d2d7f09f7440f6",
      "parents": [
        "bfa88ea7ee9e6b4fd673e45a8cc0a8e0b7ef4761"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Sep 14 11:38:24 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Sep 14 23:21:03 2010 +0000"
      },
      "message": "cifs: fix potential double put of TCP session reference\n\ncifs_get_smb_ses must be called on a server pointer on which it holds an\nactive reference. It first does a search for an existing SMB session. If\nit finds one, it\u0027ll put the server reference and then try to ensure that\nthe negprot is done, etc.\n\nIf it encounters an error at that point then it\u0027ll return an error.\nThere\u0027s a potential problem here though. When cifs_get_smb_ses returns\nan error, the caller will also put the TCP server reference leading to a\ndouble-put.\n\nFix this by having cifs_get_smb_ses only put the server reference if\nit found an existing session that it could use and isn\u0027t returning an\nerror.\n\nCc: stable@kernel.org\nReviewed-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "ed8f425f546a2242a97f61fabcbe9e50a2559a19",
      "tree": "5e580d4c654191b73fc5981785ebf1e52e575b4a",
      "parents": [
        "1421e98662f1cab802e0fa39d16b8dc6b874a4eb",
        "32670396e7fc6e4f37451a69339968985461a374"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 13 12:47:08 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 13 12:47:08 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:\n  cifs: prevent possible memory corruption in cifs_demultiplex_thread\n  cifs: eliminate some more premature cifsd exits\n  cifs: prevent cifsd from exiting prematurely\n  [CIFS] ntlmv2/ntlmssp remove-unused-function CalcNTLMv2_partial_mac_key\n  cifs: eliminate redundant xdev check in cifs_rename\n  Revert \"[CIFS] Fix ntlmv2 auth with ntlmssp\"\n  Revert \"missing changes during ntlmv2/ntlmssp auth and sign\"\n  Revert \"Eliminate sparse warning - bad constant expression\"\n  Revert \"[CIFS] Eliminate unused variable warning\"\n"
    },
    {
      "commit": "1d76e3135733a06aa12bb35891c05f306b27b2d6",
      "tree": "eec35444681ec5a7dee46ee3fdb95a361fb3ab33",
      "parents": [
        "3c30750ffafbc32af040b09f777b67aa2486b063"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Aug 30 17:43:07 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Sep 13 08:13:03 2010 -0500"
      },
      "message": "fs/9p: Don\u0027t use dotl version of mknod for dotu inode operations\n\nWe should not use dotlversion for the dotu inode operations\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "3c30750ffafbc32af040b09f777b67aa2486b063",
      "tree": "dd1a5e2ba2ab5a044a75187bd0fc5d8d58213016",
      "parents": [
        "62726a7ab3a6a3624256172af055ff0a38c6ffa2"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Aug 30 16:04:35 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Sep 13 08:13:03 2010 -0500"
      },
      "message": "fs/9p: Use the correct dentry operations\n\nWe should use the cached dentry operation only if caching mode is enabled\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "62726a7ab3a6a3624256172af055ff0a38c6ffa2",
      "tree": "fea6290c7232a1cbf9d144419a36ef62aaa04cdb",
      "parents": [
        "5c25f347a7b00b2ebe0a55c4a3cfe4c3e1e8725e"
      ],
      "author": {
        "name": "jvrao",
        "email": "jvrao@linux.vnet.ibm.com",
        "time": "Wed Aug 25 16:26:21 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Sep 13 08:13:03 2010 -0500"
      },
      "message": "9p: Check for NULL fid in v9fs_dir_release()\n\nNULL fid should be handled in cases where we endup calling v9fs_dir_release()\nbefore even we instantiate the fid in filp.\n\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "5c25f347a7b00b2ebe0a55c4a3cfe4c3e1e8725e",
      "tree": "14de9f8a3418b13cde4384f4cd42ad1030864c20",
      "parents": [
        "62b2be591a9b12c550308ef7718a31abfc815b50"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Tue Aug 24 10:30:49 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Sep 13 08:13:02 2010 -0500"
      },
      "message": "fs/9p: Fix error handling in v9fs_get_sb\n\nThis was introduced by 7cadb63d58a932041afa3f957d5cbb6ce69dcee5\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "62b2be591a9b12c550308ef7718a31abfc815b50",
      "tree": "d07e2cdfa07fdcc0840d3c1e3209591c085fe1c3",
      "parents": [
        "49553c2ef88749dd502687f4eb9c258bb10a4f44"
      ],
      "author": {
        "name": "Latchesar Ionkov",
        "email": "lionkov@gmail.com",
        "time": "Tue Aug 24 18:13:59 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Sep 13 08:13:02 2010 -0500"
      },
      "message": "fs/9p, net/9p: memory leak fixes\n\nFour memory leak fixes in the 9P code.\n\nSigned-off-by: Latchesar Ionkov \u003clucho@ionkov.net\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "827e3457022d0bb0b1bb8a0eb88501876fe7dcf0",
      "tree": "d9ed145eb533745bdf043b263b97aac8735abffb",
      "parents": [
        "fbf3fdd2443965d9ba6fb4b5fecd1f6e0847218f"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Sep 12 19:57:50 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Sep 12 19:57:50 2010 -0400"
      },
      "message": "SUNRPC: Fix the NFSv4 and RPCSEC_GSS Kconfig dependencies\n\nThe NFSv4 client\u0027s callback server calls svc_gss_principal(), which\nis defined in the auth_rpcgss.ko\n\nThe NFSv4 server has the same dependency, and in addition calls\nsvcauth_gss_flavor(), gss_mech_get_by_pseudoflavor(),\ngss_pseudoflavor_to_service() and gss_mech_put() from the same module.\n\nThe module auth_rpcgss itself has no dependencies aside from sunrpc,\nso we only need to select RPCSEC_GSS.\n\nReported-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fbf3fdd2443965d9ba6fb4b5fecd1f6e0847218f",
      "tree": "55e1b68c3304b35e8c7e8d1f0de54521189908b9",
      "parents": [
        "b20d37ca9561711c6a3c4b859c2855f49565e061"
      ],
      "author": {
        "name": "Menyhart Zoltan",
        "email": "Zoltan.Menyhart@bull.net",
        "time": "Sun Sep 12 19:55:26 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Sep 12 19:55:26 2010 -0400"
      },
      "message": "statfs() gives ESTALE error\n\nHi,\n\nAn NFS client executes a statfs(\"file\", \u0026buff) call.\n\"file\" exists / existed, the client has read / written it,\nbut it has already closed it.\n\nuser_path(pathname, \u0026path) looks up \"file\" successfully in the\ndirectory-cache  and restarts the aging timer of the directory-entry.\nEven if \"file\" has already been removed from the server, because the\nlookupcache\u003dpositive option I use, keeps the entries valid for a while.\n\nnfs_statfs() returns ESTALE if \"file\" has already been removed from the\nserver.\n\nIf the user application repeats the statfs(\"file\", \u0026buff) call, we\nare stuck: \"file\" remains young forever in the directory-cache.\n\nSigned-off-by: Zoltan Menyhart  \u003cZoltan.Menyhart@bull.net\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "b20d37ca9561711c6a3c4b859c2855f49565e061",
      "tree": "fa8aba0a2a7e7b2c246e9c35e04526aafdb623d3",
      "parents": [
        "db5fe26541b6b48460104a0d949a27cdc7786957"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Sep 12 19:55:26 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Sep 12 19:55:26 2010 -0400"
      },
      "message": "NFS: Fix a typo in nfs_sockaddr_match_ipaddr6\n\nReported-by: Ben Greear \u003cgreearb@candelatech.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "b1bde04c6d9a120dec602cc8a70b8a7f21600883",
      "tree": "2d2a53e0978e3f8e3d320260dc78bbbbbe749651",
      "parents": [
        "55576244eba805307a2b2b6a145b8f85f8c7c124"
      ],
      "author": {
        "name": "Fabio Olive Leite",
        "email": "fleite@redhat.com",
        "time": "Sun Sep 12 19:55:25 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Sep 12 19:55:25 2010 -0400"
      },
      "message": "Remove incorrect do_vfs_lock message\n\nThe do_vfs_lock function on fs/nfs/file.c is only called if NLM is\nnot being used, via the -onolock mount option. Therefore it cannot\nreally be \"out of sync with lock manager\" when the local locking\nfunction called returns an error, as there will be no corresponding\ncall to the NLM. For details, simply check the if/else on do_setlk\nand do_unlk on fs/nfs/file.c.\n\nSigned-Off-By: Fabio Olive Leite \u003cfleite@redhat.com\u003e\nReviewed-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fbc1487019d287bd869baac846dee97f39f8f07c",
      "tree": "b44f6573874fa2dc0fa8f9466380f530142b9bd7",
      "parents": [
        "5ee5e97ee9bca919af11c562beeaf61741ad33f1",
        "51749e47e191db8e588ad5cebea731caf7b705d7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 10 18:19:26 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 10 18:19:26 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs\n\n* \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs:\n  xfs: log IO completion workqueue is a high priority queue\n  xfs: prevent reading uninitialized stack memory\n"
    },
    {
      "commit": "51749e47e191db8e588ad5cebea731caf7b705d7",
      "tree": "35eecb6db9f24bdff527502bb4fd318f2c8be014",
      "parents": [
        "a122eb2fdfd78b58c6dd992d6f4b1aaef667eef9"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Wed Sep 08 09:00:22 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Sep 10 10:16:54 2010 -0500"
      },
      "message": "xfs: log IO completion workqueue is a high priority queue\n\nThe workqueue implementation in 2.6.36-rcX has changed, resulting\nin the workqueues no longer having dedicated threads for work\nprocessing. This has caused severe livelocks under heavy parallel\ncreate workloads because the log IO completions have been getting\nheld up behind metadata IO completions.  Hence log commits would\nstall, memory allocation would stall because pages could not be\ncleaned, and lock contention on the AIL during inode IO completion\nprocessing was being seen to slow everything down even further.\n\nBy making the log Io completion workqueue a high priority workqueue,\nthey are queued ahead of all data/metadata IO completions and\nprocessed before the data/metadata completions. Hence the log never\ngets stalled, and operations needed to clean memory can continue as\nquickly as possible. This avoids the livelock conditions and allos\nthe system to keep running under heavy load as per normal.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "9aea5a65aa7a1af9a4236dfaeb0088f1624f9919",
      "tree": "c0e36c74dc511912f59e207c70893dc6bd13b543",
      "parents": [
        "7993bc1f4663c0db67bb8f0d98e6678145b387cd"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Tue Sep 07 19:37:06 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 10 08:10:26 2010 -0700"
      },
      "message": "execve: make responsive to SIGKILL with large arguments\n\nAn execve with a very large total of argument/environment strings\ncan take a really long time in the execve system call.  It runs\nuninterruptibly to count and copy all the strings.  This change\nmakes it abort the exec quickly if sent a SIGKILL.\n\nNote that this is the conservative change, to interrupt only for\nSIGKILL, by using fatal_signal_pending().  It would be perfectly\ncorrect semantics to let any signal interrupt the string-copying in\nexecve, i.e. use signal_pending() instead of fatal_signal_pending().\nWe\u0027ll save that change for later, since it could have user-visible\nconsequences, such as having a timer set too quickly make it so that\nan execve can never complete, though it always happened to work before.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7993bc1f4663c0db67bb8f0d98e6678145b387cd",
      "tree": "d283304f635cc5c36d8fa3319dd663209138988e",
      "parents": [
        "1b528181b2ffa14721fb28ad1bd539fe1732c583"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Tue Sep 07 19:36:28 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 10 08:10:26 2010 -0700"
      },
      "message": "execve: improve interactivity with large arguments\n\nThis adds a preemption point during the copying of the argument and\nenvironment strings for execve, in copy_strings().  There is already\na preemption point in the count() loop, so this doesn\u0027t add any new\npoints in the abstract sense.\n\nWhen the total argument+environment strings are very large, the time\nspent copying them can be much more than a normal user time slice.\nSo this change improves the interactivity of the rest of the system\nwhen one process is doing an execve with very large arguments.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1b528181b2ffa14721fb28ad1bd539fe1732c583",
      "tree": "c6c11dd4fb1845ce1a7d5c048fba40a62d5d94de",
      "parents": [
        "be6200aac985e0a3db56ec636763a32f3e32e7f1"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Tue Sep 07 19:35:49 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 10 08:10:26 2010 -0700"
      },
      "message": "setup_arg_pages: diagnose excessive argument size\n\nThe CONFIG_STACK_GROWSDOWN variant of setup_arg_pages() does not\ncheck the size of the argument/environment area on the stack.\nWhen it is unworkably large, shift_arg_pages() hits its BUG_ON.\nThis is exploitable with a very large RLIMIT_STACK limit, to\ncreate a crash pretty easily.\n\nCheck that the initial stack is not too large to make it possible\nto map in any executable.  We\u0027re not checking that the actual\nexecutable (or intepreter, for binfmt_elf) will fit.  So those\nmappings might clobber part of the initial stack mapping.  But\nthat is just userland lossage that userland made happen, not a\nkernel problem.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ff3cb3fec3c5bbb5110e652bbdd410bc99a47e9f",
      "tree": "5b6834a3a4ecd479d544f8cc8cd10811c1ae13e1",
      "parents": [
        "6ccaa3172941c0a97c7f1c5155b1d32ecd27ec2f",
        "be14eb619108fa8b7120eb2c42d66d5f623ae10e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 10 07:26:27 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 10 07:26:27 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  block: Range check cpu in blk_cpu_to_group\n  scatterlist: prevent invalid free when alloc fails\n  writeback: Fix lost wake-up shutting down writeback thread\n  writeback: do not lose wakeup events when forking bdi threads\n  cciss: fix reporting of max queue depth since init\n  block: switch s390 tape_block and mg_disk to elevator_change()\n  block: add function call to switch the IO scheduler from a driver\n  fs/bio-integrity.c: return -ENOMEM on kmalloc failure\n  bio-integrity.c: remove dependency on __GFP_NOFAIL\n  BLOCK: fix bio.bi_rw handling\n  block: put dev-\u003ekobj in blk_register_queue fail path\n  cciss: handle allocation failure\n  cfq-iosched: Documentation help for new tunables\n  cfq-iosched: blktrace print per slice sector stats\n  cfq-iosched: Implement tunable group_idle\n  cfq-iosched: Do group share accounting in IOPS when slice_idle\u003d0\n  cfq-iosched: Do not idle if slice_idle\u003d0\n  cciss: disable doorbell reset on reset_devices\n  blkio: Fix return code for mkdir calls\n"
    },
    {
      "commit": "a122eb2fdfd78b58c6dd992d6f4b1aaef667eef9",
      "tree": "754cbb6319fd3114c6aeb1bf456bf37cff699c69",
      "parents": [
        "cc491e27d31f1bb3dacb309407b47d65669ceb9d"
      ],
      "author": {
        "name": "Dan Rosenberg",
        "email": "dan.j.rosenberg@gmail.com",
        "time": "Mon Sep 06 18:24:57 2010 -0400"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Sep 10 07:39:28 2010 -0500"
      },
      "message": "xfs: prevent reading uninitialized stack memory\n\nThe XFS_IOC_FSGETXATTR ioctl allows unprivileged users to read 12\nbytes of uninitialized stack memory, because the fsxattr struct\ndeclared on the stack in xfs_ioc_fsgetxattr() does not alter (or zero)\nthe 12-byte fsx_pad member before copying it back to the user.  This\npatch takes care of it.\n\nSigned-off-by: Dan Rosenberg \u003cdan.j.rosenberg@gmail.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "eee743fd7eac9f2ea69ad06d093dfb5a12538fe5",
      "tree": "0d7d7f66393c76583007459b3ec5a19528cff8ab",
      "parents": [
        "9ee493ce0a60bf42c0f8fd0b0fe91df5704a1cbf"
      ],
      "author": {
        "name": "Jorge Boncompte [DTI2]",
        "email": "jorge@dti2.net",
        "time": "Thu Sep 09 16:38:19 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 09 18:57:25 2010 -0700"
      },
      "message": "minix: fix regression in minix_mkdir()\n\nCommit 9eed1fb721c (\"minix: replace inode uid,gid,mode init with helper\")\nbroke directory creation on minix filesystems.\n\nFix it by passing the needed mode flag to inode init helper.\n\nSigned-off-by: Jorge Boncompte [DTI2] \u003cjorge@dti2.net\u003e\nCc: Dmitry Monakhov \u003cdmonakhov@openvz.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.35.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ab04d5cf9736b7a4e9dfcf28285d8663b01aa0e",
      "tree": "1e8a52d0c2592d6d4a14d988dbf55331cc07fd24",
      "parents": [
        "3399446632739fcd05fd8b272b476a69c6e6d14a"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 09 16:38:12 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 09 18:57:25 2010 -0700"
      },
      "message": "vfs: take O_NONBLOCK out of the O_* uniqueness test\n\nO_NONBLOCK on parisc has a dual value:\n\n#define O_NONBLOCK\t000200004 /* HPUX has separate NDELAY \u0026 NONBLOCK */\n\nIt is caught by the O_* bits uniqueness check and leads to a parisc\ncompile error.  The fix would be to take O_NONBLOCK out.\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\nCc: Jamie Lokier \u003cjamie@shareable.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ee3aebdd8f5f8eac41c25c80ceee3d728f920f3b",
      "tree": "13eff87af7c86efa1d216ce7f4f98e81b5dd305f",
      "parents": [
        "152e0659fc001029c70fa4373af1792b1ae0d01c"
      ],
      "author": {
        "name": "Jan Sembera",
        "email": "jsembera@suse.cz",
        "time": "Thu Sep 09 16:37:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 09 18:57:24 2010 -0700"
      },
      "message": "binfmt_misc: fix binfmt_misc priority\n\nCommit 74641f584da (\"alpha: binfmt_aout fix\") (May 2009) introduced a\nregression - binfmt_misc is now consulted after binfmt_elf, which will\nunfortunately break ia32el.  ia32 ELF binaries on ia64 used to be matched\nusing binfmt_misc and executed using wrapper.  As 32bit binaries are now\nmatched by binfmt_elf before bindmt_misc kicks in, the wrapper is ignored.\n\nThe fix increases precedence of binfmt_misc to the original state.\n\nSigned-off-by: Jan Sembera \u003cjsembera@suse.cz\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nCc: Richard Henderson \u003crth@twiddle.net\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.everything.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ed430fec756ad65f7cfba24f8ad17c3d5a403290",
      "tree": "b0846b50b99ea2ec1e409bebb5ee13e18324dc8e",
      "parents": [
        "85a0fdfd0f967507f3903e8419bc7e408f5a59de"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Thu Sep 09 16:37:36 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 09 18:57:23 2010 -0700"
      },
      "message": "proc: export uncached bit properly in /proc/kpageflags\n\nFix the left-over old ifdef for PG_uncached in /proc/kpageflags.  Now it\u0027s\nused by x86, too.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7a801ac6f5067539ceb5fad0fe90ec49fc156e47",
      "tree": "6c2219eccccb3e71f8930993b7460290e787cd12",
      "parents": [
        "4e70598c3b56e6fec551454c495d4d4025834749"
      ],
      "author": {
        "name": "Jeff Moyer",
        "email": "jmoyer@redhat.com",
        "time": "Thu Sep 09 16:37:33 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 09 18:57:22 2010 -0700"
      },
      "message": "O_DIRECT: fix the splitting up of contiguous I/O\n\ncommit c2c6ca4 (direct-io: do not merge logically non-contiguous requests)\nintroduced a bug whereby all O_DIRECT I/Os were submitted a page at a time\nto the block layer.  The problem is that the code expected\ndio-\u003eblock_in_file to correspond to the current page in the dio.  In fact,\nit corresponds to the previous page submitted via submit_page_section.\nThis was purely an oversight, as the dio-\u003ecur_page_fs_offset field was\nintroduced for just this purpose.  This patch simply uses the correct\nvariable when calculating whether there is a mismatch between contiguous\nlogical blocks and contiguous physical blocks (as described in the\ncomments).\n\nI also switched the if conditional following this check to an else if, to\nensure that we never call dio_bio_submit twice for the same dio (in\ntheory, this should not happen, anyway).\n\nI\u0027ve tested this by running blktrace and verifying that a 64KB I/O was\nsubmitted as a single I/O.  I also ran the patched kernel through\nxfstests\u0027 aio tests using xfs, ext4 (with 1k and 4k block sizes) and btrfs\nand verified that there were no regressions as compared to an unpatched\nkernel.\n\nSigned-off-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nAcked-by: Josef Bacik \u003cjbacik@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.35.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "39aa3cb3e8250db9188a6f1e3fb62ffa1a717678",
      "tree": "266640c10436e9bda9bc283fbe5db22761a7cc7c",
      "parents": [
        "26a94e81ded0fcdc0bf96b5fea7343311f1a220b"
      ],
      "author": {
        "name": "Stefan Bader",
        "email": "stefan.bader@canonical.com",
        "time": "Tue Aug 31 15:52:27 2010 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 09 09:05:06 2010 -0700"
      },
      "message": "mm: Move vma_stack_continue into mm.h\n\nSo it can be used by all that need to check for that.\n\nSigned-off-by: Stefan Bader \u003cstefan.bader@canonical.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cad46744a308299e1c33a549e3e9c9a5bc468f05",
      "tree": "cb63f5cf2f6f81b2ea13dce8e17185b1f8f781f2",
      "parents": [
        "cc491e27d31f1bb3dacb309407b47d65669ceb9d",
        "97b8f4a9dfd932997677136e11980eb2fafea91d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 09 08:57:02 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 09 08:57:02 2010 -0700"
      },
      "message": "Merge branch \u0027fixes\u0027 of git://oss.oracle.com/git/tma/linux-2.6\n\n* \u0027fixes\u0027 of git://oss.oracle.com/git/tma/linux-2.6:\n  ocfs2: Fix orphan add in ocfs2_create_inode_in_orphan\n  ocfs2: split out ocfs2_prepare_orphan_dir() into locking and prep functions\n  ocfs2: allow return of new inode block location before allocation of the inode\n  ocfs2: use ocfs2_alloc_dinode_update_counts() instead of open coding\n  ocfs2: split out inode alloc code from ocfs2_mknod_locked\n  Ocfs2: Fix a regression bug from mainline commit(6b933c8e6f1a2f3118082c455eef25f9b1ac7b45).\n  ocfs2: Fix deadlock when allocating page\n  ocfs2: properly set and use inode group alloc hint\n  ocfs2: Use the right group in nfs sync check.\n  ocfs2: Flush drive\u0027s caches on fdatasync\n  ocfs2: make __ocfs2_page_mkwrite handle file end properly.\n  ocfs2: Fix incorrect checksum validation error\n  ocfs2: Fix metaecc error messages\n"
    },
    {
      "commit": "32670396e7fc6e4f37451a69339968985461a374",
      "tree": "df01cb3461125f341d61bde1d527f575372803ef",
      "parents": [
        "7332f2a6217ee6925f83ef0e725013067ed316ba"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Sep 03 12:00:50 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 08 21:22:35 2010 +0000"
      },
      "message": "cifs: prevent possible memory corruption in cifs_demultiplex_thread\n\ncifs_demultiplex_thread sets the addr.sockAddr.sin_port without any\nregard for the socket family. While it may be that the error in question\nhere never occurs on an IPv6 socket, it\u0027s probably best to be safe and\nset the port properly if it ever does.\n\nBreak the port setting code out of cifs_fill_sockaddr and into a new\nfunction, and call that from cifs_demultiplex_thread.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "7332f2a6217ee6925f83ef0e725013067ed316ba",
      "tree": "481c0774aa1620f9e3f20e2809307d9047dd7324",
      "parents": [
        "522bbe65a2415fabce618186fc7777eb4c502989"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Sep 03 12:00:49 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 08 21:22:33 2010 +0000"
      },
      "message": "cifs: eliminate some more premature cifsd exits\n\nIf the tcpStatus is still CifsNew, the main cifs_demultiplex_loop can\nbreak out prematurely in some cases. This is wrong as we will almost\nalways have other structures with pointers to the TCP_Server_Info. If\nthe main loop breaks under any other condition other than tcpStatus \u003d\u003d\nCifsExiting, then it\u0027ll face a use-after-free situation.\n\nI don\u0027t see any reason to treat a CifsNew tcpStatus differently than\nCifsGood. I believe we\u0027ll still want to attempt to reconnect in either\ncase. What should happen in those situations is that the MIDs get marked\nas MID_RETRY_NEEDED. This will make CIFSSMBNegotiate return -EAGAIN, and\nthen the caller can retry the whole thing on a newly reconnected socket.\nIf that fails again in the same way, the caller of cifs_get_smb_ses\nshould tear down the TCP_Server_Info struct.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "522bbe65a2415fabce618186fc7777eb4c502989",
      "tree": "6eb66dac2892728d93e3220511c0ec7e35f40ce4",
      "parents": [
        "4266d9118f85b050a341992f0cfab40d392ef32c"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Sep 03 12:00:49 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 08 21:22:30 2010 +0000"
      },
      "message": "cifs: prevent cifsd from exiting prematurely\n\nWhen cifs_demultiplex_thread exits, it does a number of cleanup tasks\nincluding freeing the TCP_Server_Info struct. Much of the existing code\nin cifs assumes that when there is a cisfSesInfo struct, that it holds a\nreference to a valid TCP_Server_Info struct.\n\nWe can never allow cifsd to exit when a cifsSesInfo struct is still\nholding a reference to the server. The server pointers will then point\nto freed memory.\n\nThis patch eliminates a couple of questionable conditions where it does\nthis.  The idea here is to make an -EINTR return from kernel_recvmsg\nbehave the same way as -ERESTARTSYS or -EAGAIN. If the task was\nsignalled from cifs_put_tcp_session, then tcpStatus will be CifsExiting,\nand the kernel_recvmsg call will return quickly.\n\nThere\u0027s also another condition where this can occur too -- if the\ntcpStatus is still in CifsNew, then it will also exit if the server\ncloses the socket prematurely.  I think we\u0027ll probably also need to fix\nthat situation, but that requires a bit more consideration.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "4266d9118f85b050a341992f0cfab40d392ef32c",
      "tree": "cb22f936daa584df64b1a9300a37c3505f678911",
      "parents": [
        "639e7a913d81f918bfbf506e6ecd54664f787cbd"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 08 21:17:29 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 08 21:17:29 2010 +0000"
      },
      "message": "[CIFS] ntlmv2/ntlmssp remove-unused-function CalcNTLMv2_partial_mac_key\n\nThis function is not used, so remove the definition and declaration.\n\nReviewed-by: Jeff Layton \u003cjlayton@samba.org\u003e\nSigned-off-by: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "639e7a913d81f918bfbf506e6ecd54664f787cbd",
      "tree": "2b786056d9c5db228b8d0a75943ff8a2bdb3b01a",
      "parents": [
        "c8e56f1f4fb9f82f63e4ce6d73a14501d0432c76"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Sep 03 11:50:09 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 08 21:13:16 2010 +0000"
      },
      "message": "cifs: eliminate redundant xdev check in cifs_rename\n\nThe VFS always checks that the source and target of a rename are on the\nsame vfsmount, and hence have the same superblock. So, this check is\nredundant. Remove it and simplify the error handling.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "c8e56f1f4fb9f82f63e4ce6d73a14501d0432c76",
      "tree": "6d0988317a6eaf4b454c73a1dd95f89184f5b1ed",
      "parents": [
        "745e507a9c79c6e1385d3414d5e56f3d4621a375"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 08 21:10:58 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 08 21:10:58 2010 +0000"
      },
      "message": "Revert \"[CIFS] Fix ntlmv2 auth with ntlmssp\"\n\nThis reverts commit 9fbc590860e75785bdaf8b83e48fabfe4d4f7d58.\n\nThe change to kernel crypto and fixes to ntlvm2 and ntlmssp\nseries, introduced a regression.  Deferring this patch series\nto 2.6.37 after Shirish fixes it.\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nCC: Shirish Pargaonkar \u003cshirishp@us.ibm.com\u003e\n"
    },
    {
      "commit": "745e507a9c79c6e1385d3414d5e56f3d4621a375",
      "tree": "14dff030b56724604256c9cfedd04804a586bbc0",
      "parents": [
        "56234e2767496c125a858f880f1b3a62e04a3406"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 08 21:09:27 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 08 21:09:27 2010 +0000"
      },
      "message": "Revert \"missing changes during ntlmv2/ntlmssp auth and sign\"\n\nThis reverts commit 3ec6bbcdb4e85403f2c5958876ca9492afdf4031.\n\n    The change to kernel crypto and fixes to ntlvm2 and ntlmssp\n    series, introduced a regression.  Deferring this patch series\n    to 2.6.37 after Shirish fixes it.\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nCC: Shirish Pargaonkar \u003cshirishp@us.ibm.com\u003e\n"
    },
    {
      "commit": "56234e2767496c125a858f880f1b3a62e04a3406",
      "tree": "c83ff996256b7889d8e84d7b2a19eeb15467dad1",
      "parents": [
        "7100ae97266e387d25d0c8a5d9934931f0b07dbc"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 08 20:57:05 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 08 20:57:05 2010 +0000"
      },
      "message": "Revert \"Eliminate sparse warning - bad constant expression\"\n\nThis reverts commit 2d20ca835867d93ead6ce61780d883a4b128106d.\n\n    The change to kernel crypto and fixes to ntlvm2 and ntlmssp\n    series, introduced a regression.  Deferring this patch series\n    to 2.6.37 after Shirish fixes it.\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nCC: Shirish Pargaonkar \u003cshirishp@us.ibm.com\u003e\n"
    },
    {
      "commit": "7100ae97266e387d25d0c8a5d9934931f0b07dbc",
      "tree": "f4280ef000936b8ddb3fad2494e7ac359a91dd0c",
      "parents": [
        "d56557af19867edb8c0e96f8e26399698a08857f"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 08 20:54:49 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 08 20:54:49 2010 +0000"
      },
      "message": "Revert \"[CIFS] Eliminate unused variable warning\"\n\nThe change to kernel crypto and fixes to ntlvm2 and ntlmssp\nseries, introduced a regression.  Deferring this patch series\nto 2.6.37 after Shirish fixes it.\n\nThis reverts commit c89e5198b26a869ce2842bad8519264f3394dee9.\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nCC: Shirish Pargaonkar \u003cshirishp@us.ibm.com\u003e\n"
    },
    {
      "commit": "c8c727db413e18414dc6ebc2cc4f18f390763e17",
      "tree": "a57102fff430d3cb5d2db3a193409850e85047be",
      "parents": [
        "4f63e3c5be2ab55d47d89ea1d32d2c27254daf26",
        "b9ca67b2ddf021491a3741d9555e8ff59b2175ba"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 08 11:12:59 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 08 11:12:59 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:\n  fuse: fix lock annotations\n  fuse: flush background queue on connection close\n"
    },
    {
      "commit": "97b8f4a9dfd932997677136e11980eb2fafea91d",
      "tree": "63f1a6555c61f4ce421c7b9d7358a34a6e919c6a",
      "parents": [
        "dd43bcde23c527f64897eef41aa1fed2c9905ea9"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Aug 13 15:15:19 2010 -0700"
      },
      "committer": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Sep 08 14:26:00 2010 +0800"
      },
      "message": "ocfs2: Fix orphan add in ocfs2_create_inode_in_orphan\n\nocfs2_create_inode_in_orphan() is used by reflink to create the newly\nreflinked inode simultaneously in the orphan dir. This allows us to easily\nhandle partially-reflinked files during recovery cleanup.\n\nWe have a problem though - the orphan dir stringifies inode # to determine\na unique name under which the orphan entry dirent can be created. Since\nocfs2_create_inode_in_orphan() needs the space allocated in the orphan dir\nbefore it can allocate the inode, we currently call into the orphan code:\n\n       /*\n        * We give the orphan dir the root blkno to fake an orphan name,\n        * and allocate enough space for our insertion.\n        */\n       status \u003d ocfs2_prepare_orphan_dir(osb, \u0026orphan_dir,\n                                         osb-\u003eroot_blkno,\n                                         orphan_name, \u0026orphan_insert);\n\nUsing osb-\u003eroot_blkno might work fine on unindexed directories, but the\norphan dir can have an index.  When it has that index, the above code fails\nto allocate the proper index entry.  Later, when we try to remove the file\nfrom the orphan dir (using the actual inode #), the reflink operation will\nfail.\n\nTo fix this, I created a function ocfs2_alloc_orphaned_file() which uses the\nnewly split out orphan and inode alloc code to figure out what the inode\nblock number will be (once allocated) and then prepare the orphan dir from\nthat data.\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\n"
    },
    {
      "commit": "dd43bcde23c527f64897eef41aa1fed2c9905ea9",
      "tree": "59a35711f0d21ef5198b6721e97a622b3e5f384d",
      "parents": [
        "e49e27674d1dd2717ad90b21ece8f83102153315"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Aug 13 15:15:18 2010 -0700"
      },
      "committer": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Sep 08 14:26:00 2010 +0800"
      },
      "message": "ocfs2: split out ocfs2_prepare_orphan_dir() into locking and prep functions\n\nWe do this because ocfs2_create_inode_in_orphan() wants to order locking of\nthe orphan dir with respect to locking of the inode allocator *before*\nmaking any changes to the directory.\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\n"
    },
    {
      "commit": "e49e27674d1dd2717ad90b21ece8f83102153315",
      "tree": "3ef61e9e4273a236dde61af12cb1e43d8c421c21",
      "parents": [
        "d51349829c378c06ba4aa7d4b16ca23739858608"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Aug 13 15:15:17 2010 -0700"
      },
      "committer": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Sep 08 14:25:59 2010 +0800"
      },
      "message": "ocfs2: allow return of new inode block location before allocation of the inode\n\nThis allows code which needs to know the eventual block number of an inode\nbut can\u0027t allocate it yet due to transaction or lock ordering. For example,\nocfs2_create_inode_in_orphan() currently gives a junk blkno for preparation\nof the orphan dir because it can\u0027t yet know where the actual inode is placed\n- that code is actually in ocfs2_mknod_locked. This is a problem when the\norphan dirs are indexed as the junk inode number will create an index entry\nwhich goes unused (and fails the later removal from the orphan dir).  Now\nwith these interfaces, ocfs2_create_inode_in_orphan() can run the block\ngroup search (and get back the inode block number) *before* any actual\nallocation occurs.\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\n"
    },
    {
      "commit": "d51349829c378c06ba4aa7d4b16ca23739858608",
      "tree": "972c0087222f803e7789a44e40e27585790333bf",
      "parents": [
        "021960cab320ae3cc4e9aba9cca42f9f5ce785f3"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Aug 13 15:15:16 2010 -0700"
      },
      "committer": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Sep 08 14:25:58 2010 +0800"
      },
      "message": "ocfs2: use ocfs2_alloc_dinode_update_counts() instead of open coding\n\nocfs2_search_chain() makes the same updates as\nocfs2_alloc_dinode_update_counts to the alloc inode. Instead of open coding\nthe bitmap update, use our helper function.\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\n"
    },
    {
      "commit": "021960cab320ae3cc4e9aba9cca42f9f5ce785f3",
      "tree": "f8fde4ef51bae0f7c9979a586b0c8ccab67a5f0b",
      "parents": [
        "81c8c82b5a39f9127e8b239e9b406a6c3a41b228"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Aug 13 15:15:15 2010 -0700"
      },
      "committer": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Sep 08 14:25:58 2010 +0800"
      },
      "message": "ocfs2: split out inode alloc code from ocfs2_mknod_locked\n\nDo this by splitting the bulk of the function away from the inode allocation\ncode at the very tom of ocfs2_mknod_locked(). Existing callers don\u0027t need to\nchange and won\u0027t see any difference. The new function created,\n__ocfs2_mknod_locked() will be used shortly.\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\n"
    },
    {
      "commit": "81c8c82b5a39f9127e8b239e9b406a6c3a41b228",
      "tree": "960d5e11585afea6bb4e24a87fb73a975e16883c",
      "parents": [
        "9b4c0ff32ccd87ab52d4c5bd0a0536febce11370"
      ],
      "author": {
        "name": "Tristan Ye",
        "email": "tristan.ye@oracle.com",
        "time": "Thu Aug 19 15:15:00 2010 +0800"
      },
      "committer": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Sep 08 14:25:57 2010 +0800"
      },
      "message": "Ocfs2: Fix a regression bug from mainline commit(6b933c8e6f1a2f3118082c455eef25f9b1ac7b45).\n\nThe patch is to fix the regression bug brought from commit 6b933c8...( \u0027ocfs2:\nAvoid direct write if we fall back to buffered I/O\u0027):\n\nhttp://oss.oracle.com/bugzilla/show_bug.cgi?id\u003d1285\n\nThe commit 6b933c8e6f1a2f3118082c455eef25f9b1ac7b45 changed __generic_file_aio_write\nto generic_file_buffered_write, which didn\u0027t call filemap_{write,wait}_range to  flush\nthe pagecaches when we were falling O_DIRECT writes back to buffered ones. it did hurt\nthe O_DIRECT semantics somehow in extented odirect writes.\n\nThis patch tries to guarantee O_DIRECT writes of \u0027fall back to buffered\u0027 to be correctly\nflushed.\n\nSigned-off-by: Tristan Ye \u003ctristan.ye@oracle.com\u003e\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\n"
    },
    {
      "commit": "9b4c0ff32ccd87ab52d4c5bd0a0536febce11370",
      "tree": "b9e77d2798eac9051353b29f22e9315d9d9e13b5",
      "parents": [
        "b2b6ebf5f740e015b2155343958f067e594323ea"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Aug 24 14:28:03 2010 +0200"
      },
      "committer": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Sep 08 14:25:57 2010 +0800"
      },
      "message": "ocfs2: Fix deadlock when allocating page\n\nWe cannot call grab_cache_page() when holding filesystem locks or with\na transaction started as grab_cache_page() calls page allocation with\nGFP_KERNEL flag and thus page reclaim can recurse back into the filesystem\ncausing deadlocks or various assertion failures. We have to use\nfind_or_create_page() instead and pass it GFP_NOFS as we do with other\nallocations.\n\nAcked-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\n"
    },
    {
      "commit": "b2b6ebf5f740e015b2155343958f067e594323ea",
      "tree": "c235f91c504cb95ce0b7b4a5c3cfed1df185eb88",
      "parents": [
        "889f004a8c83d515f275078687f859bc0d5ede9d"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Thu Aug 26 13:06:50 2010 -0700"
      },
      "committer": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Sep 08 14:25:56 2010 +0800"
      },
      "message": "ocfs2: properly set and use inode group alloc hint\n\nWe were setting ac-\u003eac_last_group in ocfs2_claim_suballoc_bits from\nres-\u003esr_bg_blkno.  Unfortunately, res-\u003esr_bg_blkno is going to be zero under\nnormal (non-fragmented) circumstances. The discontig block group patches\neffectively turned off that feature. Fix this by correctly calculating what\nthe next group hint should be.\n\nAcked-by: Tao Ma \u003ctao.ma@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nTested-by: Goldwyn Rodrigues \u003crgoldwyn@suse.de\u003e\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\n"
    },
    {
      "commit": "889f004a8c83d515f275078687f859bc0d5ede9d",
      "tree": "d1b35ad545a4a68fefd1618a591a9d26ccd15ced",
      "parents": [
        "04eda1a18019bb387dc7e97ee99979dd88dc608a"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Thu Sep 02 13:10:10 2010 +0800"
      },
      "committer": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Sep 08 14:25:56 2010 +0800"
      },
      "message": "ocfs2: Use the right group in nfs sync check.\n\nWe have added discontig block group now, and now an inode\ncan be allocated in an discontig block group. So get\nit in ocfs2_get_suballoc_slot_bit.\n\nThe old ocfs2_test_suballoc_bit gets group block no\nfrom the allocation inode which is wrong. Fix it by\npassing the right group.\n\nAcked-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\n"
    },
    {
      "commit": "04eda1a18019bb387dc7e97ee99979dd88dc608a",
      "tree": "8162ad0ec77c7ef80903a1fec134b43b71a7d272",
      "parents": [
        "f63afdb2c32db850fa1bfccf84643a8885cbeb61"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Aug 05 20:32:45 2010 +0200"
      },
      "committer": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Sep 08 14:25:55 2010 +0800"
      },
      "message": "ocfs2: Flush drive\u0027s caches on fdatasync\n\nWhen \u0027barrier\u0027 mount option is specified, we have to issue a cache flush\nduring fdatasync(2). We have to do this even if inode doesn\u0027t have\nI_DIRTY_DATASYNC set because we still have to get written *data* to disk so\nthat they are not lost in case of crash.\n\nAcked-by: Tao Ma \u003ctao.ma@oracle.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSinged-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\n"
    },
    {
      "commit": "f63afdb2c32db850fa1bfccf84643a8885cbeb61",
      "tree": "051bd8feb6eeb546d562e325157526dbc1018e49",
      "parents": [
        "f5ce5a08a40f2086435858ddc80cb40394b082eb"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Sat Jul 17 21:45:49 2010 +0800"
      },
      "committer": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Sep 08 14:25:55 2010 +0800"
      },
      "message": "ocfs2: make __ocfs2_page_mkwrite handle file end properly.\n\n__ocfs2_page_mkwrite now is broken in handling file end.\n1. the last page should be the page contains i_size - 1.\n2. the len in the last page is also calculated wrong.\nSo change them accordingly.\n\nAcked-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\n"
    },
    {
      "commit": "f5ce5a08a40f2086435858ddc80cb40394b082eb",
      "tree": "b8880708bcddc0568b6746a7156b9ff21617750d",
      "parents": [
        "dc696aced9f09f05b1f927b93f5a7918017a3e49"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Thu Aug 12 16:24:26 2010 -0700"
      },
      "committer": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Sep 08 14:25:54 2010 +0800"
      },
      "message": "ocfs2: Fix incorrect checksum validation error\n\nFor local mounts, ocfs2_read_locked_inode() calls ocfs2_read_blocks_sync() to\nread the inode off the disk. The latter first checks to see if that block is\ncached in the journal, and, if so, returns that block. That is ok.\n\nBut ocfs2_read_locked_inode() goes wrong when it tries to validate the checksum\nof such blocks. Blocks that are cached in the journal may not have had their\nchecksum computed as yet. We should not validate the checksums of such blocks.\n\nFixes ossbz#1282\nhttp://oss.oracle.com/bugzilla/show_bug.cgi?id\u003d1282\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nCc: stable@kernel.org\nSinged-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\n"
    },
    {
      "commit": "dc696aced9f09f05b1f927b93f5a7918017a3e49",
      "tree": "a2101f7a73a758118d11de70cbd0ad81180fb07f",
      "parents": [
        "2bfc96a127bc1cc94d26bfaa40159966064f9c8c"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Thu Aug 12 16:24:25 2010 -0700"
      },
      "committer": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Sep 08 14:25:53 2010 +0800"
      },
      "message": "ocfs2: Fix metaecc error messages\n\nLike tools, the checksum validate function now prints the values in hex.\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nSinged-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\n"
    },
    {
      "commit": "4f63e3c5be2ab55d47d89ea1d32d2c27254daf26",
      "tree": "491c6d58ccb246e0b049fa60af4328f649c54089",
      "parents": [
        "e6f901bb85bc0707aaafb3c123c3013c0feaba7d",
        "8f34a430ac16d5fbd9d6b383184d35e152f5a963"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 19:21:02 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 19:21:02 2010 -0700"
      },
      "message": "Merge branch \u0027for-2.6.36\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.36\u0027 of git://linux-nfs.org/~bfields/linux:\n  nfsd4: mask out non-access bits in nfs4_access_to_omode\n"
    },
    {
      "commit": "fa2925cf90e612cb9c10c45d0cb8a7c7332e56a7",
      "tree": "b836666993fac5c9a157c2cb756c33fb66cb13e8",
      "parents": [
        "98e52c373cdc1239a9ec6a2763f519cc1d99dcbc",
        "cb7a93412ab52361bc255cbe2c767e0741c09f43"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 15:44:28 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 15:44:28 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs\n\n* \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs:\n  xfs: Make fiemap work with sparse files\n  xfs: prevent 32bit overflow in space reservation\n  xfs: Disallow 32bit project quota id\n  xfs: improve buffer cache hash scalability\n"
    },
    {
      "commit": "3c5dff7b5ec7ac1bf356d43ac37e2e4ec7ec063a",
      "tree": "1d6be67bfc1175333279da5934805be3921182b0",
      "parents": [
        "dc6f962eb5ad728086fcfa9967976e93ed68e0a5",
        "8f587df479c3cea14ba1a9b9d58f34fd2fd6d58b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 14:38:21 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 14:38:21 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:\n  9p: potential ERR_PTR() dereference\n"
    },
    {
      "commit": "d3de0eb1642feda3c53fb455e7cf07b222deafb5",
      "tree": "ee010c5fcbed7c42710e25ba1b7950b4c118f20a",
      "parents": [
        "b06ac5a3606d365a63e671273a441158ce3019bb",
        "57f9bdac2510cd7fda58e4a111d250861eb1ebeb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 14:04:59 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 14:04:59 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6:\n  sysfs: checking for NULL instead of ERR_PTR\n"
    },
    {
      "commit": "4848d7156943085c0d4ca0b0575474af25673699",
      "tree": "c6e81118a29ff29f6e88a4530cdabe9e9a1a6432",
      "parents": [
        "4eab8a5717f5a863cb0e2fc8b22d8b22f4aaa644",
        "4afc31345e5f543e5d89a47aeadaaad1d91a5bc8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 14:01:50 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 14:01:50 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2:\n  nilfs2: fix leak of shadow dat inode in error path of load_nilfs\n"
    },
    {
      "commit": "7a2e8a8faab76386d8eaae9ded739ee5615be174",
      "tree": "404b9c185f32e3e6ef871bb85c217314e4aff3e8",
      "parents": [
        "2bfc96a127bc1cc94d26bfaa40159966064f9c8c"
      ],
      "author": {
        "name": "Valerie Aurora",
        "email": "vaurora@redhat.com",
        "time": "Thu Aug 26 11:07:22 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 13:46:20 2010 -0700"
      },
      "message": "VFS: Sanity check mount flags passed to change_mnt_propagation()\n\nSanity check the flags passed to change_mnt_propagation().  Exactly\none flag should be set.  Return EINVAL otherwise.\n\nUserspace can pass in arbitrary combinations of MS_* flags to mount().\ndo_change_type() is called if any of MS_SHARED, MS_PRIVATE, MS_SLAVE,\nor MS_UNBINDABLE is set.  do_change_type() clears MS_REC and then\ncalls change_mnt_propagation() with the rest of the user-supplied\nflags.  change_mnt_propagation() clearly assumes only one flag is set\nbut do_change_type() does not check that this is true.  For example,\nmount() with flags MS_SHARED | MS_RDONLY does not actually make the\nmount shared or read-only but does clear MNT_UNBINDABLE.\n\nSigned-off-by: Valerie Aurora \u003cvaurora@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b9ca67b2ddf021491a3741d9555e8ff59b2175ba",
      "tree": "170010fef4f0b36ff01f1f9375d9beb9677178c7",
      "parents": [
        "595afaf9e6ee1b48e13ec4b8bcc8c7dee888161a"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue Sep 07 13:42:41 2010 +0200"
      },
      "committer": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue Sep 07 13:42:41 2010 +0200"
      },
      "message": "fuse: fix lock annotations\n\nSparse doesn\u0027t understand lock annotations of the form\n__releases(\u0026foo-\u003elock).  Change them to __releases(foo-\u003elock).  Same\nfor __acquires().\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\n"
    },
    {
      "commit": "595afaf9e6ee1b48e13ec4b8bcc8c7dee888161a",
      "tree": "18ec100cfce992b61aaca2e0a8d0897e67c72300",
      "parents": [
        "2bfc96a127bc1cc94d26bfaa40159966064f9c8c"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue Sep 07 13:42:41 2010 +0200"
      },
      "committer": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue Sep 07 13:42:41 2010 +0200"
      },
      "message": "fuse: flush background queue on connection close\n\nDavid Bartly reported that fuse can hang in fuse_get_req_nofail() when\nthe connection to the filesystem server is no longer active.\n\nIf bg_queue is not empty then flush_bg_queue() called from\nrequest_end() can put more requests on to the pending queue.  If this\nhappens while ending requests on the processing queue then those\nbackground requests will be queued to the pending list and never\nended.\n\nAnother problem is that fuse_dev_release() didn\u0027t wake up processes\nsleeping on blocked_waitq.\n\nSolve this by:\n\n a) flushing the background queue before calling end_requests() on the\n    pending and processing queues\n\n b) setting blocked \u003d 0 and waking up processes waiting on\n    blocked_waitq()\n\nThanks to David for an excellent bug report.\n\nReported-by: David Bartley \u003candareed@gmail.com\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCC: stable@kernel.org\n"
    },
    {
      "commit": "57f9bdac2510cd7fda58e4a111d250861eb1ebeb",
      "tree": "c343e3d07fbab1cf7714b9bedebda95807e86cd9",
      "parents": [
        "2bfc96a127bc1cc94d26bfaa40159966064f9c8c"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Wed Aug 25 09:12:29 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Sep 03 17:26:28 2010 -0700"
      },
      "message": "sysfs: checking for NULL instead of ERR_PTR\n\nd_path() returns an ERR_PTR and it doesn\u0027t return NULL.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nCc: stable \u003cstable@kernel.org\u003e\nReviewed-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "cb7a93412ab52361bc255cbe2c767e0741c09f43",
      "tree": "063b89ca160ac43b8df41cf6d12158c4ca7fe897",
      "parents": [
        "9af25465081480a75824fd7a16a37a5cfebeede9",
        "72656c46f50b8dfe50e15793692982e636e3df20"
      ],
      "author": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Sep 03 09:02:32 2010 -0500"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Sep 03 09:02:32 2010 -0500"
      },
      "message": "Merge branch \u00272.6.36-xfs-misc\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/xfsdev\n"
    },
    {
      "commit": "9af25465081480a75824fd7a16a37a5cfebeede9",
      "tree": "475ea0ef9247b65b0ce8997ba581a87bd71c11b6",
      "parents": [
        "23963e54ce187ca6e907c83176c15508b0f6e60d"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Mon Aug 30 02:44:03 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Sep 03 09:02:11 2010 -0500"
      },
      "message": "xfs: Make fiemap work with sparse files\n\nIn xfs_vn_fiemap, we set bvm_count to fi_extent_max + 1 and want\nto return fi_extent_max extents, but actually it won\u0027t work for\na sparse file. The reason is that in xfs_getbmap we will\ncalculate holes and set it in \u0027out\u0027, while out is malloced by\nbmv_count(fi_extent_max+1) which didn\u0027t consider holes. So in the\nworst case, if \u0027out\u0027 vector looks like\n[hole, extent, hole, extent, hole, ... hole, extent, hole],\nwe will only return half of fi_extent_max extents.\n\nThis patch add a new parameter BMV_IF_NO_HOLES for bvm_iflags.\nSo with this flags, we don\u0027t use our \u0027out\u0027 in xfs_getbmap for\na hole. The solution is a bit ugly by just don\u0027t increasing\nindex of \u0027out\u0027 vector. I felt that it is not easy to skip it\nat the very beginning since we have the complicated check and\nsome function like xfs_getbmapx_fix_eof_hole to adjust \u0027out\u0027.\n\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "72656c46f50b8dfe50e15793692982e636e3df20",
      "tree": "8841c80c9cf5873c915a821e98f3ae09746ec9d8",
      "parents": [
        "9bc08a45fb117c696e4940cfa1208cb1cc7a2f25"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Fri Sep 03 12:19:33 2010 +1000"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Fri Sep 03 12:19:33 2010 +1000"
      },
      "message": "xfs: prevent 32bit overflow in space reservation\n\nIf we attempt to preallocate more than 2^32 blocks of space in a\nsingle syscall, the transaction block reservation will overflow\nleading to a hangs in the superblock block accounting code. This\nis trivially reproduced with xfs_io. Fix the problem by capping the\nallocation reservation to the maximum number of blocks a single\nxfs_bmapi() call can allocate (2^21 blocks).\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "8f34a430ac16d5fbd9d6b383184d35e152f5a963",
      "tree": "34a2cbdacb782fb63a0096c28a1e8ab9d8770153",
      "parents": [
        "f6360efb83cd6dd1476cd758834c8277508c1f15"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Thu Sep 02 15:23:16 2010 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Thu Sep 02 15:25:09 2010 -0400"
      },
      "message": "nfsd4: mask out non-access bits in nfs4_access_to_omode\n\nThis fixes an unnecessary BUG().\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "23963e54ce187ca6e907c83176c15508b0f6e60d",
      "tree": "9cac313a1dce67874c9711061ff10f82ccb7c4d0",
      "parents": [
        "2bfc96a127bc1cc94d26bfaa40159966064f9c8c"
      ],
      "author": {
        "name": "Arkadiusz Mi?kiewicz",
        "email": "arekm@maven.pl",
        "time": "Thu Aug 26 10:19:43 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Sep 02 10:29:08 2010 -0500"
      },
      "message": "xfs: Disallow 32bit project quota id\n\nCurrently on-disk structure is able to keep only 16bit project quota\nid, so disallow 32bit ones. This fixes a problem where parts of\nkernel structures holding project quota id are 32bit while parts\n(on-disk) are 16bit variables which causes project quota member\nfiles to be inaccessible for some operations (like mv/rm).\n\nSigned-off-by: Arkadiusz Mi?kiewicz \u003carekm@maven.pl\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "9bc08a45fb117c696e4940cfa1208cb1cc7a2f25",
      "tree": "610e4cb520d62c4ad6ae0f20ddd64cd15520c33a",
      "parents": [
        "2bfc96a127bc1cc94d26bfaa40159966064f9c8c"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Sep 02 15:14:38 2010 +1000"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Sep 02 15:14:38 2010 +1000"
      },
      "message": "xfs: improve buffer cache hash scalability\n\nWhen doing large parallel file creates on a 16p machines, large amounts of\ntime is being spent in _xfs_buf_find(). A system wide profile with perf top\nshows this:\n\n          1134740.00 19.3% _xfs_buf_find\n           733142.00 12.5% __ticket_spin_lock\n\nThe problem is that the hash contains 45,000 buffers, and the hash table width\nis only 256 buffers. That means we\u0027ve got around 200 buffers per chain, and\nsearching it is quite expensive. The hash table size needs to increase.\n\nSecondly, every time we do a lookup, we promote the buffer we find to the head\nof the hash chain. This is causing cachelines to be dirtied and causes\ninvalidation of cachelines across all CPUs that may have walked the hash chain\nrecently. hence every walk of the hash chain is effectively a cold cache walk.\nRemove the promotion to avoid this invalidation.\n\nThe results are:\n\n          1045043.00 21.2% __ticket_spin_lock\n           326184.00  6.6% _xfs_buf_find\n\nA 70% drop in the CPU usage when looking up buffers. Unfortunately that does\nnot result in an increase in performance underthis workload as contention on\nthe inode_lock soaks up most of the reduction in CPU usage.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "8f587df479c3cea14ba1a9b9d58f34fd2fd6d58b",
      "tree": "5c01cd8b1fa9ecea9af268890d39a49b017a8631",
      "parents": [
        "2bfc96a127bc1cc94d26bfaa40159966064f9c8c"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Wed Aug 04 16:27:45 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 30 10:35:28 2010 -0500"
      },
      "message": "9p: potential ERR_PTR() dereference\n\np9_client_walk() can return error values if we run out of space or there\nis a problem with the network.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "4afc31345e5f543e5d89a47aeadaaad1d91a5bc8",
      "tree": "698cd37b9f285343e2c309a897d566501760bb9f",
      "parents": [
        "2bfc96a127bc1cc94d26bfaa40159966064f9c8c"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Aug 29 01:55:38 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Aug 30 10:18:03 2010 +0900"
      },
      "message": "nilfs2: fix leak of shadow dat inode in error path of load_nilfs\n\nIf load_nilfs() gets an error while doing recovery, it will fail to\nfree the shadow inode of dat (nilfs-\u003ens_gc_dat).\n\nThis fixes the leak issue.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "30c0f6a04975d557f3c1a4e640b3808b1231c3ef",
      "tree": "eefc2a8d97765342cb5c2c16d98e5d02e9ebf98a",
      "parents": [
        "e933424c4823596ed231648eeb602b5209960ff6",
        "92b4678efa8ce0de9b1e01a74e3d13c4002a4136"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 28 14:11:04 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 28 14:11:04 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.infradead.org/users/eparis/notify\n\n* \u0027for-linus\u0027 of git://git.infradead.org/users/eparis/notify:\n  fsnotify: drop two useless bools in the fnsotify main loop\n  fsnotify: fix list walk order\n  fanotify: Return EPERM when a process is not privileged\n  fanotify: resize pid and reorder structure\n  fanotify: drop duplicate pr_debug statement\n  fanotify: flush outstanding perm requests on group destroy\n  fsnotify: fix ignored mask handling between inode and vfsmount marks\n  fanotify: add MAINTAINERS entry\n  fsnotify: reset used_inode and used_vfsmount on each pass\n  fanotify: do not dereference inode_mark when it is unset\n"
    },
    {
      "commit": "e933424c4823596ed231648eeb602b5209960ff6",
      "tree": "d1bec768605bd4cc91326b80a02fa6472384bf08",
      "parents": [
        "8f2a0029b8aaed9fb37d775dbe527e163920b129",
        "93c3fe40c279f002906ad14584c30671097d4394"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 28 14:10:43 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 28 14:10:43 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6:\n  eCryptfs: Fix encrypted file name lookup regression\n  ecryptfs: properly mark init functions\n  fs/ecryptfs: Return -ENOMEM on memory allocation failure\n"
    },
    {
      "commit": "997396a73a94de7d92d82e30d7bb1d931e38cb16",
      "tree": "2190a66e085f16a1985e008be167d6fc4ea6734d",
      "parents": [
        "6f4dbeca1a5bac4552d49d9e7b774da9f6625e74",
        "b545787dbb00a041c541a4759d938ddb0108295a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 28 14:07:20 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 28 14:07:20 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:\n  ceph: fix get_ticket_handler() error handling\n  ceph: don\u0027t BUG on ENOMEM during mds reconnect\n  ceph: ceph_mdsc_build_path() returns an ERR_PTR\n  ceph: Fix warnings\n  ceph: ceph_get_inode() returns an ERR_PTR\n  ceph: initialize fields on new dentry_infos\n  ceph: maintain i_head_snapc when any caps are dirty, not just for data\n  ceph: fix osd request lru adjustment when sending request\n  ceph: don\u0027t improperly set dir complete when holding EXCL cap\n  mm: exporting account_page_dirty\n  ceph: direct requests in snapped namespace based on nonsnap parent\n  ceph: queue cap snap writeback for realm children on snap update\n  ceph: include dirty xattrs state in snapped caps\n  ceph: fix xattr cap writeback\n  ceph: fix multiple mds session shutdown\n"
    },
    {
      "commit": "2547d1d20f3a252567f974de8ce1c572a0815d5a",
      "tree": "786404cb38c6ca55ca46a63df570c119ca32561e",
      "parents": [
        "7be0d4f90ad8e0f9591fd311765a212a42e26b13",
        "f6360efb83cd6dd1476cd758834c8277508c1f15"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 28 14:05:55 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 28 14:05:55 2010 -0700"
      },
      "message": "Merge branch \u0027for-2.6.36\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.36\u0027 of git://linux-nfs.org/~bfields/linux:\n  nfsd: fix NULL dereference in nfsd_statfs()\n  nfsd4: fix downgrade/lock logic\n  nfsd4: typo fix in find_any_file\n  nfsd4: bad BUG() in preprocess_stateid_op\n"
    },
    {
      "commit": "b76b4014f9d988d2412b873e4d4c13c7f9afc4e4",
      "tree": "25493858be740a5cb558e594e6af61971758a94a",
      "parents": [
        "6628bc74f1aa9c35dd386320bf7ec04f12edb1b3"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Sat Aug 28 08:52:10 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 28 08:52:10 2010 +0200"
      },
      "message": "writeback: Fix lost wake-up shutting down writeback thread\n\nSetting the task state here may cause us to miss the wake up from\nkthread_stop(), so we need to recheck kthread_should_stop() or risk\nsleeping forever in the following schedule().\n\nSymptom was an indefinite hang on an NFSv4 mount.  (NFSv4 may create\nmultiple mounts in a temporary namespace while traversing the mount\npath, and since the temporary namespace is immediately destroyed, it may\nend up destroying a mount very soon after it was created, possibly\nmaking this race more likely.)\n\nINFO: task mount.nfs4:4314 blocked for more than 120 seconds.\n\"echo 0 \u003e /proc/sys/kernel/hung_task_timeout_secs\" disables this message.\nmount.nfs4    D 0000000000000000  2880  4314   4313 0x00000000\n ffff88001ed6da28 0000000000000046 ffff88001ed6dfd8 ffff88001ed6dfd8\n ffff88001ed6c000 ffff88001ed6c000 ffff88001ed6c000 ffff88001e5003a0\n ffff88001ed6dfd8 ffff88001e5003a8 ffff88001ed6c000 ffff88001ed6dfd8\nCall Trace:\n [\u003cffffffff8196090d\u003e] schedule_timeout+0x1cd/0x2e0\n [\u003cffffffff8106a31c\u003e] ? mark_held_locks+0x6c/0xa0\n [\u003cffffffff819639a0\u003e] ? _raw_spin_unlock_irq+0x30/0x60\n [\u003cffffffff8106a5fd\u003e] ? trace_hardirqs_on_caller+0x14d/0x190\n [\u003cffffffff819671fe\u003e] ? sub_preempt_count+0xe/0xd0\n [\u003cffffffff8195fc80\u003e] wait_for_common+0x120/0x190\n [\u003cffffffff81033c70\u003e] ? default_wake_function+0x0/0x20\n [\u003cffffffff8195fdcd\u003e] wait_for_completion+0x1d/0x20\n [\u003cffffffff810595fa\u003e] kthread_stop+0x4a/0x150\n [\u003cffffffff81061a60\u003e] ? thaw_process+0x70/0x80\n [\u003cffffffff810cc68a\u003e] bdi_unregister+0x10a/0x1a0\n [\u003cffffffff81229dc9\u003e] nfs_put_super+0x19/0x20\n [\u003cffffffff810ee8c4\u003e] generic_shutdown_super+0x54/0xe0\n [\u003cffffffff810ee9b6\u003e] kill_anon_super+0x16/0x60\n [\u003cffffffff8122d3b9\u003e] nfs4_kill_super+0x39/0x90\n [\u003cffffffff810eda45\u003e] deactivate_locked_super+0x45/0x60\n [\u003cffffffff810edfb9\u003e] deactivate_super+0x49/0x70\n [\u003cffffffff81108294\u003e] mntput_no_expire+0x84/0xe0\n [\u003cffffffff811084ef\u003e] release_mounts+0x9f/0xc0\n [\u003cffffffff81108575\u003e] put_mnt_ns+0x65/0x80\n [\u003cffffffff8122cc56\u003e] nfs_follow_remote_path+0x1e6/0x420\n [\u003cffffffff8122cfbf\u003e] nfs4_try_mount+0x6f/0xd0\n [\u003cffffffff8122d0c2\u003e] nfs4_get_sb+0xa2/0x360\n [\u003cffffffff810edcb8\u003e] vfs_kern_mount+0x88/0x1f0\n [\u003cffffffff810ede92\u003e] do_kern_mount+0x52/0x130\n [\u003cffffffff81963d9a\u003e] ? _lock_kernel+0x6a/0x170\n [\u003cffffffff81108e9e\u003e] do_mount+0x26e/0x7f0\n [\u003cffffffff81106b3a\u003e] ? copy_mount_options+0xea/0x190\n [\u003cffffffff811094b8\u003e] sys_mount+0x98/0xf0\n [\u003cffffffff810024d8\u003e] system_call_fastpath+0x16/0x1b\n1 lock held by mount.nfs4/4314:\n #0:  (\u0026type-\u003es_umount_key#24){+.+...}, at: [\u003cffffffff810edfb1\u003e] deactivate_super+0x41/0x70\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\nAcked-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "92b4678efa8ce0de9b1e01a74e3d13c4002a4136",
      "tree": "97febbafb1798324802325c22c3693902a47323d",
      "parents": [
        "f72adfd540bacc4f6ff57a7d708b1a6c8906bdb4"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Aug 27 21:42:11 2010 -0400"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Aug 27 21:42:11 2010 -0400"
      },
      "message": "fsnotify: drop two useless bools in the fnsotify main loop\n\nThe fsnotify main loop has 2 bools which indicated if we processed the\ninode or vfsmount mark in that particular pass through the loop.  These\nbool can we replaced with the inode_group and vfsmount_group variables\nand actually make the code a little easier to understand.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "f72adfd540bacc4f6ff57a7d708b1a6c8906bdb4",
      "tree": "dffd43e47284095e98f2a2ab60f965fc68792008",
      "parents": [
        "a2f13ad0ba5d94b9768c28469b45ca1e81a2b895"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Aug 27 21:24:24 2010 -0400"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Aug 27 21:41:26 2010 -0400"
      },
      "message": "fsnotify: fix list walk order\n\nMarks were stored on the inode and vfsmonut mark list in order from\nhighest memory address to lowest memory address.  The code to walk those\nlists thought they were in order from lowest to highest with\nunpredictable results when trying to match up marks from each.  It was\npossible that extra events would be sent to userspace when inode\nmarks ignoring events wouldn\u0027t get matched with the vfsmount marks.\n\nThis problem only affected fanotify when using both vfsmount and inode\nmarks simultaneously.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "a2f13ad0ba5d94b9768c28469b45ca1e81a2b895",
      "tree": "3c9bd63cb165bbb4427399b3e87deb74911cd97d",
      "parents": [
        "0fb85621df4f9f7c663c6c77c302e821a832c95e"
      ],
      "author": {
        "name": "Andreas Gruenbacher",
        "email": "agruen@suse.de",
        "time": "Tue Aug 24 12:58:54 2010 +0200"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Aug 27 19:59:42 2010 -0400"
      },
      "message": "fanotify: Return EPERM when a process is not privileged\n\nThe appropriate error code when privileged operations are denied is\nEPERM, not EACCES.\n\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nSigned-off-by: Eric Paris \u003cparis@paris.rdu.redhat.com\u003e\n"
    },
    {
      "commit": "93c3fe40c279f002906ad14584c30671097d4394",
      "tree": "9e18819c7abfe2bc6b15e924236efd36a0601780",
      "parents": [
        "7371a38201d04124a9ff2cf05059731d7c1e35a5"
      ],
      "author": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Wed Aug 25 10:26:37 2010 -0500"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Fri Aug 27 10:50:53 2010 -0500"
      },
      "message": "eCryptfs: Fix encrypted file name lookup regression\n\nFixes a regression caused by 21edad32205e97dc7ccb81a85234c77e760364c8\n\nWhen file name encryption was enabled, ecryptfs_lookup() failed to use\nthe encrypted and encoded version of the upper, plaintext, file name\nwhen performing a lookup in the lower file system. This made it\nimpossible to lookup existing encrypted file names and any newly created\nfiles would have plaintext file names in the lower file system.\n\nhttps://bugs.launchpad.net/ecryptfs/+bug/623087\n\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "7371a38201d04124a9ff2cf05059731d7c1e35a5",
      "tree": "0a463fc73700c12c0e28299d2b214394e9bd7249",
      "parents": [
        "f137f15072411618e37b338aa13e5ae43583bcf2"
      ],
      "author": {
        "name": "Jerome Marchand",
        "email": "jmarchan@redhat.com",
        "time": "Tue Aug 17 17:24:05 2010 +0200"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Fri Aug 27 10:50:52 2010 -0500"
      },
      "message": "ecryptfs: properly mark init functions\n\nSome ecryptfs init functions are not prefixed by __init and thus not\nfreed after initialization. This patch saved about 1kB in ecryptfs\nmodule.\n\nSigned-off-by: Jerome Marchand \u003cjmarchan@redhat.com\u003e\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "f137f15072411618e37b338aa13e5ae43583bcf2",
      "tree": "a1679017c58f65b7fd20febab16bb338354bd59b",
      "parents": [
        "76be97c1fc945db08aae1f1b746012662d643e97"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Wed Aug 11 12:11:41 2010 +0200"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Fri Aug 27 10:50:52 2010 -0500"
      },
      "message": "fs/ecryptfs: Return -ENOMEM on memory allocation failure\n\nIn this code, 0 is returned on memory allocation failure, even though other\nfailures return -ENOMEM or other similar values.\n\nA simplified version of the semantic match that finds this problem is as\nfollows: (http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\nexpression ret;\nexpression x,e1,e2,e3;\n@@\n\nret \u003d 0\n... when !\u003d ret \u003d e1\n*x \u003d \\(kmalloc\\|kcalloc\\|kzalloc\\)(...)\n... when !\u003d ret \u003d e2\nif (x \u003d\u003d NULL) { ... when !\u003d ret \u003d e3\n  return ret;\n}\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "f6360efb83cd6dd1476cd758834c8277508c1f15",
      "tree": "e57015159bf6f361d45050f28a8da7beaceaea60",
      "parents": [
        "f632265d0ffb5acf331252d98c64939849d96bb2"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Aug 13 15:53:49 2010 +0200"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Thu Aug 26 13:23:16 2010 -0400"
      },
      "message": "nfsd: fix NULL dereference in nfsd_statfs()\n\nThe commit ebabe9a9001af0af56c0c2780ca1576246e7a74b\n    pass a struct path to vfs_statfs\nintroduced the struct path initialization, and this seems to trigger\nan Oops on my machine.\n\nfh_dentry field may be NULL and set later in fh_verify(), thus the\ninitialization of path must be after fh_verify().\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "f632265d0ffb5acf331252d98c64939849d96bb2",
      "tree": "31187d9a726bf1ca6ca12e26ad8e7c609eaf4d8b",
      "parents": [
        "7d94784293096c0a46897acdb83be5abd9278ece",
        "da5cabf80e2433131bf0ed8993abc0f7ea618c73"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Thu Aug 26 13:22:27 2010 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Thu Aug 26 13:22:27 2010 -0400"
      },
      "message": "Merge commit \u0027v2.6.36-rc1\u0027 into HEAD\n"
    },
    {
      "commit": "7d94784293096c0a46897acdb83be5abd9278ece",
      "tree": "da2bc54b7d2527b465833610d80ec0285b90c8a7",
      "parents": [
        "18608ad49cffa430cfd0b4e027dedfe3114f916e"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Aug 20 18:09:31 2010 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Thu Aug 26 13:22:02 2010 -0400"
      },
      "message": "nfsd4: fix downgrade/lock logic\n\nIf we already had a RW open for a file, and get a readonly open, we were\npiggybacking on the existing RW open.  That\u0027s inconsistent with the\ndowngrade logic which blows away the RW open assuming you\u0027ll still have\na readonly open.\n\nAlso, make sure there is a readonly or writeonly open available for\nlocking, again to prevent bad behavior in downgrade cases when any RW\nopen may be lost.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "18608ad49cffa430cfd0b4e027dedfe3114f916e",
      "tree": "e821f9abcfc309d65bbbc5df27665c391218d89c",
      "parents": [
        "30c0e1ef0a8a6cab4e0f9357698c81a2f7f73cc5"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Aug 20 18:06:26 2010 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Thu Aug 26 13:21:09 2010 -0400"
      },
      "message": "nfsd4: typo fix in find_any_file\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "30c0e1ef0a8a6cab4e0f9357698c81a2f7f73cc5",
      "tree": "3bccc5ba7e8dff301f8dd4536158306d9261244d",
      "parents": [
        "998db52c03cd293d16a457f1b396cea932244147"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Tue Aug 17 18:46:33 2010 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Thu Aug 26 13:20:51 2010 -0400"
      },
      "message": "nfsd4: bad BUG() in preprocess_stateid_op\n\nIt\u0027s OK for this function to return without setting filp--we do it in\nthe special-stateid case.\n\nAnd there\u0027s a legitimate case where we can hit this, since we do permit\nreads on write-only stateid\u0027s.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "f0138a79d74e1e942970ea163be268cd2e4bbcfc",
      "tree": "b3c3ddc0dbb3b46ecbb78ab24ea20a405b2b4b49",
      "parents": [
        "c89e5198b26a869ce2842bad8519264f3394dee9"
      ],
      "author": {
        "name": "Suresh Jayaraman",
        "email": "sjayaraman@suse.de",
        "time": "Thu Aug 26 14:46:09 2010 +0530"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 26 16:53:27 2010 +0000"
      },
      "message": "Cannot allocate memory error on mount\n\nOn 08/26/2010 01:56 AM, joe hefner wrote:\n\u003e On a recent Fedora (13), I am seeing a mount failure message that I can not explain. I have a Windows Server 2003ýa with a share set up for access only for a specific username (say userfoo). If I try to mount it from Linux,ýusing userfoo and the correct password all is well. If I try with a bad password or with some other username (userbar), it fails with \"Permission denied\" as expected. If I try to mount as username \u003d administrator, and give the correct administrator password, I would also expect \"Permission denied\", but I see \"Cannot allocate memory\" instead.\n\n\u003e ýfs/cifs/netmisc.c: Mapping smb error code 5 to POSIX err -13\n\u003e ýfs/cifs/cifssmb.c: Send error in QPathInfo \u003d -13\n\u003e ýCIFS VFS: cifs_read_super: get root inode failed\n\nLooks like the commit 0b8f18e3 assumed that cifs_get_inode_info() and\nfriends fail only due to memory allocation error when the inode is NULL\nwhich is not the case if CIFSSMBQPathInfo() fails and returns an error.\nFix this by propagating the actual error code back.\n\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "b545787dbb00a041c541a4759d938ddb0108295a",
      "tree": "7d64ee98012ee45726b79a32ed815e06c83c4ef9",
      "parents": [
        "e072f8aa3587710cd35cce0f6b6efd7b4276c327"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Thu Aug 26 11:12:38 2010 +0200"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Thu Aug 26 09:26:50 2010 -0700"
      },
      "message": "ceph: fix get_ticket_handler() error handling\n\nget_ticket_handler() returns a valid pointer or it returns\nERR_PTR(-ENOMEM) if kzalloc() fails.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "e072f8aa3587710cd35cce0f6b6efd7b4276c327",
      "tree": "a0455b3ed1d76880a6553d39f017081a1832f5ba",
      "parents": [
        "f44c3890d9fd6e4284518ff3bb16879fee194a3a"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Thu Aug 26 09:26:37 2010 -0700"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Thu Aug 26 09:26:37 2010 -0700"
      },
      "message": "ceph: don\u0027t BUG on ENOMEM during mds reconnect\n\nWe are in a position to return an error; do that instead.\n\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "f44c3890d9fd6e4284518ff3bb16879fee194a3a",
      "tree": "d4b0415abdc334a02454326c05d93c91c2555368",
      "parents": [
        "ad8453ab0a5b98884074302ba3cc37664791e261"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Thu Aug 26 11:07:24 2010 +0200"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Thu Aug 26 09:24:28 2010 -0700"
      },
      "message": "ceph: ceph_mdsc_build_path() returns an ERR_PTR\n\nceph_mdsc_build_path() returns an ERR_PTR but this code is set up to\nhandle NULL returns.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "c89e5198b26a869ce2842bad8519264f3394dee9",
      "tree": "bfad402886c41ffc12047c006a0725bd3c01fe49",
      "parents": [
        "37822188ef7bb41ae47b84ae283e6ac93cdafb9c"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 26 02:11:54 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 26 02:11:54 2010 +0000"
      },
      "message": "[CIFS] Eliminate unused variable warning\n\nCC: Shirish Pargaonkar \u003cshirishp@us.ibm.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "ad8453ab0a5b98884074302ba3cc37664791e261",
      "tree": "3e90b914db42bfa8b476b1d46aef7baee4adebb3",
      "parents": [
        "ac1f12ef569d49b013c3db86e11be7e15d66b1c3"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@linux.intel.com",
        "time": "Wed Aug 25 13:26:32 2010 +0100"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Wed Aug 25 12:02:14 2010 -0700"
      },
      "message": "ceph: Fix warnings\n\nJust scrubbing some warnings so I can see real problem ones in the build\nnoise. For 32bit we need to coax gcc politely into believing we really\nhonestly intend to the casts. Using (u64)(unsigned long) means we cast from\na pointer to a type of the right size and then extend it. This stops the\nwarning spew.\n\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "ac1f12ef569d49b013c3db86e11be7e15d66b1c3",
      "tree": "79ca92f4f4c08a14629ff6b2b3b74d2eb7fac5eb",
      "parents": [
        "36e21687e6e51c4225c42e6291938363f7bbfa7c"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Wed Aug 25 09:11:35 2010 +0200"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Wed Aug 25 12:01:54 2010 -0700"
      },
      "message": "ceph: ceph_get_inode() returns an ERR_PTR\n\nceph_get_inode() returns an ERR_PTR and it doesn\u0027t return a NULL.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "37822188ef7bb41ae47b84ae283e6ac93cdafb9c",
      "tree": "2c824dab54388d1b862fd0b11ec9bec59b3c8ac2",
      "parents": [
        "5a559057b4fa0f60b2772fb590bf13e90af7a57d",
        "2d20ca835867d93ead6ce61780d883a4b128106d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 25 09:57:59 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 25 09:57:59 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:\n  Eliminate sparse warning - bad constant expression\n  cifs: check for NULL session password\n  missing changes during ntlmv2/ntlmssp auth and sign\n  [CIFS] Fix ntlmv2 auth with ntlmssp\n  cifs: correction of unicode header files\n  cifs: fix NULL pointer dereference in cifs_find_smb_ses\n  cifs: consolidate error handling in several functions\n  cifs: clean up error handling in cifs_mknod\n"
    },
    {
      "commit": "36e21687e6e51c4225c42e6291938363f7bbfa7c",
      "tree": "15f30bf1e622b564b6663217cf99c75aad03fae3",
      "parents": [
        "7d8cb26d7dcb911f110b7762bd5941e8f009d6c3"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue Aug 24 16:23:48 2010 -0700"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue Aug 24 16:24:19 2010 -0700"
      },
      "message": "ceph: initialize fields on new dentry_infos\n\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "7d8cb26d7dcb911f110b7762bd5941e8f009d6c3",
      "tree": "2adf2f6303cc96ff14c951dc6966f68a0fc3cf25",
      "parents": [
        "07a27e226d1ed210d2d4218bd0642b40f5405c6a"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue Aug 24 08:44:16 2010 -0700"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue Aug 24 16:24:18 2010 -0700"
      },
      "message": "ceph: maintain i_head_snapc when any caps are dirty, not just for data\n\nWe used to use i_head_snapc to keep track of which snapc the current epoch\nof dirty data was dirtied under.  It is used by queue_cap_snap to set up\nthe cap_snap.  However, since we queue cap snaps for any dirty caps, not\njust for dirty file data, we need to keep a valid i_head_snapc anytime\nwe have dirty|flushing caps.  This fixes a NULL pointer deref in\nqueue_cap_snap when writing back dirty caps without data (e.g.,\nsnaptest-authwb.sh).\n\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "2d20ca835867d93ead6ce61780d883a4b128106d",
      "tree": "519a2bff48470a78406e55428a8410ed63c63c48",
      "parents": [
        "24e6cf92fde1f140d8eb0bf7cd24c2c78149b6b2"
      ],
      "author": {
        "name": "shirishpargaonkar@gmail.com",
        "email": "shirishpargaonkar@gmail.com",
        "time": "Tue Aug 24 11:53:48 2010 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 24 18:12:52 2010 +0000"
      },
      "message": "Eliminate sparse warning - bad constant expression\n\nEliminiate sparse warning during usage of crypto_shash_* APIs\n       error: bad constant expression\n\nAllocate memory for shash descriptors once, so that we do not kmalloc/kfree it\nfor every signature generation (shash descriptor for md5 hash).\n\nFrom ed7538619817777decc44b5660b52268077b74f3 Mon Sep 17 00:00:00 2001\nFrom: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nDate: Tue, 24 Aug 2010 11:47:43 -0500\nSubject: [PATCH] eliminate sparse warnings during crypto_shash_* APis usage\n\nSigned-off-by: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "b5420f235953448eeae615b3361584dc5e414f34",
      "tree": "7c28ca9ee8a78d3d2a881a9269cd04ce88480e57",
      "parents": [
        "3b93c7aaefc05ee2a75e2726929b01a321402984"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Aug 24 11:47:51 2010 +1000"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Aug 24 11:47:51 2010 +1000"
      },
      "message": "xfs: do not discard page cache data on EAGAIN\n\nIf xfs_map_blocks returns EAGAIN because of lock contention we must redirty the\npage and not disard the pagecache content and return an error from writepage.\nWe used to do this correctly, but the logic got lost during the recent\nreshuffle of the writepage code.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReported-by: Mike Gao \u003cygao.linux@gmail.com\u003e\nTested-by: Mike Gao \u003cygao.linux@gmail.com\u003e\nReviewed-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\n"
    },
    {
      "commit": "3b93c7aaefc05ee2a75e2726929b01a321402984",
      "tree": "736a4017e86d65598ae7b30cb11412afd66f9629",
      "parents": [
        "a44f13edf0ebb4e41942d0f16ca80489dcf6659d"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Tue Aug 24 11:45:53 2010 +1000"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Aug 24 11:45:53 2010 +1000"
      },
      "message": "xfs: don\u0027t do memory allocation under the CIL context lock\n\nFormatting items requires memory allocation when using delayed\nlogging. Currently that memory allocation is done while holding the\nCIL context lock in read mode. This means that if memory allocation\ntakes some time (e.g. enters reclaim), we cannot push on the CIL\nuntil the allocation(s) required by formatting complete. This can\nstall CIL pushes for some time, and once a push is stalled so are\nall new transaction commits.\n\nFix this splitting the item formatting into two steps. The first\nstep which does the allocation and memcpy() into the allocated\nbuffer is now done outside the CIL context lock, and only the CIL\ninsert is done inside the CIL context lock. This avoids the stall\nissue.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "a44f13edf0ebb4e41942d0f16ca80489dcf6659d",
      "tree": "42bcbee56a62851e969292033efd600cced80ca5",
      "parents": [
        "1a387d3be2b30c90f20d49a3497a8fc0693a9d18"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Tue Aug 24 11:40:03 2010 +1000"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Aug 24 11:40:03 2010 +1000"
      },
      "message": "xfs: Reduce log force overhead for delayed logging\n\nDelayed logging adds some serialisation to the log force process to\nensure that it does not deference a bad commit context structure\nwhen determining if a CIL push is necessary or not. It does this by\ngrabing the CIL context lock exclusively, then dropping it before\npushing the CIL if necessary. This causes serialisation of all log\nforces and pushes regardless of whether a force is necessary or not.\nAs a result fsync heavy workloads (like dbench) can be significantly\nslower with delayed logging than without.\n\nTo avoid this penalty, copy the current sequence from the context to\nthe CIL structure when they are swapped. This allows us to do\nunlocked checks on the current sequence without having to worry\nabout dereferencing context structures that may have already been\nfreed. Hence we can remove the CIL context locking in the forcing\ncode and only call into the push code if the current context matches\nthe sequence we need to force.\n\nBy passing the sequence into the push code, we can check the\nsequence again once we have the CIL lock held exclusive and abort if\nthe sequence has already been pushed. This avoids a lock round-trip\nand unnecessary CIL pushes when we have racing push calls.\n\nThe result is that the regression in dbench performance goes away -\nthis change improves dbench performance on a ramdisk from ~2100MB/s\nto ~2500MB/s. This compares favourably to not using delayed logging\nwhich retuns ~2500MB/s for the same workload.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    }
  ],
  "next": "1a387d3be2b30c90f20d49a3497a8fc0693a9d18"
}
