)]}'
{
  "log": [
    {
      "commit": "bce41d601e58af12cee1398fe836e6b9a8fb5396",
      "tree": "9d3b7d8fc67d3629c015bf5fc15c10cb223a81ad",
      "parents": [
        "9398d1ce09b9009996f7d2468e1d3c785fa6feda"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Jan 10 15:32:29 2012 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed Jan 11 09:53:51 2012 +0000"
      },
      "message": "jffs2: do not initialize variable unnecessarily\n\nRemove unnecessary initializer for a local variable.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "7b3480f8b701170c046e1ed362946f5f0d005e13",
      "tree": "bd25e05b4f35699689b485480dddf24f840f80af",
      "parents": [
        "1c8106528aa6bf16b3f457de80df1cf7462a49a4",
        "b60ef99c1164a8ad346cf41f9e71acfffb6d25a6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 10 13:45:22 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 10 13:45:22 2012 -0800"
      },
      "message": "Merge tag \u0027for-linus-3.3\u0027 of git://git.infradead.org/mtd-2.6\n\nMTD pull for 3.3\n\n* tag \u0027for-linus-3.3\u0027 of git://git.infradead.org/mtd-2.6: (113 commits)\n  mtd: Fix dependency for MTD_DOC200x\n  mtd: do not use mtd-\u003eblock_markbad directly\n  logfs: do not use \u0027mtd-\u003eblock_isbad\u0027 directly\n  mtd: introduce mtd_can_have_bb helper\n  mtd: do not use mtd-\u003esuspend and mtd-\u003eresume directly\n  mtd: do not use mtd-\u003elock, unlock and is_locked directly\n  mtd: do not use mtd-\u003esync directly\n  mtd: harmonize mtd_writev usage\n  mtd: do not use mtd-\u003elock_user_prot_reg directly\n  mtd: mtd-\u003ewrite_user_prot_reg directly\n  mtd: do not use mtd-\u003eread_*_prot_reg directly\n  mtd: do not use mtd-\u003eget_*_prot_info directly\n  mtd: do not use mtd-\u003eread_oob directly\n  mtd: mtdoops: do not use mtd-\u003epanic_write directly\n  romfs: do not use mtd-\u003eget_unmapped_area directly\n  mtd: do not use mtd-\u003eget_unmapped_area directly\n  mtd: do use mtd-\u003epoint directly\n  mtd: introduce mtd_has_oob helper\n  mtd: mtdcore: export symbols cleanup\n  mtd: clean-up the default_mtd_writev function\n  ...\n\nFix up trivial edit/remove conflict in drivers/staging/spectra/lld_mtd.c\n"
    },
    {
      "commit": "800ffd3496987e91f599a135060ef49731e045ac",
      "tree": "a62c4985597e6ce01d8f8ab07f67212357e2a846",
      "parents": [
        "d58b27ed58a30faf376e40d19945f34301944b8d"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Mon Jan 02 13:59:12 2012 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:26:26 2012 +0000"
      },
      "message": "mtd: do not use mtd-\u003eblock_markbad directly\n\nInstead, use the new \u0027mtd_can_have_bb()\u0027, or just rely on \u0027mtd_block_markbad()\u0027\nreturn code, which will be -EOPNOTSUPP if bad blocks are not supported.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "327cf2922b4edf0439b219469722d2a502e37349",
      "tree": "6fe4c70d0b4693950e7e20286a3b66bab82ac821",
      "parents": [
        "1dbebd32562b3c2caeca35960e5cb00bfcc12900"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Dec 30 16:35:35 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:26:21 2012 +0000"
      },
      "message": "mtd: do not use mtd-\u003esync directly\n\nThis patch teaches \u0027mtd_sync()\u0027 to do nothing when the MTD driver does\nnot have the \u0027-\u003esync()\u0027 method, which allows us to remove all direct\n\u0027mtd-\u003esync\u0027 accesses.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "1dbebd32562b3c2caeca35960e5cb00bfcc12900",
      "tree": "773776d87730828adb55f3f7fe8221eabb528d8f",
      "parents": [
        "e2936b2af5562c8c66060e2bc2ae2e209d0acd3d"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Dec 30 16:23:41 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:26:19 2012 +0000"
      },
      "message": "mtd: harmonize mtd_writev usage\n\nThis patch makes the \u0027mtd_writev()\u0027 function more usable and logical. We first\nteach it to fall-back to the \u0027default_mtd_writev()\u0027 function if the MTD driver\ndoes not define its own \u0027-\u003ewritev()\u0027 method. Then we make block2mtd and JFFS2\njust \u0027mtd_writev()\u0027 instead of \u0027default_mtd_writev()\u0027 function. This means we\ncan now stop exporting \u0027default_mtd_writev()\u0027 and instead, export\n\u0027mtd_writev()\u0027. This is much cleaner and more logical, as well as allows us to\nget read of another direct \u0027mtd-\u003ewritev\u0027 access in JFFS2.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "10934478e44d9a5a7b16dadd89094fb608cf101e",
      "tree": "603d4f5165fc032a28e5efaa872da685eea7bf32",
      "parents": [
        "fc002e3c320602d0e206f607aca0460540d7637a"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Dec 28 15:55:42 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:26:09 2012 +0000"
      },
      "message": "mtd: do use mtd-\u003epoint directly\n\nRemove direct usage of the \"mtd-\u003epoint\" function pointer. Instead,\ntest the mtd_point() return code for \u0027-EOPNOTSUPP\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "4ccf2f1349e681401b5fae73efc87b8d2d70ce0e",
      "tree": "b62d5d22d67c80918c4c7a40676062e54ae7e236",
      "parents": [
        "bac972777403f810d83062dd0d0303746e466ece"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Dec 30 15:48:55 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:26:04 2012 +0000"
      },
      "message": "jffs: remove custom mtd_fake_writev function\n\nInstead, use \u0027default_mtd_writev()\u0027 function which MTD provides.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "5942ddbc500d1c9b75e571b656be97f65b26adfe",
      "tree": "7e96cfb905fb67bc40e1da30eb8454d674353a36",
      "parents": [
        "7086c19d07429d697057587caf1e5e0345442d16"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Dec 23 19:37:38 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:25:48 2012 +0000"
      },
      "message": "mtd: introduce mtd_block_markbad interface\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "7086c19d07429d697057587caf1e5e0345442d16",
      "tree": "3a892182dba0847de32ef79b1fe1d46d8b1b5de8",
      "parents": [
        "ead995f8d4da1e2f1ef40b0e5f4133fee38a3d3d"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Dec 23 19:35:30 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:25:47 2012 +0000"
      },
      "message": "mtd: introduce mtd_block_isbad interface\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "85f2f2a809d658c15b574df02ede92090f45a1f2",
      "tree": "7d4ae7ca646db856aca7f2509c404b9d938fee0b",
      "parents": [
        "b0a31f7b2a668f00a8d0546dfeed65fac871b2da"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Dec 23 19:03:12 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:25:35 2012 +0000"
      },
      "message": "mtd: introduce mtd_sync interface\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "b0a31f7b2a668f00a8d0546dfeed65fac871b2da",
      "tree": "7379a66d9bfd6ae067f090f1bebac5d47332f5cb",
      "parents": [
        "4403dbfb4541d34e5db33db709094d57d09f7467"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Dec 23 18:59:12 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:25:34 2012 +0000"
      },
      "message": "mtd: introduce mtd_writev interface\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "a2cc5ba075f9bc837d0b4d4ec7328dcefc11859d",
      "tree": "a5f2c88ddd21028247bfaf02ca336dd501ed3a5f",
      "parents": [
        "fd2819bbc92fc98bed5d612e4acbe16b6326f6bf"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Dec 23 18:29:55 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:25:24 2012 +0000"
      },
      "message": "mtd: introduce mtd_write_oob interface\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "fd2819bbc92fc98bed5d612e4acbe16b6326f6bf",
      "tree": "114f2a130cb854c74707eb805854fe048f65ac14",
      "parents": [
        "7ae79d7ff1769a3e9c47076b46e4eaa11204a2ee"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Dec 23 18:27:05 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:25:23 2012 +0000"
      },
      "message": "mtd: introduce mtd_read_oob interface\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "eda95cbf75193808f62948fb0142ba0901d8bee2",
      "tree": "047bcfa05bc118b1d34327b3e62fa1d10d4bcb43",
      "parents": [
        "329ad399a9b3adf52c90637b21ca029fcf7f8795"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Dec 23 17:35:41 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:25:20 2012 +0000"
      },
      "message": "mtd: introduce mtd_write interface\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "329ad399a9b3adf52c90637b21ca029fcf7f8795",
      "tree": "7aa7bb2609c25de7859c3a666f3ea90934609592",
      "parents": [
        "04c601bfa4cb29c968dcb66e44c799c9c01d8675"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Dec 23 17:30:16 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:25:19 2012 +0000"
      },
      "message": "mtd: introduce mtd_read interface\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "7219778ad9c18cc2c05c7fca0abe026afbc19dfb",
      "tree": "509a11bf7f7ebeef9a4236901adf53e507d1455b",
      "parents": [
        "d35ea200c0fb5315f16fb2599a4bafd9c1a7b386"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Dec 23 17:05:52 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:25:17 2012 +0000"
      },
      "message": "mtd: introduce mtd_unpoint interface\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "d35ea200c0fb5315f16fb2599a4bafd9c1a7b386",
      "tree": "bca893ecf2cada20a1a3a84f64759c2e75838c5b",
      "parents": [
        "7e1f0dc0551b99acb5e8fa161a7ac401994d57d8"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Dec 23 17:00:37 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:25:15 2012 +0000"
      },
      "message": "mtd: introduce mtd_point interface\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "7e1f0dc0551b99acb5e8fa161a7ac401994d57d8",
      "tree": "19108039bb082d42fbda40d4bd3ddb11a1185cd1",
      "parents": [
        "969e57adc2589a0a0ae5edbbe7b92062565ce70b"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Dec 23 15:25:39 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:25:11 2012 +0000"
      },
      "message": "mtd: introduce mtd_erase interface\n\nThis patch is part of a patch-set which changes the MTD interface\nfrom \u0027mtd-\u003efunc()\u0027 form to \u0027mtd_func()\u0027 form. We need this because\nwe want to add common code to to all drivers in the mtd core level,\nwhich is impossible with the current interface when MTD clients\ncall driver functions like \u0027read()\u0027 or \u0027write()\u0027 directly.\n\nAt this point we just introduce a new inline wrapper function, but\nlater some of them are expected to gain more code. E.g., the input\nparameters check should be moved to the wrappers rather than be\nduplicated at many drivers.\n\nThis particular patch introduced the \u0027mtd_erase()\u0027 interface. The\nfollowing patches add all the other interfaces one by one.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "53466710202900ce49e471f480cac11275e1d0c4",
      "tree": "c9a4d9458dff37cd7e15f2181c8bc1d5edcf3f91",
      "parents": [
        "fa3ae714c763f3e9d8fd876879338d2b674b8db2"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Tue Dec 06 17:06:06 2011 -0600"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 09 18:18:03 2012 +0000"
      },
      "message": "jffs2: fix up error handling for insert_inode_locked\n\nafter 250df6ed274d767da844a5d9f05720b804240197\n(fs: protect inode-\u003ei_state with inode-\u003ei_lock), insert_inode_locked()\nno longer returns the inode with I_NEW set on failure.  However,\nthe error handler still calls unlock_new_inode() on failure,\nwhich does a WARN_ON if I_NEW is not set, so any failure spews\na lot of warnings.\n\nWe can just drop the unlock_new_inode() if insert_inode_locked()\nfails here.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "34c80b1d93e6e20ca9dea0baf583a5b5510d92d4",
      "tree": "7dcbf0a4e09464247e6992c8f44fcc872867bd3a",
      "parents": [
        "a6322de67b58a00e3a783ad9c87c2a11b2d67b47"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 08 21:32:45 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jan 06 23:19:54 2012 -0500"
      },
      "message": "vfs: switch -\u003eshow_options() to struct dentry *\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1a67aafb5f72a436ca044293309fa7e6351d6a35",
      "tree": "d9e58600148de9d41b478cf815773b746647d15b",
      "parents": [
        "4acdaf27ebe2034c342f3be57ef49aed1ad885ef"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 26 01:52:52 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:54:54 2012 -0500"
      },
      "message": "switch -\u003emknod() to umode_t\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "4acdaf27ebe2034c342f3be57ef49aed1ad885ef",
      "tree": "d89a876ee19cd88609a587f8aa6c464a52ee6d98",
      "parents": [
        "18bb1db3e7607e4a997d50991a6f9fa5b0f8722c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 26 01:42:34 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:54:53 2012 -0500"
      },
      "message": "switch -\u003ecreate() to umode_t\n\nvfs_create() ignores everything outside of 16bit subset of its\nmode argument; switching it to umode_t is obviously equivalent\nand it\u0027s the only caller of the method\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "18bb1db3e7607e4a997d50991a6f9fa5b0f8722c",
      "tree": "4ee4e584bc9a67f3ec14ce159d2d7d4a27e68d4a",
      "parents": [
        "8208a22bb8bd3c52ef634b4ff194f14892ab1713"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 26 01:41:39 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:54:53 2012 -0500"
      },
      "message": "switch vfs_mkdir() and -\u003emkdir() to umode_t\n\nvfs_mkdir() gets int, but immediately drops everything that might not\nfit into umode_t and that\u0027s the only caller of -\u003emkdir()...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6b520e0565422966cdf1c3759bd73df77b0f248c",
      "tree": "f63a26afa7342eb59b125271b16e30a219b59094",
      "parents": [
        "2a79f17e4a641a2f463cb512cb0ec349844a147b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Dec 12 15:51:45 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:52:40 2012 -0500"
      },
      "message": "vfs: fix the stupidity with i_dentry in inode destructors\n\nSeeing that just about every destructor got that INIT_LIST_HEAD() copied into\nit, there is no point whatsoever keeping this INIT_LIST_HEAD in inode_init_once();\nthe cost of taking it into inode_init_always() will be negligible for pipes\nand sockets and negative for everything else.  Not to mention the removal of\nboilerplate code from -\u003edestroy_inode() instances...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e0d65113a70f1dc514e625cc4e7a7485a4bf72df",
      "tree": "7320a130dc304623f5cf4b5dd8f67fb1776225ca",
      "parents": [
        "cf5e15fbd72c13977720aa15b7b7e00e1d8fd8f2",
        "48e546b7f281f251893baa40769581fd15f085fb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 07 09:11:16 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 07 09:11:16 2011 -0800"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (226 commits)\n  mtd: tests: annotate as DANGEROUS in Kconfig\n  mtd: tests: don\u0027t use mtd0 as a default\n  mtd: clean up usage of MTD_DOCPROBE_ADDRESS\n  jffs2: add compr\u003dlzo and compr\u003dzlib options\n  jffs2: implement mount option parsing and compression overriding\n  mtd: nand: initialize ops.mode\n  mtd: provide an alias for the redboot module name\n  mtd: m25p80: don\u0027t probe device which has status of \u0027disabled\u0027\n  mtd: nand_h1900 never worked\n  mtd: Add DiskOnChip G3 support\n  mtd: m25p80: add EON flash EN25Q32B into spi flash id table\n  mtd: mark block device queue as non-rotational\n  mtd: r852: make r852_pm_ops static\n  mtd: m25p80: add support for at25df321a spi data flash\n  mtd: mxc_nand: preset_v1_v2: unlock all NAND flash blocks\n  mtd: nand: switch `check_pattern()\u0027 to standard `memcmp()\u0027\n  mtd: nand: invalidate cache on unaligned reads\n  mtd: nand: do not scan bad blocks with NAND_BBT_NO_OOB set\n  mtd: nand: wait to set BBT version\n  mtd: nand: scrub BBT on ECC errors\n  ...\n\nFix up trivial conflicts:\n - arch/arm/mach-at91/board-usb-a9260.c\n\tMerged into board-usb-a926x.c\n - drivers/mtd/maps/lantiq-flash.c\n\tadd_mtd_partitions -\u003e mtd_device_register vs changed to use\n\tmtd_device_parse_register.\n"
    },
    {
      "commit": "bfe8684869601dacfcb2cd69ef8cfd9045f62170",
      "tree": "4e213aaa766b26f43f0f9ec7998a7745239d9377",
      "parents": [
        "6d6b77f163c7eabedbba00ed2abb7d4a570bff76"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Fri Oct 28 14:13:29 2011 +0200"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@serles.lst.de",
        "time": "Wed Nov 02 12:53:43 2011 +0100"
      },
      "message": "filesystems: add set_nlink()\n\nReplace remaining direct i_nlink updates with a new set_nlink()\nupdater function.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nTested-by: Toshiyuki Okajima \u003ctoshi.okajima@jp.fujitsu.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "123005f3ccfa58637ad6e1a8b9f7f3f861ca65f4",
      "tree": "a9bd8a539d9c950f47514a5f94f65c25c09e3b6c",
      "parents": [
        "92abc475d8de1c29373f6d96ed63d8ecaa199d25"
      ],
      "author": {
        "name": "Andres Salomon",
        "email": "dilinger@queued.net",
        "time": "Sun Oct 16 18:15:23 2011 -0700"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@intel.com",
        "time": "Wed Oct 19 17:22:21 2011 +0300"
      },
      "message": "jffs2: add compr\u003dlzo and compr\u003dzlib options\n\n..to allow forcing of either compression scheme.  This will override\ncompiled-in defaults.  jffs2_compress is reworked a bit, as the lzo/zlib\noverride shares lots of code w/ the PRIORITY mode.\n\nv2: update show_options accordingly.\n\nSigned-off-by: Andres Salomon \u003cdilinger@queued.net\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@intel.com\u003e\n"
    },
    {
      "commit": "92abc475d8de1c29373f6d96ed63d8ecaa199d25",
      "tree": "44f4d9d04fd04ccee9877e28d8fff5e472bba7d2",
      "parents": [
        "23b1a99b87f3fc9e4242b98b2af3c9bed210f048"
      ],
      "author": {
        "name": "Andres Salomon",
        "email": "dilinger@queued.net",
        "time": "Sun Oct 16 18:15:16 2011 -0700"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@intel.com",
        "time": "Wed Oct 19 17:22:20 2011 +0300"
      },
      "message": "jffs2: implement mount option parsing and compression overriding\n\nCurrently jffs2 has compile-time constants (and .config options)\ncontrolling whether or not the various compression/decompression\ndrivers are built in and enabled.  This is fine for embedded\nsystems, but it clashes with distribution kernels.  Distro kernels\ntend to turn on everything; this causes OpenFirmware to fall\nover, as it understands ZLIB-compressed inodes.  Booting a kernel\nthat has LZO compression enabled, writing to the boot partition,\nand then rebooting causes OFW to fail to read the kernel from\nthe filesystem.  This is because LZO compression has priority\nwhen writing new data to jffs2, if LZO is enabled.\n\nThis patch adds mount option parsing, and a single supported\noption (\"compr\u003dnone\").  This adds the flexibility of being\nable to specify which compressor overrides on a per-superblock\nbasis.  For now, we can simply disable compression;\nadditional flexibility coming soon.\n\nv2: kill some printks, and implement show_options as suggested\nby Artem Bityutskiy.\n\nSigned-off-by: Andres Salomon \u003cdilinger@queued.net\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@intel.com\u003e\n"
    },
    {
      "commit": "0612b9ddc2eeda014dd805c87c752b342d8f80f0",
      "tree": "7691ee548ab6da1e7df946a75abd96a814208d8e",
      "parents": [
        "905c6bcdb42616da717a9bd6c0c5870dbd90b09e"
      ],
      "author": {
        "name": "Brian Norris",
        "email": "computersforpeace@gmail.com",
        "time": "Tue Aug 30 18:45:40 2011 -0700"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@intel.com",
        "time": "Sun Sep 11 15:28:59 2011 +0300"
      },
      "message": "mtd: rename MTD_OOB_* to MTD_OPS_*\n\nThese modes are not necessarily for OOB only. Particularly, MTD_OOB_RAW\naffected operations on in-band page data as well. To clarify these\noptions and to emphasize that their effect is applied per-operation, we\nchange the primary prefix to MTD_OPS_.\n\nSigned-off-by: Brian Norris \u003ccomputersforpeace@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@intel.com\u003e\n"
    },
    {
      "commit": "51b11e3630672b7ce8793ecf13e5759656edf38a",
      "tree": "90b22e023e1120b475adbb6153283e16eaf6f932",
      "parents": [
        "9786f6e68af00d0988ad7f51fe3fd118be1c30ad"
      ],
      "author": {
        "name": "Alexey Khoroshilov",
        "email": "khoroshilov@ispras.ru",
        "time": "Tue Jun 28 00:21:30 2011 +0400"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@intel.com",
        "time": "Sun Sep 11 15:02:14 2011 +0300"
      },
      "message": "jffs2: use mutex_is_locked() in __jffs2_flush_wbuf()\n\nUse a helper to test if a mutex is held instead of a hack with\nmutex_trylock().\n\nSigned-off-by: Alexey Khoroshilov \u003ckhoroshilov@ispras.ru\u003e\nSigned-off-by: Artem Bityutskiy \u003cdedekind1@gmail.com\u003e\n"
    },
    {
      "commit": "e8a0e41266e9c207ad8ac158cee9547ef1bc90ac",
      "tree": "be7ccbe744f5a71b6de19ed31e1ce31162d1c51c",
      "parents": [
        "e638275e18a929103bb087acb94d2b67eb0818e0"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Mon Jun 13 22:16:44 2011 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@intel.com",
        "time": "Sun Sep 11 15:02:10 2011 +0300"
      },
      "message": "jffs2: Avoid unneeded \u0027if\u0027 before kfree\n\nkfree() deals gracefully with NULL pointers, so it\u0027s pointless to test for\none prior to calling it.\nThis removes such a test from jffs2_scan_medium().\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Artem Bityutskiy \u003cdedekind1@gmail.com\u003e\n"
    },
    {
      "commit": "5a2f3a02aea164f4f59c0c3497772090a411b462",
      "tree": "d3ebe03d4f97575290087843960baa01de3acd0a",
      "parents": [
        "1d568ab068c021672d6cd7f50f92a3695a921ffb",
        "817b54aa45db03437c6d09a7693fc6926eb8e822"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Aug 09 10:31:03 2011 +1000"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Aug 09 10:31:03 2011 +1000"
      },
      "message": "Merge branch \u0027next-evm\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/ima-2.6 into next\n\nConflicts:\n\tfs/attr.c\n\nResolve conflict manually.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "d6952123b53cc8b334df69bba2cd0063b0d88f68",
      "tree": "b1ccaa7e3d65dbf4af093202044da65bc4deb34e",
      "parents": [
        "d3fb612076eebec6f67257db0c7a9666ac7e5892"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 23 18:56:36 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 01 02:10:06 2011 -0400"
      },
      "message": "switch posix_acl_equiv_mode() to umode_t *\n\n... so that \u0026inode-\u003ei_mode could be passed to it\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d3fb612076eebec6f67257db0c7a9666ac7e5892",
      "tree": "5265fca258a74ffa75b845998492abb9446db72c",
      "parents": [
        "782b94cdf577b4df1feb376f372dccc28e66a771"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 23 18:37:50 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 01 02:09:42 2011 -0400"
      },
      "message": "switch posix_acl_create() to umode_t *\n\nso we can pass \u0026inode-\u003ei_mode to it\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "61effb519cbf0b2973c65070a890fabfcbf84756",
      "tree": "f402715c8c497e368330669d9f5fa09039e435a3",
      "parents": [
        "da404dc0b1fe76b06a8d094e3ef1af9ec8252cec"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 24 17:11:33 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 26 13:00:35 2011 -0400"
      },
      "message": "jffs2: S_ISLNK(mode \u0026 S_IFMT) is pointless\n\nit\u0027s S_ISLNK(mode), TYVM...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d3ec4844d449cf7af9e749f73ba2052fb7b72fc2",
      "tree": "c515913e85f7e50878c83da2a88bc5a7269d087c",
      "parents": [
        "0003230e8200699860f0b10af524dc47bf8aecad",
        "df2e301fee3c2c2a87592151397ad7699bb14c37"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 13:56:39 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 13:56:39 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (43 commits)\n  fs: Merge split strings\n  treewide: fix potentially dangerous trailing \u0027;\u0027 in #defined values/expressions\n  uwb: Fix misspelling of neighbourhood in comment\n  net, netfilter: Remove redundant goto in ebt_ulog_packet\n  trivial: don\u0027t touch files that are removed in the staging tree\n  lib/vsprintf: replace link to Draft by final RFC number\n  doc: Kconfig: `to be\u0027 -\u003e `be\u0027\n  doc: Kconfig: Typo: square -\u003e squared\n  doc: Konfig: Documentation/power/{pm \u003d\u003e apm-acpi}.txt\n  drivers/net: static should be at beginning of declaration\n  drivers/media: static should be at beginning of declaration\n  drivers/i2c: static should be at beginning of declaration\n  XTENSA: static should be at beginning of declaration\n  SH: static should be at beginning of declaration\n  MIPS: static should be at beginning of declaration\n  ARM: static should be at beginning of declaration\n  rcu: treewide: Do not use rcu_read_lock_held when calling rcu_dereference_check\n  Update my e-mail address\n  PCIe ASPM: forcedly -\u003e forcibly\n  gma500: push through device driver tree\n  ...\n\nFix up trivial conflicts:\n - arch/arm/mach-ep93xx/dma-m2p.c (deleted)\n - drivers/gpio/gpio-ep93xx.c (renamed and context nearby)\n - drivers/net/r8169.c (just context changes)\n"
    },
    {
      "commit": "4e34e719e457f2e031297175410fc0bd4016a085",
      "tree": "ab969a371e0d2efc6bfbf503ca6cdfce3af3bf6c",
      "parents": [
        "edde854e8bb34a7f32fa993d721f1da0faf64165"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sat Jul 23 17:37:31 2011 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jul 25 14:30:23 2011 -0400"
      },
      "message": "fs: take the ACL checks to common code\n\nReplace the -\u003echeck_acl method with a -\u003eget_acl method that simply reads an\nACL from disk after having a cache miss.  This means we can replace the ACL\nchecking boilerplate code with a single implementation in namei.c.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "826cae2f2b4d726b925f43bc208a571639da4761",
      "tree": "b7f83eecf3bde8c4e455d89c7c535988b3e8bd59",
      "parents": [
        "95203befa8887997f14077d8557e67d78457ee02"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 23 03:10:32 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jul 25 14:27:32 2011 -0400"
      },
      "message": "kill boilerplates around posix_acl_create_masq()\n\nnew helper: posix_acl_create(\u0026acl, gfp, mode_p).  Replaces acl with\nmodified clone, on failure releases acl and replaces with NULL.\nReturns 0 or -ve on error.  All callers of posix_acl_create_masq()\nswitched.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bc26ab5f65ae41b71df86ea46df3c3833d1d8d83",
      "tree": "85bbc4e0da4fac99ccf31b3609c61e2b148a8498",
      "parents": [
        "4482a087d4c5a6ffbc385c56b4a4e2f694d9fd5d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 23 00:18:02 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jul 25 14:27:30 2011 -0400"
      },
      "message": "kill boilerplate around posix_acl_chmod_masq()\n\nnew helper: posix_acl_chmod(\u0026acl, gfp, mode).  Replaces acl with modified\nclone or with NULL if that has failed; returns 0 or -ve on error.  All\ncallers of posix_acl_chmod_masq() switched to that - they\u0027d been doing\nexactly the same thing.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e77819e57f0817c6dc7cadd061acd70c604cbce2",
      "tree": "f5d7aba2dfbb747a97d783b7cc6a486922c42559",
      "parents": [
        "3ca30d40a91fb9b9871e61d5dea2c1a895906a15"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 19:30:19 2011 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jul 25 14:23:39 2011 -0400"
      },
      "message": "vfs: move ACL cache lookup into generic code\n\nThis moves logic for checking the cached ACL values from low-level\nfilesystems into generic code.  The end result is a streamlined ACL\ncheck that doesn\u0027t need to load the inode-\u003ei_op-\u003echeck_acl pointer at\nall for the common cached case.\n\nThe filesystems also don\u0027t need to check for a non-blocking RCU walk\ncase in their acl_check() functions, because that is all handled at a\nVFS layer.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "963945bf93e46b9bf71a07bf9c78183e0f57733a",
      "tree": "736c84e9a31b2dd736293ca117688527e3a5a194",
      "parents": [
        "1ec95bf34d976b38897d1977b155a544d77b05e7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 23 18:18:58 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 24 10:12:01 2011 -0400"
      },
      "message": "fix jffs2 ACLs on big-endian with 16bit mode_t\n\ncasting int * to mode_t * is not a good thing - on a *lot* of big-endian\narchitectures mode_t happens to be smaller than int and there it breaks\nquite spectaculary...\n\nFucked-up-by: commit cfc8dc6f6f69ede939e09c2af06a01adee577285\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "22ba747f660c0acd14761628c24aa972d18058a0",
      "tree": "8a96b344623ba66c3138bd4d6cc916f5ad3d3053",
      "parents": [
        "841590ce16c19a3ce38028adfc8b1955482ee00c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jul 21 15:57:47 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jul 22 19:42:11 2011 -0400"
      },
      "message": "jffs2: fix IN_DELETE_SELF on overwriting rename() killing a directory\n\nWe don\u0027t generate IN_DELETE_SELF on victim of overwriting rename() if\nit happens to be a directory.  Trivially fixed by doing to -\u003ei_nlink\nwhat we do -\u003epino_nlink a couple of lines later in jffs2_rename().\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "df2e301fee3c2c2a87592151397ad7699bb14c37",
      "tree": "09364e1443d8cac6c415af5e8d07b2b37793b68e",
      "parents": [
        "497888cf69bf607ac1fe061a6437e0a670b0022f"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Sat Jul 16 18:10:35 2011 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Jul 22 16:47:15 2011 +0200"
      },
      "message": "fs: Merge split strings\n\nNo idea why these were split in the first place...\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "02c24a82187d5a628c68edfe71ae60dc135cd178",
      "tree": "c8dbaba4d82e2b20ed4335910a564a1f7d90fcf6",
      "parents": [
        "22735068d53c7115e384bc88dea95b17e76a6839"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "josef@redhat.com",
        "time": "Sat Jul 16 20:44:56 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 20:47:59 2011 -0400"
      },
      "message": "fs: push i_mutex and filemap_write_and_wait down into -\u003efsync() handlers\n\nBtrfs needs to be able to control how filemap_write_and_wait_range() is called\nin fsync to make it less of a painful operation, so push down taking i_mutex and\nthe calling of filemap_write_and_wait() down into the -\u003efsync() handlers.  Some\nfile systems can drop taking the i_mutex altogether it seems, like ext3 and\nocfs2.  For correctness sake I just pushed everything down in all cases to make\nsure that we keep the current behavior the same for everybody, and then each\nindividual fs maintainer can make up their mind about what to do from there.\nThanks,\n\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Josef Bacik \u003cjosef@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a9049376ee05bf966bfe2b081b5071326856890a",
      "tree": "efb3cbfc7760537f201bb28dacbb0d39ec39f04c",
      "parents": [
        "0c1aa9a952c3608eb17bf990466f1491d1ee8b6c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jul 08 21:20:11 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 01:44:26 2011 -0400"
      },
      "message": "make d_splice_alias(ERR_PTR(err), dentry) \u003d ERR_PTR(err)\n\n... and simplify the living hell out of callers\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7e40145eb111a5192e6d819f764db9d6828d1abb",
      "tree": "3249952a751de12465e8d66c63328445e9242f3a",
      "parents": [
        "9c2c703929e4c41210cfa6e3f599514421bab8dc"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 20 19:12:17 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 01:43:21 2011 -0400"
      },
      "message": "-\u003epermission() sanitizing: don\u0027t pass flags to -\u003echeck_acl()\n\nnot used in the instances anymore.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9c2c703929e4c41210cfa6e3f599514421bab8dc",
      "tree": "2086738f22755ad18ba18ab2ee0f2b23d651da60",
      "parents": [
        "1fc0f78ca9f311c6277e2f1b7655bb4d43ceb311"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 20 19:06:22 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 01:43:19 2011 -0400"
      },
      "message": "-\u003epermission() sanitizing: pass MAY_NOT_BLOCK to -\u003echeck_acl()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9d8f13ba3f4833219e50767b022b82cd0da930eb",
      "tree": "3ba2367380d009111ea17696162a62320c88d144",
      "parents": [
        "0f2a55d5bb2372058275b0b343d90dd5d640d045"
      ],
      "author": {
        "name": "Mimi Zohar",
        "email": "zohar@linux.vnet.ibm.com",
        "time": "Mon Jun 06 15:29:25 2011 -0400"
      },
      "committer": {
        "name": "Mimi Zohar",
        "email": "zohar@linux.vnet.ibm.com",
        "time": "Mon Jul 18 12:29:38 2011 -0400"
      },
      "message": "security: new security_inode_init_security API adds function callback\n\nThis patch changes the security_inode_init_security API by adding a\nfilesystem specific callback to write security extended attributes.\nThis change is in preparation for supporting the initialization of\nmultiple LSM xattrs and the EVM xattr.  Initially the callback function\nwalks an array of xattrs, writing each xattr separately, but could be\noptimized to write multiple xattrs at once.\n\nFor existing security_inode_init_security() calls, which have not yet\nbeen converted to use the new callback function, such as those in\nreiserfs and ocfs2, this patch defines security_old_inode_init_security().\n\nSigned-off-by: Mimi Zohar \u003czohar@us.ibm.com\u003e\n"
    },
    {
      "commit": "36947a76826111e661a26cb0f668a5be6cc3ddb4",
      "tree": "ed5d92c9d71f9ca68e6a3583a10ebf911c9c44dd",
      "parents": [
        "a947e23a8ec04bccbfe98c5a2d64cd1f88b612d5",
        "69b4573296469fd3f70cf7044693074980517067"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 28 13:03:41 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 28 13:03:41 2011 -0700"
      },
      "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: (36 commits)\n  Cache xattr security drop check for write v2\n  fs: block_page_mkwrite should wait for writeback to finish\n  mm: Wait for writeback when grabbing pages to begin a write\n  configfs: remove unnecessary dentry_unhash on rmdir, dir rename\n  fat: remove unnecessary dentry_unhash on rmdir, dir rename\n  hpfs: remove unnecessary dentry_unhash on rmdir, dir rename\n  minix: remove unnecessary dentry_unhash on rmdir, dir rename\n  fuse: remove unnecessary dentry_unhash on rmdir, dir rename\n  coda: remove unnecessary dentry_unhash on rmdir, dir rename\n  afs: remove unnecessary dentry_unhash on rmdir, dir rename\n  affs: remove unnecessary dentry_unhash on rmdir, dir rename\n  9p: remove unnecessary dentry_unhash on rmdir, dir rename\n  ncpfs: fix rename over directory with dangling references\n  ncpfs: document dentry_unhash usage\n  ecryptfs: remove unnecessary dentry_unhash on rmdir, dir rename\n  hostfs: remove unnecessary dentry_unhash on rmdir, dir rename\n  hfsplus: remove unnecessary dentry_unhash on rmdir, dir rename\n  hfs: remove unnecessary dentry_unhash on rmdir, dir rename\n  omfs: remove unnecessary dentry_unhash on rmdir, dir rneame\n  udf: remove unnecessary dentry_unhash from rmdir, dir rename\n  ...\n"
    },
    {
      "commit": "cf0f0536fa65ca1353476c49feed34891f3f7134",
      "tree": "f75e2b40e072821fe4ebfd19ab8b074cdd642cca",
      "parents": [
        "873ae4d5a8b282c6e2bbc09c6d59eeb1bec97ef7"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Fri May 27 13:41:56 2011 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 28 01:02:50 2011 -0400"
      },
      "message": "jffs2: remove unnecessary dentry_unhash from rmdir, dir rename\n\njffs2 does not have problems with references to unlinked directories.\n\nCC: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCC: linux-mtd@lists.infradead.org\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "29a6ccca3869bbe33879dae0cd7df2a1559eff54",
      "tree": "2d9d355d8662ede95af7bc812d686dc4d5f37ff3",
      "parents": [
        "426048313dfa7d65dbd2379b1665755511f9544f",
        "6a8a98b22b10f1560d5f90aded4a54234b9b2724"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 27 20:06:53 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 27 20:06:53 2011 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (97 commits)\n  mtd: kill CONFIG_MTD_PARTITIONS\n  mtd: remove add_mtd_partitions, add_mtd_device and friends\n  mtd: convert remaining users to mtd_device_register()\n  mtd: samsung onenand: convert to mtd_device_register()\n  mtd: omap2 onenand: convert to mtd_device_register()\n  mtd: txx9ndfmc: convert to mtd_device_register()\n  mtd: tmio_nand: convert to mtd_device_register()\n  mtd: socrates_nand: convert to mtd_device_register()\n  mtd: sharpsl: convert to mtd_device_register()\n  mtd: s3c2410 nand: convert to mtd_device_register()\n  mtd: ppchameleonevb: convert to mtd_device_register()\n  mtd: orion_nand: convert to mtd_device_register()\n  mtd: omap2: convert to mtd_device_register()\n  mtd: nomadik_nand: convert to mtd_device_register()\n  mtd: ndfc: convert to mtd_device_register()\n  mtd: mxc_nand: convert to mtd_device_register()\n  mtd: mpc5121_nfc: convert to mtd_device_register()\n  mtd: jz4740_nand: convert to mtd_device_register()\n  mtd: h1910: convert to mtd_device_register()\n  mtd: fsmc_nand: convert to mtd_device_register()\n  ...\n\nFixed up trivial conflicts in\n - drivers/mtd/maps/integrator-flash.c: removed in ARM tree\n - drivers/mtd/maps/physmap.c: addition of afs partition probe type\n   clashing with removal of CONFIG_MTD_PARTITIONS\n"
    },
    {
      "commit": "aa38572954ade525817fe88c54faebf85e5a61c0",
      "tree": "ef398ec06c97134592f62a49c99f3f80041b427c",
      "parents": [
        "d6e9bd256c88ce5f4b668249e363a74f51393daa"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri May 27 06:53:02 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri May 27 07:04:40 2011 -0400"
      },
      "message": "fs: pass exact type of data dirties to -\u003edirty_inode\n\nTell the filesystem if we just updated timestamp (I_DIRTY_SYNC) or\nanything else, so that the filesystem can track internally if it\nneeds to push out a transaction for fdatasync or not.\n\nThis is just the prototype change with no user for it yet.  I plan\nto push large XFS changes for the next merge window, and getting\nthis trivial infrastructure in this window would help a lot to avoid\ntree interdependencies.\n\nAlso remove incorrect comments that -\u003edirty_inode can\u0027t block.  That\nhas been changed a long time ago, and many implementations rely on it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e4eaac06bcccb2a70bca6a2de9871882dce2aa14",
      "tree": "ca6736d96294cd6e65a1c3055718bfd5adc7336e",
      "parents": [
        "79bf7c732b5ff75b96022ed9d29181afd3d2509c"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue May 24 13:06:07 2011 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu May 26 07:26:48 2011 -0400"
      },
      "message": "vfs: push dentry_unhash on rename_dir into file systems\n\nOnly a few file systems need this.  Start by pushing it down into each\nrename method (except gfs2 and xfs) so that it can be dealt with on a\nper-fs basis.\n\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "79bf7c732b5ff75b96022ed9d29181afd3d2509c",
      "tree": "74b8cc690f9a37fff02d0685464e1c695a25ef94",
      "parents": [
        "64252c75a2196a0cf1e0d3777143ecfe0e3ae650"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue May 24 13:06:06 2011 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu May 26 07:26:47 2011 -0400"
      },
      "message": "vfs: push dentry_unhash on rmdir into file systems\n\nOnly a few file systems need this.  Start by pushing it down into each\nfs rmdir method (except gfs2 and xfs) so it can be dealt with on a per-fs\nbasis.\n\nThis does not change behavior for any in-tree file systems.\n\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1ddd0d9a3177356f2a29c8f3826ad79e1ad18397",
      "tree": "040b7bdc00b8cba4e51440e5aa8d598555bc2678",
      "parents": [
        "3e45cf5e85a4f344fc4c8c901ac057a2402db125"
      ],
      "author": {
        "name": "Grant Erickson",
        "email": "marathon96@gmail.com",
        "time": "Fri Apr 08 08:51:34 2011 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed May 25 02:00:50 2011 +0100"
      },
      "message": "JFFS2: retry large buffer allocations\n\nReplace direct call to kmalloc for a potentially large, contiguous\nbuffer allocation with one to mtd_kmalloc_up_to which helps ensure the\noperation can succeed under low-memory, highly- fragmented situations\nalbeit somewhat more slowly.\n\nSigned-off-by: Grant Erickson \u003cmarathon96@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "8cb2a180abfa7b677c63cddfb21df9cefb27fe2d",
      "tree": "1282c6b780ab78cbbbbdd8960a3b97dddcc394de",
      "parents": [
        "d178e3e88f538323eb483df1563c8edfb71fdb39"
      ],
      "author": {
        "name": "Sergey Senozhatsky",
        "email": "sergey.senozhatsky@gmail.com",
        "time": "Tue Mar 22 14:11:02 2011 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed May 25 01:47:39 2011 +0100"
      },
      "message": "jffs2: remove unused variables\n\nRemove unused \u0027jffs2_sb_info *c\u0027 variable from \u0027jffs2_lookup()\u0027\nand \u0027jffs2_readdir()\u0027.\n\nSigned-off-by: Sergey Senozhatsky \u003csergey.senozhatsky@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "25985edcedea6396277003854657b5f3cb31a628",
      "tree": "f026e810210a2ee7290caeb737c23cb6472b7c38",
      "parents": [
        "6aba74f2791287ec407e0f92487a725a25908067"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Wed Mar 30 22:57:33 2011 -0300"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Thu Mar 31 11:26:23 2011 -0300"
      },
      "message": "Fix common misspellings\n\nFixes generated by \u0027codespell\u0027 and manually reviewed.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\n"
    },
    {
      "commit": "7bf7e370d5919112c223a269462cd0b546903829",
      "tree": "03ccc715239df14ae168277dbccc9d9cf4d8a2c8",
      "parents": [
        "68b1a1e786f29c900fa1c516a402e24f0ece622a",
        "d39dd11c3e6a7af5c20bfac40594db36cf270f42"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Mar 25 17:41:20 2011 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Mar 25 17:41:20 2011 +0200"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into for-linus-1\n\n* \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6: (9356 commits)\n  [media] rc: update for bitop name changes\n  fs: simplify iget \u0026 friends\n  fs: pull inode-\u003ei_lock up out of writeback_single_inode\n  fs: rename inode_lock to inode_hash_lock\n  fs: move i_wb_list out from under inode_lock\n  fs: move i_sb_list out from under inode_lock\n  fs: remove inode_lock from iput_final and prune_icache\n  fs: Lock the inode LRU list separately\n  fs: factor inode disposal\n  fs: protect inode-\u003ei_state with inode-\u003ei_lock\n  lib, arch: add filter argument to show_mem and fix private implementations\n  SLUB: Write to per cpu data when allocating it\n  slub: Fix debugobjects with lockless fastpath\n  autofs4: Do not potentially dereference NULL pointer returned by fget() in autofs_dev_ioctl_setpipefd()\n  autofs4 - remove autofs4_lock\n  autofs4 - fix d_manage() return on rcu-walk\n  autofs4 - fix autofs4_expire_indirect() traversal\n  autofs4 - fix dentry leak in autofs4_expire_direct()\n  autofs4 - reinstate last used update on access\n  vfs - check non-mountpoint dentry might block in __follow_mount_rcu()\n  ...\n\nNOTE!\n\nThis merge commit was created to fix compilation error. The block\ntree was merged upstream and removed the \u0027elv_queue_empty()\u0027\nfunction which the new \u0027mtdswap\u0027 driver is using. So a simple\nmerge of the mtd tree with upstream does not compile. And the\nmtd tree has already be published, so re-basing it is not an option.\n\nTo fix this unfortunate situation, I had to merge upstream into the\nmtd-2.6.git tree without committing, put the fixup patch on top of\nthis, and then commit this. The result is that we do not have commits\nwhich do not compile.\n\nIn other words, this merge commit \"merges\" 3 things: the MTD tree, the\nupstream tree, and the fixup patch.\n"
    },
    {
      "commit": "2e1496707560ecf98e9b0604622c0990f94861d3",
      "tree": "d1473b70fad31a903fedc87221680678a6c6c5f6",
      "parents": [
        "e795b71799ff0b27365020c9ddaa25d0d83f99c8"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serge@hallyn.com",
        "time": "Wed Mar 23 16:43:26 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 23 19:47:13 2011 -0700"
      },
      "message": "userns: rename is_owner_or_cap to inode_owner_or_capable\n\nAnd give it a kernel-doc comment.\n\n[akpm@linux-foundation.org: btrfs changed in linux-next]\nSigned-off-by: Serge E. Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Daniel Lezcano \u003cdaniel.lezcano@free.fr\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "565d76cb7d5fd7cb010fd690602280a69ab116ef",
      "tree": "beff4279da00976e10145820c22e699192056973",
      "parents": [
        "b12d12596992f608f5506a8dabe4d1299594bd1e"
      ],
      "author": {
        "name": "Jim Keniston",
        "email": "jkenisto@linux.vnet.ibm.com",
        "time": "Tue Mar 22 16:35:12 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 22 17:44:17 2011 -0700"
      },
      "message": "zlib: slim down zlib_deflate() workspace when possible\n\nInstead of always creating a huge (268K) deflate_workspace with the\nmaximum compression parameters (windowBits\u003d15, memLevel\u003d8), allow the\ncaller to obtain a smaller workspace by specifying smaller parameter\nvalues.\n\nFor example, when capturing oops and panic reports to a medium with\nlimited capacity, such as NVRAM, compression may be the only way to\ncapture the whole report.  In this case, a small workspace (24K works\nfine) is a win, whether you allocate the workspace when you need it (i.e.,\nduring an oops or panic) or at boot time.\n\nI\u0027ve verified that this patch works with all accepted values of windowBits\n(positive and negative), memLevel, and compression level.\n\nSigned-off-by: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bea9312839c51853a2837336405c829b0bf18f88",
      "tree": "a352bb715a7e178be0e35912c65c766ec70c54ca",
      "parents": [
        "775adc3d44c8076d3e475fabebb61c08421c4421"
      ],
      "author": {
        "name": "Tracey Dent",
        "email": "tdent48227@gmail.com",
        "time": "Sat Feb 26 11:15:13 2011 -0500"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Mar 11 14:22:48 2011 +0000"
      },
      "message": "jffs2: remove a trailing white space in commentaries\n\nSigned-off-by: Tracey Dent \u003ctdent48227@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "fe3fa43039d47ee4e22caf460b79b62a14937f79",
      "tree": "9eab8d00f1227b9fe0959f32a62d892ed35803ba",
      "parents": [
        "ee009e4a0d4555ed522a631bae9896399674f064",
        "026eb167ae77244458fa4b4b9fc171209c079ba7"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Mar 08 11:38:10 2011 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Mar 08 11:38:10 2011 +1100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.infradead.org/users/eparis/selinux into next\n"
    },
    {
      "commit": "2a7dba391e5628ad665ce84ef9a6648da541ebab",
      "tree": "ba0722bd74d2c883dbda7ff721850bab411cac04",
      "parents": [
        "821404434f3324bf23f545050ff64055a149766e"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Feb 01 11:05:39 2011 -0500"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Feb 01 11:12:29 2011 -0500"
      },
      "message": "fs/vfs/security: pass last path component to LSM on inode creation\n\nSELinux would like to implement a new labeling behavior of newly created\ninodes.  We currently label new inodes based on the parent and the creating\nprocess.  This new behavior would also take into account the name of the\nnew object when deciding the new label.  This is not the (supposed) full path,\njust the last component of the path.\n\nThis is very useful because creating /etc/shadow is different than creating\n/etc/passwd but the kernel hooks are unable to differentiate these\noperations.  We currently require that userspace realize it is doing some\ndifficult operation like that and than userspace jumps through SELinux hoops\nto get things set up correctly.  This patch does not implement new\nbehavior, that is obviously contained in a seperate SELinux patch, but it\ndoes pass the needed name down to the correct LSM hook.  If no such name\nexists it is fine to pass NULL.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\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": "b74c79e99389cd79b31fcc08f82c24e492e63c7e",
      "tree": "763c6b412517306670bc625e90035f2d16bb739f",
      "parents": [
        "34286d6662308d82aed891852d04c7c3a2649b16"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:49:58 2011 +1100"
      },
      "committer": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:50:29 2011 +1100"
      },
      "message": "fs: provide rcu-walk aware permission i_ops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@kernel.dk\u003e\n"
    },
    {
      "commit": "fa0d7e3de6d6fc5004ad9dea0dd6b286af8f03e9",
      "tree": "203e0f73883e4c26b5597e36042386a1237dab35",
      "parents": [
        "77812a1ef139d84270d27faacc0630c887411013"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:49:49 2011 +1100"
      },
      "committer": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:50:26 2011 +1100"
      },
      "message": "fs: icache RCU free inodes\n\nRCU free the struct inode. This will allow:\n\n- Subsequent store-free path walking patch. The inode must be consulted for\n  permissions when walking, so an RCU inode reference is a must.\n- sb_inode_list_lock to be moved inside i_lock because sb list walkers who want\n  to take i_lock no longer need to take sb_inode_list_lock to walk the list in\n  the first place. This will simplify and optimize locking.\n- Could remove some nested trylock loops in dcache code\n- Could potentially simplify things a bit in VM land. Do not need to take the\n  page lock to follow page-\u003emapping.\n\nThe downsides of this is the performance cost of using RCU. In a simple\ncreat/unlink microbenchmark, performance drops by about 10% due to inability to\nreuse cache-hot slab objects. As iterations increase and RCU freeing starts\nkicking over, this increases to about 20%.\n\nIn cases where inode lifetimes are longer (ie. many inodes may be allocated\nduring the average life span of a single inode), a lot of this cache reuse is\nnot applicable, so the regression caused by this patch is smaller.\n\nThe cache-hot regression could largely be avoided by using SLAB_DESTROY_BY_RCU,\nhowever this adds some complexity to list walking and store-free path walking,\nso I prefer to implement this at a later date, if it is shown to be a win in\nreal situations. I haven\u0027t found a regression in any non-micro benchmark so I\ndoubt it will be a problem.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@kernel.dk\u003e\n"
    },
    {
      "commit": "027d9ac2c8de9f70b7319e08dee121b8b85c8d88",
      "tree": "bc9e1594b7eda240a1dc83f17e05d48fa4feb524",
      "parents": [
        "f326966b3df47f4fa7e90425f60efdd30c31fe19"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Mon Nov 15 21:20:05 2010 +0300"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Dec 03 16:30:40 2010 +0000"
      },
      "message": "jffs2: typo in comment\n\nIt says FB instead of FS (file system).\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "f326966b3df47f4fa7e90425f60efdd30c31fe19",
      "tree": "ddcdba70b6623d3d6575a2b9c2b609a397ff85ac",
      "parents": [
        "23079f94daabc4e06436ab2b643fac31dec017d1"
      ],
      "author": {
        "name": "Vasiliy Kulikov",
        "email": "segoon@openwall.com",
        "time": "Sun Nov 14 23:08:39 2010 +0300"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Dec 03 16:30:08 2010 +0000"
      },
      "message": "jffs2: fix error value sign\n\ndo_verify_xattr_datum(), do_load_xattr_datum(), load_xattr_datum()\nand verify_xattr_ref() should return negative value on error.\nSometimes they return EIO that is positive.  Change this to -EIO.\n\nSigned-off-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "7ddbead6e6d3c730570a215ab9a6b1d126c54d34",
      "tree": "75796cc72f06620d768d733cd4f5478d573cc9c3",
      "parents": [
        "309b5e4e4154721f8079bc250d2233fd4b3aa039"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Thu Nov 04 20:08:02 2010 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Dec 03 16:27:34 2010 +0000"
      },
      "message": "jffs2: use vzalloc\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "79346507ad48895f41b438fa562b1965721f36b9",
      "tree": "5c115ce87f1fbc0b530f30db56cecf824e9f6e05",
      "parents": [
        "706d4b12f8d7edd28d7e879a77235472da393edb",
        "40847437f15221b5822ba70550e8b9fcccfb9bb3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 30 08:31:35 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 30 08:31:35 2010 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (82 commits)\n  mtd: fix build error in m25p80.c\n  mtd: Remove redundant mutex from mtd_blkdevs.c\n  MTD: Fix wrong check register_blkdev return value\n  Revert \"mtd: cleanup Kconfig dependencies\"\n  mtd: cfi_cmdset_0002: make sector erase command variable\n  mtd: cfi_cmdset_0002: add CFI detection for SST 38VF640x chips\n  mtd: cfi_util: add support for switching SST 39VF640xB chips into QRY mode\n  mtd: cfi_cmdset_0001: use defined value of P_ID_INTEL_PERFORMANCE instead of hardcoded one\n  block2mtd: dubious assignment\n  P4080/mtd: Fix the freescale lbc issue with 36bit mode\n  P4080/eLBC: Make Freescale elbc interrupt common to elbc devices\n  mtd: phram: use KBUILD_MODNAME\n  mtd: OneNAND: S5PC110: Fix double call suspend \u0026 resume function\n  mtd: nand: fix MTD_MODE_RAW writes\n  jffs2: use kmemdup\n  mtd: sm_ftl: cosmetic, use bool when possible\n  mtd: r852: remove useless pci powerup/down from suspend/resume routines\n  mtd: blktrans: fix a race vs kthread_stop\n  mtd: blktrans: kill BKL\n  mtd: allow to unload the mtdtrans module if its block devices aren\u0027t open\n  ...\n\nFix up trivial whitespace-introduced conflict in drivers/mtd/mtdchar.c\n"
    },
    {
      "commit": "67577927e8d7a1f4b09b4992df640eadc6aacb36",
      "tree": "2e9efe6b5745965faf0dcc084d4613d9356263f9",
      "parents": [
        "6fe4c590313133ebd5dadb769031489ff178ece1",
        "51f00a471ce8f359627dd99aeac322947a0e491b"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sat Oct 30 12:35:11 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sat Oct 30 12:35:11 2010 +0100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git\n\nConflicts:\n\tdrivers/mtd/mtd_blkdevs.c\n\nMerge Grant\u0027s device-tree bits so that we can apply the subsequent fixes.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "848b83a59b772b8f102bc5e3f1187c2fa5676959",
      "tree": "d09a3755252e73f4bef000ffafbc0e9fd72d1a38",
      "parents": [
        "152a08366671080f27b32e0c411ad620c5f88b57"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 25 00:56:46 2010 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 29 04:16:26 2010 -0400"
      },
      "message": "convert get_sb_mtd() users to -\u003emount()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7de9c6ee3ecffd99e1628e81a5ea5468f7581a1f",
      "tree": "88787e77ba8a253d0a26aeda4bd5e58532d592e0",
      "parents": [
        "646ec4615cd05972581c9c5342ed7a1e77df17bb"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Oct 23 11:11:40 2010 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Oct 25 21:26:11 2010 -0400"
      },
      "message": "new helper: ihold()\n\nClones an existing reference to inode; caller must already hold one.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "04aadf36de625647c72ec24c7e901896dd2a99e6",
      "tree": "ea18c6ebb29229e9412748b16b438cefd28590c0",
      "parents": [
        "334e5f56f176e19f7a85c23152bd7901d2991380"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Sun Oct 17 21:56:15 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Oct 25 01:33:15 2010 +0100"
      },
      "message": "jffs2: use kmemdup\n\nConvert a sequence of kmalloc and memcpy to use kmemdup.\n\nThe semantic patch that performs this transformation is:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\nexpression a,flag,len;\nexpression arg,e1,e2;\nstatement S;\n@@\n\n  a \u003d\n-  \\(kmalloc\\|kzalloc\\)(len,flag)\n+  kmemdup(arg,len,flag)\n  \u003c... when !\u003d a\n  if (a \u003d\u003d NULL || ...) S\n  ...\u003e\n- memcpy(a,arg,len+1);\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "41bdc602eca8738d6f3c71235744f72d888fe6b4",
      "tree": "93a747b3a9cab9fec548fef795d6fa4102b11558",
      "parents": [
        "81cfc9f1f4ad8d335367bb393bd042cc45b00047"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "Joakim.Tjernlund@transmode.se",
        "time": "Thu Oct 07 19:09:34 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Oct 25 01:12:20 2010 +0100"
      },
      "message": "jffs2: Reduce excessive scan of empty blocks\n\nScanning 1024 bytes to see if an EB is empty is a bit much.\nLower it to 256 bytes and make sure the while loop is\noptimized.\n\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "81cfc9f1f4ad8d335367bb393bd042cc45b00047",
      "tree": "9ba0193e5ba52abe543b12cde711fc061043ad76",
      "parents": [
        "733daa52b8d358e7c18be7fb9f82afc0619408f4"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "Joakim.Tjernlund@transmode.se",
        "time": "Thu Oct 07 18:01:44 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Oct 25 01:06:22 2010 +0100"
      },
      "message": "jffs2: Fix serious write stall due to erase\n\nDrop the alloc_sem before erasing flash in\njffs2_garbage_collect_pass().\nOtherwise writes are put on hold until the erase\nhas finised.\n\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "65e5a0e18e5fb5bc6cfabd8ef4b9fc1c8569ba62",
      "tree": "0790ae9e682c5de24b0ffd7111a0bfab4f03aab3",
      "parents": [
        "b46daf7eb1a143169699a8f9df634aa751a6ddde"
      ],
      "author": {
        "name": "Daniel Drake",
        "email": "dsd@laptop.org",
        "time": "Thu Oct 07 19:14:02 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Oct 25 00:57:19 2010 +0100"
      },
      "message": "jffs2: Dynamically choose inocache hash size\n\nWhen JFFS2 is used for large volumes, the mount times are quite long.\nIncreasing the hash size provides a significant speed boost on the OLPC\nXO-1 laptop.\n\nAdd logic that dynamically selects a hash size based on the size of\nthe medium. A 64mb medium will result in a hash size of 128, and a 512mb\nmedium will result in a hash size of 1024.\n\nSigned-off-by: Daniel Drake \u003cdsd@laptop.org\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "088bd455c954c0c42edde9d4463e44be10101aac",
      "tree": "fb1f5d05429bc1f68330adb8cc08cdb0741f5357",
      "parents": [
        "d0f7959e2b708d775c3b6b53cc6a8abb8ff0a00b"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Wed Sep 22 22:52:33 2010 -0400"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Oct 25 00:49:11 2010 +0100"
      },
      "message": "jffs2: drop unused model argument\n\nThe jffs2 compression framework provides a \"model\" argument when\ncompressing and decompressing, but the caller always passes in NULL\nand the callees never use it.  So punt this useless overhead.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "3866f673ebd86e5be2533923f5c0aed91fe1669f",
      "tree": "ad86078472f545ddb7a607d1e7b115472855dd1d",
      "parents": [
        "d2ac467a108400ff1ae682a423c7d41265e62d47"
      ],
      "author": {
        "name": "Wolfram Sang",
        "email": "w.sang@pengutronix.de",
        "time": "Wed Sep 01 18:03:41 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Oct 25 00:14:01 2010 +0100"
      },
      "message": "jffs2: use cond_resched() instead of yield()\n\nyield() has different semantics meanwhile and even causes RT-kernels to\nBUG. Replace the only appearance left in jffs2.\n\nSigned-off-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "1a028dd2dd589c3924d9711a1b073a13c820b6b5",
      "tree": "e93d344ef2f9f0e318a94e530cdfa1dc208feda5",
      "parents": [
        "18dfe89d7c394b56e20e06dde8b7a80ff96cf02c"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Sep 16 16:11:09 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Mon Oct 04 21:10:50 2010 +0200"
      },
      "message": "BKL: Remove BKL from jffs2\n\nThe BKL is only used in put_super, fill_super and remount_fs that are all\nthree protected by the superblocks s_umount rw_semaphore. Therefore it is\nsafe to remove the BKL entirely.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "db71922217a214e5c9268448e537b54fc1f301ea",
      "tree": "9c9afbf29411547891f6968e5ade29ce59d66c07",
      "parents": [
        "899611ee7d373e5eeda08e9a8632684e1ebbbf00"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@infradead.org",
        "time": "Sun Aug 15 22:51:10 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Mon Oct 04 21:10:10 2010 +0200"
      },
      "message": "BKL: Explicitly add BKL around get_sb/fill_super\n\nThis patch is a preparation necessary to remove the BKL from do_new_mount().\nIt explicitly adds calls to lock_kernel()/unlock_kernel() around\nget_sb/fill_super operations for filesystems that still uses the BKL.\n\nI\u0027ve read through all the code formerly covered by the BKL inside\ndo_kern_mount() and have satisfied myself that it doesn\u0027t need the BKL\nany more.\n\ndo_kern_mount() is already called without the BKL when mounting the rootfs\nand in nfsctl. do_kern_mount() calls vfs_kern_mount(), which is called\nfrom various places without BKL: simple_pin_fs(), nfs_do_clone_mount()\nthrough nfs_follow_mountpoint(), afs_mntpt_do_automount() through\nafs_mntpt_follow_link(). Both later functions are actually the filesystems\nfollow_link inode operation. vfs_kern_mount() is calling the specified\nget_sb function and lets the filesystem do its job by calling the given\nfill_super function.\n\nTherefore I think it is safe to push down the BKL from the VFS to the\nlow-level filesystems get_sb/fill_super operation.\n\n[arnd: do not add the BKL to those file systems that already\n       don\u0027t use it elsewhere]\n\nSigned-off-by: Jan Blunck \u003cjblunck@infradead.org\u003e\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "e8a89cebdbaab14caaa26debdb4ffd493b8831af",
      "tree": "e0843f082628408ce259c72db36da54dff603987",
      "parents": [
        "8196867c74890ccdf40a2b5e3e173597fbc4f9ac",
        "6ae0185fe201eae0548dace2a84acb5050fc8606"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 11:49:21 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 11:49:21 2010 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (79 commits)\n  mtd: Remove obsolete \u003cmtd/compatmac.h\u003e include\n  mtd: Update copyright notices\n  jffs2: Update copyright notices\n  mtd-physmap: add support users can assign the probe type in board files\n  mtd: remove redwood map driver\n  mxc_nand: Add v3 (i.MX51) Support\n  mxc_nand: support 8bit ecc\n  mxc_nand: fix correct_data function\n  mxc_nand: add V1_V2 namespace to registers\n  mxc_nand: factor out a check_int function\n  mxc_nand: make some internally used functions overwriteable\n  mxc_nand: rework get_dev_status\n  mxc_nand: remove 0xe00 offset from registers\n  mtd: denali: Add multi connected NAND support\n  mtd: denali: Remove set_ecc_config function\n  mtd: denali: Remove unuseful code in get_xx_nand_para functions\n  mtd: denali: Remove device_info_tag structure\n  mtd: m25p80: add support for the Winbond W25Q32 SPI flash chip\n  mtd: m25p80: add support for the Intel/Numonyx {16,32,64}0S33B SPI flash chips\n  mtd: m25p80: add support for the EON EN25P{32, 64} SPI flash chips\n  ...\n\nFix up trivial conflicts in drivers/mtd/maps/{Kconfig,redwood.c} due to\nredwood driver removal.\n"
    },
    {
      "commit": "b57922d97fd6f79b6dbe6db0c4fd30d219fa08c1",
      "tree": "1d39e9cd8e1c1f502fb7e985a08286859c69aa36",
      "parents": [
        "45321ac54316eaeeebde0b5f728a1791e500974c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 07 14:34:48 2010 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:48:37 2010 -0400"
      },
      "message": "convert remaining -\u003eclear_inode() to -\u003eevict_inode()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "41cce647f8dbe26941bed2158fad0839aab7a294",
      "tree": "36465b993cae7523a61bc21f988da2c02d8db785",
      "parents": [
        "1e2317350971c8b01e6adddc798a00e9bcc1a440"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 08 13:24:56 2010 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:47:41 2010 -0400"
      },
      "message": "jffs2: don\u0027t open-code iget_failed()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2c27c65ed0696f0b5df2dad2cf6462d72164d547",
      "tree": "7d9036e3dea98938f7fd7074366ee73929e9b2e5",
      "parents": [
        "db78b877f7744bec4a9d9f9e7d10da3931d7cd39"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Jun 04 11:30:04 2010 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:47:39 2010 -0400"
      },
      "message": "check ATTR_SIZE contraints in inode_change_ok\n\nMake sure we check the truncate constraints early on in -\u003esetattr by adding\nthose checks to inode_change_ok.  Also clean up and document inode_change_ok\nto make this obvious.\n\nAs a fallout we don\u0027t have to call inode_newsize_ok from simple_setsize and\nsimplify it down to a truncate_setsize which doesn\u0027t return an error.  This\nsimplifies a lot of setattr implementations and means we use truncate_setsize\nalmost everywhere.  Get rid of fat_setsize now that it\u0027s trivial and mark\next2_setsize static to make the calling convention obvious.\n\nKeep the inode_newsize_ok in vmtruncate for now as all callers need an\naudit for its removal anyway.\n\nNote: setattr code in ecryptfs doesn\u0027t call inode_change_ok at all and\nneeds a deeper audit, but that is left for later.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6ae0185fe201eae0548dace2a84acb5050fc8606",
      "tree": "f06bfb2302f84f178875d710c9ebb6425011fe2b",
      "parents": [
        "a1452a3771c4eb85bd779790b040efdc36f4274e"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sun Aug 08 21:19:42 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sun Aug 08 21:19:42 2010 +0100"
      },
      "message": "mtd: Remove obsolete \u003cmtd/compatmac.h\u003e include\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "6088c0587706b2cf21ce50c11576718bff5fae0c",
      "tree": "3bbbd3309e688d10dfdb32f8d38062e8db57727e",
      "parents": [
        "78ef7fab0eb0a5b159842bac89aed74bb0aa7bfe"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sun Aug 08 14:15:22 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sun Aug 08 14:15:22 2010 +0100"
      },
      "message": "jffs2: Update copyright notices\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "a4ce96ac356e7024a7724ade9d18ba1bdf3c5c06",
      "tree": "e7699a6b2eb0f4f9e63c1bbeeb6f1471eec80dab",
      "parents": [
        "f4b23cc2d5dc78ef5acbc529eb1219cc41eb5b96"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 21 09:25:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 21 09:25:42 2010 -0700"
      },
      "message": "Fix up trivial spelling errors (\u0027taht\u0027 -\u003e \u0027that\u0027)\n\nPointed out by Lucas who found the new one in a comment in\nsetup_percpu.c. And then I fixed the others that I grepped\nfor.\n\nReported-by: Lucas \u003ccanolucas@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3975d16760d4be7402d1067c548c30c427971331",
      "tree": "4fa12ee1e8aabf1352307455163dabe293ed4874",
      "parents": [
        "4d3d769c605ebdf9fbb5a9d63827598b48351861",
        "1c24d06f8e065023ebb428db5af5514500839ee6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 07 17:10:06 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 07 17:10:06 2010 -0700"
      },
      "message": "Merge git://git.infradead.org/~dwmw2/mtd-2.6.35\n\n* git://git.infradead.org/~dwmw2/mtd-2.6.35:\n  jffs2: update ctime when changing the file\u0027s permission by setfacl\n  jffs2: Fix NFS race by using insert_inode_locked()\n  jffs2: Fix in-core inode leaks on error paths\n  mtd: Fix NAND submenu\n  mtd/r852: update card detect early.\n  mtd/r852: Fixes in case of DMA timeout\n  mtd/r852: register IRQ as last step\n  drivers/mtd: Use memdup_user\n  docbook: make mtd nand module init static\n"
    },
    {
      "commit": "1c24d06f8e065023ebb428db5af5514500839ee6",
      "tree": "7129de8867c8b3e7700ae0b1a2310c6fcb60ef16",
      "parents": [
        "e72e6497e74811e01d72b4c1b7537b3aea3ee857"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jun 04 17:07:55 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sun Jun 06 11:27:10 2010 +0100"
      },
      "message": "jffs2: update ctime when changing the file\u0027s permission by setfacl\n\njffs2 didn\u0027t update the ctime of the file when its permission was changed.\n\nSteps to reproduce:\n # touch aaa\n # stat -c %Z aaa\n 1275289822\n # setfacl -m  \u0027u::x,g::x,o::x\u0027 aaa\n # stat -c %Z aaa\n 1275289822                         \u003c- unchanged\n\nBut, according to the spec of the ctime, jffs2 must update it.\n\nPort of ext3 patch by Miao Xie \u003cmiaox@cn.fujitsu.com\u003e.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "e72e6497e74811e01d72b4c1b7537b3aea3ee857",
      "tree": "d78dec67d0aaeea807e5ab32141802620ec7ae41",
      "parents": [
        "f324e4cb2cadd9a42932c8a158e761ae31b88e72"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Jun 03 08:09:12 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Jun 03 08:22:04 2010 +0100"
      },
      "message": "jffs2: Fix NFS race by using insert_inode_locked()\n\nNew inodes need to be locked as we\u0027re creating them, so they don\u0027t get used\nby other things (like NFSd) before they\u0027re ready.\n\nPointed out by Al Viro.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "f324e4cb2cadd9a42932c8a158e761ae31b88e72",
      "tree": "deb742349c87becaa711a807c0c13b5b7a857c02",
      "parents": [
        "5869d2c387e75814334697c9d702d91b7c63a308"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Jun 03 08:03:39 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Jun 03 08:03:39 2010 +0100"
      },
      "message": "jffs2: Fix in-core inode leaks on error paths\n\nPointed out by Al Viro.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "15c6fd9786dfaab43547bf60df6fa63170fb64fc",
      "tree": "afd997b3402761e28b6c39f414fbd93c69fdcdce",
      "parents": [
        "7bb46a6734a7e1ad4beaecc11cae7ed3ff81d30f"
      ],
      "author": {
        "name": "npiggin@suse.de",
        "email": "npiggin@suse.de",
        "time": "Thu May 27 01:05:34 2010 +1000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu May 27 22:15:42 2010 -0400"
      },
      "message": "kill spurious reference to vmtruncate\n\nLots of filesystems calls vmtruncate despite not implementing the old\n-\u003etruncate method.  Switch them to use simple_setsize and add some\ncomments about the truncate code where it seems fitting.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7ea8085910ef3dd4f3cad6845aaa2b580d39b115",
      "tree": "d9c1edb5906f943f7d70bfb4b65106e29772d379",
      "parents": [
        "cc967be54710d97c05229b2e5ba2d00df84ddd64"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed May 26 17:53:25 2010 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu May 27 22:05:02 2010 -0400"
      },
      "message": "drop unused dentry argument to -\u003efsync\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "365f0cb9d2d5eea911798935133e8dd27ea5f3fc",
      "tree": "e5933598e73facb959e43cd374029a85e89e38de",
      "parents": [
        "46e58764f0c502847ed1f4662aa37eefa602a8f9"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu May 13 17:53:21 2010 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri May 21 18:31:20 2010 -0400"
      },
      "message": "jffs2: constify xattr_handler\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9723152ad1efb844445e63f052e6d39e85e11649",
      "tree": "9abe25074d3c64f06859f0cba3b33c758a91d090",
      "parents": [
        "64a5c2eb82d2a626116fde8a0ea3bb39a3f4f233"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "joakim.tjernlund@transmode.se",
        "time": "Wed May 19 17:16:11 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed May 19 17:16:11 2010 +0100"
      },
      "message": "jffs2: Stop triggering block erases from jffs2_write_super()\n\nThis is the culmination of this sequence of patches. By moving the block\nerasing from jffs2_write_super() into the GC code, we avoid huge\nlatencies on unmount where it waits for _all_ pending blocks to be\nerased, and we allow better control for time-critical tasks by stopping\nthe GC thread.\n\nSigned-off-by: Joakim Tjernlund \u003cjoakim.tjernlund@transmode.se\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "64a5c2eb82d2a626116fde8a0ea3bb39a3f4f233",
      "tree": "2c3df4e9dbee07c56b9edd01a700f1d8a4329d0d",
      "parents": [
        "ae3b6ba06c8ed399ef920724ee8136e540878294"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "joakim.tjernlund@transmode.se",
        "time": "Wed May 19 17:13:19 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed May 19 17:15:36 2010 +0100"
      },
      "message": "jffs2: Rename jffs2_erase_pending_trigger() to jffs2_dirty_trigger()\n\nNow that we do erases from GC and trigger the GC thread to do them\ninstead of using kupdated, this function is misnamed. It\u0027s only used\nfor triggering wbuf flush on NAND flash now. Rename it accordingly.\n\nSigned-off-by: Joakim Tjernlund \u003cjoakim.tjernlund@transmode.se\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "ae3b6ba06c8ed399ef920724ee8136e540878294",
      "tree": "427f89ac31defa7b3114c50ab706c0f6df539136",
      "parents": [
        "acb64a43e4503fbea9faf123f2403da7af8831eb"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed May 19 17:05:14 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed May 19 17:10:44 2010 +0100"
      },
      "message": "jffs2: Use jffs2_garbage_collect_trigger() to trigger pending erases\n\nThis is now done in a GC pass; we don\u0027t need to trigger kupdated to do it.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "acb64a43e4503fbea9faf123f2403da7af8831eb",
      "tree": "862d5ad6530b7c8671bda96a1bd1d07179f0b7c9",
      "parents": [
        "d6ce171069635f05737935adc813b4d48d71a583"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed May 19 17:00:10 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed May 19 17:10:22 2010 +0100"
      },
      "message": "jffs2: Require jffs2_garbage_collect_trigger() to be called with lock held\n\nWe\u0027re about to call this from a bunch of places which already hold\nc-\u003eerase_completion_lock, so add an assertion and change its existing\ncallers to do the same.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "d6ce171069635f05737935adc813b4d48d71a583",
      "tree": "b0356df55a3d86cf9f5074ea926294fd3a206607",
      "parents": [
        "0717bf8411bb673dd2369aaa096f7396446b38f5"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "joakim.tjernlund@transmode.se",
        "time": "Wed May 19 16:55:40 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed May 19 16:55:40 2010 +0100"
      },
      "message": "jffs2: Wake GC thread when there are blocks to be erased\n\nNow that we trigger block erases from jffs2_garbage_collect_pass(),\nadjust jffs2_thread_should_wake() to return 1 when there are blocks to\nerase.\n\nSigned-off-by: Joakim Tjernlund \u003cjoakim.tjernlund@transmode.se\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    }
  ],
  "next": "0717bf8411bb673dd2369aaa096f7396446b38f5"
}
