)]}'
{
  "log": [
    {
      "commit": "78d2978874e4e10e97dfd4fd79db45bdc0748550",
      "tree": "5a07ba8b01c52632638a1724a5dcbf6d0606da73",
      "parents": [
        "bb5b583b52794efc7b59f70a78be1b66a98dd939"
      ],
      "author": {
        "name": "Tetsuo Handa",
        "email": "penguin-kernel@i-love.sakura.ne.jp",
        "time": "Fri Feb 04 18:13:24 2011 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 04 10:40:29 2011 -0800"
      },
      "message": "CRED: Fix kernel panic upon security_file_alloc() failure.\n\nIn get_empty_filp() since 2.6.29, file_free(f) is called with f-\u003ef_cred \u003d\u003d NULL\nwhen security_file_alloc() returned an error.  As a result, kernel will panic()\ndue to put_cred(NULL) call within RCU callback.\n\nFix this bug by assigning f-\u003ef_cred before calling security_file_alloc().\n\nSigned-off-by: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "89840966c57967fa5b36151c83b7c13fc9c5b3fd",
      "tree": "732a098caea18475c0d08483a5b0ae4369c96a92",
      "parents": [
        "008aef526eb3c67239f1340aa74891355d8b609e",
        "1065348d472f97b4b8eb53b60ec67e99148cbbca"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 03 16:31:43 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 03 16:31:43 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/hch/hfsplus\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/hch/hfsplus:\n  hfsplus: fix up a comparism in hfsplus_file_extend\n  hfsplus: fix two memory leaks in wrapper.c\n  hfsplus: do not leak buffer on error\n  hfsplus: fix failed mount handling\n"
    },
    {
      "commit": "1065348d472f97b4b8eb53b60ec67e99148cbbca",
      "tree": "a8724027733f5991f90951d6491cf5946e853325",
      "parents": [
        "a1dbcef0172555464b5329f8ba47d43c98132dfa"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@tuxera.com",
        "time": "Wed Feb 02 09:40:33 2011 -0700"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@tuxera.com",
        "time": "Thu Feb 03 16:34:18 2011 -0700"
      },
      "message": "hfsplus: fix up a comparism in hfsplus_file_extend\n\nRevert an incorrect hunk from commit b2837fcf4994e699a4def002e26f274d95b387c1,\n\n\t\"hfsplus: %L-to-%ll, macro correction, and remove unneeded braces\"\n\nrevert a pointless change of comparism operation argument order, which turned\nout to not even be equivalent.\n\nReported-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@tuxera.com\u003e\n"
    },
    {
      "commit": "a1dbcef0172555464b5329f8ba47d43c98132dfa",
      "tree": "ca0753e098a42cb44b904fcff0e9f9143a57582e",
      "parents": [
        "14dd01f88319a37b06ca909738044e39ec5bfdee"
      ],
      "author": {
        "name": "Chuck Ebbert",
        "email": "cebbert@redhat.com",
        "time": "Wed Feb 02 10:55:06 2011 -0500"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@tuxera.com",
        "time": "Thu Feb 03 16:34:11 2011 -0700"
      },
      "message": "hfsplus: fix two memory leaks in wrapper.c\n\nSigned-Off-By: Chuck Ebbert \u003ccebbert@redhat.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@tuxera.com\u003e\n"
    },
    {
      "commit": "14dd01f88319a37b06ca909738044e39ec5bfdee",
      "tree": "a628f10480a7f850131500ea6735f40e3c4b0cf1",
      "parents": [
        "c5b8d0bce052949e173b5b32f96bd59bceaa2ab0"
      ],
      "author": {
        "name": "Chuck Ebbert",
        "email": "cebbert@redhat.com",
        "time": "Tue Feb 01 16:41:55 2011 -0500"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@tuxera.com",
        "time": "Thu Feb 03 16:34:05 2011 -0700"
      },
      "message": "hfsplus: do not leak buffer on error\n\nSigned-Off-By: Chuck Ebbert \u003ccebbert@redhat.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@tuxera.com\u003e\n"
    },
    {
      "commit": "c5b8d0bce052949e173b5b32f96bd59bceaa2ab0",
      "tree": "5b99f48ad948c351ae07650c44009d847460329a",
      "parents": [
        "ebf53826e105f488f4f628703a108e98940d1dc5"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@tuxera.com",
        "time": "Wed Feb 02 09:32:39 2011 -0700"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@tuxera.com",
        "time": "Thu Feb 03 16:33:51 2011 -0700"
      },
      "message": "hfsplus: fix failed mount handling\n\nCurrently the error handling in hfsplus_fill_super is a mess, and can\nlead to accessing fields in the superblock that haven\u0027t been even set\nup yet.  Fix this by making sure we do not set up sb-\u003es_root until we\nhave the mount fully set up, and before that do proper step by step\nunwinding instead of using hfsplus_put_super as a big hammer.\n\nReported-by: Dan Williams \u003cdcbw@redhat.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@tuxera.com\u003e\n"
    },
    {
      "commit": "0b0abeaf3d30cec03ac6497fe978b8f7edecc5ae",
      "tree": "6797384d6bbf617b6b1a6d5bb0a307c28c52798c",
      "parents": [
        "f2f1756d7de37cc8ca17705c5bc3dfcbfb589ab9"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Wed Feb 02 21:02:12 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 02 17:53:27 2011 -0800"
      },
      "message": "Revert \"exofs: Set i_mapping-\u003ebacking_dev_info anyway\"\n\nThis reverts commit 115e19c53501edc11f730191f7f047736815ae3d.\n\nApparently setting inode-\u003ebdi to one\u0027s own sb-\u003es_bdi stops VFS from\nsending *read-aheads*.  This problem was bisected to this commit.  A\nrevert fixes it.  I\u0027ll investigate farther why is this happening for the\nnext Kernel, but for now a revert.\n\nI\u0027m sending to stable@kernel.org as well, since it exists also in\n2.6.37.  2.6.36 is good and does not have this patch.\n\nCC: Stable Tree \u003cstable@kernel.org\u003e\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d54cdc8ca7aabc69e145a62155855db42b04ed0b",
      "tree": "e184aed1d4c05e1df482dbf4b669723e31a841e1",
      "parents": [
        "3cd90ea42f2c15f928b70ed66f6d8ed0a8e7aadd"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "josef@redhat.com",
        "time": "Tue Feb 01 15:52:47 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 02 16:03:20 2011 -0800"
      },
      "message": "fs: make block fiemap mapping length at least blocksize long\n\nSome filesystems don\u0027t deal well with being asked to map less than\nblocksize blocks (GFS2 for example).  Since we are always mapping at least\nblocksize sections anyway, just make sure len is at least as big as a\nblocksize so we don\u0027t trip up any filesystems.  Thanks,\n\nSigned-off-by: Josef Bacik \u003cjosef@redhat.com\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3cd90ea42f2c15f928b70ed66f6d8ed0a8e7aadd",
      "tree": "2e27c807baaec2e6528cd5431d57308a4d874dea",
      "parents": [
        "1a44bc8c7cfe69756a116d38aef992d50fc1969d"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Tue Feb 01 15:52:46 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 02 16:03:19 2011 -0800"
      },
      "message": "vfs: sparse: add __FMODE_EXEC\n\nFMODE_EXEC is a constant type of fmode_t but was used with normal integer\nconstants.  This results in following warnings from sparse.  Fix it using\nnew macro __FMODE_EXEC.\n\n fs/exec.c:116:58: warning: restricted fmode_t degrades to integer\n fs/exec.c:689:58: warning: restricted fmode_t degrades to integer\n fs/fcntl.c:777:9: warning: restricted fmode_t degrades to integer\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0781b909b5586f4db720b5d1838b78f9d8e42f14",
      "tree": "767e53bf2cd3bebbc1a94f64632b53fdad31828d",
      "parents": [
        "48db54ee2f41e8ae2faf330b55db34a9fffb5b3c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Feb 01 15:52:35 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 02 16:03:18 2011 -0800"
      },
      "message": "epoll: epoll_wait() should not use timespec_add_ns()\n\ncommit 95aac7b1cd224f (\"epoll: make epoll_wait() use the hrtimer range\nfeature\") added a performance regression because it uses timespec_add_ns()\nwith potential very large \u0027ns\u0027 values.\n\n[akpm@linux-foundation.org: s/epoll_set_mstimeout/ep_set_mstimeout/, per Davide]\nReported-by: Simon Kirby \u003csim@hostway.ca\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Shawn Bohrer \u003cshawn.bohrer@gmail.com\u003e\nAcked-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.37.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "405b864d3fd579d3e8a1002f7452343fbb6dbe99",
      "tree": "d5e70f3c337fa20363cd090a7bb4d664d495b275",
      "parents": [
        "fdf4c587a793ba87935e38e7f25a9540bc9a7b95",
        "6284644e8de1f4005166c918c3d2aa4c510ab9f6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 02 10:22:40 2011 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 02 10:22:40 2011 +1100"
      },
      "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 length checks in checkSMB\n  [CIFS] Update cifs minor version\n  cifs: No need to check crypto blockcipher allocation\n  cifs: clean up some compiler warnings\n  cifs: make CIFS depend on CRYPTO_MD4\n  cifs: force a reconnect if there are too many MIDs in flight\n  cifs: don\u0027t pop a printk when sending on a socket is interrupted\n  cifs: simplify SMB header check routine\n  cifs: send an NT_CANCEL request when a process is signalled\n  cifs: handle cancelled requests better\n  cifs: fix two compiler warning about uninitialized vars\n"
    },
    {
      "commit": "0fd08c5545a806c960a6597fae4a2e656eb7ead9",
      "tree": "027dfcc65f600afe6a4b19ab72c472fe3f0f24fa",
      "parents": [
        "7921127e297ea203b794c4a1c3ef3eb0ee52acbf",
        "d1205f87bbb8040c1408bbd9e0a720310b2b0b9b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 01 09:41:02 2011 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 01 09:41:02 2011 +1000"
      },
      "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  NFS: NFSv4 readdir loses entries\n  NFS: Micro-optimize nfs4_decode_dirent()\n  NFS: Fix an NFS client lockdep issue\n  NFS construct consistent co_ownerid for v4.1\n  NFS: nfs_wcc_update_inode() should set nfsi-\u003eattr_gencount\n  NFS improve pnfs_put_deviceid_cache debug print\n  NFS fix cb_sequence error processing\n  NFS do not find client in NFSv4 pg_authenticate\n  NLM: Fix \"kernel BUG at fs/lockd/host.c:417!\" or \".../host.c:283!\"\n  NFS: Prevent memory allocation failure in nfsacl_encode()\n  NFS: nfsacl_{encode,decode} should return signed integer\n  NFS: Fix \"kernel BUG at fs/nfs/nfs3xdr.c:1338!\"\n  NFS: Fix \"kernel BUG at fs/aio.c:554!\"\n  NFS4: Avoid potential NULL pointer dereference in decode_and_add_ds().\n  NFS: fix handling of malloc failure during nfs_flush_multi()\n"
    },
    {
      "commit": "6284644e8de1f4005166c918c3d2aa4c510ab9f6",
      "tree": "c9498b41be7f8b569d02d203aeb169bafb63bbcb",
      "parents": [
        "cab6958da0094e36a098751f844409fc9ee26251"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Jan 31 09:14:17 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 31 22:35:37 2011 +0000"
      },
      "message": "cifs: fix length checks in checkSMB\n\nThe cERROR message in checkSMB when the calculated length doesn\u0027t match\nthe RFC1001 length is incorrect in many cases. It always says that the\nRFC1001 length is bigger than the SMB, even when it\u0027s actually the\nreverse.\n\nFix the error message to say the reverse of what it does now when the\nSMB length goes beyond the end of the received data. Also, clarify the\nerror message when the RFC length is too big. Finally, clarify the\ncomments to show that the 512 byte limit on extra data at the end of\nthe packet is arbitrary.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "fb9f1f17e9c117c0bf7a8f1b7a0efe5db5bc1836",
      "tree": "21f544b7489aa2a4b5fb9c754f67dc8ff6e9fe66",
      "parents": [
        "2426ec8fe78884272a12a0a0f38b008a6195f094",
        "24446fc66fdebbdd8baca0f44fd2a47ad77ba580"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 01 08:15:40 2011 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 01 08:15:40 2011 +1000"
      },
      "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: xfs_bmap_add_extent_delay_real should init br_startblock\n  xfs: fix dquot shaker deadlock\n  xfs: handle CIl transaction commit failures correctly\n  xfs: limit extsize to size of AGs and/or MAXEXTLEN\n  xfs: prevent extsize alignment from exceeding maximum extent size\n  xfs: limit extent length for allocation to AG size\n  xfs: speculative delayed allocation uses rounddown_power_of_2 badly\n  xfs: fix efi item leak on forced shutdown\n  xfs: fix log ticket leak on forced shutdown.\n"
    },
    {
      "commit": "cab6958da0094e36a098751f844409fc9ee26251",
      "tree": "262e33dd31536b2826270d65e561569e86896b63",
      "parents": [
        "7a8587e7c8e4e32ba778bfbbb822a0a7e8d5f3e3"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 31 21:56:35 2011 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 31 21:56:35 2011 +0000"
      },
      "message": "[CIFS] Update cifs minor version\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "7a8587e7c8e4e32ba778bfbbb822a0a7e8d5f3e3",
      "tree": "b76abee21fd80b5556d95494f94813589c4e7eef",
      "parents": [
        "31c2659d78c8be970833bc1e633593d291553ed3"
      ],
      "author": {
        "name": "Shirish Pargaonkar",
        "email": "shirishpargaonkar@gmail.com",
        "time": "Sat Jan 29 13:54:58 2011 -0600"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 31 17:29:18 2011 +0000"
      },
      "message": "cifs: No need to check crypto blockcipher allocation\n\nMissed one change as per earlier suggestion.\n\nSigned-off-by: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nReviewed-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "31c2659d78c8be970833bc1e633593d291553ed3",
      "tree": "87042600840124ea3a8e905a6961bd5009e44fec",
      "parents": [
        "f855f6cbeb4f94cd4e4a225c2246ee8012c384a2"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Jan 31 07:24:46 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 31 15:39:10 2011 +0000"
      },
      "message": "cifs: clean up some compiler warnings\n\nNew compiler warnings that I noticed when building a patchset based\non recent Fedora kernel:\n\nfs/cifs/cifssmb.c: In function \u0027CIFSSMBSetFileSize\u0027:\nfs/cifs/cifssmb.c:4813:8: warning: variable \u0027data_offset\u0027 set but not used\n[-Wunused-but-set-variable]\n\nfs/cifs/file.c: In function \u0027cifs_open\u0027:\nfs/cifs/file.c:349:24: warning: variable \u0027pCifsInode\u0027 set but not used\n[-Wunused-but-set-variable]\nfs/cifs/file.c: In function \u0027cifs_partialpagewrite\u0027:\nfs/cifs/file.c:1149:23: warning: variable \u0027cifs_sb\u0027 set but not used\n[-Wunused-but-set-variable]\nfs/cifs/file.c: In function \u0027cifs_iovec_write\u0027:\nfs/cifs/file.c:1740:9: warning: passing argument 6 of \u0027CIFSSMBWrite2\u0027 from\nincompatible pointer type [enabled by default]\nfs/cifs/cifsproto.h:337:12: note: expected \u0027unsigned int *\u0027 but argument is\nof type \u0027size_t *\u0027\n\nfs/cifs/readdir.c: In function \u0027cifs_readdir\u0027:\nfs/cifs/readdir.c:767:23: warning: variable \u0027cifs_sb\u0027 set but not used\n[-Wunused-but-set-variable]\n\nfs/cifs/cifs_dfs_ref.c: In function \u0027cifs_dfs_d_automount\u0027:\nfs/cifs/cifs_dfs_ref.c:342:2: warning: \u0027rc\u0027 may be used uninitialized in\nthis function [-Wuninitialized]\nfs/cifs/cifs_dfs_ref.c:278:6: note: \u0027rc\u0027 was declared here\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nReviewed-by: Pavel Shilovsky \u003cpiastry@etersoft.ru\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "f855f6cbeb4f94cd4e4a225c2246ee8012c384a2",
      "tree": "82d4082af9b923f0476c5176d92ebf2554f59c15",
      "parents": [
        "92a4e0f0169498867ecb19c2244510dd4beba149"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Jan 31 08:41:36 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 31 15:26:07 2011 +0000"
      },
      "message": "cifs: make CIFS depend on CRYPTO_MD4\n\nRecently CIFS was changed to use the kernel crypto API for MD4 hashes,\nbut the Kconfig dependencies were not changed to reflect this.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nReported-and-Tested-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nReviewed-by: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "92a4e0f0169498867ecb19c2244510dd4beba149",
      "tree": "031011d451bf3d19813fbbceabceacfb9ce76db8",
      "parents": [
        "d804d41d163c0975d2890c82d7135ada7a2f23a4"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Sat Jan 29 07:02:28 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 31 04:38:15 2011 +0000"
      },
      "message": "cifs: force a reconnect if there are too many MIDs in flight\n\nCurrently, we allow the pending_mid_q to grow without bound with\nSIGKILL\u0027ed processes. This could eventually be a DoS\u0027able problem. An\nunprivileged user could a process that does a long-running call and then\nSIGKILL it.\n\nIf he can also intercept the NT_CANCEL calls or the replies from the\nserver, then the pending_mid_q could grow very large, possibly even to\n2^16 entries which might leave GetNextMid in an infinite loop. Fix this\nby imposing a hard limit of 32k calls per server. If we cross that\nlimit, set the tcpStatus to CifsNeedReconnect to force cifsd to\neventually reconnect the socket and clean out the pending_mid_q.\n\nWhile we\u0027re at it, clean up the function a bit and eliminate an\nunnecessary NULL pointer check.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nReviewed-by: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "d804d41d163c0975d2890c82d7135ada7a2f23a4",
      "tree": "1e67966f3206a8e3c254d73d5e53cabe15d0e4a9",
      "parents": [
        "68abaffa6bbd3cadfaa4b7216d10bcd32406090b"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Jan 28 15:05:43 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 31 04:32:21 2011 +0000"
      },
      "message": "cifs: don\u0027t pop a printk when sending on a socket is interrupted\n\nIf we kill the process while it\u0027s sending on a socket then the\nkernel_sendmsg will return -EINTR. This is normal. No need to spam the\nring buffer with this info.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "68abaffa6bbd3cadfaa4b7216d10bcd32406090b",
      "tree": "bcc6daaddbf65798a6fa27451a3456c2415cd46e",
      "parents": [
        "2db7c5815555d8daabf7d4ab1253ce690852c140"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Jan 28 15:05:42 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 31 04:30:37 2011 +0000"
      },
      "message": "cifs: simplify SMB header check routine\n\n...just cleanup. There should be no behavior change.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nReviewed-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "2db7c5815555d8daabf7d4ab1253ce690852c140",
      "tree": "f93abfb6d900da8ebd851703784d45d2cd54600b",
      "parents": [
        "1be912dde772b77aaaa21770eeabb0a7a5e297a6"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Jan 28 07:08:28 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 31 04:24:38 2011 +0000"
      },
      "message": "cifs: send an NT_CANCEL request when a process is signalled\n\nUse the new send_nt_cancel function to send an NT_CANCEL when the\nprocess is delivered a fatal signal. This is a \"best effort\" enterprise\nhowever, so don\u0027t bother to check the return code. There\u0027s nothing we\ncan reasonably do if it fails anyway.\n\nReviewed-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\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": "1be912dde772b77aaaa21770eeabb0a7a5e297a6",
      "tree": "2f3a01093c80ea90675b2d8102ecc7f5dcf9ccae",
      "parents": [
        "58b8a5b45a097b477c037bc376e65dc5f214bf3d"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Jan 28 07:08:28 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 31 04:23:31 2011 +0000"
      },
      "message": "cifs: handle cancelled requests better\n\nCurrently, when a request is cancelled via signal, we delete the mid\nimmediately. If the request was already transmitted however, the client\nis still likely to receive a response. When it does, it won\u0027t recognize\nit however and will pop a printk.\n\nIt\u0027s also a little dangerous to just delete the mid entry like this. We\nmay end up reusing that mid. If we do then we could potentially get the\nresponse from the first request confused with the later one.\n\nPrevent the reuse of mids by marking them as cancelled and keeping them\non the pending_mid_q list. If the reply comes in, we\u0027ll delete it from\nthe list then. If it never comes, then we\u0027ll delete it at reconnect\nor when cifsd comes down.\n\nReviewed-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "58b8a5b45a097b477c037bc376e65dc5f214bf3d",
      "tree": "9fa2538a113fbd3aaa322d9c972aca3ca16b7e30",
      "parents": [
        "ffeb414a59291d5891f09727beb793c109f19f08",
        "70d1f365568e0cdbc9f4ab92428e1830fdb09ab0"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 31 04:17:03 2011 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 31 04:17:03 2011 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of /pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "ffeb414a59291d5891f09727beb793c109f19f08",
      "tree": "1880441bc56981be5978d3f86cecb8dbd526af4c",
      "parents": [
        "ee2c9258501f83d3ed0fd09ce5df1cec53312cf0"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Sat Jan 29 07:03:02 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 31 03:15:57 2011 +0000"
      },
      "message": "cifs: fix two compiler warning about uninitialized vars\n\nfs/cifs/link.c: In function ‘symlink_hash’:\nfs/cifs/link.c:58:3: warning: ‘rc’ may be used uninitialized in this\nfunction [-Wuninitialized]\n\nfs/cifs/smbencrypt.c: In function ‘mdfour’:\nfs/cifs/smbencrypt.c:61:3: warning: ‘rc’ may be used uninitialized in this\nfunction [-Wuninitialized]\n\nReviewed-by: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "af5eb745efe97d91d2cbe793029838b3311c15da",
      "tree": "c2e410318a3f38928255ebf9ab18332b871e17f0",
      "parents": [
        "9fbf0c08d441888b977f7c459c8aa57f2c0cb6ad"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "anton@tuxera.com",
        "time": "Fri Jan 28 20:45:28 2011 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 31 12:58:11 2011 +1000"
      },
      "message": "NTFS: Fix invalid pointer dereference in ntfs_mft_record_alloc().\n\nIn ntfs_mft_record_alloc() when mapping the new extent mft record with\nmap_extent_mft_record() we overwrite @m with the return value and on\nerror, we then try to use the old @m but that is no longer there as @m\nnow contains an error code instead so we crash when dereferencing the\nerror code as if it were a pointer.\n\nThe simple fix is to use a temporary variable to store the return value\nthus preserving the original @m for later use.  This is a backport from\nthe commercial Tuxera-NTFS driver and is well tested...\n\nThanks go to Julia Lawall for pointing this out (whilst I had fixed it\nin the commercial driver I had failed to fix it in the Linux kernel).\n\nSigned-off-by: Anton Altaparmakov \u003canton@tuxera.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9fbf0c08d441888b977f7c459c8aa57f2c0cb6ad",
      "tree": "000bfa464562b2432e7f9e7c371a40f4f24e4c7a",
      "parents": [
        "4fda116852fe21a3897c478ce64b77bb1ec6b3d6",
        "ee2c9258501f83d3ed0fd09ce5df1cec53312cf0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 31 12:56:27 2011 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 31 12:56:27 2011 +1000"
      },
      "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: More crypto cleanup (try #2)\n  CIFS: Add strictcache mount option\n  CIFS: Implement cifs_strict_writev (try #4)\n  [CIFS] Replace cifs md5 hashing functions with kernel crypto APIs\n"
    },
    {
      "commit": "d1205f87bbb8040c1408bbd9e0a720310b2b0b9b",
      "tree": "0d2fec92960dafb86816642757278e8db31d20f3",
      "parents": [
        "c08e76d0cd4beb759a73c1835d98f5fccc126ed1"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Jan 28 12:41:05 2011 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jan 28 13:41:35 2011 -0500"
      },
      "message": "NFS: NFSv4 readdir loses entries\n\nOn recent 2.6.38-rc kernels, connectathon basic test 6 fails on\nNFSv4 mounts of OpenSolaris with something like:\n\n\u003e ./test6: readdir\n\u003e \t./test6: (/mnt/klimt/matisse.test) didn\u0027t read expected \u0027file.12\u0027 dir entry, pass 0\n\u003e \t./test6: (/mnt/klimt/matisse.test) didn\u0027t read expected \u0027file.82\u0027 dir entry, pass 0\n\u003e \t./test6: (/mnt/klimt/matisse.test) didn\u0027t read expected \u0027file.164\u0027 dir entry, pass 0\n\u003e \t./test6: (/mnt/klimt/matisse.test) Test failed with 3 errors\n\u003e basic tests failed\n\u003e Tests failed, leaving /mnt/klimt mounted\n\u003e [cel@matisse cthon04]$\n\nI narrowed the problem down to nfs4_decode_dirent() reporting that the\ndecode buffer had overflowed while decoding the entries for those\nmissing files.\n\nverify_attr_len() assumes both it\u0027s pointer arguments reside on the\nsame page.  When these arguments point to locations on two different\npages, verify_attr_len() can report false errors.  This can happen now\nthat a large NFSv4 readdir result can span pages.\n\nWe have reasonably good checking in nfs4_decode_dirent() anyway, so\nit should be safe to simply remove the extra checking.\n\nAt a guess, this was introduced by commit 6650239a, \"NFS: Don\u0027t use\nvm_map_ram() in readdir\".\n\nCc: stable@kernel.org [2.6.37]\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c08e76d0cd4beb759a73c1835d98f5fccc126ed1",
      "tree": "e1cd5414a2aba7c4e414bf93473f599c40717d80",
      "parents": [
        "e00b8a24041f37e56b4b8415ce4eba1cbc238065"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Jan 28 12:40:55 2011 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jan 28 13:37:35 2011 -0500"
      },
      "message": "NFS: Micro-optimize nfs4_decode_dirent()\n\nMake the decoding of NFSv4 directory entries slightly more efficient\nby:\n\n  1.  Avoiding unnecessary byte swapping when checking XDR booleans,\n      and\n\n  2.  Not bumping \"p\" when its value will be immediately replaced by\n      xdr_inline_decode()\n\nThis commit makes nfs4_decode_dirent() consistent with similar logic\nin the other two decode_dirent() functions.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e00b8a24041f37e56b4b8415ce4eba1cbc238065",
      "tree": "eb4fbb050e1d4afdd6d10b4b420420fa92ad92a8",
      "parents": [
        "c7a360b05b5430ac1d75dc7d53c586ada60a05cb"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jan 27 14:55:39 2011 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jan 28 13:37:09 2011 -0500"
      },
      "message": "NFS: Fix an NFS client lockdep issue\n\nThere is no reason to be freeing the delegation cred in the rcu callback,\nand doing so is resulting in a lockdep complaint that rpc_credcache_lock\nis being called from both softirq and non-softirq contexts.\n\nReported-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "24446fc66fdebbdd8baca0f44fd2a47ad77ba580",
      "tree": "98822ad25ac286f1bc6730ae47004bdc091f4461",
      "parents": [
        "0fbca4d1c3932c27c4794bf5c2b5fc961cf5a54f"
      ],
      "author": {
        "name": "bpm@sgi.com",
        "email": "bpm@sgi.com",
        "time": "Wed Jan 19 17:41:58 2011 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 28 09:13:29 2011 -0600"
      },
      "message": "xfs: xfs_bmap_add_extent_delay_real should init br_startblock\n\nWhen filling in the middle of a previous delayed allocation in\nxfs_bmap_add_extent_delay_real, set br_startblock of the new delay\nextent to the right to nullstartblock instead of 0 before inserting\nthe extent into the ifork (xfs_iext_insert), rather than setting\nbr_startblock afterward.\n\nAdding the extent into the ifork with br_startblock\u003d0 can lead to\nthe extent being copied into the btree by xfs_bmap_extent_to_btree\nif we happen to convert from extents format to btree format before\nupdating br_startblock with the correct value.  The unexpected\naddition of this delay extent to the btree can cause subsequent\nXFS_WANT_CORRUPTED_GOTO filesystem shutdown in several\nxfs_bmap_add_extent_delay_real cases where we are converting a delay\nextent to real and unexpectedly find an extent already inserted.\nFor example:\n\n911         case BMAP_LEFT_FILLING:\n912                 /*\n913                  * Filling in the first part of a previous delayed allocation.\n914                  * The left neighbor is not contiguous.\n915                  */\n916                 trace_xfs_bmap_pre_update(ip, idx, state, _THIS_IP_);\n917                 xfs_bmbt_set_startoff(ep, new_endoff);\n918                 temp \u003d PREV.br_blockcount - new-\u003ebr_blockcount;\n919                 xfs_bmbt_set_blockcount(ep, temp);\n920                 xfs_iext_insert(ip, idx, 1, new, state);\n921                 ip-\u003ei_df.if_lastex \u003d idx;\n922                 ip-\u003ei_d.di_nextents++;\n923                 if (cur \u003d\u003d NULL)\n924                         rval \u003d XFS_ILOG_CORE | XFS_ILOG_DEXT;\n925                 else {\n926                         rval \u003d XFS_ILOG_CORE;\n927                         if ((error \u003d xfs_bmbt_lookup_eq(cur, new-\u003ebr_startoff,\n928                                         new-\u003ebr_startblock, new-\u003ebr_blockcount,\n929                                         \u0026i)))\n930                                 goto done;\n931                         XFS_WANT_CORRUPTED_GOTO(i \u003d\u003d 0, done);\n\nWith the bogus extent in the btree we shutdown the filesystem at\n931.  The conversion from extents to btree format happens when the\nnumber of extents in the inode increases above ip-\u003ei_df.if_ext_max.\nxfs_bmap_extent_to_btree copies extents from the ifork into the\nbtree, ignoring all delalloc extents which are denoted by\nbr_startblock having some value of nullstartblock.\n\nSGI-PV: 1013221\n\nSigned-off-by: Ben Myers \u003cbpm@sgi.com\u003e\nReviewed-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "0fbca4d1c3932c27c4794bf5c2b5fc961cf5a54f",
      "tree": "3c031847453c5222410e04e40d1152207a1c18a2",
      "parents": [
        "c6f990d1ff8e4e53b12f4175eb7d7ea710c3ca73"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Fri Jan 28 11:20:46 2011 +1100"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 28 09:05:36 2011 -0600"
      },
      "message": "xfs: fix dquot shaker deadlock\n\nCommit 368e136 (\"xfs: remove duplicate code from dquot reclaim\") fails\nto unlock the dquot freelist when the number of loop restarts is\nexceeded in xfs_qm_dqreclaim_one(). This causes hangs in memory\nreclaim.\n\nRework the loop control logic into an unwind stack that all the\ndifferent cases jump into. This means there is only one set of code\nthat processes the loop exit criteria, and simplifies the unlocking\nof all the items from different points in the loop. It also fixes a\ndouble increment of the restart counter from the qi_dqlist_lock\ncase.\n\nReported-by: Malcolm Scott \u003clkml@malc.org.uk\u003e\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "c6f990d1ff8e4e53b12f4175eb7d7ea710c3ca73",
      "tree": "109e8d588a9a04ef52b97e751450fe0fffa88a23",
      "parents": [
        "5315837daee7ed76c31ef643915f7d76ef8c1aa3"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Thu Jan 27 13:23:28 2011 +1100"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 28 09:05:36 2011 -0600"
      },
      "message": "xfs: handle CIl transaction commit failures correctly\n\nFailure to commit a transaction into the CIL is not handled\ncorrectly. This currently can only happen when racing with a\nshutdown and requires an explicit shutdown check, so it rare and can\nbe avoided. Remove the shutdown check and make the CIL commit a void\nfunction to indicate it will always succeed, thereby removing the\nincorrectly handled failure case.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "5315837daee7ed76c31ef643915f7d76ef8c1aa3",
      "tree": "de92499a896cc5d6702be364c9c3339641d3ed93",
      "parents": [
        "4ce159890c00e2cc705e955a939bf1dca7b07ab8"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Thu Jan 27 12:18:18 2011 +1100"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 28 09:05:36 2011 -0600"
      },
      "message": "xfs: limit extsize to size of AGs and/or MAXEXTLEN\n\nThe extent size hint can be set to larger than an AG. This means\nthat the alignment process can push the range to be allocated\noutside the bounds of the AG, resulting in assert failures or\ncorrupted bmbt records. Similarly, if the extsize is larger than the\nmaximum extent size supported, the alignment process will produce\nextents that are too large to fit into the bmbt records, resulting\nin a different type of assert/corruption failure.\n\nFix this by limiting extsize at the time іt is set firstly to be\nless than MAXEXTLEN, then to be a maximum of half the size of the\nAGs in the filesystem for non-realtime inodes. Realtime inodes do\nnot allocate out of AGs, so don\u0027t have to be restricted by the size\nof AGs.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "4ce159890c00e2cc705e955a939bf1dca7b07ab8",
      "tree": "8b6351a4d577232c6c3e71c11c6533ce7ff0aa78",
      "parents": [
        "14b064ceaa6f51a7426cc45b4b43685b94380658"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Thu Jan 27 12:17:58 2011 +1100"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 28 09:05:36 2011 -0600"
      },
      "message": "xfs: prevent extsize alignment from exceeding maximum extent size\n\nWhen doing delayed allocation, if the allocation size is for a\nmaximally sized extent, extent size alignment can push it over this\nlimit. This results in an assert failure in xfs_bmbt_set_allf() as\nthe extent length is too large to find in the extent record.\n\nFix this by ensuring that we allow for space that extent size\nalignment requires (up to 2 * (extsize -1) blocks as we have to\nhandle both head and tail alignment) when limiting the maximum size\nof the extent.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "14b064ceaa6f51a7426cc45b4b43685b94380658",
      "tree": "acb620a958da7f3528acc04899c685591663fc24",
      "parents": [
        "b8fc82630ae289bb4e661567808afc59e3298dce"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Thu Jan 27 12:16:28 2011 +1100"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 28 09:05:35 2011 -0600"
      },
      "message": "xfs: limit extent length for allocation to AG size\n\nDelayed allocation extents can be larger than AGs, so when trying to\nconvert a large range we may scan every AG inside\nxfs_bmap_alloc_nullfb() trying to find an AG with a size larger than\nan AG. We should stop when we find the first AG with a maximum\npossible allocation size. This causes excessive CPU usage when there\nare lots of AGs.\n\nThe same problem occurs when doing preallocation of a range larger\nthan an AG.\n\nFix the problem by limiting real allocation lengths to the maximum\nthat an AG can support. This means if we have empty AGs, we\u0027ll stop\nthe search at the first of them. If there are no empty AGs, we\u0027ll\nstill scan them all, but that is a different problem....\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "b8fc82630ae289bb4e661567808afc59e3298dce",
      "tree": "70e319ec3d804992c1dd11e5123547d0901a40a0",
      "parents": [
        "e34a314c5e49fe6b763568f6576b19f1299c33c2"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Thu Jan 27 12:14:12 2011 +1100"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 28 09:05:35 2011 -0600"
      },
      "message": "xfs: speculative delayed allocation uses rounddown_power_of_2 badly\n\nrounddown_power_of_2() returns an undefined result when passed a\nvalue of zero. The specualtive delayed allocation code is doing this\nwhen the inode is zero length. Hence occasionally the preallocation\nis much, much larger than is necessary (e.g. 8GB for a 270 _byte_\nfile). Ensure we don\u0027t even pass a zero value to this function so\nthe result of preallocation is always the desired size.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "e34a314c5e49fe6b763568f6576b19f1299c33c2",
      "tree": "25cd4abc329c68cdb268ae527e2319204d223d58",
      "parents": [
        "7db37c5e6575b229a5051be1d3ef15257ae0ba5d"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Thu Jan 27 12:13:35 2011 +1100"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 28 09:01:33 2011 -0600"
      },
      "message": "xfs: fix efi item leak on forced shutdown\n\nAfter test 139, kmemleak shows:\n\nunreferenced object 0xffff880078b405d8 (size 400):\n  comm \"xfs_io\", pid 4904, jiffies 4294909383 (age 1186.728s)\n  hex dump (first 32 bytes):\n    60 c1 17 79 00 88 ff ff 60 c1 17 79 00 88 ff ff  `..y....`..y....\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................\n  backtrace:\n    [\u003cffffffff81afb04d\u003e] kmemleak_alloc+0x2d/0x60\n    [\u003cffffffff8115c6cf\u003e] kmem_cache_alloc+0x13f/0x2b0\n    [\u003cffffffff814aaa97\u003e] kmem_zone_alloc+0x77/0xf0\n    [\u003cffffffff814aab2e\u003e] kmem_zone_zalloc+0x1e/0x50\n    [\u003cffffffff8147cd6b\u003e] xfs_efi_init+0x4b/0xb0\n    [\u003cffffffff814a4ee8\u003e] xfs_trans_get_efi+0x58/0x90\n    [\u003cffffffff81455fab\u003e] xfs_bmap_finish+0x8b/0x1d0\n    [\u003cffffffff814851b4\u003e] xfs_itruncate_finish+0x2c4/0x5d0\n    [\u003cffffffff814a970f\u003e] xfs_setattr+0x8df/0xa70\n    [\u003cffffffff814b5c7b\u003e] xfs_vn_setattr+0x1b/0x20\n    [\u003cffffffff8117dc00\u003e] notify_change+0x170/0x2e0\n    [\u003cffffffff81163bf6\u003e] do_truncate+0x66/0xa0\n    [\u003cffffffff81163d0b\u003e] sys_ftruncate+0xdb/0xe0\n    [\u003cffffffff8103a002\u003e] system_call_fastpath+0x16/0x1b\n    [\u003cffffffffffffffff\u003e] 0xffffffffffffffff\n\nThe cause of the leak is that the \"remove\" parameter of IOP_UNPIN()\nis never set when a CIL push is aborted. This means that the EFI\nitem is never freed if it was in the push being cancelled. The\nproblem is specific to delayed logging, but has uncovered a couple\nof problems with the handling of IOP_UNPIN(remove).\n\nFirstly, we cannot safely call xfs_trans_del_item() from IOP_UNPIN()\nin the CIL commit failure path or the iclog write failure path\nbecause for delayed loging we have no transaction context. Hence we\nmust only call xfs_trans_del_item() if the log item being unpinned\nhas an active log item descriptor.\n\nSecondly, xfs_trans_uncommit() does not handle log item descriptor\nfreeing during the traversal of log items on a transaction. It can\nreference a freed log item descriptor when unpinning an EFI item.\nHence it needs to use a safe list traversal method to allow items to\nbe removed from the transaction during IOP_UNPIN().\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "b12ece7d852efbc8db45371c068900fcc62002d4",
      "tree": "6344b69d72415224f784ac3c0d855ae334a612d2",
      "parents": [
        "363aab29eb89b46d14d44e4a44a5fff57e30bcfc",
        "d66bbd441c08fe00ed2add1cf70cb243ebc2b27e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 28 12:12:58 2011 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 28 12:12:58 2011 +1000"
      },
      "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: avoid picking MDS that is not active\n  ceph: avoid immediate cap check after import\n  ceph: fix flushing of caps vs cap import\n  ceph: fix erroneous cap flush to non-auth mds\n  ceph: fix cap_wanted_delay_{min,max} mount option initialization\n  ceph: fix xattr rbtree search\n  ceph: fix getattr on directory when using norbytes\n"
    },
    {
      "commit": "ee2c9258501f83d3ed0fd09ce5df1cec53312cf0",
      "tree": "2690ab3e75343be23a4969846a0c71f0df842dc7",
      "parents": [
        "d39454ffe4a3c85428483b8a8a8e5e797b6363d5"
      ],
      "author": {
        "name": "Shirish Pargaonkar",
        "email": "shirishpargaonkar@gmail.com",
        "time": "Thu Jan 27 09:58:04 2011 -0600"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 27 19:58:13 2011 +0000"
      },
      "message": "cifs: More crypto cleanup (try #2)\n\nReplaced md4 hashing function local to cifs module with kernel crypto APIs.\nAs a result, md4 hashing function and its supporting functions in\nfile md4.c are not needed anymore.\n\nCleaned up function declarations, removed forward function declarations,\nand removed a header file that is being deleted from being included.\n\nVerified that sec\u003dntlm/i, sec\u003dntlmv2/i, and sec\u003dntlmssp/i work correctly.\n\nSigned-off-by: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nReviewed-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "7db37c5e6575b229a5051be1d3ef15257ae0ba5d",
      "tree": "9e14732b0afe1081d0225c4cf1b824c606a01955",
      "parents": [
        "c56eb8fb6dccb83d9fe62fd4dc00c834de9bc470"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Thu Jan 27 12:02:00 2011 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Jan 27 12:02:00 2011 +1100"
      },
      "message": "xfs: fix log ticket leak on forced shutdown.\n\nThe kmemleak detector shows this after test 139:\n\nunreferenced object 0xffff880079b88bb0 (size 264):\n  comm \"xfs_io\", pid 4904, jiffies 4294909382 (age 276.824s)\n  hex dump (first 32 bytes):\n    00 00 00 00 ad 4e ad de ff ff ff ff 00 00 00 00  .....N..........\n    ff ff ff ff ff ff ff ff 48 7b c9 82 ff ff ff ff  ........H{......\n  backtrace:\n    [\u003cffffffff81afb04d\u003e] kmemleak_alloc+0x2d/0x60\n    [\u003cffffffff8115c6cf\u003e] kmem_cache_alloc+0x13f/0x2b0\n    [\u003cffffffff814aaa97\u003e] kmem_zone_alloc+0x77/0xf0\n    [\u003cffffffff814aab2e\u003e] kmem_zone_zalloc+0x1e/0x50\n    [\u003cffffffff8148f394\u003e] xlog_ticket_alloc+0x34/0x170\n    [\u003cffffffff81494444\u003e] xlog_cil_push+0xa4/0x3f0\n    [\u003cffffffff81494eca\u003e] xlog_cil_force_lsn+0x15a/0x160\n    [\u003cffffffff814933a5\u003e] _xfs_log_force_lsn+0x75/0x2d0\n    [\u003cffffffff814a264d\u003e] _xfs_trans_commit+0x2bd/0x2f0\n    [\u003cffffffff8148bfdd\u003e] xfs_iomap_write_allocate+0x1ad/0x350\n    [\u003cffffffff814ac17f\u003e] xfs_map_blocks+0x21f/0x370\n    [\u003cffffffff814ad1b7\u003e] xfs_vm_writepage+0x1c7/0x550\n    [\u003cffffffff8112200a\u003e] __writepage+0x1a/0x50\n    [\u003cffffffff81122df2\u003e] write_cache_pages+0x1c2/0x4c0\n    [\u003cffffffff81123117\u003e] generic_writepages+0x27/0x30\n    [\u003cffffffff814aba5d\u003e] xfs_vm_writepages+0x5d/0x80\n\nBy inspection, the leak occurs when xlog_write() returns and error\nand we jump to the abort path without dropping the reference on the\nactive ticket.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "c7a360b05b5430ac1d75dc7d53c586ada60a05cb",
      "tree": "dceb33ea4e5fcc251fdbcb73f92786de99a83fcc",
      "parents": [
        "27dc1cd3ad9300f81e1219e5fc305d91d85353f8"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Tue Jan 25 19:15:32 2011 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 25 22:49:14 2011 -0500"
      },
      "message": "NFS construct consistent co_ownerid for v4.1\n\nAs stated in section 2.4 of RFC 5661, subsequent instances of the client need\nto present the same co_ownerid. Concatinate the client\u0027s IP dot address,\nhost name, and the rpc_auth pseudoflavor to form the co_ownerid.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ac751efa6a0d70f2c9daef5c7e3a92270f5c2dff",
      "tree": "e2d3f799e20e2cbca80891ea17af7484f21d628f",
      "parents": [
        "3689456b4bd36027022b3215eb2acba51cd0e6b5"
      ],
      "author": {
        "name": "Torben Hohn",
        "email": "torbenh@gmx.de",
        "time": "Tue Jan 25 15:07:35 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 26 10:50:06 2011 +1000"
      },
      "message": "console: rename acquire/release_console_sem() to console_lock/unlock()\n\nThe -rt patches change the console_semaphore to console_mutex.  As a\nresult, a quite large chunk of the patches changes all\nacquire/release_console_sem() to acquire/release_console_mutex()\n\nThis commit makes things use more neutral function names which dont make\nimplications about the underlying lock.\n\nThe only real change is the return value of console_trylock which is\ninverted from try_acquire_console_sem()\n\nThis patch also paves the way to switching console_sem from a semaphore to\na mutex.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: make console_trylock return 1 on success, per Geert]\nSigned-off-by: Torben Hohn \u003ctorbenh@gmx.de\u003e\nCc: Thomas Gleixner \u003ctglx@tglx.de\u003e\nCc: Greg KH \u003cgregkh@suse.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3689456b4bd36027022b3215eb2acba51cd0e6b5",
      "tree": "8233856d31d744feacf6d91b0fb7dbe7fbcf2803",
      "parents": [
        "ac15ee691fe84cb46cbd2497ddcb10e246f7ee47"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Tue Jan 25 15:07:34 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 26 10:50:05 2011 +1000"
      },
      "message": "squashfs: fix use of uninitialised variable in zlib \u0026 xz decompressors\n\nFix potential use of uninitialised variable caused by recent\ndecompressor code optimisations.\n\nIn zlib_uncompress (zlib_wrapper.c) we have\n\n\tint zlib_err, zlib_init \u003d 0;\n\t...\n\tdo {\n\t\t...\n\t\t\tif (avail \u003d\u003d 0) {\n\t\t\t\toffset \u003d 0;\n\t\t\t\tput_bh(bh[k++]);\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t...\n\t\tzlib_err \u003d zlib_inflate(stream, Z_SYNC_FLUSH);\n\t\t...\n\t} while (zlib_err \u003d\u003d Z_OK);\n\nIf continue is executed (avail \u003d\u003d 0) then the while condition will be\nevaluated testing zlib_err, which is uninitialised first time around the\nloop.\n\nFix this by getting rid of the \u0027if (avail \u003d\u003d 0)\u0027 condition test, this\nedge condition should not be being handled in the decompressor code, and\ninstead handle it generically in the caller code.\n\nSimilarly for xz_wrapper.c.\n\nIncidentally, on most architectures (bar Mips and Parisc), no\nuninitialised variable warning is generated by gcc, this is because the\nwhile condition test on continue is optimised out and not performed\n(when executing continue zlib_err has not been changed since entering\nthe loop, and logically if the while condition was true previously, then\nit\u0027s still true).\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\nReported-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3af03655e885ba7f48ca6318e231a7086a51082e",
      "tree": "8f7505063593208454184fb5608eadf80f78d122",
      "parents": [
        "01ed875a12eacd5ece370b20ccf8f51543feb172",
        "0ca7a5b9ac5d301845dd6382ff25a699b6263a81"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 26 09:03:36 2011 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 26 09:03:36 2011 +1000"
      },
      "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 crash after one superblock became unavailable\n"
    },
    {
      "commit": "27dc1cd3ad9300f81e1219e5fc305d91d85353f8",
      "tree": "5f242e02274ce115154e2400b298b82b39302ed2",
      "parents": [
        "b2a2897dc4a59684321de425652061c62a0569d0"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 25 15:28:21 2011 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 25 15:28:21 2011 -0500"
      },
      "message": "NFS: nfs_wcc_update_inode() should set nfsi-\u003eattr_gencount\n\nIf the call to nfs_wcc_update_inode() results in an attribute update, we\nneed to ensure that the inode\u0027s attr_gencount gets bumped too, otherwise\nwe are not protected against races with other GETATTR calls.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b2a2897dc4a59684321de425652061c62a0569d0",
      "tree": "c82399ed3ba4177b68b4606667c63fcf2fe52a4b",
      "parents": [
        "2c4cdf8f6d3cfb48036400952329555099c8c92c"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Tue Jan 25 15:38:03 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 25 15:26:51 2011 -0500"
      },
      "message": "NFS improve pnfs_put_deviceid_cache debug print\n\nWhat we really want to know is the ref count.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2c4cdf8f6d3cfb48036400952329555099c8c92c",
      "tree": "06a2c1d0ff7bfc959cb62eca51ef5d8e08781f4a",
      "parents": [
        "778be232a207e79088ba70d832ac25dfea6fbf1a"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Tue Jan 25 15:38:02 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 25 15:26:51 2011 -0500"
      },
      "message": "NFS fix cb_sequence error processing\n\nAlways assign the cb_process_state nfs_client pointer so a processing error\nin cb_sequence after the nfs_client is found and referenced returns\na non-NULL cb_process_state nfs_client and the matching nfs_put_client in\nnfs4_callback_compound dereferences the client.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "778be232a207e79088ba70d832ac25dfea6fbf1a",
      "tree": "307249459e5ef45c4b3651c7fc5c454cdb3e0c92",
      "parents": [
        "80c30e8de4f81851b1f712bcc596e11d53bc76f1"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Tue Jan 25 15:38:01 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 25 15:26:51 2011 -0500"
      },
      "message": "NFS do not find client in NFSv4 pg_authenticate\n\nThe information required to find the nfs_client cooresponding to the incoming\nback channel request is contained in the NFS layer. Perform minimal checking\nin the RPC layer pg_authenticate method, and push more detailed checking into\nthe NFS layer where the nfs_client can be found.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "80c30e8de4f81851b1f712bcc596e11d53bc76f1",
      "tree": "1adf291e8fe056e4a799b5292d7ff32988ebdbff",
      "parents": [
        "f61f6da0d53842e849bab7f69e1431bd3de1136d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Jan 24 20:50:26 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 25 15:24:47 2011 -0500"
      },
      "message": "NLM: Fix \"kernel BUG at fs/lockd/host.c:417!\" or \".../host.c:283!\"\n\nNick Bowler \u003cnbowler@elliptictech.com\u003e reports:\n\n\u003e We were just having some NFS server troubles, and my client machine\n\u003e running 2.6.38-rc1+ (specifically, commit 2b1caf6ed7b888c95) crashed\n\u003e hard (syslog output appended to this mail).\n\u003e\n\u003e I\u0027m not sure what the exact timeline was or how to reproduce this,\n\u003e but the server was rebooted during all this.  Since I\u0027ve never seen\n\u003e this happen before, it is possibly a regression from previous kernel\n\u003e releases.  However, I recently updated my nfs-utils (on the client) to\n\u003e version 1.2.3, so that might be related as well.\n\n  [ BUG output redacted ]\n\nWhen done searching, the for_each_host loop in next_host_state() falls\nthrough and returns the final host on the host chain without bumping\nit\u0027s reference count.\n\nSince the host\u0027s ref count is only one at that point, releasing the\nhost in nlm_host_rebooted() attempts to destroy the host prematurely,\nand therefore hits a BUG().\n\nLikely, the original intent of the for_each_host behavior in\nnext_host_state() was to handle the case when the host chain is empty.\nSearching the chain and finding no suitable host to return needs to be\nhandled as well.\n\nDefensively restructure next_host_state() always to return NULL when\nthe loop falls through.\n\nIntroduced by commit b10e30f6 \"lockd: reorganize nlm_host_rebooted\".\n\nCc: J. Bruce Fields \u003cbfields@fieldses.org\u003e\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "f61f6da0d53842e849bab7f69e1431bd3de1136d",
      "tree": "8433904f645695338b98d3dc831631ffd6f129e5",
      "parents": [
        "731f3f482ad3b2c58a1af2d0a9a634a82803706a"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Jan 21 03:05:38 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 25 15:24:47 2011 -0500"
      },
      "message": "NFS: Prevent memory allocation failure in nfsacl_encode()\n\nnfsacl_encode() allocates memory in certain cases.  This of course\nis not guaranteed to work.\n\nSince commit 9f06c719 \"SUNRPC: New xdr_streams XDR encoder API\", the\nkernel\u0027s XDR encoders can\u0027t return a result indicating possibly a\nfailure, so a memory allocation failure in nfsacl_encode() has become\nfatal (ie, the XDR code Oopses) in some cases.\n\nHowever, the allocated memory is a tiny fixed amount, on the order\nof 40-50 bytes.  We can easily use a stack-allocated buffer for\nthis, with only a wee bit of nose-holding.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "731f3f482ad3b2c58a1af2d0a9a634a82803706a",
      "tree": "1425c239481309ffc68dd33a991fc13fc309226c",
      "parents": [
        "ee5dc7732bd557bae6d10873a0aac606d2c551fb"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Jan 21 03:05:28 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 25 15:24:47 2011 -0500"
      },
      "message": "NFS: nfsacl_{encode,decode} should return signed integer\n\nClean up.\n\nThe nfsacl_encode() and nfsacl_decode() functions return negative\nerrno values, and each call site verifies that the returned value\nis not negative.  Change the synopsis of both of these functions\nto reflect this usage.\n\nDocument the synopsis and return values.\n\nReported-by: Trond Myklebust \u003ctrond.myklebust@netapp.com\u003e\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ee5dc7732bd557bae6d10873a0aac606d2c551fb",
      "tree": "48b34875ec19b23dc4d8aab23488aeb224837df0",
      "parents": [
        "839f7ad6932d95f4d5ae7267b95c574714ff3d5b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Jan 21 03:05:18 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 25 15:24:47 2011 -0500"
      },
      "message": "NFS: Fix \"kernel BUG at fs/nfs/nfs3xdr.c:1338!\"\n\nMilan Broz \u003cmbroz@redhat.com\u003e reports:\n\n\u003e on today Linus\u0027 tree I get OOps if using nfs.\n\u003e\n\u003e server (2.6.36) exports dir:\n\u003e /dir   172.16.1.0/24(rw,async,all_squash,no_subtree_check,anonuid\u003d500,anongid\u003d500)\n\u003e\n\u003e on client it is mounted  in fstab\n\u003e server:/dir  /mnt/tst  nfs  rw,soft 0 0\n\u003e\n\u003e and these commands OOpses it (simplified from a configure script):\n\u003e\n\u003e cd /dir\n\u003e touch x\n\u003e install x y\n\u003e\n\u003e [  105.327701] ------------[ cut here ]------------\n\u003e [  105.327979] kernel BUG at fs/nfs/nfs3xdr.c:1338!\n\u003e [  105.328075] invalid opcode: 0000 [#1] PREEMPT SMP\n\u003e [  105.328223] last sysfs file: /sys/devices/virtual/bdi/0:16/uevent\n\u003e [  105.328349] Modules linked in: usbcore dm_mod\n\u003e [  105.328553]\n\u003e [  105.328678] Pid: 3710, comm: install Not tainted 2.6.37+ #423 440BX Desktop Reference Platform/VMware Virtual Platform\n\u003e [  105.328853] EIP: 0060:[\u003cc116c06c\u003e] EFLAGS: 00010282 CPU: 0\n\u003e [  105.329152] EIP is at nfs3_xdr_enc_setacl3args+0x61/0x98\n\u003e [  105.329249] EAX: ffffffea EBX: ce941d98 ECX: 00000000 EDX: 00000004\n\u003e [  105.329340] ESI: ce941cd0 EDI: 000000a4 EBP: ce941cc0 ESP: ce941cb4\n\u003e [  105.329431]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068\n\u003e [  105.329525] Process install (pid: 3710, ti\u003dce940000 task\u003dced36f20 task.ti\u003dce940000)\n\u003e [  105.336600] Stack:\n\u003e [  105.336693]  ce941cd0 ce9dc000 00000000 ce941cf8 c12ecd02 c12f43e0 c116c00b cf754158\n\u003e [  105.336982]  ce9dc004 cf754284 ce9dc004 cf7ffee8 ceff9978 ce9dc000 cf7ffee8 ce9dc000\n\u003e [  105.337182]  ce9dc000 ce941d14 c12e698d cf75412c ce941d98 cf7ffee8 cf7fff20 00000000\n\u003e [  105.337405] Call Trace:\n\u003e [  105.337695]  [\u003cc12ecd02\u003e] rpcauth_wrap_req+0x75/0x7f\n\u003e [  105.337806]  [\u003cc12f43e0\u003e] ? xdr_encode_opaque+0x12/0x15\n\u003e [  105.337898]  [\u003cc116c00b\u003e] ? nfs3_xdr_enc_setacl3args+0x0/0x98\n\u003e [  105.337988]  [\u003cc12e698d\u003e] call_transmit+0x17e/0x1e8\n\u003e [  105.338072]  [\u003cc12ec307\u003e] __rpc_execute+0x6d/0x1a6\n\u003e [  105.338155]  [\u003cc12ec474\u003e] rpc_execute+0x34/0x37\n\u003e [  105.338235]  [\u003cc12e738d\u003e] rpc_run_task+0xb5/0xbd\n\u003e [  105.338316]  [\u003cc12e7474\u003e] rpc_call_sync+0x3d/0x58\n\u003e [  105.338402]  [\u003cc116d0c6\u003e] nfs3_proc_setacls+0x18e/0x24f\n\u003e [  105.338493]  [\u003cc10b3f76\u003e] ? __kmalloc+0x148/0x1c4\n\u003e [  105.338579]  [\u003cc10ecd01\u003e] ? posix_acl_alloc+0x12/0x22\n\u003e [  105.338665]  [\u003cc116d5c8\u003e] nfs3_proc_setacl+0xa0/0xca\n\u003e [  105.338748]  [\u003cc116d69c\u003e] nfs3_setxattr+0x62/0x88\n\u003e [  105.338834]  [\u003cc1317042\u003e] ? sub_preempt_count+0x7c/0x89\n\u003e [  105.338926]  [\u003cc116d63a\u003e] ? nfs3_setxattr+0x0/0x88\n\u003e [  105.339026]  [\u003cc10cfa79\u003e] __vfs_setxattr_noperm+0x26/0x95\n\u003e [  105.339114]  [\u003cc10cfb43\u003e] vfs_setxattr+0x5b/0x76\n\u003e [  105.339211]  [\u003cc10cfbfb\u003e] setxattr+0x9d/0xc3\n\u003e [  105.339298]  [\u003cc10a2ea8\u003e] ? handle_pte_fault+0x258/0x5cb\n\u003e [  105.339428]  [\u003cc1091ff6\u003e] ? __free_pages+0x1a/0x23\n\u003e [  105.339517]  [\u003cc10498ea\u003e] ? up_read+0x16/0x2c\n\u003e [  105.339599]  [\u003cc10b8365\u003e] ? fget+0x0/0xa3\n\u003e [  105.339677]  [\u003cc10b8365\u003e] ? fget+0x0/0xa3\n\u003e [  105.339760]  [\u003cc1025d23\u003e] ? get_parent_ip+0xb/0x31\n\u003e [  105.339843]  [\u003cc1317042\u003e] ? sub_preempt_count+0x7c/0x89\n\u003e [  105.339931]  [\u003cc10cfc72\u003e] sys_fsetxattr+0x51/0x79\n\u003e [  105.340014]  [\u003cc1002853\u003e] sysenter_do_call+0x12/0x32\n\u003e [  105.340133] Code: 2e 76 18 00 58 31 d2 8b 7f 28 f6 43 04 01 74 03 8b 53 08 6a 00 8b 46 04 6a 01 8b 0b 52 89 fa e8 85 10 f8 ff 83 c4 0c 85 c0 79 04 \u003c0f\u003e 0b eb fe 31 c9 f6 43 04 04 74 03 8b 4b 0c 68 00 10 00 00 8d\n\u003e [  105.350321] EIP: [\u003cc116c06c\u003e] nfs3_xdr_enc_setacl3args+0x61/0x98 SS:ESP 0068:ce941cb4\n\u003e [  105.364385] ---[ end trace 01fcfe7f0f7f6e4a ]---\n\nnfs3_xdr_enc_setacl3args() is not properly setting up the target\nbuffer before nfsacl_encode() attempts to encode the ACL.\n\nIntroduced by commit d9c407b1 \"NFS: Introduce new-style XDR encoding\nfunctions for NFSv3.\"\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "839f7ad6932d95f4d5ae7267b95c574714ff3d5b",
      "tree": "63dc2eec84a5ecb846145fd1dd70fe7cdd46fa7c",
      "parents": [
        "ad3d2eedf0ed3611f5f86b9e4d0d15cc76c63465"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Jan 21 15:54:57 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 25 15:24:47 2011 -0500"
      },
      "message": "NFS: Fix \"kernel BUG at fs/aio.c:554!\"\n\nNick Piggin reports:\n\n\u003e I\u0027m getting use after frees in aio code in NFS\n\u003e\n\u003e [ 2703.396766] Call Trace:\n\u003e [ 2703.396858]  [\u003cffffffff8100b057\u003e] ? native_sched_clock+0x27/0x80\n\u003e [ 2703.396959]  [\u003cffffffff8108509e\u003e] ? put_lock_stats+0xe/0x40\n\u003e [ 2703.397058]  [\u003cffffffff81088348\u003e] ? lock_release_holdtime+0xa8/0x140\n\u003e [ 2703.397159]  [\u003cffffffff8108a2a5\u003e] lock_acquire+0x95/0x1b0\n\u003e [ 2703.397260]  [\u003cffffffff811627db\u003e] ? aio_put_req+0x2b/0x60\n\u003e [ 2703.397361]  [\u003cffffffff81039701\u003e] ? get_parent_ip+0x11/0x50\n\u003e [ 2703.397464]  [\u003cffffffff81612a31\u003e] _raw_spin_lock_irq+0x41/0x80\n\u003e [ 2703.397564]  [\u003cffffffff811627db\u003e] ? aio_put_req+0x2b/0x60\n\u003e [ 2703.397662]  [\u003cffffffff811627db\u003e] aio_put_req+0x2b/0x60\n\u003e [ 2703.397761]  [\u003cffffffff811647fe\u003e] do_io_submit+0x2be/0x7c0\n\u003e [ 2703.397895]  [\u003cffffffff81164d0b\u003e] sys_io_submit+0xb/0x10\n\u003e [ 2703.397995]  [\u003cffffffff8100307b\u003e] system_call_fastpath+0x16/0x1b\n\u003e\n\u003e Adding some tracing, it is due to nfs completing the request then\n\u003e returning something other than -EIOCBQUEUED, so aio.c\n\u003e also completes the request.\n\nTo address this, prevent the NFS direct I/O engine from completing\nasync iocbs when the forward path returns an error without starting\nany I/O.\n\nThis fix appears to survive ^C during both \"xfstest no. 208\" and \"fsx\n-Z.\"\n\nIt\u0027s likely this bug has existed for a very long while, as we are seeing\nvery similar symptoms in OEL 5.  Copying stable.\n\nCc: Stable \u003cstable@kernel.org\u003e\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ad3d2eedf0ed3611f5f86b9e4d0d15cc76c63465",
      "tree": "f391bedf2b6ca950a6c41644f3b469457b4bc57b",
      "parents": [
        "0da2a4ac33c291728d8be5bdb865467dcb078d13"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Mon Jan 17 18:41:50 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 25 15:24:46 2011 -0500"
      },
      "message": "NFS4: Avoid potential NULL pointer dereference in decode_and_add_ds().\n\nOn Mon, 17 Jan 2011, Mi Jinlong wrote:\n\n\u003e\n\u003e\n\u003e Jesper Juhl:\n\u003e \u003e strrchr() can return NULL if nothing is found. If this happens we\u0027ll\n\u003e \u003e dereference a NULL pointer in\n\u003e \u003e fs/nfs/nfs4filelayoutdev.c::decode_and_add_ds().\n\u003e \u003e\n\u003e \u003e I tried to find some other code that guarantees that this can never\n\u003e \u003e happen but I was unsuccessful. So, unless someone else can point to some\n\u003e \u003e code that ensures this can never be a problem, I believe this patch is\n\u003e \u003e needed.\n\u003e \u003e\n\u003e \u003e While I was changing this code I also noticed that all the dprintk()\n\u003e \u003e statements, except one, start with \"%s:\". The one missing the \":\" I added\n\u003e \u003e it to.\n\u003e\n\u003e   Maybe another one also should be changed at decode_and_add_ds() at line 243:\n\u003e\n\u003e    243  printk(\"%s Decoded address and port %s\\n\", __func__, buf);\n\u003e\nMissed that one. Thanks.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d39454ffe4a3c85428483b8a8a8e5e797b6363d5",
      "tree": "60d9762510ed6e1da338d5777827e18917e799bf",
      "parents": [
        "72432ffcf555decbbae47f1be338e1d2f210aa69"
      ],
      "author": {
        "name": "Pavel Shilovsky",
        "email": "piastryyy@gmail.com",
        "time": "Mon Jan 24 14:16:35 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Jan 25 19:31:38 2011 +0000"
      },
      "message": "CIFS: Add strictcache mount option\n\nUse for switching on strict cache mode. In this mode the\nclient reads from the cache all the time it has Oplock Level II,\notherwise - read from the server. As for write - the client stores\na data in the cache in Exclusive Oplock case, otherwise - write\ndirectly to the server.\n\nSigned-off-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nReviewed-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "72432ffcf555decbbae47f1be338e1d2f210aa69",
      "tree": "4293cb6e5b880071099756b7523f8f36bb7e16cc",
      "parents": [
        "93c100c0b423266c0ee28497e90fdf27c05e6b8e"
      ],
      "author": {
        "name": "Pavel Shilovsky",
        "email": "piastryyy@gmail.com",
        "time": "Mon Jan 24 14:16:35 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Jan 25 19:30:13 2011 +0000"
      },
      "message": "CIFS: Implement cifs_strict_writev (try #4)\n\nIf we don\u0027t have Exclusive oplock we write a data to the server.\nAlso set invalidate_mapping flag on the inode if we wrote something\nto the server. Add cifs_iovec_write to let the client write iovec\nbuffers through CIFSSMBWrite2.\n\nSigned-off-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nReviewed-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "93c100c0b423266c0ee28497e90fdf27c05e6b8e",
      "tree": "d62879296fdcb482ba4f3995e8e9177f6ec17599",
      "parents": [
        "c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Jan 25 19:28:43 2011 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Jan 25 19:28:43 2011 +0000"
      },
      "message": "[CIFS] Replace cifs md5 hashing functions with kernel crypto APIs\n\nReplace remaining use of md5 hash functions local to cifs module\nwith kernel crypto APIs.\nRemove header and source file containing those local functions.\n\nSigned-off-by: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nReviewed-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "d66bbd441c08fe00ed2add1cf70cb243ebc2b27e",
      "tree": "bde3d1bf8d6a665b14e2b86e82506c8c7b3b0657",
      "parents": [
        "7e57b81c7688c762bc9e775bc83f9fc17946f527"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Fri Jan 21 21:16:46 2011 -0800"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue Jan 25 08:16:37 2011 -0800"
      },
      "message": "ceph: avoid picking MDS that is not active\n\nIgnore replication or auth frag data if it indicates an MDS that is not\nactive.  This can happen if the MDS shuts down and the client has stale\ndata about the namespace distribution across the MDS cluster.  If that\u0027s\nthe case, fall back to directing the request based on the auth cap (which\nshould always be accurate).\n\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84",
      "tree": "c79b7ddc475fc034d0e944c2a561a3bd5b2d5e9d",
      "parents": [
        "842d9b2c6a9189c8954d1d03dadde7403992baed",
        "f1d0c998653f1eeec60ee6420e550135b62dbab4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 25 14:23:54 2011 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 25 14:23:54 2011 +1000"
      },
      "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  Make CIFS mount work in a container.\n  CIFS: Remove pointless variable assignment in cifs_dfs_do_automount()\n"
    },
    {
      "commit": "f1d0c998653f1eeec60ee6420e550135b62dbab4",
      "tree": "1db07e198f4c0a86bca7160f9a6a3255f4b4f4a9",
      "parents": [
        "3f391c79b0686ce183668c6e2b7d02f3e716766c"
      ],
      "author": {
        "name": "Rob Landley",
        "email": "rlandley@parallels.com",
        "time": "Sat Jan 22 15:44:05 2011 -0600"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 24 04:28:51 2011 +0000"
      },
      "message": "Make CIFS mount work in a container.\n\nTeach cifs about network namespaces, so mounting uses adresses/routing\nvisible from the container rather than from init context.\n\nA container is a chroot on steroids that changes more than just the root\nfilesystem the new processes see.  One thing containers can isolate is\n\"network namespaces\", meaning each container can have its own set of\nethernet interfaces, each with its own own IP address and routing to the\noutside world.  And if you open a socket in _userspace_ from processes\nwithin such a container, this works fine.\n\nBut sockets opened from within the kernel still use a single global\nnetworking context in a lot of places, meaning the new socket\u0027s address\nand routing are correct for PID 1 on the host, but are _not_ what\nuserspace processes in the container get to use.\n\nSo when you mount a network filesystem from within in a container, the\nmount code in the CIFS driver uses the host\u0027s networking context and not\nthe container\u0027s networking context, so it gets the wrong address, uses\nthe wrong routing, and may even try to go out an interface that the\ncontainer can\u0027t even access...  Bad stuff.\n\nThis patch copies the mount process\u0027s network context into the CIFS\nstructure that stores the rest of the server information for that mount\npoint, and changes the socket open code to use the saved network context\ninstead of the global network context.  I.E. \"when you attempt to use\nthese addresses, do so relative to THIS set of network interfaces and\nrouting rules, not the old global context from back before we supported\ncontainers\".\n\nThe big long HOWTO sets up a test environment on the assumption you\u0027ve\nnever used ocntainers before.  It basically says:\n\n1) configure and build a new kernel that has container support\n2) build a new root filesystem that includes the userspace container\ncontrol package (LXC)\n3) package/run them under KVM (so you don\u0027t have to mess up your host\nsystem in order to play with containers).\n4) set up some containers under the KVM system\n5) set up contradictory routing in the KVM system and the container so\nthat the host and the container see different things for the same address\n6) try to mount a CIFS share from both contexts so you can both force it\nto work and force it to fail.\n\nFor a long drawn out test reproduction sequence, see:\n\n  http://landley.livejournal.com/47024.html\n  http://landley.livejournal.com/47205.html\n  http://landley.livejournal.com/47476.html\n\nSigned-off-by: Rob Landley \u003crlandley@parallels.com\u003e\nReviewed-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "3f391c79b0686ce183668c6e2b7d02f3e716766c",
      "tree": "304cdb0d55dd84fccfffaf281ff9f06c265a138c",
      "parents": [
        "1bae4ce27c9c90344f23c65ea6966c50ffeae2f5"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Sat Jan 22 21:07:16 2011 +0100"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jan 24 03:32:01 2011 +0000"
      },
      "message": "CIFS: Remove pointless variable assignment in cifs_dfs_do_automount()\n\nIn fs/cifs/cifs_dfs_ref.c::cifs_dfs_do_automount() we have this code:\n\n\t...\n\tmnt \u003d ERR_PTR(-EINVAL);\n\tif (IS_ERR(tlink)) {\n\t\tmnt \u003d ERR_CAST(tlink);\n\t\tgoto free_full_path;\n\t}\n\tses \u003d tlink_tcon(tlink)-\u003eses;\n\n\trc \u003d get_dfs_path(xid, ses, full_path + 1, cifs_sb-\u003elocal_nls,\n\t\t\u0026num_referrals, \u0026referrals,\n\t\tcifs_sb-\u003emnt_cifs_flags \u0026 CIFS_MOUNT_MAP_SPECIAL_CHR);\n\n\tcifs_put_tlink(tlink);\n\n\tmnt \u003d ERR_PTR(-ENOENT);\n\t...\n\nThe assignment of \u0027mnt \u003d ERR_PTR(-EINVAL);\u0027 is completely pointless. If we\ntake the \u0027if (IS_ERR(tlink))\u0027 branch we\u0027ll set \u0027mnt\u0027 again and we\u0027ll also\ndo so if we do not take the branch. There is no way we\u0027ll ever use \u0027mnt\u0027\nwith the assigned \u0027ERR_PTR(-EINVAL)\u0027 value, so we may as well just remove\nthe pointless assignment.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "ff5fdb61493d95332945630fcae249f896098652",
      "tree": "7a0ba7c65bbecaa5c5d98004d5c52cfb83d1ed77",
      "parents": [
        "9b310acc335cb0da7d743e2b60f999587beb6496"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Sat Jan 22 20:16:06 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 22 20:32:38 2011 -0800"
      },
      "message": "fs: fix new dcache.c kernel-doc warnings\n\nFix new fs/dcache.c kernel-doc warnings:\n\n  Warning(fs/dcache.c:184): No description found for parameter \u0027dentry\u0027\n  Warning(fs/dcache.c:296): No description found for parameter \u0027parent\u0027\n  Warning(fs/dcache.c:1985): No description found for parameter \u0027dparent\u0027\n  Warning(fs/dcache.c:1985): Excess function parameter \u0027parent\u0027 description in \u0027d_validate\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc:\tAlexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc:\tNick Piggin \u003cnpiggin@kernel.dk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ca7a5b9ac5d301845dd6382ff25a699b6263a81",
      "tree": "52d0ab285bd2dfabbba164a9df72468fdd92d29b",
      "parents": [
        "1bae4ce27c9c90344f23c65ea6966c50ffeae2f5"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jan 21 16:40:31 2011 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Jan 22 15:22:36 2011 +0900"
      },
      "message": "nilfs2: fix crash after one superblock became unavailable\n\nFixes the following kernel oops in nilfs_setup_super() which could\narise if one of two super-blocks is unavailable.\n\n\u003e BUG: unable to handle kernel NULL pointer dereference at   (null)\n\u003e Pid: 3529, comm: mount.nilfs2 Not tainted 2.6.37 #1 /\n\u003e EIP: 0060:[\u003cc03196bc\u003e] EFLAGS: 00010202 CPU: 3\n\u003e EIP is at memcpy+0xc/0x1b\n\u003e Call Trace:\n\u003e  [\u003cf953720e\u003e] ? nilfs_setup_super+0x6c/0xa5 [nilfs2]\n\u003e  [\u003cf95369e9\u003e] ? nilfs_get_root_dentry+0x81/0xcb [nilfs2]\n\u003e  [\u003cf9537a08\u003e] ? nilfs_mount+0x4f9/0x62c [nilfs2]\n\u003e  [\u003cc02745cf\u003e] ? kstrdup+0x36/0x3f\n\u003e  [\u003cf953750f\u003e] ? nilfs_mount+0x0/0x62c [nilfs2]\n\u003e  [\u003cc0293940\u003e] ? vfs_kern_mount+0x4d/0x12c\n\u003e  [\u003cc02a5100\u003e] ? get_fs_type+0x76/0x8f\n\u003e  [\u003cc0293a68\u003e] ? do_kern_mount+0x33/0xbf\n\u003e  [\u003cc02a784a\u003e] ? do_mount+0x2ed/0x714\n\u003e  [\u003cc02a6171\u003e] ? copy_mount_options+0x28/0xfc\n\u003e  [\u003cc02a7ce3\u003e] ? sys_mount+0x72/0xaf\n\u003e  [\u003cc0473085\u003e] ? syscall_call+0x7/0xb\n\nReported-by: Wakko Warner \u003cwakko@animx.eu.org\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nTested-by: Wakko Warner \u003cwakko@animx.eu.org\u003e\nCc: stable \u003cstable@kernel.org\u003e [2.6.37, 2.6.36]\nLKML-Reference: \u003c20110121024918.GA29598@animx.eu.org\u003e\n"
    },
    {
      "commit": "9093ba53b7f26dbb5210de1157769e59e34bbe23",
      "tree": "98b6fac2f483740828a58b8bbacaf9016d8e9278",
      "parents": [
        "ebe0d805071c318ebbc3b5857f8f4f94214c1a52",
        "99d86c8f1b7101d7c55dbf644b32bb1f0d7eb303"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 13:44:07 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 13:44:07 2011 -0800"
      },
      "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 up CIFSSMBEcho for unaligned access\n  cifs: fix unaligned accesses in cifsConvertToUCS\n  cifs: clean up unaligned accesses in cifs_unicode.c\n  cifs: fix unaligned access in check2ndT2 and coalesce_t2\n  cifs: clean up unaligned accesses in validate_t2\n  cifs: use get/put_unaligned functions to access ByteCount\n  cifs: move time field in cifsInodeInfo\n  cifs: TCP_Server_Info diet\n  CIFS: Implement cifs_strict_readv (try #4)\n  CIFS: Implement cifs_file_strict_mmap (try #2)\n  CIFS: Implement cifs_strict_fsync\n  CIFS: Make cifsFileInfo_put work with strict cache mode\n"
    },
    {
      "commit": "4843456c5c341eb57f80f9224362a22665d14107",
      "tree": "5656b405a8b1d2596e8eb748b953ee677a261e3c",
      "parents": [
        "2b1caf6ed7b888c95a1909d343799672731651a5",
        "f00c9e44ad1a9660fe8cd3ca15b6cd9497172eab"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 07:33:37 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 07:33:37 2011 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6:\n  quota: Fix deadlock during path resolution\n"
    },
    {
      "commit": "99d86c8f1b7101d7c55dbf644b32bb1f0d7eb303",
      "tree": "7ec07aeb365ea5f16dfd1ce1a2295e073d362ac6",
      "parents": [
        "bf67b9be97baea84386abca38b2503bb286571dc"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Jan 20 21:19:25 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Jan 21 02:23:27 2011 +0000"
      },
      "message": "cifs: fix up CIFSSMBEcho for unaligned access\n\nMake sure that CIFSSMBEcho can handle unaligned fields. Also fix a minor\nbug that causes this warning:\n\nfs/cifs/cifssmb.c: In function \u0027CIFSSMBEcho\u0027:\nfs/cifs/cifssmb.c:740: warning: large integer implicitly truncated to unsigned type\n\n...WordCount is u8, not __le16, so no need to convert it.\n\nThis patch should apply cleanly on top of the rest of the patchset to\nclean up unaligned access.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "bf67b9be97baea84386abca38b2503bb286571dc",
      "tree": "576c32ee13dfec1a95d5a50cb2dc0aefbb72f49a",
      "parents": [
        "8d99641f6c1af806cd5d9e6badce91910219a161",
        "84cdf74e8096a10dd6acbb870dd404b92f07a756"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Jan 21 02:19:30 2011 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Jan 21 02:19:30 2011 +0000"
      },
      "message": "Merge branch \u0027for-next\u0027\n"
    },
    {
      "commit": "8d99641f6c1af806cd5d9e6badce91910219a161",
      "tree": "ee841f807005a4a6234f6f502a13185d13a34870",
      "parents": [
        "fc887b15d935ead2a00aef5779a18034e7c69ee1",
        "225c8e010f2d17a62aef131e24c6e7c111f36f9b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 17:02:14 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 17:02:14 2011 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027\n\n* akpm:\n  kernel/smp.c: consolidate writes in smp_call_function_interrupt()\n  kernel/smp.c: fix smp_call_function_many() SMP race\n  memcg: correctly order reading PCG_USED and pc-\u003emem_cgroup\n  backlight: fix 88pm860x_bl macro collision\n  drivers/leds/ledtrig-gpio.c: make output match input, tighten input checking\n  MAINTAINERS: update Atmel AT91 entry\n  mm: fix truncate_setsize() comment\n  memcg: fix rmdir, force_empty with THP\n  memcg: fix LRU accounting with THP\n  memcg: fix USED bit handling at uncharge in THP\n  memcg: modify accounting function for supporting THP better\n  fs/direct-io.c: don\u0027t try to allocate more than BIO_MAX_PAGES in a bio\n  mm: compaction: prevent division-by-zero during user-requested compaction\n  mm/vmscan.c: remove duplicate include of compaction.h\n  memblock: fix memblock_is_region_memory()\n  thp: keep highpte mapped until it is no longer needed\n  kconfig: rename CONFIG_EMBEDDED to CONFIG_EXPERT\n"
    },
    {
      "commit": "20d9600cb407b0b55fef6ee814b60345c6f58264",
      "tree": "a023082339b33c55e8def552abecd441ffe92fb5",
      "parents": [
        "82478fb7bca28e3ca2f3c55c14e690f749dd4dbb"
      ],
      "author": {
        "name": "David Dillow",
        "email": "dillowda@ornl.gov",
        "time": "Thu Jan 20 14:44:22 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 17:02:05 2011 -0800"
      },
      "message": "fs/direct-io.c: don\u0027t try to allocate more than BIO_MAX_PAGES in a bio\n\nWhen using devices that support max_segments \u003e BIO_MAX_PAGES (256), direct\nIO tries to allocate a bio with more pages than allowed, which leads to an\noops in dio_bio_alloc().  Clamp the request to the supported maximum, and\nchange dio_bio_alloc() to reflect that bio_alloc() will always return a\nbio when called with __GFP_WAIT and a valid number of vectors.\n\n[akpm@linux-foundation.org: remove redundant BUG_ON()]\nSigned-off-by: David Dillow \u003cdillowda@ornl.gov\u003e\nReviewed-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6a108a14fa356ef607be308b68337939e56ea94e",
      "tree": "1bf260572bd8f95ed867307a2bcf5d881c8ae4a6",
      "parents": [
        "12fcdba1b7ae8b25696433f420b775aeb556d89b"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Thu Jan 20 14:44:16 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 17:02:05 2011 -0800"
      },
      "message": "kconfig: rename CONFIG_EMBEDDED to CONFIG_EXPERT\n\nThe meaning of CONFIG_EMBEDDED has long since been obsoleted; the option\nis used to configure any non-standard kernel with a much larger scope than\nonly small devices.\n\nThis patch renames the option to CONFIG_EXPERT in init/Kconfig and fixes\nreferences to the option throughout the kernel.  A new CONFIG_EMBEDDED\noption is added that automatically selects CONFIG_EXPERT when enabled and\ncan be used in the future to isolate options that should only be\nconsidered for embedded systems (RISC architectures, SLOB, etc).\n\nCalling the option \"EXPERT\" more accurately represents its intention: only\nexpert users who understand the impact of the configuration changes they\nare making should enable it.\n\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: David Woodhouse \u003cdavid.woodhouse@intel.com\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Greg KH \u003cgregkh@suse.de\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Robin Holt \u003cholt@sgi.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5cdec1fca2ff128ca0716dc1ef0fc0043e4ae8ab",
      "tree": "35dbfed2dc57b80d18276413361c34905fe8312c",
      "parents": [
        "e55fdbd7414a3ee991d7081a256153f61ea98b9f",
        "76dcc26f1d7f1c98c3f595379dcd9562f01bf38d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 16:36:38 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 16:36:38 2011 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6\n\n* \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:\n  cifs: mangle existing header for SMB_COM_NT_CANCEL\n  cifs: remove code for setting timeouts on requests\n  [CIFS] cifs: reconnect unresponsive servers\n  cifs: set up recurring workqueue job to do SMB echo requests\n  cifs: add ability to send an echo request\n  cifs: add cifs_call_async\n  cifs: allow for different handling of received response\n  cifs: clean up sync_mid_result\n  cifs: don\u0027t reconnect server when we don\u0027t get a response\n  cifs: wait indefinitely for responses\n  cifs: Use mask of ACEs for SID Everyone to calculate all three permissions user, group, and other\n  cifs: Fix regression during share-level security mounts (Repost)\n  [CIFS] Update cifs version number\n  cifs: move mid result processing into common function\n  cifs: move locked sections out of DeleteMidQEntry and AllocMidQEntry\n  cifs: clean up accesses to midCount\n  cifs: make wait_for_free_request take a TCP_Server_Info pointer\n  cifs: no need to mark smb_ses_list as cifs_demultiplex_thread is exiting\n  cifs: don\u0027t fail writepages on -EAGAIN errors\n  CIFS: Fix oplock break handling (try #2)\n"
    },
    {
      "commit": "b06ae1ead2915860bb49331e0588aab326801f71",
      "tree": "4c4861d2212261223915e80d90f10da1c89e2f72",
      "parents": [
        "e589501cb928b482c3c399444f788e1af35deee2",
        "24d9765fc18c7838ccdbb0d71fb706321d9b824c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 16:29:04 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 16:29:04 2011 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes:\n  GFS2: Fix error path in gfs2_lookup_by_inum()\n  GFS2: remove iopen glocks from cache on failed deletes\n"
    },
    {
      "commit": "28e58ee8ce1f0e69c207f747b7b9054b071e328d",
      "tree": "b9191d7e213ad6e8ceb43d45e3306ced085b04f7",
      "parents": [
        "d7b9935a347ae954be907ea3d5eb4564ff124c53"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 16:21:59 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 16:21:59 2011 -0800"
      },
      "message": "Fix broken \"pipe: use event aware wakeups\" optimization\n\nCommit e462c448fdc8 (\"pipe: use event aware wakeups\") optimized the pipe\nevent wakeup calls to avoid wakeups if the events do not match the\nrequested set.\n\nHowever, the optimization was buggy, in that it didn\u0027t actually use the\ncorrect sets for the events: when we make room for more data to be\nwritten, the pipe poll() routine will return both the POLLOUT _and_\nPOLLWRNORM bits.  Similarly for read.\n\nAnd most critically, when a pipe is released, that will potentially\nresult in POLLHUP|POLLERR (depending on whether it was the last reader\nor writer), not just the regular POLLIN|POLLOUT.\n\nThis bug showed itself as a hung gnome-screensaver-dialog process, stuck\nforever (or at least until it was poked by a signal or by being traced)\nin a poll() system call.\n\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "84cdf74e8096a10dd6acbb870dd404b92f07a756",
      "tree": "3cae46e567fab0649bb5696f4097d8072b0f9645",
      "parents": [
        "ba2dbf30df210b519bdd8d34ac2ecaaeeef34c44"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Jan 20 13:36:51 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 21:48:00 2011 +0000"
      },
      "message": "cifs: fix unaligned accesses in cifsConvertToUCS\n\nMove cifsConvertToUCS to cifs_unicode.c where all of the other unicode\nrelated functions live. Have it store mapped characters in \u0027temp\u0027 and\nthen use put_unaligned_le16 to copy it to the target buffer. Also fix\nthe comments to match kernel coding style.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nAcked-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nReviewed-by: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "ba2dbf30df210b519bdd8d34ac2ecaaeeef34c44",
      "tree": "6272ffcad087a8bcda2a00a061094f32a175aab4",
      "parents": [
        "26ec254869c0158ea8db6de83b7644e2d93cac2a"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Jan 20 13:36:51 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 21:47:57 2011 +0000"
      },
      "message": "cifs: clean up unaligned accesses in cifs_unicode.c\n\nMake sure we use get/put_unaligned routines when accessing wide\ncharacter strings.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nAcked-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nReviewed-by: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "26ec254869c0158ea8db6de83b7644e2d93cac2a",
      "tree": "c011b56ea2b519f8988b7965ab318e480a6c4fc9",
      "parents": [
        "12df83c9b901cfe8ca7a66fbe0effc6d873cbbb9"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Jan 20 13:36:51 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 21:47:54 2011 +0000"
      },
      "message": "cifs: fix unaligned access in check2ndT2 and coalesce_t2\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nAcked-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nReviewed-by: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "12df83c9b901cfe8ca7a66fbe0effc6d873cbbb9",
      "tree": "12f8fd9382257b6c8824258d90624cd6ce0be7a8",
      "parents": [
        "690c522fa5a62825af880775e3ef1e55755667b2"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Jan 20 13:36:51 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 21:46:33 2011 +0000"
      },
      "message": "cifs: clean up unaligned accesses in validate_t2\n\n...and clean up function to reduce indentation.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nAcked-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nReviewed-by: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "690c522fa5a62825af880775e3ef1e55755667b2",
      "tree": "ff953bba1050b54cc9be452a599ac1faf580c3b7",
      "parents": [
        "aae62fdb6b9a6605abdea7370c4a0e005e6c1cd7"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Jan 20 13:36:51 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 21:46:29 2011 +0000"
      },
      "message": "cifs: use get/put_unaligned functions to access ByteCount\n\nIt\u0027s possible that when we access the ByteCount that the alignment\nwill be off. Most CPUs deal with that transparently, but there\u0027s\nusually some performance impact. Some CPUs raise an exception on\nunaligned accesses.\n\nFix this by accessing the byte count using the get_unaligned and\nput_unaligned inlined functions. While we\u0027re at it, fix the types\nof some of the variables that end up getting returns from these\nfunctions.\n\nAcked-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "aae62fdb6b9a6605abdea7370c4a0e005e6c1cd7",
      "tree": "61f061006acfac97aa65872d2e2efbb5ad1c0919",
      "parents": [
        "c3dccf48174e50668b7c63544ac8c60c07a45978"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Jan 20 13:36:50 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 21:46:26 2011 +0000"
      },
      "message": "cifs: move time field in cifsInodeInfo\n\n...and remove length qualifiers from bools.\n\nBefore:\n\n\t/* size: 1176, cachelines: 19, members: 13 */\n\t/* sum members: 1165, holes: 2, sum holes: 11 */\n\t/* bit holes: 1, sum bit holes: 4 bits */\n\t/* last cacheline: 24 bytes */\n\nAfter:\n\n\t/* size: 1168, cachelines: 19, members: 13 */\n\t/* last cacheline: 16 bytes */\n\n...savings of 8 bytes per inode.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nReviewed-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "c3dccf48174e50668b7c63544ac8c60c07a45978",
      "tree": "9197f69ef539330373d609b334bfdd67fd4aa207",
      "parents": [
        "a70307eeeb25b89f6b2baf3cf3f0cef83c96ba12"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Jan 20 13:36:50 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 21:46:22 2011 +0000"
      },
      "message": "cifs: TCP_Server_Info diet\n\nRemove fields that are completely unused, and rearrange struct\naccording to recommendations by \"pahole\".\n\nBefore:\n\n\t/* size: 1112, cachelines: 18, members: 49 */\n\t/* sum members: 1086, holes: 8, sum holes: 26 */\n\t/* bit holes: 1, sum bit holes: 7 bits */\n\t/* last cacheline: 24 bytes */\n\nAfter:\n\n\t/* size: 1072, cachelines: 17, members: 42 */\n\t/* sum members: 1065, holes: 3, sum holes: 7 */\n\t/* last cacheline: 48 bytes */\n\n...savings of 40 bytes per struct on x86_64. 21 bytes by field removal,\nand 19 by reorganizing to eliminate holes.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "a70307eeeb25b89f6b2baf3cf3f0cef83c96ba12",
      "tree": "f96abbc5d22884fd4c15fdc834c769b7fcf790c4",
      "parents": [
        "7a6a19b17ab9103ec708c18befd28f2a3908d4c1"
      ],
      "author": {
        "name": "Pavel Shilovsky",
        "email": "piastryyy@gmail.com",
        "time": "Tue Dec 14 11:50:41 2010 +0300"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 21:42:29 2011 +0000"
      },
      "message": "CIFS: Implement cifs_strict_readv (try #4)\n\nRead from the cache if we have at least Level II oplock - otherwise\nread from the server. Add cifs_user_readv to let the client read into\niovec buffers.\n\nReviewed-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "7a6a19b17ab9103ec708c18befd28f2a3908d4c1",
      "tree": "3b781bf11b2a25c93ce20dbd80876e7e01c730e6",
      "parents": [
        "8be7e6ba142423e6ad98fed293c96f196f685229"
      ],
      "author": {
        "name": "Pavel Shilovsky",
        "email": "piastryyy@gmail.com",
        "time": "Tue Dec 14 11:29:51 2010 +0300"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 21:42:25 2011 +0000"
      },
      "message": "CIFS: Implement cifs_file_strict_mmap (try #2)\n\nInvalidate inode mapping if we don\u0027t have at least Level II oplock.\n\nReviewed-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "8be7e6ba142423e6ad98fed293c96f196f685229",
      "tree": "25bd7ce4aed4740082f0a472a8eed35127d9d61e",
      "parents": [
        "4f8ba8a0c095933dd54a2c281750c8a85b329b26"
      ],
      "author": {
        "name": "Pavel Shilovsky",
        "email": "piastryyy@gmail.com",
        "time": "Sun Dec 12 13:11:13 2010 +0300"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 21:42:21 2011 +0000"
      },
      "message": "CIFS: Implement cifs_strict_fsync\n\nInvalidate inode mapping if we don\u0027t have at least Level II oplock in\ncifs_strict_fsync. Also remove filemap_write_and_wait call from cifs_fsync\nbecause it is previously called from vfs_fsync_range. Add file operations\u0027\nstructures for strict cache mode.\n\nReviewed-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "4f8ba8a0c095933dd54a2c281750c8a85b329b26",
      "tree": "511da3f47059fc575a5af4128b76997f67f3a1fe",
      "parents": [
        "76dcc26f1d7f1c98c3f595379dcd9562f01bf38d"
      ],
      "author": {
        "name": "Pavel Shilovsky",
        "email": "piastryyy@gmail.com",
        "time": "Sun Nov 21 22:36:12 2010 +0300"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 21:42:17 2011 +0000"
      },
      "message": "CIFS: Make cifsFileInfo_put work with strict cache mode\n\nOn strict cache mode when we close the last file handle of the inode we\nshould set invalid_mapping flag on this inode to prevent data coherency\nproblem when we open it again but it has been modified on the server.\n\nReviewed-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "76dcc26f1d7f1c98c3f595379dcd9562f01bf38d",
      "tree": "98ff38d579542700ef79dd2e0b0f331524e7c1a6",
      "parents": [
        "7749981ec31aa40e28a1ef5687e46bc1aa278fae"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jan 11 07:24:24 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 18:08:36 2011 +0000"
      },
      "message": "cifs: mangle existing header for SMB_COM_NT_CANCEL\n\nThe NT_CANCEL command looks just like the original command, except for a\nfew small differences. The send_nt_cancel function however currently takes\na tcon, which we don\u0027t have in SendReceive and SendReceive2.\n\nInstead of \"respinning\" the entire header for an NT_CANCEL, just mangle\nthe existing header by replacing just the fields we need. This means we\ndon\u0027t need a tcon and allows us to call it from other places.\n\nReviewed-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\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": "7749981ec31aa40e28a1ef5687e46bc1aa278fae",
      "tree": "7c5f75916f55cfe5130e88534c48678155974adf",
      "parents": [
        "fda3594362184383e73f0a2a5fa5b38ac0e04fd8"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jan 11 07:24:23 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 18:07:55 2011 +0000"
      },
      "message": "cifs: remove code for setting timeouts on requests\n\nSince we don\u0027t time out individual requests anymore, remove the code\nthat we used to use for setting timeouts on different requests.\n\nReviewed-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\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": "fda3594362184383e73f0a2a5fa5b38ac0e04fd8",
      "tree": "c196d4a5211044760debd89eec810053f0025e45",
      "parents": [
        "c74093b694998d30105d9904686da5e3576497c4"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 18:06:34 2011 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 18:06:34 2011 +0000"
      },
      "message": "[CIFS] cifs: reconnect unresponsive servers\n\nIf the server isn\u0027t responding to echoes, we don\u0027t want to leave tasks\nhung waiting for it to reply. At that point, we\u0027ll want to reconnect\nso that soft mounts can return an error to userspace quickly.\n\nIf the client hasn\u0027t received a reply after a specified number of echo\nintervals, assume that the transport is down and attempt to reconnect\nthe socket.\n\nThe number of echo_intervals to wait before attempting to reconnect is\ntunable via a module parameter. Setting it to 0, means that the client\nwill never attempt to reconnect. The default is 5.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\n"
    },
    {
      "commit": "c74093b694998d30105d9904686da5e3576497c4",
      "tree": "2f4758b3d24ea2a1647a7402c8c49ffb515b388d",
      "parents": [
        "766fdbb57fdb1e53bc34c431103e95383d7f13ba"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jan 11 07:24:23 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 17:48:10 2011 +0000"
      },
      "message": "cifs: set up recurring workqueue job to do SMB echo requests\n\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": "766fdbb57fdb1e53bc34c431103e95383d7f13ba",
      "tree": "9e681dc6513441017603f90f45b9ffcdb5640719",
      "parents": [
        "a6827c184ea9f5452e4aaa7c799dd3c7cc9ba05e"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jan 11 07:24:21 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 17:46:44 2011 +0000"
      },
      "message": "cifs: add ability to send an echo request\n\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": "a6827c184ea9f5452e4aaa7c799dd3c7cc9ba05e",
      "tree": "21773e1cd69796f0d6d8ff6e4bf54e165b001891",
      "parents": [
        "2b84a36c5529da136d28b268e75268892d09869c"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jan 11 07:24:21 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 17:46:04 2011 +0000"
      },
      "message": "cifs: add cifs_call_async\n\nAdd a function that will send a request, and set up the mid for an\nasync reply.\n\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": "2b84a36c5529da136d28b268e75268892d09869c",
      "tree": "7977fad1c4a8ae8926184c00a3e7ccd30b398e5e",
      "parents": [
        "74dd92a881b62014ca3c754db6868e1f142f2fb9"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jan 11 07:24:21 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 17:43:59 2011 +0000"
      },
      "message": "cifs: allow for different handling of received response\n\nIn order to incorporate async requests, we need to allow for a more\ngeneral way to do things on receive, rather than just waking up a\nprocess.\n\nTurn the task pointer in the mid_q_entry into a callback function and a\ngeneric data pointer. When a response comes in, or the socket is\nreconnected, cifsd can call the callback function in order to wake up\nthe process.\n\nThe default is to just wake up the current process which should mean no\nchange in behavior for existing code.\n\nAlso, clean up the locking in cifs_reconnect. There doesn\u0027t seem to be\nany need to hold both the srv_mutex and GlobalMid_Lock when walking the\nlist of mids.\n\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": "74dd92a881b62014ca3c754db6868e1f142f2fb9",
      "tree": "c6e8c0ad9a722602d55511d11e8353f67bfb80f6",
      "parents": [
        "dad255b182363db1d1124458cd3fb0a4deac0d0f"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jan 11 07:24:02 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 17:41:02 2011 +0000"
      },
      "message": "cifs: clean up sync_mid_result\n\nMake it use a switch statement based on the value of the midStatus. If\nthe resp_buf is set, then MID_RESPONSE_RECEIVED is too.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "dad255b182363db1d1124458cd3fb0a4deac0d0f",
      "tree": "9b49fba2d6249200cce538b6a53bd22dd3a0aac8",
      "parents": [
        "0ade640e9cda805692dbf688f4bb69e94719275a"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jan 11 07:24:02 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 17:08:50 2011 +0000"
      },
      "message": "cifs: don\u0027t reconnect server when we don\u0027t get a response\n\nWe only want to force a reconnect to the server under very limited and\nspecific circumstances. Now that we have processes waiting indefinitely\nfor responses, we shouldn\u0027t reach this point unless a reconnect is\nalready in process. Thus, there\u0027s no reason to re-mark the server for\nreconnect here.\n\nReviewed-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nReviewed-by:  Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "0ade640e9cda805692dbf688f4bb69e94719275a",
      "tree": "79676b2553e1d7c6a49dd31fb455c0c3ef27b5a0",
      "parents": [
        "2fbc2f1729e785a7b2faf9d8d60926bb1ff62af0"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jan 11 07:24:02 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 20 17:07:49 2011 +0000"
      },
      "message": "cifs: wait indefinitely for responses\n\nThe client should not be timing out on individual SMB requests. Too much\nof the state between client and server is tied to the state of the\nsocket. If we time out requests and issue spurious disconnects then that\ncomprimises data integrity.\n\nInstead of doing this complicated dance where we try to decide how long\nto wait for a response for particular requests, have the client instead\nwait indefinitely for a response. Also, use a TASK_KILLABLE sleep here\nso that fatal signals will break out of this waiting.\n\nLater patches will add support for detecting dead peers and forcing\nreconnects based on that.\n\nReviewed-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nReviewed-by:  Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "2fbc2f1729e785a7b2faf9d8d60926bb1ff62af0",
      "tree": "4665c741041553259b626df604e617879440fb53",
      "parents": [
        "540b2e377797d8715469d408b887baa9310c5f3e"
      ],
      "author": {
        "name": "Shirish Pargaonkar",
        "email": "shirishpargaonkar@gmail.com",
        "time": "Mon Dec 06 14:56:46 2010 -0600"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Jan 19 21:25:58 2011 +0000"
      },
      "message": "cifs: Use mask of ACEs for SID Everyone to calculate all three permissions user, group, and other\n\nIf a DACL has entries for ACEs for SID Everyone and Authenticated Users,\nfactor in mask in respective entries during calculation of permissions\nfor all three, user, group, and other.\n\nhttp://technet.microsoft.com/en-us/library/bb463216.aspx\n\nSigned-off-by: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nReviewed-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "0da2a4ac33c291728d8be5bdb865467dcb078d13",
      "tree": "7f6af191fa9020a8d4bd0cdb828fd15fecd39411",
      "parents": [
        "c56eb8fb6dccb83d9fe62fd4dc00c834de9bc470"
      ],
      "author": {
        "name": "Fred Isaman",
        "email": "iisaman@netapp.com",
        "time": "Wed Jan 19 14:18:50 2011 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 19 15:37:49 2011 -0500"
      },
      "message": "NFS: fix handling of malloc failure during nfs_flush_multi()\n\nCleanup of the allocated list entries should not call\nput_nfs_open_context() on each entry, as the context will\nalways be NULL, causing an oops.\n\nSigned-off-by: Fred Isaman \u003ciisaman@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "540b2e377797d8715469d408b887baa9310c5f3e",
      "tree": "50f37a5ffc2bd27d70f59a9b592ba0d29e22bfda",
      "parents": [
        "1cd3508d5eab6a88fa643119cedd34b04215cffe"
      ],
      "author": {
        "name": "Shirish Pargaonkar",
        "email": "shirishpargaonkar@gmail.com",
        "time": "Tue Jan 18 22:33:54 2011 -0600"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Jan 19 18:11:18 2011 +0000"
      },
      "message": "cifs: Fix regression during share-level security mounts (Repost)\n\nNTLM response length was changed to 16 bytes instead of 24 bytes\nthat are sent in Tree Connection Request during share-level security\nshare mounts.  Revert it back to 24 bytes.\n\nReported-and-Tested-by: Grzegorz Ozanski \u003cgrzegorz.ozanski@intel.com\u003e\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Shirish Pargaonkar \u003cshirishpargaonkar@gmail.com\u003e\nAcked-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nCc: stable@kernel.org\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "1cd3508d5eab6a88fa643119cedd34b04215cffe",
      "tree": "484baf4852675eeded188d985acf03a1cc1edc89",
      "parents": [
        "053d50344568e5a4054266b44040297531125281"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Jan 19 17:53:44 2011 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Jan 19 17:53:44 2011 +0000"
      },
      "message": "[CIFS] Update cifs version number\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "053d50344568e5a4054266b44040297531125281",
      "tree": "9cb0ef0379e18235ad527b8f1ab265e252e99851",
      "parents": [
        "ddc8cf8fc718587a3788330bf4f32b379f08b250"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jan 11 07:24:02 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Jan 19 17:52:45 2011 +0000"
      },
      "message": "cifs: move mid result processing into common function\n\nReviewed-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nReviewed-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    }
  ],
  "next": "ddc8cf8fc718587a3788330bf4f32b379f08b250"
}
