)]}'
{
  "log": [
    {
      "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": "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": "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"
    },
    {
      "commit": "ddc8cf8fc718587a3788330bf4f32b379f08b250",
      "tree": "16d19dfa8f98404ab453e8bb2ef765ec4d67a467",
      "parents": [
        "8097531a5cb55c6472118da094dc88caf9be66ac"
      ],
      "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:42 2011 +0000"
      },
      "message": "cifs: move locked sections out of DeleteMidQEntry and AllocMidQEntry\n\nIn later patches, we\u0027re going to need to have finer-grained control\nover the addition and removal of these structs from the pending_mid_q\nand we\u0027ll need to be able to call the destructor while holding the\nspinlock. Move the locked sections out of both routines and into\nthe callers. Fix up current callers of DeleteMidQEntry to call a new\nroutine that dequeues the entry and then destroys it.\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": "8097531a5cb55c6472118da094dc88caf9be66ac",
      "tree": "77707f0bc5fe63e08844426ffe878a0191f4faef",
      "parents": [
        "c5797a945cac4c470f0113fc839c521aab0d799d"
      ],
      "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:38 2011 +0000"
      },
      "message": "cifs: clean up accesses to midCount\n\nIt\u0027s an atomic_t and the code accesses the \"counter\" field in it directly\ninstead of using atomic_read(). It also is sometimes accessed under a\nspinlock and sometimes not. Move it out of the spinlock since we don\u0027t need\nbelt-and-suspenders for something that\u0027s just informational.\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": "c5797a945cac4c470f0113fc839c521aab0d799d",
      "tree": "e54271a77265dce9ac6a10e5c6f15d9fe7886e4c",
      "parents": [
        "9d78315b03fc91228306db42edc533efa69cb518"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jan 11 07:24:01 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Jan 19 17:52:30 2011 +0000"
      },
      "message": "cifs: make wait_for_free_request take a TCP_Server_Info pointer\n\nThe cifsSesInfo pointer is only used to get at the server.\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": "9d78315b03fc91228306db42edc533efa69cb518",
      "tree": "a68f2e8c812309a361fd1fa7b2ceeff877d3133c",
      "parents": [
        "941b853d779de3298e39f1eb4e252984464eaea8"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jan 11 07:24:01 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Jan 19 17:52:30 2011 +0000"
      },
      "message": "cifs: no need to mark smb_ses_list as cifs_demultiplex_thread is exiting\n\nThe TCP_Server_Info is refcounted and every SMB session holds a\nreference to it. Thus, smb_ses_list is always going to be empty when\ncifsd is coming down. This is dead code.\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": "941b853d779de3298e39f1eb4e252984464eaea8",
      "tree": "a1e41bb06debf22349f010a1c9427c9b89bb79b4",
      "parents": [
        "12fed00de963433128b5366a21a55808fab2f756"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jan 11 07:24:01 2011 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Jan 19 17:52:29 2011 +0000"
      },
      "message": "cifs: don\u0027t fail writepages on -EAGAIN errors\n\nIf CIFSSMBWrite2 returns -EAGAIN, then the error should be considered\ntemporary. CIFS should retry the write instead of setting an error on\nthe mapping and returning.\n\nFor WB_SYNC_ALL, just retry the write immediately. In the WB_SYNC_NONE\ncase, call redirty_page_for_writeback on all of the pages that didn\u0027t\nget written out and then move on.\n\nAlso, fix up the handling of a short write with a successful return\ncode. MS-CIFS says that 0 bytes_written means ENOSPC or EFBIG. It\ndoesn\u0027t mention what a short, but non-zero write means, so for now\ntreat it as we would an -EAGAIN return.\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": "12fed00de963433128b5366a21a55808fab2f756",
      "tree": "2898690f5853027b70eda1bd7f3aeb78fe9af74d",
      "parents": [
        "c56eb8fb6dccb83d9fe62fd4dc00c834de9bc470"
      ],
      "author": {
        "name": "Pavel Shilovsky",
        "email": "piastryyy@gmail.com",
        "time": "Mon Jan 17 20:15:44 2011 +0300"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Jan 19 17:52:29 2011 +0000"
      },
      "message": "CIFS: Fix oplock break handling (try #2)\n\nWhen we get oplock break notification we should set the appropriate\nvalue of OplockLevel field in oplock break acknowledge according to\nthe oplock level held by the client in this time. As we only can have\nlevel II oplock or no oplock in the case of oplock break, we should be\naware only about clientCanCacheRead field in cifsInodeInfo structure.\n\nAlso fix bug connected with wrong interpretation of OplockLevel field\nduring oplock break notification processing.\n\nSigned-off-by: Pavel Shilovsky \u003cpiastryyy@gmail.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "24d9765fc18c7838ccdbb0d71fb706321d9b824c",
      "tree": "75875b69c1bb694d2ad5e1ab19f278bf7d3a8acc",
      "parents": [
        "23c3010808de86f21436eb822aacfa551bfc17e4"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Jan 18 14:49:08 2011 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Jan 18 14:49:08 2011 +0000"
      },
      "message": "GFS2: Fix error path in gfs2_lookup_by_inum()\n\nIn the (impossible, except if there is fs corruption) error path\nin gfs2_lookup_by_inum() if the call to gfs2_inode_refresh()\nfails, it was leaving the function by calling iput() rather\nthan iget_failed(). This would cause future lookups of the same\ninode to block forever.\n\nThis patch fixes the problem by moving the call to gfs2_inode_refresh()\ninto gfs2_inode_lookup() where iget_failed() is part of the error path\nalready. Also this cleans up some unreachable code and makes\ngfs2_set_iop() static.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "23c3010808de86f21436eb822aacfa551bfc17e4",
      "tree": "56b7176fdeb0dd453b88969dbecba7afcc39883f",
      "parents": [
        "e6f597a1425b5af64917be3448b29e2d5a585ac8"
      ],
      "author": {
        "name": "Benjamin Marzinski",
        "email": "bmarzins@redhat.com",
        "time": "Fri Jan 14 22:39:16 2011 -0600"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Jan 18 14:28:29 2011 +0000"
      },
      "message": "GFS2: remove iopen glocks from cache on failed deletes\n\nWhen a file gets deleted on GFS2, if a node can\u0027t get an exclusive lock on the\nfile\u0027s iopen glock, it punts on actually freeing up the space, because another\nnode is using the file.  When it does this, it needs to drop the iopen glock\nfrom its cache so that the other node can get an exclusive lock on it. Now,\ngfs2_delete_inode() sets GL_NOCACHE before dropping the shared lock on the\niopen glock in preparation for grabbing it in the exclusive state.  Since the\nnode needs the glock in the exclusive state, dropping the shared lock from the\ncache doesn\u0027t slow down the case where no other nodes are using the file.\n\nSigned-off-by: Benjamin Marzinski \u003cbmarzins@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n\n"
    },
    {
      "commit": "b89b12b46211d971d75e5ca8249817bc9e11c453",
      "tree": "3b846ec3daa6ce9e301668121b8c335b0d879470",
      "parents": [
        "26e6c910670171410577c7df2aebe94cef76e150"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 16 21:42:32 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 18 01:21:29 2011 -0500"
      },
      "message": "autofs4: clean -\u003ed_release() and autofs4_free_ino() up\n\nThe latter is called only when both ino and dentry are about to\nbe freed, so cleaning -\u003ed_fsdata and -\u003edentry is pointless.\n\nAcked-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "26e6c910670171410577c7df2aebe94cef76e150",
      "tree": "407ecb012b91efce80be76f0191b2efc43689b7f",
      "parents": [
        "5a37db302e698a83209eff22ca8f3fd05eb1d84b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 16 18:43:40 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 18 01:21:28 2011 -0500"
      },
      "message": "autofs4: split autofs4_init_ino()\n\nsplit init_ino into new_ino and clean_ino; the former is\nwhat used to be init_ino(NULL, sbi), the latter is for cases\nwhere we passed non-NULL ino.  Lose unused arguments.\n\nAcked-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5a37db302e698a83209eff22ca8f3fd05eb1d84b",
      "tree": "0ffef4412676c8b1814a2965b150168fcb9cfb03",
      "parents": [
        "726a5e0688fd344110d8f2979d87f243a4ba1a48"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 16 18:29:35 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 18 01:21:28 2011 -0500"
      },
      "message": "autofs4: mkdir and symlink always get a dentry that had passed lookup\n\n... so -\u003ed_fsdata will have been set up before we get there\n\nAcked-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "726a5e0688fd344110d8f2979d87f243a4ba1a48",
      "tree": "c554b40ff5619dfd491b4890e89c8ee9c3131efd",
      "parents": [
        "0bf71d4d005176f6b6587ba64a377f9798213f21"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 16 17:43:52 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 18 01:21:28 2011 -0500"
      },
      "message": "autofs4: autofs4_get_inode() doesn\u0027t need autofs_info * argument anymore\n\nAcked-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0bf71d4d005176f6b6587ba64a377f9798213f21",
      "tree": "4814d73e0201e92e7aca19b0a45f64b9a9644698",
      "parents": [
        "09f12c03fa699ce7d030c47add60577138927d4f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 16 17:39:15 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 18 01:21:28 2011 -0500"
      },
      "message": "autofs4: kill -\u003esize in autofs_info\n\nIt\u0027s used only to pass the length of symlink body to\nautofs4_get_inode() in autofs4_dir_symlink().  We can\nbloody well set inode-\u003ei_size in autofs4_dir_symlink()\ndirectly and be done with that.\n\nAcked-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "09f12c03fa699ce7d030c47add60577138927d4f",
      "tree": "b9ef52e197a38579799ba9b62f78bf0c35efa4cc",
      "parents": [
        "14a2f00bde7668fe18d1c8355d26c7c96961e1f7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 16 17:20:23 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 18 01:21:27 2011 -0500"
      },
      "message": "autofs4: pass mode to autofs4_get_inode() explicitly\n\nIn all cases we\u0027d set inf-\u003emode to know value just before\npassing it to autofs4_get_inode().  That kills the need\nto store it in autofs_info and pass it to autofs_init_ino()\n\nAcked-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "14a2f00bde7668fe18d1c8355d26c7c96961e1f7",
      "tree": "c14da20ae3c32474c52d49bec43e046b583b8d9d",
      "parents": [
        "292c5ee802e9b969b84ee671a5e3001d94230f5b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 16 17:13:33 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 18 01:21:27 2011 -0500"
      },
      "message": "autofs4: autofs4_mkroot() is not different from autofs4_init_ino()\n\nKill it.  Mind you, it\u0027s been an obfuscated call of autofs4_init_ino()\never since 2.3.99pre6-4...\n\nAcked-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "292c5ee802e9b969b84ee671a5e3001d94230f5b",
      "tree": "616b0a583d17c50aedbb87082943248333d63c2b",
      "parents": [
        "c0bcc9d55252012805300ca01b9b7a143b4daf85"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 00:47:38 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 18 01:21:27 2011 -0500"
      },
      "message": "autofs4: keep symlink body in inode-\u003ei_private\n\ngets rid of all -\u003efree()/-\u003eu.symlink machinery in autofs; we simply\nkeep symlink bodies in inode-\u003ei_private and free them in -\u003eevict_inode().\n\nAcked-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c0bcc9d55252012805300ca01b9b7a143b4daf85",
      "tree": "af83d0afe51156377032608242ae24ee0c24e860",
      "parents": [
        "8931221411f9ff950de8fd686dc5ab881394cb9a"
      ],
      "author": {
        "name": "Ian Kent",
        "email": "raven@themaw.net",
        "time": "Tue Jan 18 12:06:15 2011 +0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 18 01:21:27 2011 -0500"
      },
      "message": "autofs4 - fix debug print in autofs4_lookup()\n\noz_mode isn\u0027t defined any more, use autofs4_oz_mode(sbi) instead.\n\nSigned-off-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8931221411f9ff950de8fd686dc5ab881394cb9a",
      "tree": "63d97668bae62d1034002cc7778adde2aa18b346",
      "parents": [
        "c14cc63a63e94d490ac6517a555113c30d420db4"
      ],
      "author": {
        "name": "Ian Kent",
        "email": "raven@themaw.net",
        "time": "Tue Jan 18 12:06:10 2011 +0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 18 01:21:26 2011 -0500"
      },
      "message": "vfs - fix dentry ref count in do_lookup()\n\nThere is a ref count problem in fs/namei.c:do_lookup().\n\nWhen walking in ref-walk mode, if follow_managed() returns a fail we\nneed to drop dentry and possibly vfsmount.  Clean up properly,\nas we do in the other caller of follow_managed().\n\nSigned-off-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c14cc63a63e94d490ac6517a555113c30d420db4",
      "tree": "4769517c39eedbbeaedc7a73636d7c65c0de5a38",
      "parents": [
        "6845a44a314c0c626549de373131bf108f9cc1f1"
      ],
      "author": {
        "name": "Ian Kent",
        "email": "raven@themaw.net",
        "time": "Tue Jan 18 12:06:04 2011 +0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 18 01:21:26 2011 -0500"
      },
      "message": "autofs4 - fix get_next_positive_dentry()\n\nThe initialization condition in fs/autofs4/expire.c:get_next_positive_dentry()\nappears to be incorrect. If prev \u003d\u003d NULL I believe that root should be\nreturned.\n\nFurther down, at the current dentry check for it being simple_positive()\nit looks like the d_lock for dentry p should be dropped instead of dentry\nret, otherwise when p is assinged to ret we end up with no lock on p and\na lost lock on ret, which leads to a deadlock.\n\nSigned-off-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "eee2a817df7c5a6e569f353f8be78cc1b3604bb6",
      "tree": "f721beb4712c732702d3383d3c6a52da8b5bbb20",
      "parents": [
        "83896fb5e51594281720d145164f866ba769abd5",
        "acce952b0263825da32cf10489413dec78053347"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 14:43:43 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 14:43:43 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: (25 commits)\n  Btrfs: forced readonly mounts on errors\n  btrfs: Require CAP_SYS_ADMIN for filesystem rebalance\n  Btrfs: don\u0027t warn if we get ENOSPC in btrfs_block_rsv_check\n  btrfs: Fix memory leak in btrfs_read_fs_root_no_radix()\n  btrfs: check NULL or not\n  btrfs: Don\u0027t pass NULL ptr to func that may deref it.\n  btrfs: mount failure return value fix\n  btrfs: Mem leak in btrfs_get_acl()\n  btrfs: fix wrong free space information of btrfs\n  btrfs: make the chunk allocator utilize the devices better\n  btrfs: restructure find_free_dev_extent()\n  btrfs: fix wrong calculation of stripe size\n  btrfs: try to reclaim some space when chunk allocation fails\n  btrfs: fix wrong data space statistics\n  fs/btrfs: Fix build of ctree\n  Btrfs: fix off by one while setting block groups readonly\n  Btrfs: Add BTRFS_IOC_SUBVOL_GETFLAGS/SETFLAGS ioctls\n  Btrfs: Add readonly snapshots support\n  Btrfs: Refactor btrfs_ioctl_snap_create()\n  btrfs: Extract duplicate decompress code\n  ...\n"
    },
    {
      "commit": "9e8a462a0141b12e22c4a2f0c12e0542770401f0",
      "tree": "c0e32e5877f099b43e75afc5faecc944207dd51c",
      "parents": [
        "cf78859f520f8275318f47d7864f4459d940cb6b",
        "24562486be76cf223b8d911f45e1d26eb3364b13"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 12:39:57 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 12:39:57 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6:\n  ecryptfs: remove unnecessary decrypt when extending a file\n  ecryptfs: Fix ecryptfs_printk() size_t warnings\n  fs/ecryptfs: Add printf format/argument verification and fix fallout\n  ecryptfs: fixed testing of file descriptor flags\n  ecryptfs: test lower_file pointer when lower_file_mutex is locked\n  ecryptfs: missing initialization of the superblock \u0027magic\u0027 field\n  ecryptfs: moved ECRYPTFS_SUPER_MAGIC definition to linux/magic.h\n  ecryptfs: fix truncation error in ecryptfs_read_update_atime\n"
    },
    {
      "commit": "cf78859f520f8275318f47d7864f4459d940cb6b",
      "tree": "43568b265a89800274b782c9c0506c486525e4cb",
      "parents": [
        "8c34482c17d8fd07966328c7b1cfc35ee290bd1c"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Mon Jan 17 21:21:14 2011 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 12:39:07 2011 -0800"
      },
      "message": "xfs: Do not name variables \"panic\"\n\nOn platforms that call panic() inside their BUG() macro (m68k/sun3, and\nall platforms that don\u0027t set HAVE_ARCH_BUG), compilation fails with:\n\n| fs/xfs/support/debug.c: In function ‘xfs_cmn_err’:\n| fs/xfs/support/debug.c:92: error: called object ‘panic’ is not a function\n\nas the local variable \"panic\" conflicts with the \"panic()\" function.\nRename the local variable to resolve this.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "acce952b0263825da32cf10489413dec78053347",
      "tree": "d934881f247484d7b6917bebc40828600bb6b76c",
      "parents": [
        "6f88a4403def422bd8e276ddf6863d6ac71435d2"
      ],
      "author": {
        "name": "liubo",
        "email": "liubo2009@cn.fujitsu.com",
        "time": "Thu Jan 06 19:30:25 2011 +0800"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Jan 17 15:13:08 2011 -0500"
      },
      "message": "Btrfs: forced readonly mounts on errors\n\nThis patch comes from \"Forced readonly mounts on errors\" ideas.\n\nAs we know, this is the first step in being more fault tolerant of disk\ncorruptions instead of just using BUG() statements.\n\nThe major content:\n- add a framework for generating errors that should result in filesystems\n  going readonly.\n- keep FS state in disk super block.\n- make sure that all of resource will be freed and released at umount time.\n- make sure that fter FS is forced readonly on error, there will be no more\n  disk change before FS is corrected. For this, we should stop write operation.\n\nAfter this patch is applied, the conversion from BUG() to such a framework can\nhappen incrementally.\n\nSigned-off-by: Liu Bo \u003cliubo2009@cn.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "1a47f7a84ef386c1f7f55f669598bd9894ceb73a",
      "tree": "8105fcee8bdbacb06b00cc27e90b631be2290dbb",
      "parents": [
        "ab2020f2f11fc7fb81e6c71298b0830d85412011",
        "bd7633195581c7665ce9dd80c665ec93466d1b64"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 11:17:51 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 11:17:51 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: add cruid\u003d mount option\n  cifs: cFYI the entire error code in map_smb_to_linux_error\n"
    },
    {
      "commit": "ab2020f2f11fc7fb81e6c71298b0830d85412011",
      "tree": "c9a6342063461dcf31278d65585bca73bdda4a84",
      "parents": [
        "235646a486d10891bd86af28d8eac75d9f22bd2d",
        "154bf89f5e3e3dc59666926f27ca4a0866f39157"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 11:15:30 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 11:15:30 2011 -0800"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (59 commits)\n  mtd: mtdpart: disallow reading OOB past the end of the partition\n  mtd: pxa3xx_nand: NULL dereference in pxa3xx_nand_probe\n  UBI: use mtd-\u003ewritebufsize to set minimal I/O unit size\n  mtd: initialize writebufsize in the MTD object of a partition\n  mtd: onenand: add mtd-\u003ewritebufsize initialization\n  mtd: nand: add mtd-\u003ewritebufsize initialization\n  mtd: cfi: add writebufsize initialization\n  mtd: add writebufsize field to mtd_info struct\n  mtd: OneNAND: OMAP2/3: prevent regulator sleeping while OneNAND is in use\n  mtd: OneNAND: add enable / disable methods to onenand_chip\n  mtd: m25p80: Fix JEDEC ID for AT26DF321\n  mtd: txx9ndfmc: limit transfer bytes to 512 (ECC provides 6 bytes max)\n  mtd: cfi_cmdset_0002: add support for Samsung K8D3x16UxC NOR chips\n  mtd: cfi_cmdset_0002: add support for Samsung K8D6x16UxM NOR chips\n  mtd: nand: ams-delta: drop omap_read/write, use ioremap\n  mtd: m25p80: add debugging trace in sst_write\n  mtd: nand: ams-delta: select for built-in by default\n  mtd: OneNAND: lighten scary initial bad block messages\n  mtd: OneNAND: OMAP2/3: add support for command line partitioning\n  mtd: nand: rearrange ONFI revision checking, add ONFI 2.3\n  ...\n\nFix up trivial conflict in drivers/mtd/Kconfig as per DavidW.\n"
    },
    {
      "commit": "24562486be76cf223b8d911f45e1d26eb3364b13",
      "tree": "7ce33c533c12b4dc66d8afd836c7996d5769e325",
      "parents": [
        "f24b38874e1e37bb70291bbc4c5c3c13f5f9dac8"
      ],
      "author": {
        "name": "Frank Swiderski",
        "email": "fes@chromium.org",
        "time": "Mon Nov 15 10:43:22 2010 -0800"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Jan 17 13:01:25 2011 -0600"
      },
      "message": "ecryptfs: remove unnecessary decrypt when extending a file\n\nRemoves an unecessary page decrypt from ecryptfs_begin_write when the\npage is beyond the current file size. Previously, the call to\necryptfs_decrypt_page would result in a read of 0 bytes, but still\nattempt to decrypt an entire page. This patch detects that case and\nmerely zeros the page before marking it up-to-date.\n\nSigned-off-by: Frank Swiderski \u003cfes@chromium.org\u003e\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "f24b38874e1e37bb70291bbc4c5c3c13f5f9dac8",
      "tree": "f1e41cafb5205403961e98728ade5adfaf5b33a7",
      "parents": [
        "888d57bbc91ebd031451d4ab1c669baee826a06c"
      ],
      "author": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Nov 15 17:36:38 2010 -0600"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Jan 17 13:01:24 2011 -0600"
      },
      "message": "ecryptfs: Fix ecryptfs_printk() size_t warnings\n\nCommit cb55d21f6fa19d8c6c2680d90317ce88c1f57269 revealed a number of\nmissing \u0027z\u0027 length modifiers in calls to ecryptfs_printk() when\nprinting variables of type size_t. This patch fixes those compiler\nwarnings.\n\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "888d57bbc91ebd031451d4ab1c669baee826a06c",
      "tree": "a446e3d6f7134a50d5118702fadba04ab5ee3c14",
      "parents": [
        "0abe1169470571c473ee720c35fe5b3481c46c46"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Nov 10 15:46:16 2010 -0800"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Jan 17 13:01:23 2011 -0600"
      },
      "message": "fs/ecryptfs: Add printf format/argument verification and fix fallout\n\nAdd __attribute__((format... to __ecryptfs_printk\nMake formats and arguments match.\nAdd casts to (unsigned long long) for %llu.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\n[tyhicks: 80 columns cleanup and fixed typo]\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "0abe1169470571c473ee720c35fe5b3481c46c46",
      "tree": "3261e72681db07a04a56f31af0edb536b9b7a5e2",
      "parents": [
        "27992890b02d340198a3a22fc210d13684a41564"
      ],
      "author": {
        "name": "Roberto Sassu",
        "email": "roberto.sassu@polito.it",
        "time": "Wed Nov 03 11:11:34 2010 +0100"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Jan 17 11:24:43 2011 -0600"
      },
      "message": "ecryptfs: fixed testing of file descriptor flags\n\nThis patch replaces the check (lower_file-\u003ef_flags \u0026 O_RDONLY) with\n((lower_file \u0026 O_ACCMODE) \u003d\u003d O_RDONLY).\n\nSigned-off-by: Roberto Sassu \u003croberto.sassu@polito.it\u003e\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "27992890b02d340198a3a22fc210d13684a41564",
      "tree": "7ece682994e705791c2c96a02cb139c1f42b0239",
      "parents": [
        "070baa51286e5cf59dde6be52fa23647ffb5d32d"
      ],
      "author": {
        "name": "Roberto Sassu",
        "email": "roberto.sassu@polito.it",
        "time": "Wed Nov 03 11:11:28 2010 +0100"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Jan 17 11:24:42 2011 -0600"
      },
      "message": "ecryptfs: test lower_file pointer when lower_file_mutex is locked\n\nThis patch prevents the lower_file pointer in the \u0027ecryptfs_inode_info\u0027\nstructure to be checked when the mutex \u0027lower_file_mutex\u0027 is not locked.\n\nSigned-off-by: Roberto Sassu \u003croberto.sassu@polito.it\u003e\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "070baa51286e5cf59dde6be52fa23647ffb5d32d",
      "tree": "ea0b6bc104a0717f1ae37ddff7620f9cd31a50a6",
      "parents": [
        "2a8652f4e0d11ee27b1d2870c600fd1300661a6e"
      ],
      "author": {
        "name": "Roberto Sassu",
        "email": "roberto.sassu@polito.it",
        "time": "Wed Nov 03 11:11:22 2010 +0100"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Jan 17 11:23:01 2011 -0600"
      },
      "message": "ecryptfs: missing initialization of the superblock \u0027magic\u0027 field\n\nThis patch initializes the \u0027magic\u0027 field of ecryptfs filesystems to\nECRYPTFS_SUPER_MAGIC.\n\nSigned-off-by: Roberto Sassu \u003croberto.sassu@polito.it\u003e\n[tyhicks: merge with 66cb76666d69]\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "2a8652f4e0d11ee27b1d2870c600fd1300661a6e",
      "tree": "f7ee0d8614b60a8733bcf0cfba8ac94776925ed5",
      "parents": [
        "38a708d7759476318d0eec64af174513032ec67a"
      ],
      "author": {
        "name": "Roberto Sassu",
        "email": "roberto.sassu@polito.it",
        "time": "Wed Nov 03 11:11:15 2010 +0100"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Jan 17 10:44:31 2011 -0600"
      },
      "message": "ecryptfs: moved ECRYPTFS_SUPER_MAGIC definition to linux/magic.h\n\nThe definition of ECRYPTFS_SUPER_MAGIC has been moved to the include\nfile \u0027linux/magic.h\u0027 to become available to other kernel subsystems.\n\nSigned-off-by: Roberto Sassu \u003croberto.sassu@polito.it\u003e\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "38a708d7759476318d0eec64af174513032ec67a",
      "tree": "e3cd94359191e72c26ea6a0ecc37c1933b9dcc71",
      "parents": [
        "e78bf5e6cbe837daa6ab628a5f679548742994d3"
      ],
      "author": {
        "name": "Edward Shishkin",
        "email": "edward.shishkin@gmail.com",
        "time": "Sat Oct 30 00:11:50 2010 +0200"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Jan 17 10:44:30 2011 -0600"
      },
      "message": "ecryptfs: fix truncation error in ecryptfs_read_update_atime\n\nThis is similar to the bug found in direct-io not so long ago.\n\nFix up truncation (ssize_t-\u003eint).  This only matters with \u003e2G\nreads/writes, which the kernel doesn\u0027t permit.\n\nSigned-off-by: Edward Shishkin \u003cedward.shishkin@gmail.com\u003e\nCc: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Eric Sandeen \u003cesandeen@redhat.com\u003e\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "ecf5632dd189ab4c366cef853d6e5fe7adfe52e5",
      "tree": "947ae7edf45415753e960d53957ae3a4121fb3b8",
      "parents": [
        "27eaa1c90c608aa907336c2743d5ecf35c469440"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Sun Jan 16 23:28:17 2011 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 08:21:42 2011 -0500"
      },
      "message": "fs: fix address space warnings in ioctl_fiemap()\n\nThe fi_extents_start field of struct fiemap_extent_info is a\nuser pointer but was not marked as __user. This makes sparse\nemit following warnings:\n\n  CHECK   fs/ioctl.c\nfs/ioctl.c:114:26: warning: incorrect type in argument 1 (different address spaces)\nfs/ioctl.c:114:26:    expected void [noderef] \u003casn:1\u003e*dst\nfs/ioctl.c:114:26:    got struct fiemap_extent *[assigned] dest\nfs/ioctl.c:202:14: warning: incorrect type in argument 1 (different address spaces)\nfs/ioctl.c:202:14:    expected void const volatile [noderef] \u003casn:1\u003e*\u003cnoident\u003e\nfs/ioctl.c:202:14:    got struct fiemap_extent *[assigned] fi_extents_start\nfs/ioctl.c:212:27: warning: incorrect type in argument 1 (different address spaces)\nfs/ioctl.c:212:27:    expected void [noderef] \u003casn:1\u003e*dst\nfs/ioctl.c:212:27:    got char *\u003cnoident\u003e\n\nAlso add \u0027ufiemap\u0027 variable to eliminate unnecessary casts.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "27eaa1c90c608aa907336c2743d5ecf35c469440",
      "tree": "33c8e07c5935792fc755ce6ddea660fcd84d65f1",
      "parents": [
        "274052ef0bac011249925f6616d147b1491fc601"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Tue Dec 14 00:06:25 2010 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 05:12:44 2011 -0500"
      },
      "message": "aio: check return value of create_workqueue()\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "274052ef0bac011249925f6616d147b1491fc601",
      "tree": "c94e7269bf7d3b7f16ad33789c5730a8e0445e44",
      "parents": [
        "e0bb6bda43e20aa1db5774c73a519cd52c463a55"
      ],
      "author": {
        "name": "Dr. David Alan Gilbert",
        "email": "linux@treblig.org",
        "time": "Mon Dec 13 17:09:52 2010 +0000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 05:11:37 2011 -0500"
      },
      "message": "hpfs_setattr error case avoids unlock_kernel\n\nThis fixed a case that \u0027sparse\u0027 spotted where hpfs_setattr has an error return\nthat didn\u0027t go through it\u0027s path that unlocks.\n\nThis is against git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git\nversion 6313e3c21743cc88bb5bd8aa72948ee1e83937b6.\n\nBuild tested only, I don\u0027t have an hpfs file system to test.\n\nDave\n\nSigned-off-by: Dr. David Alan Gilbert \u003clinux@treblig.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e0bb6bda43e20aa1db5774c73a519cd52c463a55",
      "tree": "84af59ed571cda0a3b023caf50b2b538ac5c2554",
      "parents": [
        "974d879e8070bbb132bd4e79ef314703853d0b82"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Mon Dec 27 01:41:54 2010 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 04:54:38 2011 -0500"
      },
      "message": "compat: copy missing fields in compat_statfs64 to user\n\nf_flags and f_spare fields were not copied to userspace when\ncompat_sys_[f]statfs64 called.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "974d879e8070bbb132bd4e79ef314703853d0b82",
      "tree": "34dc5c46b4eccf4b6fe1fb96fb5fb6b457e0c50e",
      "parents": [
        "6a5640f10255a8941a3a57396dda20af7a5c9a9e"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Mon Dec 27 01:41:53 2010 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 04:54:38 2011 -0500"
      },
      "message": "compat: update comment of compat statfs syscalls\n\nThe commit 7ed1ee6118ae (\"Take statfs variants to fs/statfs.c\")\nseparates out statfs syscalls from fs/open.c. Thus the comment\nshould be changed also.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Jiri Kosina \u003ctrivial@kernel.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6a5640f10255a8941a3a57396dda20af7a5c9a9e",
      "tree": "eba96cfb1f64df42f7748a025536fa9d5db754e9",
      "parents": [
        "16ebe911eba8afa88879213dc4388f2dd701561e"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Mon Dec 27 01:41:52 2010 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 04:54:38 2011 -0500"
      },
      "message": "compat: remove unnecessary assignment in compat_rw_copy_check_uvector()\n\n*@ret_pointer is initialized to @fast_pointer thus the assignment is\nredundant.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "16ebe911eba8afa88879213dc4388f2dd701561e",
      "tree": "e33f5ac63c4e3f87647f06760c1fca66db64413d",
      "parents": [
        "3bc0ba4305fa99b32caac8c60df84a2f14fce228"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Sun Jan 02 14:44:00 2011 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 03:30:37 2011 -0500"
      },
      "message": "fs: FS_POSIX_ACL does not depend on BLOCK\n\n- Fix a kconfig unmet dependency warning.\n- Remove the comment that identifies which filesystems use POSIX ACL\n  utility routines.\n- Move the FS_POSIX_ACL symbol outside of the BLOCK symbol if/endif block\n  because its functions do not depend on BLOCK and some of the filesystems\n  that use it do not depend on BLOCK.\n\nwarning: (GENERIC_ACL \u0026\u0026 JFFS2_FS_POSIX_ACL \u0026\u0026 NFSD_V4 \u0026\u0026 NFS_ACL_SUPPORT \u0026\u0026 9P_FS_POSIX_ACL) selects FS_POSIX_ACL which has unmet direct dependencies (BLOCK)\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3bc0ba4305fa99b32caac8c60df84a2f14fce228",
      "tree": "052d07f14002de3b643048668ed68241335fc786",
      "parents": [
        "c2b3e74b78b24cb367289a75a2bd30e569e56e0e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 13 19:38:09 2010 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 03:26:27 2011 -0500"
      },
      "message": "fs: Remove unlikely() from fget_light()\n\nThere\u0027s an unlikely() in fget_light() that assumes the file ref count\nwill be 1. Running the annotate branch profiler on a desktop that is\nperforming daily tasks (running firefox, evolution, xchat and is also part\nof a distcc farm), it shows that the ref count is not 1 that often.\n\n correct incorrect      %    Function                  File              Line\n ------- ---------      -    --------                  ----              ----\n1035099358 6209599193  85    fget_light              file_table.c         315\n\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2fe17c1075836b66678ed2a305fd09b6773883aa",
      "tree": "eb5287be8138686682eef9622872cfc7657e0664",
      "parents": [
        "64c23e86873ee410554d6d1c76b60da47025e96f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Jan 14 13:07:43 2011 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 02:25:31 2011 -0500"
      },
      "message": "fallocate should be a file operation\n\nCurrently all filesystems except XFS implement fallocate asynchronously,\nwhile XFS forced a commit.  Both of these are suboptimal - in case of O_SYNC\nI/O we really want our allocation on disk, especially for the !KEEP_SIZE\ncase where we actually grow the file with user-visible zeroes.  On the\nother hand always commiting the transaction is a bad idea for fast-path\nuses of fallocate like for example in recent Samba versions.   Given\nthat block allocation is a data plane operation anyway change it from\nan inode operation to a file operation so that we have the file structure\navailable that lets us check for O_SYNC.\n\nThis also includes moving the code around for a few of the filesystems,\nand remove the already unnedded S_ISDIR checks given that we only wire\nup fallocate for regular files.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "64c23e86873ee410554d6d1c76b60da47025e96f",
      "tree": "b30c5ff8782ebfdec6956d7834f796731fd3a1d4",
      "parents": [
        "eb745dbccce56f1bbe3f80b95ad2a325145171c2"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Jan 14 13:07:30 2011 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 02:25:30 2011 -0500"
      },
      "message": "make the feature checks in -\u003efallocate future proof\n\nInstead of various home grown checks that might need updates for new\nflags just check for any bit outside the mask of the features supported\nby the filesystem.  This makes the check future proof for any newly\nadded flag.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b1e75df45a3d8a490b8648e44632debc5eea04b1",
      "tree": "4ee3aaa516675ca9715d673c4399f1b517d4a690",
      "parents": [
        "15f9a3f3e199647fe0cac19302c5033cf031372d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 01:47:59 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 01:47:59 2011 -0500"
      },
      "message": "tidy up around finish_automount()\n\ndo_add_mount() and mnt_clear_expiry() are not needed outside of\nnamespace.c anymore, now that namei has finish_automount() to\nuse.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "15f9a3f3e199647fe0cac19302c5033cf031372d",
      "tree": "38a39510439f2913dbdfcfd2de4ffacc8214875d",
      "parents": [
        "19a167af7c97248ec646552ebc9140bc6aa3552a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 01:41:58 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 01:41:58 2011 -0500"
      },
      "message": "don\u0027t drop newmnt on error in do_add_mount()\n\nThat gets rid of the kludge in finish_automount() - we need\nto keep refcount on the vfsmount as-is until we evict it from\nexpiry list.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "19a167af7c97248ec646552ebc9140bc6aa3552a",
      "tree": "a521153c80fa6e40b2b4983c5bba21c2e96d1864",
      "parents": [
        "e78bf5e6cbe837daa6ab628a5f679548742994d3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 01:35:23 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 01:35:23 2011 -0500"
      },
      "message": "Take the completion of automount into new helper\n\n... and shift it from namei.c to namespace.c\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8a335bc631ac9c43675821580c26ebf95a3044ba",
      "tree": "e02cf3c2394fe4e07d8e786ff9ba049005b1e928",
      "parents": [
        "115374211961a503675730603e3d48d95d41736c",
        "7b1fff7e4fdf2805fce7afd6247912588d72d604"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 16 15:06:43 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 16 15:06:43 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/nab/scsi-post-merge-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/nab/scsi-post-merge-2.6:\n  ocfs2: Make OCFS2_FS depend on CONFIGFS_FS\n  dlm: Make DLM depend on CONFIGFS_FS\n  net: Make NETCONSOLE_DYNAMIC depend on CONFIGFS_FS\n  configfs: change depends -\u003e select SYSFS\n  [SCSI] sd,sr: kill compat SDEV_MEDIA_CHANGE event\n  [SCSI] sd: implement sd_check_events()\n"
    },
    {
      "commit": "7e3d0eb0b028ed9e9384e6afcae2f22993bbdf25",
      "tree": "37bbffdfc6d380d04c294fa43d75697694f44d4d",
      "parents": [
        "f8b18087fd3277e424a24e13ce0edf30abe97ce0"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 16 16:32:11 2011 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 16 14:59:45 2011 -0800"
      },
      "message": "VFS: Fix UP compile error in fs/namespace.c\n\nmnt_longterm is there only on SMP\n\nReported-and-tested-by: Joachim Eastwood \u003cmanabian@gmail.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7b1fff7e4fdf2805fce7afd6247912588d72d604",
      "tree": "3dd87024ca113e7bae839c5f0b77ae78ab41b627",
      "parents": [
        "86c747d2a4f028fe2fdf091c3a81d0e187827682"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Sun Jan 16 21:16:07 2011 +0000"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Sun Jan 16 21:22:40 2011 +0000"
      },
      "message": "ocfs2: Make OCFS2_FS depend on CONFIGFS_FS\n\nThis patch fixes the following kconfig error after changing\nCONFIGFS_FS -\u003e select SYSFS:\n\nfs/sysfs/Kconfig:1:error: recursive dependency detected!\nfs/sysfs/Kconfig:1:\tsymbol SYSFS is selected by CONFIGFS_FS\nfs/configfs/Kconfig:1:\tsymbol CONFIGFS_FS is selected by OCFS2_FS\nfs/ocfs2/Kconfig:1:\tsymbol OCFS2_FS depends on SYSFS\n\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nCc: Joel Becker \u003cjlbec@evilplan.org\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "86c747d2a4f028fe2fdf091c3a81d0e187827682",
      "tree": "1c2017be7a3e3877868b17914688991625bccbe9",
      "parents": [
        "d9f9ab51e55e36379773752ffeaac677b080d469"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Sun Jan 16 21:14:52 2011 +0000"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Sun Jan 16 21:22:37 2011 +0000"
      },
      "message": "dlm: Make DLM depend on CONFIGFS_FS\n\nThis patch fixes the following kconfig error after changing\nCONFIGFS_FS -\u003e select SYSFS:\n\nfs/sysfs/Kconfig:1:error: recursive dependency detected!\nfs/sysfs/Kconfig:1:\tsymbol SYSFS is selected by CONFIGFS_FS\nfs/configfs/Kconfig:1:\tsymbol CONFIGFS_FS is selected by DLM\nfs/dlm/Kconfig:1:\tsymbol DLM depends on SYSFS\n\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nCc: Joel Becker \u003cjlbec@evilplan.org\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "e205117285d6035af135c9d6c34a30ee6b8d1f2e",
      "tree": "ec2bb982058fe36ec2c8eb19e3fc11af3e8b17aa",
      "parents": [
        "f652f6c5b7cfdf139f4155d78f397e99ae1c4acc"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Sun Jan 16 21:11:25 2011 +0000"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Sun Jan 16 21:22:29 2011 +0000"
      },
      "message": "configfs: change depends -\u003e select SYSFS\n\nThis patch changes configfs to select SYSFS to fix the following:\n\nwarning: (TARGET_CORE \u0026\u0026 GFS2_FS) selects CONFIGFS_FS which has unmet direct dependencies (SYSFS)\n\nReported-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nAcked-by: Joel Becker \u003cjlbec@evilplan.org\u003e\n"
    },
    {
      "commit": "f8b18087fd3277e424a24e13ce0edf30abe97ce0",
      "tree": "1e37e728fa3eff37e2f75ebf9d3446bac13f9f84",
      "parents": [
        "5520ebd308927a3beba599a2b68fa8c52f41f43b"
      ],
      "author": {
        "name": "Stefan Schmidt",
        "email": "stefan@datenfreihafen.org",
        "time": "Wed Jan 12 10:30:42 2011 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 16 12:59:42 2011 -0800"
      },
      "message": "fs/btrfs: Fix build of ctree\n\nFix the build failure in some configurations:\n\n     CC [M]  fs/btrfs/ctree.o\n  In file included from fs/btrfs/ctree.c:21:0:\n  fs/btrfs/ctree.h:1003:17: error: field \u0027super_kobj\u0027 has incomplete type\n  fs/btrfs/ctree.h:1074:17: error: field \u0027root_kobj\u0027 has incomplete type\n  make[2]: *** [fs/btrfs/ctree.o] Error 1\n  make[1]: *** [fs/btrfs] Error 2\n  make: *** [fs] Error 2\n\ncaused by commit 57cc7215b708 (\"headers: kobject.h redux\")\n\nWe need to include kobject.h here.\n\nReported-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nFix-suggested-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Stefan Schmidt \u003cstefan@datenfreihafen.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5520ebd308927a3beba599a2b68fa8c52f41f43b",
      "tree": "b0395c15af7d096e6e6172a9d47bb7a8dec6add0",
      "parents": [
        "d3072e6a7e9bf7aca200370317f8e297be360b17",
        "01a678c5a2f41663b8faf03d17e2bbdbf44158a9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 16 12:11:13 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 16 12:11:13 2011 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus:\n  Squashfs: simplify CONFIG_SQUASHFS_LZO handling\n  Squashfs: move squashfs_i() definition from squashfs.h\n  Squashfs: get rid of default n in Kconfig\n  Squashfs: add missing check in zlib_wrapper\n  Squashfs: remove unnecessary variable in zlib_wrapper\n  Squashfs: Add XZ compression configuration option\n  Squashfs: add XZ compression support\n"
    },
    {
      "commit": "f8206b925fb0eba3a11839419be118b09105d7b1",
      "tree": "5d41b356a043da09c816ed80bd79d1ea8b2b47e5",
      "parents": [
        "1b59be2a6cdcb5a12e18d8315c07c94a624de48f",
        "f03c65993b98eeb909a4012ce7833c5857d74755"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 16 11:31:50 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 16 11:31:50 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (23 commits)\n  sanitize vfsmount refcounting changes\n  fix old umount_tree() breakage\n  autofs4: Merge the remaining dentry ops tables\n  Unexport do_add_mount() and add in follow_automount(), not -\u003ed_automount()\n  Allow d_manage() to be used in RCU-walk mode\n  Remove a further kludge from __do_follow_link()\n  autofs4: Bump version\n  autofs4: Add v4 pseudo direct mount support\n  autofs4: Fix wait validation\n  autofs4: Clean up autofs4_free_ino()\n  autofs4: Clean up dentry operations\n  autofs4: Clean up inode operations\n  autofs4: Remove unused code\n  autofs4: Add d_manage() dentry operation\n  autofs4: Add d_automount() dentry operation\n  Remove the automount through follow_link() kludge code from pathwalk\n  CIFS: Use d_automount() rather than abusing follow_link()\n  NFS: Use d_automount() rather than abusing follow_link()\n  AFS: Use d_automount() rather than abusing follow_link()\n  Add an AT_NO_AUTOMOUNT flag to suppress terminal automount\n  ...\n"
    },
    {
      "commit": "f03c65993b98eeb909a4012ce7833c5857d74755",
      "tree": "a6dd5e353889b7fe4ab87c54170d09443d788fec",
      "parents": [
        "7b8a53fd815deb39542085897743fa0063f9fe06"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jan 14 22:30:21 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 16 13:47:07 2011 -0500"
      },
      "message": "sanitize vfsmount refcounting changes\n\nInstead of splitting refcount between (per-cpu) mnt_count\nand (SMP-only) mnt_longrefs, make all references contribute\nto mnt_count again and keep track of how many are longterm\nones.\n\nAccounting rules for longterm count:\n\t* 1 for each fs_struct.root.mnt\n\t* 1 for each fs_struct.pwd.mnt\n\t* 1 for having non-NULL -\u003emnt_ns\n\t* decrement to 0 happens only under vfsmount lock exclusive\n\nThat allows nice common case for mntput() - since we can\u0027t drop the\nfinal reference until after mnt_longterm has reached 0 due to the rules\nabove, mntput() can grab vfsmount lock shared and check mnt_longterm.\nIf it turns out to be non-zero (which is the common case), we know\nthat this is not the final mntput() and can just blindly decrement\npercpu mnt_count.  Otherwise we grab vfsmount lock exclusive and\ndo usual decrement-and-check of percpu mnt_count.\n\nFor fs_struct.c we have mnt_make_longterm() and mnt_make_shortterm();\nnamespace.c uses the latter in places where we don\u0027t already hold\nvfsmount lock exclusive and opencodes a few remaining spots where\nwe need to manipulate mnt_longterm.\n\nNote that we mostly revert the code outside of fs/namespace.c back\nto what we used to have; in particular, normal code doesn\u0027t need\nto care about two kinds of references, etc.  And we get to keep\nthe optimization Nick\u0027s variant had bought us...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7b8a53fd815deb39542085897743fa0063f9fe06",
      "tree": "1fe7d7f6192b3300a12d2e6af80b9601f23f94f8",
      "parents": [
        "b650c858c26bd9ba29ebc82d30f09355845a294a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jan 15 20:08:44 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 16 13:47:01 2011 -0500"
      },
      "message": "fix old umount_tree() breakage\n\nExpiry-related code calls umount_tree() several times with\nthe same list to collect vfsmounts to.  Which is fine, except\nthat umount_tree() implicitly assumed that the list would\nbe empty on each call - it moves the victims over there and\nthen iterates through the list kicking them out.  It\u0027s *almost*\nidempotent, so everything nearly worked.  However, mnt-\u003eghosts\nhandling (and thus expirability checks) had been broken - that\npart was not idempotent...\n\nThe fix is trivial - use local temporary list, splice it to\nthe the collector list when we are through.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6f88a4403def422bd8e276ddf6863d6ac71435d2",
      "tree": "8fe01d61977e0113cc0a4fa77b7df7f8dfeecad9",
      "parents": [
        "f690efb1aa2a961dd6655529c1797fcac60ad6d9"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Dec 29 14:55:03 2010 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sun Jan 16 11:30:20 2011 -0500"
      },
      "message": "btrfs: Require CAP_SYS_ADMIN for filesystem rebalance\n\nFilesystem rebalancing (BTRFS_IOC_BALANCE) affects the entire\nfilesystem and may run uninterruptibly for a long time.  This does not\nseem to be something that an unprivileged user should be able to do.\n\nReported-by: Aron Xu \u003chappyaron.xu@gmail.com\u003e\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "f690efb1aa2a961dd6655529c1797fcac60ad6d9",
      "tree": "29b2faa25ff19a3c374b6bb60eb4507657c6dfa9",
      "parents": [
        "5e540f7715b8cd83b8e60beaaa525b125cc122de"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "josef@redhat.com",
        "time": "Wed Jan 12 21:04:22 2011 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sun Jan 16 11:30:20 2011 -0500"
      },
      "message": "Btrfs: don\u0027t warn if we get ENOSPC in btrfs_block_rsv_check\n\nIf we run low on space we could get a bunch of warnings out of\nbtrfs_block_rsv_check, but this is mostly just called via the transaction code\nto see if we need to end the transaction, it expects to see failures, so let\u0027s\nnot WARN and freak everybody out for no reason.  Thanks,\n\nSigned-off-by: Josef Bacik \u003cjosef@redhat.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "5e540f7715b8cd83b8e60beaaa525b125cc122de",
      "tree": "93ce1b3e22354c8d8e477ee56b925a44e7b9713e",
      "parents": [
        "91ca338d776e0cefb255bf2979b6448febd880f5"
      ],
      "author": {
        "name": "Tsutomu Itoh",
        "email": "t-itoh@jp.fujitsu.com",
        "time": "Mon Dec 27 06:53:10 2010 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sun Jan 16 11:30:20 2011 -0500"
      },
      "message": "btrfs: Fix memory leak in btrfs_read_fs_root_no_radix()\n\nIn btrfs_read_fs_root_no_radix(), \u0027root\u0027 is not freed if\nbtrfs_search_slot() returns error.\n\nSigned-off-by: Tsutomu Itoh \u003ct-itoh@jp.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "91ca338d776e0cefb255bf2979b6448febd880f5",
      "tree": "5d1d344d6ed565faf5612b5c695f00c04e6f01d8",
      "parents": [
        "ff175d57f057f77d2d3031d674c2af9167a4af02"
      ],
      "author": {
        "name": "Tsutomu Itoh",
        "email": "t-itoh@jp.fujitsu.com",
        "time": "Wed Jan 05 02:32:22 2011 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sun Jan 16 11:30:20 2011 -0500"
      },
      "message": "btrfs: check NULL or not\n\nShould check if functions returns NULL or not.\n\nSigned-off-by: Tsutomu Itoh \u003ct-itoh@jp.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "ff175d57f057f77d2d3031d674c2af9167a4af02",
      "tree": "ff04961d44566d7abc3ea4aab888900d40561c3e",
      "parents": [
        "20b450773d17e325190c158e10bfdb25dc21d2d6"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Sat Dec 25 21:22:30 2010 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sun Jan 16 11:30:20 2011 -0500"
      },
      "message": "btrfs: Don\u0027t pass NULL ptr to func that may deref it.\n\nHi,\n\nIn fs/btrfs/inode.c::fixup_tree_root_location() we have this code:\n\n...\n \t\tif (!path) {\n \t\t\terr \u003d -ENOMEM;\n \t\t\tgoto out;\n \t\t}\n...\n \tout:\n \t\tbtrfs_free_path(path);\n \t\treturn err;\n\nbtrfs_free_path() passes its argument on to other functions and some of\nthem end up dereferencing the pointer.\nIn the code above that pointer is clearly NULL, so btrfs_free_path() will\neventually cause a NULL dereference.\n\nThere are many ways to cut this cake (fix the bug). The one I chose was to\nmake btrfs_free_path() deal gracefully with NULL pointers. If you\ndisagree, feel free to come up with an alternative patch.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "20b450773d17e325190c158e10bfdb25dc21d2d6",
      "tree": "c99c3d8cedbf8fb5f01ed42d7d3c5b5bd5fd9d69",
      "parents": [
        "42838bb265b9cff3de9587fcacc398b5112dc2d9"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Sat Jan 08 10:09:13 2011 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sun Jan 16 11:30:19 2011 -0500"
      },
      "message": "btrfs: mount failure return value fix\n\nI happened to pass swap partition as root partition in cmdline,\nthen kernel panic and tell me about \"Cannot open root device\".\nIt is not correct, in fact it is a fs type mismatch instead of \u0027no device\u0027.\n\nEventually I found btrfs mounting failed with -EIO, it should be -EINVAL.\nThe logic in init/do_mounts.c:\n        for (p \u003d fs_names; *p; p +\u003d strlen(p)+1) {\n                int err \u003d do_mount_root(name, p, flags, root_mount_data);\n                switch (err) {\n                        case 0:\n                                goto out;\n                        case -EACCES:\n                                flags |\u003d MS_RDONLY;\n                                goto retry;\n                        case -EINVAL:\n                                continue;\n                }\n\t\tprint \"Cannot open root device\"\n\t\tpanic\n\t}\nSO fs type after btrfs will have no chance to mount\n\nHere fix the return value as -EINVAL\n\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "42838bb265b9cff3de9587fcacc398b5112dc2d9",
      "tree": "4c0cfbe4f41004b096917ddf75ed7d74743a4af3",
      "parents": [
        "6d07bcec969af335d4e35b3921131b7929bd634e"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Thu Jan 06 21:45:21 2011 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sun Jan 16 11:30:19 2011 -0500"
      },
      "message": "btrfs: Mem leak in btrfs_get_acl()\n\nIt seems to me that we leak the memory allocated to \u0027value\u0027 in\nbtrfs_get_acl() if the call to posix_acl_from_xattr() fails.\nHere\u0027s a patch that attempts to correct that problem.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "6d07bcec969af335d4e35b3921131b7929bd634e",
      "tree": "2d1e0bb5f69bdf9dafa2862b6cad965184d67c84",
      "parents": [
        "b2117a39fa96cf4814e7cab8c11494149ba6f29d"
      ],
      "author": {
        "name": "Miao Xie",
        "email": "miaox@cn.fujitsu.com",
        "time": "Wed Jan 05 10:07:31 2011 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sun Jan 16 11:30:19 2011 -0500"
      },
      "message": "btrfs: fix wrong free space information of btrfs\n\nWhen we store data by raid profile in btrfs with two or more different size\ndisks, df command shows there is some free space in the filesystem, but the\nuser can not write any data in fact, df command shows the wrong free space\ninformation of btrfs.\n\n # mkfs.btrfs -d raid1 /dev/sda9 /dev/sda10\n # btrfs-show\n Label: none  uuid: a95cd49e-6e33-45b8-8741-a36153ce4b64\n \tTotal devices 2 FS bytes used 28.00KB\n \tdevid    1 size 5.01GB used 2.03GB path /dev/sda9\n \tdevid    2 size 10.00GB used 2.01GB path /dev/sda10\n # btrfs device scan /dev/sda9 /dev/sda10\n # mount /dev/sda9 /mnt\n # dd if\u003d/dev/zero of\u003dtmpfile0 bs\u003d4K count\u003d9999999999\n   (fill the filesystem)\n # sync\n # df -TH\n Filesystem\tType\tSize\tUsed\tAvail\tUse%\tMounted on\n /dev/sda9\tbtrfs\t17G\t8.6G\t5.4G\t62%\t/mnt\n # btrfs-show\n Label: none  uuid: a95cd49e-6e33-45b8-8741-a36153ce4b64\n \tTotal devices 2 FS bytes used 3.99GB\n \tdevid    1 size 5.01GB used 5.01GB path /dev/sda9\n \tdevid    2 size 10.00GB used 4.99GB path /dev/sda10\n\nIt is because btrfs cannot allocate chunks when one of the pairing disks has\nno space, the free space on the other disks can not be used for ever, and should\nbe subtracted from the total space, but btrfs doesn\u0027t subtract this space from\nthe total. It is strange to the user.\n\nThis patch fixes it by calcing the free space that can be used to allocate\nchunks.\n\nImplementation:\n1. get all the devices free space, and align them by stripe length.\n2. sort the devices by the free space.\n3. check the free space of the devices,\n   3.1. if it is not zero, and then check the number of the devices that has\n        more free space than this device,\n        if the number of the devices is beyond the min stripe number, the free\n        space can be used, and add into total free space.\n        if the number of the devices is below the min stripe number, we can not\n        use the free space, the check ends.\n   3.2. if the free space is zero, check the next devices, goto 3.1\n\nThis implementation is just likely fake chunk allocation.\n\nAfter appling this patch, df can show correct space information:\n # df -TH\n Filesystem\tType\tSize\tUsed\tAvail\tUse%\tMounted on\n /dev/sda9\tbtrfs\t17G\t8.6G\t0\t100%\t/mnt\n\nSigned-off-by: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    }
  ],
  "next": "b2117a39fa96cf4814e7cab8c11494149ba6f29d"
}
