)]}'
{
  "log": [
    {
      "commit": "07ccb7bf2c928fef4fea2cda69ba2e23479578db",
      "tree": "6aee126126d3a1245b5b9f79abe2101098392187",
      "parents": [
        "0e5a9fb0426108d750c97c25b1ab04d3768b5aff"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Feb 12 10:10:55 2010 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Feb 12 10:16:14 2010 +0000"
      },
      "message": "GFS2: Fix bmap allocation corner-case bug\n\nThis patch solves a corner case during allocation which occurs if both\nmetadata (indirect) and data blocks are required but there is an\nobstacle in the filesystem (e.g. a resource group header or another\nallocated block) such that when the allocation is requested only\nenough blocks for the metadata are returned.\n\nBy changing the exit condition of this loop, we ensure that a\nminimum of one data block will always be returned.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "0e5a9fb0426108d750c97c25b1ab04d3768b5aff",
      "tree": "99a3b2f6ff12b9e55b6590210d0a5ef8e852156b",
      "parents": [
        "676ad585531e965416fd958747894541dabcec96"
      ],
      "author": {
        "name": "Abhijith Das",
        "email": "adas@redhat.com",
        "time": "Fri Feb 05 18:25:41 2010 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Feb 12 10:15:51 2010 +0000"
      },
      "message": "GFS2: Fix error code\n\nWe need this one-liner to signal the mount helper of the \u0027insufficient journals\u0027 condition.\n\nSigned-off-by: Abhijith Das \u003cadas@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "8f05228ee7c8f409ae3c6f9c3e13d7ccb9c18360",
      "tree": "34e8cf87485edf4ecb6878ade96704975e5d5bf5",
      "parents": [
        "e402746a945ceb9d0486a8e3d5917c9228fa4404"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jan 29 15:21:27 2010 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Feb 03 09:56:21 2010 +0000"
      },
      "message": "GFS2: Extend umount wait coverage to full glock lifetime\n\nAlthough all glocks are, by the time of the umount glock wait,\nscheduled for demotion, some of them haven\u0027t made it far\nenough through the process for the original set of waiting\ncode to wait for them.\n\nThis extends the ref count to the whole glock lifetime in order\nto ensure that the waiting does catch all glocks. It does make\nit a bit more invasive, but it seems the only sensible solution\nat the moment.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "e402746a945ceb9d0486a8e3d5917c9228fa4404",
      "tree": "c2e6c4d619c1cf35e97b16a9849517871c15d97b",
      "parents": [
        "1a45dcfe2525e9432cb4aba461d4994fc2befe42"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Jan 25 11:20:19 2010 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Feb 03 09:47:04 2010 +0000"
      },
      "message": "GFS2: Wait for unlock completion on umount\n\nThis patch adds a wait on umount between the point at which we\ndispose of all glocks and the point at which we unmount the\nlock protocol. This ensures that we\u0027ve received all the replies\nto our unlock requests before we stop the locking.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nReported-by: Fabio M. Di Nitto \u003cfdinitto@redhat.com\u003e\n"
    },
    {
      "commit": "ea8d62dadd0217334fb2c5d60e7f89e14076ca10",
      "tree": "f8cb57f71f97152782b77fcc8a76cf6b00756dd6",
      "parents": [
        "7fe3ec6fe58d2bfe97fe7a5d731c29299a8ffd35"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jan 29 15:48:57 2010 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Feb 01 10:01:34 2010 +0000"
      },
      "message": "GFS2: Use GFP_NOFS for alloc structure\n\nThis is called under a glock, so its a good plan to use GFP_NOFS\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "7fe3ec6fe58d2bfe97fe7a5d731c29299a8ffd35",
      "tree": "11f06ae31f0f1f843ca6db94318c168ac2e0b2b2",
      "parents": [
        "55f0b4c546d1c87cccba63dc0fc5eb70e2b41733"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jan 29 15:20:34 2010 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Feb 01 10:00:23 2010 +0000"
      },
      "message": "GFS2: Fix previous patch\n\nThe do_div() call needs to remain.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "55f0b4c546d1c87cccba63dc0fc5eb70e2b41733",
      "tree": "c6343de5ed38538f7f9b572c4fc3155edad9db79",
      "parents": [
        "0f585f14d4e34ab701283e9237ac7695cd7c9e31"
      ],
      "author": {
        "name": "Benjamin Marzinski",
        "email": "bmarzins@redhat.com",
        "time": "Mon Jan 25 11:23:24 2010 -0600"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Feb 01 09:59:54 2010 +0000"
      },
      "message": "GFS2: Don\u0027t withdraw on partial rindex entries\n\nince gfs2 writes the rindex file a block at a time, and releases the\nexclusive lock after each block, it is possible that another process\nwill grab the lock in the middle of the write.  Since rindex entries are\nnot an even divisor of blocks, that other process may see partial\nentries.  On grows, this is fine.  The process can simply ignore the the\npartial entires. Previously, the code withdrew when it saw partial\nentries. Now it simply ignores them.\n\nSigned-off-by: Benjamin Marzinski \u003cbmarzins@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "0f585f14d4e34ab701283e9237ac7695cd7c9e31",
      "tree": "7ded56c8f9ddc84d4930a5a9f0f52c9b1464f6e1",
      "parents": [
        "066000dd856709b6980123eb39b957fe26993f7b"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Tue Jan 12 03:36:57 2010 +0900"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Jan 12 09:30:15 2010 +0000"
      },
      "message": "GFS2: Fix refcnt leak on gfs2_follow_link() error path\n\nIf -\u003efollow_link handler return the error, it should decrement\nnd-\u003epath refcnt.\n\nThis patch fix it.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "ba198098a21a5dc8885fddfb308135bc2f138003",
      "tree": "69202dabd5fd67b46da9ed8af230b8adb98c2b21",
      "parents": [
        "e412bdb1260d13ec5e7b90b537fec2179d6f8989"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jan 08 13:44:49 2010 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Jan 11 08:57:55 2010 +0000"
      },
      "message": "GFS2: Use MAX_LFS_FILESIZE for meta inode size\n\nUsing ~0ULL was cauing sign issues in filemap_fdatawrite_range, so\nuse MAX_LFS_FILESIZE instead.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "e412bdb1260d13ec5e7b90b537fec2179d6f8989",
      "tree": "cf0a89cfefd556c414c5b4a1f47b71ad7218865a",
      "parents": [
        "24b977b5fdea09bf356428870d32c09a275c8a3e"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Dec 21 13:55:28 2009 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jan 08 13:42:59 2010 +0000"
      },
      "message": "GFS2: Fix gfs2_xattr_acl_chmod()\n\nThe ref counting for the bh returned by gfs2_ea_find() was\nwrong. This patch ensures that we always drop the ref count\nto that bh correctly.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "24b977b5fdea09bf356428870d32c09a275c8a3e",
      "tree": "60b93ab4d8ac034952d658a35057d5e729bd331a",
      "parents": [
        "56aa616a03feca630d5afce647367a5d8cfc67b8"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Dec 09 13:55:12 2009 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jan 08 13:42:42 2010 +0000"
      },
      "message": "GFS2: Fix locking bug in rename\n\nThe rename code was taking a resource group lock in cases where\nit wasn\u0027t actually needed, this caused problems if the rename\nwas resulting in an inode being unlinked. The patch ensures that\nwe only take the rgrp lock early if it is really needed.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "56aa616a03feca630d5afce647367a5d8cfc67b8",
      "tree": "a4b4feb0d2ac0f329b98748445adb90a6458a2e9",
      "parents": [
        "74d2e4f8d79ae0c4b6ec027958d5b18058662eea"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Dec 08 10:25:33 2009 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jan 08 13:42:27 2010 +0000"
      },
      "message": "GFS2: Ensure uptodate inode size when using O_APPEND\n\nThe VFS reads the inode size during generic_file_aio_write() but\nwith no locking around it. In order to get the expected result\nfrom O_APPEND opens, this patch updated the inode size before\ncalling generic_file_aio_write()\n\nThere is of course still a race here, in that there is nothing to\nprevent another node coming in and extending the file in the\nmean time. On the other hand, when used with file locking this\nwill ensure that the expected results are obtained.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "b6e3224fb20954f155e41ec5709b2ab70b50ae2d",
      "tree": "96302d1b564c879779b9cc5d7aae7c3c4471ed14",
      "parents": [
        "a2770d86b33024f71df269fde2de096df89d6a48"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 13:23:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 13:23:24 2009 -0800"
      },
      "message": "Revert \"task_struct: make journal_info conditional\"\n\nThis reverts commit e4c570c4cb7a95dbfafa3d016d2739bf3fdfe319, as\nrequested by Alexey:\n\n \"I think I gave a good enough arguments to not merge it.\n  To iterate:\n   * patch makes impossible to start using ext3 on EXT3_FS\u003dn kernels\n     without reboot.\n   * this is done only for one pointer on task_struct\"\n\n  None of config options which define task_struct are tristate directly\n  or effectively.\"\n\nRequested-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eaff8079d4f1016a12e34ab323737314f24127dd",
      "tree": "a3d9e00320c6195e55811d5247a521f99341a411",
      "parents": [
        "7a0ad10c367ab57c899d340372f37880cbe6ab52"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Dec 17 14:25:01 2009 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 17 11:03:25 2009 -0500"
      },
      "message": "kill I_LOCK\n\nAfter I_SYNC was split from I_LOCK the leftover is always used together with\nI_NEW and thus superflous.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "431547b3c4533b8c7fd150ab36980b9a3147797b",
      "tree": "807ff2790f3c13c7c91ed2afd6d833032899482d",
      "parents": [
        "ef26ca97e83052790940cbc444b01b0d17a813c1"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Nov 13 09:52:56 2009 +0000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:49 2009 -0500"
      },
      "message": "sanitize xattr handler prototypes\n\nAdd a flags argument to struct xattr_handler and pass it to all xattr\nhandler methods.  This allows using the same methods for multiple\nhandlers, e.g. for the ACL methods which perform exactly the same action\nfor the access and default ACLs, just using a different underlying\nattribute.  With a little more groundwork it\u0027ll also allow sharing the\nmethods for the regular user/trusted/secure handlers in extN, ocfs2 and\njffs2 like it\u0027s already done for xfs in this patch.\n\nAlso change the inode argument to the handlers to a dentry to allow\nusing the handlers mechnism for filesystems that require it later,\ne.g. cifs.\n\n[with GFS2 bits updated by Steven Whitehouse \u003cswhiteho@redhat.com\u003e]\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f0b34ae63488fecf0ec4ab42024d607917f90c45",
      "tree": "680173ff8790fa8082eaddfba0f55d7a43e3d50e",
      "parents": [
        "7b75c2f8cf6d938b571d3bc3f566f883ab7472c4"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Dec 14 18:01:13 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:33 2009 -0800"
      },
      "message": "fs/gfs2/sys.c: use %pUB to print UUIDs\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e4c570c4cb7a95dbfafa3d016d2739bf3fdfe319",
      "tree": "ce2be0a79fa2e8d8271426f0fc27b25e83c050b4",
      "parents": [
        "8420e7efa1cf155765c6d77c91d3e3547c7aa557"
      ],
      "author": {
        "name": "Hiroshi Shimamoto",
        "email": "h-shimamoto@ct.jp.nec.com",
        "time": "Mon Dec 14 18:00:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:27 2009 -0800"
      },
      "message": "task_struct: make journal_info conditional\n\njournal_info in task_struct is used in journaling file system only.  So\nintroduce CONFIG_FS_JOURNAL_INFO and make it conditional.\n\nSigned-off-by: Hiroshi Shimamoto \u003ch-shimamoto@ct.jp.nec.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: KONISHI Ryusuke \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "26bb7505cf7db3560286be9f6384b6d3911f78b5",
      "tree": "0fcdf84b70a9effe7ab9c661dca74b6a4b4afb31",
      "parents": [
        "c29cd9004e72acb5a6cb8caf08508f1c5edee686"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Nov 27 10:31:11 2009 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 12:00:12 2009 +0000"
      },
      "message": "GFS2: Fix glock refcount issues\n\nThis patch fixes some ref counting issues. Firstly by moving\nthe point at which we drop the ref count after a dlm lock\noperation has completed we ensure that we never call\ngfs2_glock_hold() on a lock with a zero ref count.\n\nSecondly, by using atomic_dec_and_lock() in gfs2_glock_put()\nwe ensure that at no time will a glock with zero ref count\nappear on the lru_list. That means that we can remove the\ncheck for this in our shrinker (which was racy).\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "c29cd9004e72acb5a6cb8caf08508f1c5edee686",
      "tree": "f2cf39f10f99b551b7feddf759ab7775d6db8b9a",
      "parents": [
        "9ae3c6de6981a1e8765b5d029f94555fc0f0fea0"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Nov 18 18:09:41 2009 +0800"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:59:17 2009 +0000"
      },
      "message": "writeback: remove unused nonblocking and congestion checks (gfs2)\n\nNo one is calling wb_writeback and write_cache_pages with\nwbc.nonblocking\u003d1 any more. And lumpy pageout will want to do\nnonblocking writeback without the congestion wait.\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "9ae3c6de6981a1e8765b5d029f94555fc0f0fea0",
      "tree": "de903f8b904281ff44cc5ca0ec62b4f8e0010af2",
      "parents": [
        "0ab7d13fcbd7ce1658c563e345990ba453719deb"
      ],
      "author": {
        "name": "Benjamin Marzinski",
        "email": "bmarzins@redhat.com",
        "time": "Tue Nov 10 12:54:56 2009 -0600"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:59:03 2009 +0000"
      },
      "message": "GFS2: drop rindex glock to refresh rindex list\n\nWhen a gfs2 filesystem is grown, it needs to rebuild the rindex list to be able\nto use the new space.  gfs2 does this when the rindex is marked not uptodate,\nwhich happens when the rindex glock is dropped.  However, on a single node\nsetup, there is never any reason to drop the rindex glock, so gfs2 never\ninvalidates the the rindex. This patch makes gfs2 automatically drop the\nrindex glock after filesystem grows, so it can refresh the rindex list.\n\nSigned-off-by: Benjamin Marzinski \u003cbmarzins@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "0ab7d13fcbd7ce1658c563e345990ba453719deb",
      "tree": "5db7f97c264883765da4a9c6324019f0cf746e44",
      "parents": [
        "2c77634965ee28c8b4790ffb5e83dd5ff7ac8988"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Nov 06 16:20:51 2009 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:58:47 2009 +0000"
      },
      "message": "GFS2: Tag all metadata with jid\n\nThere are two spare field in the header common to all GFS2\nmetadata. One is just the right size to fit a journal id\nin it, and this patch updates the journal code so that each\ntime a metadata block is modified, we tag it with the journal\nid of the node which is performing the modification.\n\nThe reason for this is that it should make it much easier to\ndebug issues which arise if we can tell which node was the\nlast to modify a particular metadata block.\n\nSince the field is updated before the block is written into\nthe journal, each journal should only contain metadata which\nis tagged with its own journal id. The one exception to this\nis the journal header block, which might have a different node\u0027s\nid in it, if that journal was recovered by another node in the\ncluster.\n\nThus each journal will contain a record of which nodes recovered\nit, via the journal header.\n\nThe other field in the metadata header could potentially be\nused to hold information about what kind of operation was\nperformed, but for the time being we just zero it on each\ntransaction so that if we use it for that in future, we\u0027ll\nknow that the information (where it exists) is reliable.\n\nI did consider using the other field to hold the journal\nsequence number, however since in GFS2\u0027s journaling we write\nthe modified data into the journal and not the original\ndata, this gives no information as to what action caused the\nmodification, so I think we can probably come up with a better\nuse for those 64 bits in the future.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "2c77634965ee28c8b4790ffb5e83dd5ff7ac8988",
      "tree": "d8b32167ae8cdeca4be7977ee416359f9c9f5543",
      "parents": [
        "1579343a73e32b5886e186e8f3e4db85e420ed3f"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Nov 06 11:10:51 2009 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:57:41 2009 +0000"
      },
      "message": "GFS2: Locking order fix in gfs2_check_blk_state\n\nIn some cases we already have the rindex lock when\nwe enter this function.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "1579343a73e32b5886e186e8f3e4db85e420ed3f",
      "tree": "6bfe6aa71c9326a4f636b1fdfbecc809fa1d96a2",
      "parents": [
        "cdcfde62dac64c86ff34e483c595d568a252c433"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Nov 06 11:06:37 2009 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:57:23 2009 +0000"
      },
      "message": "GFS2: Remove dirent_first() function\n\nThis function only had one caller left, and that caller only\ncalled it for leaf blocks, hence one branch of the \"if\" was\nnever taken. In addition the call to get_left had already\nverified the metadata type, so the function can be reduced\nto a single line of code in its caller.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "cdcfde62dac64c86ff34e483c595d568a252c433",
      "tree": "fc8c3d5d4475df414772781513af673fc63e9928",
      "parents": [
        "f25934c5f88655a8d5c3c40a540daed1f0e6dedc"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Oct 30 10:48:53 2009 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:57:05 2009 +0000"
      },
      "message": "GFS2: Display nobarrier option in /proc/mounts\n\nSince the default is barriers on, this only displays the\nnobarrier option when that is active.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "f25934c5f88655a8d5c3c40a540daed1f0e6dedc",
      "tree": "a21e1ab167314292ffe2e3b319c8d5abf5faccd7",
      "parents": [
        "c14f5735e724cb5338ca8298d42b1658008a10d7"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Oct 30 08:03:27 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:55:54 2009 +0000"
      },
      "message": "GFS2: add barrier/nobarrier mount options\n\nCurrently gfs2 issues barrier unconditionally.  There are various reasons\nto disable them, be that just for testing or for stupid devices flushing\nlarge battert backed caches.  Add a nobarrier option that matches xfs and\nbtrfs for this.  Also add a symmetric barrier option to turn it back on\nat remount time.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "c14f5735e724cb5338ca8298d42b1658008a10d7",
      "tree": "74c198fe29824440a8fd52463fe9f326718da7cd",
      "parents": [
        "3d3c10f2ce80d2a19e5e02023c2b7ab7086c36d5"
      ],
      "author": {
        "name": "Benjamin Marzinski",
        "email": "bmarzins@redhat.com",
        "time": "Mon Oct 26 13:29:47 2009 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:55:32 2009 +0000"
      },
      "message": "GFS2: remove division from new statfs code\n\nIt\u0027s not necessary to do any 64bit division for the statfs sync code, so\nremove it.\n\nSigned-off-by: Benjamin Marzinski \u003cbmarzins@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "3d3c10f2ce80d2a19e5e02023c2b7ab7086c36d5",
      "tree": "56b62b064457596caf66700323ff5aac2320ae93",
      "parents": [
        "2ec4650526c5a94d96bb760001fe0685b15988de"
      ],
      "author": {
        "name": "Benjamin Marzinski",
        "email": "bmarzins@redhat.com",
        "time": "Tue Oct 20 02:39:44 2009 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:55:17 2009 +0000"
      },
      "message": "GFS2: Improve statfs and quota usability\n\nGFS2 now has three new mount options, statfs_quantum, quota_quantum and\nstatfs_percent.  statfs_quantum and quota_quantum simply allow you to\nset the tunables of the same name.  Setting setting statfs_quantum to 0\nwill also turn on the statfs_slow tunable.  statfs_percent accepts an\ninteger between 0 and 100.  Numbers between 1 and 100 will cause GFS2 to\ndo any early sync when the local number of blocks free changes by at\nleast statfs_percent from the totoal number of blocks free.  Setting\nstatfs_percent to 0 disables this.\n\nSigned-off-by: Benjamin Marzinski \u003cbmarzins@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "2ec4650526c5a94d96bb760001fe0685b15988de",
      "tree": "0903ed60100f27968364b6cd9bff94141648ed00",
      "parents": [
        "86e931a35e93d94e6e91b57cc76456e16d188ea9"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Sep 28 12:49:15 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:53:28 2009 +0000"
      },
      "message": "GFS2: Use dquot_send_warning()\n\nThis adds support to GFS2 to send quota warnings via netlink.\nAlso it removes a stray \\r which was left over from when the\ncode used to print warnings on the console.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "e285c100362762f7440643be637dd332460fdc75",
      "tree": "03d8ba11e5c9c0c43fafd88c38e996f32a6ac2d1",
      "parents": [
        "113d6b3c99bf30d8083068d00e3c7304d91d4845"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Sep 23 13:50:49 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:52:43 2009 +0000"
      },
      "message": "GFS2: Add set_xquota support\n\nThis patch adds the ability to set GFS2 quota limit and\nwarning levels via the XFS quota API.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "113d6b3c99bf30d8083068d00e3c7304d91d4845",
      "tree": "77c46b298307f8ce44998ee50d791ee736cf0faa",
      "parents": [
        "1e72c0f7c40e665d2ed40014750fdd2fa9968bcf"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Sep 28 11:52:16 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:52:21 2009 +0000"
      },
      "message": "GFS2: Add get_xquota support\n\nThis adds support for viewing the current GFS2 quota settings\nvia the XFS quota API. The setting of quotas will be addressed\nin a later patch. Fields which are not supported here are left\nset to zero.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nReviewed-by: Bob Peterson \u003crpeterso@redhat.com\u003e\n"
    },
    {
      "commit": "1e72c0f7c40e665d2ed40014750fdd2fa9968bcf",
      "tree": "89d8ef6d7b822ac17699a3c51a1c59c654aaf676",
      "parents": [
        "6a6ada81e4ffc222bf7e54ea7503c7cc98b4f0d8"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Sep 15 20:42:56 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:51:05 2009 +0000"
      },
      "message": "GFS2: Clean up gfs2_adjust_quota() and do_glock()\n\nBoth of these functions contained confusing and in one case\nduplicate code. This patch adds a new check in do_glock()\nso that we report -ENOENT if we are asked to sync a quota\nentry which doesn\u0027t exist. Due to the previous patch this is\nnow reported correctly to userspace.\n\nAlso there are a few new comments, and I hope that the code\nis easier to understand now.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "6a6ada81e4ffc222bf7e54ea7503c7cc98b4f0d8",
      "tree": "499596295831a822090b57a16a072fad25ced852",
      "parents": [
        "33a82529e7007ed7beceebc6b3f3cddadb5b67f0"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Sep 15 16:30:38 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:50:51 2009 +0000"
      },
      "message": "GFS2: Remove constant argument from qd_get()\n\nThis function was only ever called with the \"create\"\nargument set to true, so we can remove it.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "33a82529e7007ed7beceebc6b3f3cddadb5b67f0",
      "tree": "41746a2eee267900fdb8b636f1b8b2208509a671",
      "parents": [
        "ea7623385930c63e2a35749cff9db72094cd06ad"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Sep 15 16:25:40 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:50:20 2009 +0000"
      },
      "message": "GFS2: Remove constant argument from qdsb_get()\n\nThe \"create\" argument to qdsb_get() was only ever set to true,\nso this patch removes that argument.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "ea7623385930c63e2a35749cff9db72094cd06ad",
      "tree": "7ece734b87ee3e344283e35035f62deca0cadd1d",
      "parents": [
        "1d371b5e179d943491a5fddad211cb317f38a142"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Sep 15 16:20:30 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:50:03 2009 +0000"
      },
      "message": "GFS2: Add proper error reporting to quota sync via sysfs\n\nFor some reason, the errors were not making it to userspace.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "1d371b5e179d943491a5fddad211cb317f38a142",
      "tree": "f443630d8cd86925c76f1da99471fae1047ab225",
      "parents": [
        "91094d0fb650decd8bf48b85d86c892d7ca913ee"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Sep 11 15:57:27 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:49:49 2009 +0000"
      },
      "message": "GFS2: Add get_xstate quota function\n\nThis allows querying of the quota state via the XFS quota\nAPI.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "91094d0fb650decd8bf48b85d86c892d7ca913ee",
      "tree": "ed3b0ba8e852e8491d203df07766e4c37ed12d87",
      "parents": [
        "cc632e7f93465597896862cf9e50baefb1999215"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Sep 11 15:21:56 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:49:30 2009 +0000"
      },
      "message": "GFS2: Remove obsolete code in quota.c\n\nThere is no point in testing for GLF_DEMOTE here, we might as\nwell always release the glock at that point.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "cc632e7f93465597896862cf9e50baefb1999215",
      "tree": "4a4a98f86e4fbfc5d127f2059c658ce2da1a87b0",
      "parents": [
        "8c42d637f6f2859e0fb28b78d5add7f0dc6d0973"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Sep 15 09:59:02 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:49:09 2009 +0000"
      },
      "message": "GFS2: Hook gfs2_quota_sync into VFS via gfs2_quotactl_ops\n\nThe plan is to add further operations to the gfs2_quotactl_ops\nin future patches. The sync operation is easy, so we start with\nthat one.\n\nWe plan to use the XFS quota control functions because they more\nclosely match the GFS2 ones.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "8c42d637f6f2859e0fb28b78d5add7f0dc6d0973",
      "tree": "eacae41209e1f3947b255495a5ad13a9e6e1d1db",
      "parents": [
        "ab201832f75f58c8f5093436363f80ffa4a4c9a8"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Sep 11 14:36:44 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:48:54 2009 +0000"
      },
      "message": "GFS2: Alter arguments of gfs2_quota/statfs_sync\n\nThese two functions are altered so that gfs2_quota_sync may\nin future be called directly from the VFS. The GFS2 superblock\nchanges to a VFS super block and there is an addition of an int\nargument which is currently ignored.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "106381bfba997b83b64f68f2210e154162fc38e6",
      "tree": "1968f519563faaa1c27e3162e007646bbaaaedc8",
      "parents": [
        "479c427dd60fe1aadbbf2e6cbf2f84942baeb210"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Sep 29 16:26:23 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:47:51 2009 +0000"
      },
      "message": "GFS2: Add cached ACLs support\n\nThe other patches in this series have been building towards\nbeing able to support cached ACLs like other filesystems. The\nonly real difference with GFS2 is that we have to invalidate\nthe cache when we drop a glock, but that is dealt with in earlier\npatches.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "479c427dd60fe1aadbbf2e6cbf2f84942baeb210",
      "tree": "0f51cf8e107d599c2e5c3b63bcdb2b17243dc7c4",
      "parents": [
        "69dca42464962d8d0989b7e09877ba644c9cba66"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Oct 02 12:00:00 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:47:35 2009 +0000"
      },
      "message": "GFS2: Clean up ACLs\n\nTo prepare for support for caching of ACLs, this cleans up the GFS2\nACL support by pushing the xattr code back into xattr.c and changing\nthe acl_get function into one which only returns ACLs so that we\ncan drop the caching function into it shortly.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "69dca42464962d8d0989b7e09877ba644c9cba66",
      "tree": "83ab9a2054781750239ec3b9f9db921166a39160",
      "parents": [
        "c65f7fb5342ecb8cb85e9b676327b3a43a5a4735"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Sep 29 12:40:19 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:45:54 2009 +0000"
      },
      "message": "GFS2: Use gfs2_set_mode() instead of munge_mode()\n\nThese two functions do the same thing, so lets only use\none of them.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "c65f7fb5342ecb8cb85e9b676327b3a43a5a4735",
      "tree": "97ce229e5a0a7b8730e2fc68388107960f218e79",
      "parents": [
        "796bd9524731850967d437b7f47a86acc776ea89"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Oct 02 11:54:39 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:45:37 2009 +0000"
      },
      "message": "GFS2: Use forget_all_cached_acls()\n\nInvalidate all the cached ACLs when we drop the glock.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "2646a1f61a3b5525914757f10fa12b5b94713648",
      "tree": "9f6b7bdad5fb85963cbf05d2215f960b7ac3beaa",
      "parents": [
        "f55073ff1eaf99f6b3bc62134a456638bca043a3"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Oct 02 11:50:54 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:43:05 2009 +0000"
      },
      "message": "GFS2: Fix up system xattrs\n\nThis code has been shamelessly stolen from XFS at the suggestion\nof Christoph Hellwig. I\u0027ve not added support for cached ACLs so\nfar... watch for that in a later patch, although this is designed\nin such a way that they should be easy to add.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "f55073ff1eaf99f6b3bc62134a456638bca043a3",
      "tree": "9637792f97494de2336f17a90a756e91c7d25527",
      "parents": [
        "7e71c55ee73988d0cb61045660b899eaac23bf8f"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Sep 28 10:30:49 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:42:47 2009 +0000"
      },
      "message": "GFS2: Fix -o meta mounts for subsequent mounts (i.e. all but the first one)\n\nWe have a long term plan to use the \"-o meta\" flag to GFS2 mounts to\naccess the alternate root which is used to store metadata for a GFS2\nfilesystem. This will allow us to eventually remove support for the\ngfs2meta filesystem type (which is in any case just a \"front end\" to\nthe gfs2 filesystem type with the meta/master root).\n\nCurrently the \"-o meta\" option is only taken into account on the\ninitial mount of the filesystem. Subsequent mounts of the same\nfilesystem (i.e. on the same device) result in basically the same\nas bind mounting the root of the original mount.\n\nThis patch changes that by using what is more or less a copy\nof get_sb_bdev() and extending it so that it will take into\naccount the alternate root in all cases. The main difference\nis that we have to parse the mount options a bit earlier. We can\nthen use them to select the appropriate root towards the end of\nthe function.\n\nIn addition this also fixes a bug where it was possible (but certainly\nnot desirable) to set different ro/rw options for the meta root\nwhen mounted via the gfs2meta fs compared with the original mount.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Alexander Viro \u003caviro@redhat.com\u003e\n"
    },
    {
      "commit": "7e71c55ee73988d0cb61045660b899eaac23bf8f",
      "tree": "ef96dc44cd067cc758a8df0408ba36818c9ebc35",
      "parents": [
        "22763c5cf3690a681551162c15d34d935308c8d7"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Sep 22 10:56:16 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Dec 03 11:42:25 2009 +0000"
      },
      "message": "GFS2: Fix potential race in glock code\n\nWe need to be careful of the ordering between clearing the\nGLF_LOCK bit and scheduling the workqueue.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "1c2ea8a2c0b71cc5e07f518370d458d692c9b21a",
      "tree": "3a4acbf6b21bfd560dece24916b951e4639d3632",
      "parents": [
        "0109d7e614e016a842569628116f54847a177f6e"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 20 21:50:40 2009 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 20 21:50:40 2009 +0000"
      },
      "message": "SLOW_WORK: Fix GFS2 to #include \u003clinux/module.h\u003e before using THIS_MODULE\n\nGFS2 has been altered to pass THIS_MODULE to slow_work_register_user(), but\nhasn\u0027t been altered to #include \u003clinux/module.h\u003e to provide it, resulting in\nthe following error:\n\n\tfs/gfs2/recovery.c:596: error: \u0027THIS_MODULE\u0027 undeclared here (not in a function)\n\nAdd the missing #include.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "3d7a641e544e428191667e8b1f83f96fa46dbd65",
      "tree": "172aa672eca96b94f5531885b82abb82b43c7d8a",
      "parents": [
        "66b00a7c93ec782d118d2c03bd599cfd041e80a1"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Nov 19 18:10:23 2009 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Nov 19 18:10:23 2009 +0000"
      },
      "message": "SLOW_WORK: Wait for outstanding work items belonging to a module to clear\n\nWait for outstanding slow work items belonging to a module to clear when\nunregistering that module as a user of the facility.  This prevents the put_ref\ncode of a work item from being taken away before it returns.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "f0f37e2f77731b3473fa6bd5ee53255d9a9cdb40",
      "tree": "3c26d3ed1a453156e9c208ccb5567a8954dba064",
      "parents": [
        "6f5071020d5ec89b5d095aa488db604adb921aec"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Sep 27 22:29:37 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Sep 27 11:39:25 2009 -0700"
      },
      "message": "const: mark struct vm_struct_operations\n\n* mark struct vm_area_struct::vm_ops as const\n* mark vm_ops in AGP code\n\nBut leave TTM code alone, something is fishy there with global vm_ops\nbeing used.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "db16826367fefcb0ddb93d76b66adc52eb4e6339",
      "tree": "626224c1eb1eb79c522714591f208b4fdbdcd9d4",
      "parents": [
        "cd6045138ed1bb5d8773e940d51c34318eef3ef2",
        "465fdd97cbe16ef8727221857e96ef62dd352017"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 24 07:53:22 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 24 07:53:22 2009 -0700"
      },
      "message": "Merge branch \u0027hwpoison\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6\n\n* \u0027hwpoison\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6: (21 commits)\n  HWPOISON: Enable error_remove_page on btrfs\n  HWPOISON: Add simple debugfs interface to inject hwpoison on arbitary PFNs\n  HWPOISON: Add madvise() based injector for hardware poisoned pages v4\n  HWPOISON: Enable error_remove_page for NFS\n  HWPOISON: Enable .remove_error_page for migration aware file systems\n  HWPOISON: The high level memory error handler in the VM v7\n  HWPOISON: Add PR_MCE_KILL prctl to control early kill behaviour per process\n  HWPOISON: shmem: call set_page_dirty() with locked page\n  HWPOISON: Define a new error_remove_page address space op for async truncation\n  HWPOISON: Add invalidate_inode_page\n  HWPOISON: Refactor truncate to allow direct truncating of page v2\n  HWPOISON: check and isolate corrupted free pages v2\n  HWPOISON: Handle hardware poisoned pages in try_to_unmap\n  HWPOISON: Use bitmask/action code for try_to_unmap behaviour\n  HWPOISON: x86: Add VM_FAULT_HWPOISON handling to x86 page fault handler v2\n  HWPOISON: Add poison check to page fault handling\n  HWPOISON: Add basic support for poisoned pages in fault handler v3\n  HWPOISON: Add new SIGBUS error codes for hardware poison signals\n  HWPOISON: Add support for poison swap entries v2\n  HWPOISON: Export some rmap vma locking to outside world\n  ...\n"
    },
    {
      "commit": "2bcd57ab61e7cabed626226a3771617981c11ce1",
      "tree": "687c0c35fb2a632cb8c56b2729f9c3873c9461bd",
      "parents": [
        "95e0d86badc410d525ea7218fd32df7bfbf9c837"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Sep 24 04:22:25 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 18:13:10 2009 -0700"
      },
      "message": "headers: utsname.h redux\n\n* remove asm/atomic.h inclusion from linux/utsname.h --\n   not needed after kref conversion\n * remove linux/utsname.h inclusion from files which do not need it\n\nNOTE: it looks like fs/binfmt_elf.c do not need utsname.h, however\ndue to some personality stuff it _is_ needed -- cowardly leave ELF-related\nheaders and files alone.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fd589a8f0a13f53a2dd580b1fe170633cf6b095f",
      "tree": "942c50188ca58041b0453189e710eafcfebaea57",
      "parents": [
        "4f37940d64a155c025968118849b596f6aaa8128"
      ],
      "author": {
        "name": "Anand Gadiyar",
        "email": "gadiyar@ti.com",
        "time": "Thu Jul 16 17:13:03 2009 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Sep 21 15:14:55 2009 +0200"
      },
      "message": "trivial: fix typo \"to to\" in multiple files\n\nSigned-off-by: Anand Gadiyar \u003cgadiyar@ti.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "aa261f549d7652258331ebb12795f3bc4395d213",
      "tree": "0ca807db32a6e3f213fa52b5a053d2b27e5e6bac",
      "parents": [
        "6a46079cf57a7f7758e8b926980a4f852f89b34d"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Sep 16 11:50:16 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:16 2009 +0200"
      },
      "message": "HWPOISON: Enable .remove_error_page for migration aware file systems\n\nEnable removing of corrupted pages through truncation\nfor a bunch of file systems: ext*, xfs, gfs2, ocfs2, ntfs\nThese should cover most server needs.\n\nI chose the set of migration aware file systems for this\nfor now, assuming they have been especially audited.\nBut in general it should be safe for all file systems\non the data area that support read/write and truncate.\n\nCaveat: the hardware error handler does not take i_mutex\nfor now before calling the truncate function. Is that ok?\n\nCc: tytso@mit.edu\nCc: hch@infradead.org\nCc: mfasheh@suse.com\nCc: aia21@cantab.net\nCc: hugh.dickins@tiscali.co.uk\nCc: swhiteho@redhat.com\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "355bbd8cb82e60a592f6cd86ce6dbe5677615cf4",
      "tree": "23678e50ad4687f1656edc972388ee8014e7b89d",
      "parents": [
        "39695224bd84dc4be29abad93a0ec232a16fc519",
        "746cd1e7e4a555ddaee53b19a46e05c9c61eaf09"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:55:15 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:55:15 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.32\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.32\u0027 of git://git.kernel.dk/linux-2.6-block: (29 commits)\n  block: use blkdev_issue_discard in blk_ioctl_discard\n  Make DISCARD_BARRIER and DISCARD_NOBARRIER writes instead of reads\n  block: don\u0027t assume device has a request list backing in nr_requests store\n  block: Optimal I/O limit wrapper\n  cfq: choose a new next_req when a request is dispatched\n  Seperate read and write statistics of in_flight requests\n  aoe: end barrier bios with EOPNOTSUPP\n  block: trace bio queueing trial only when it occurs\n  block: enable rq CPU completion affinity by default\n  cfq: fix the log message after dispatched a request\n  block: use printk_once\n  cciss: memory leak in cciss_init_one()\n  splice: update mtime and atime on files\n  block: make blk_iopoll_prep_sched() follow normal 0/1 return convention\n  cfq-iosched: get rid of must_alloc flag\n  block: use interrupts disabled version of raise_softirq_irqoff()\n  block: fix comment in blk-iopoll.c\n  block: adjust default budget for blk-iopoll\n  block: fix long lines in block/blk-iopoll.c\n  block: add blk-iopoll, a NAPI like approach for block devices\n  ...\n"
    },
    {
      "commit": "86d006365610fe6cda243d89b67d5047dca44656",
      "tree": "7ddc920e35524759f004cb4c5766ccb506044321",
      "parents": [
        "2b88f7c535a8125213def012a67c1b0a667ceb2e"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Sep 14 09:50:57 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Sep 14 09:50:57 2009 +0100"
      },
      "message": "GFS2: Whitespace fixes\n\nReported-by: Daniel Walker \u003cdwalker@fifo99.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "746cd1e7e4a555ddaee53b19a46e05c9c61eaf09",
      "tree": "d129194669e0122113a5cc86003a4a7711450284",
      "parents": [
        "3d2257f157c2324acbc0fa0fa54e8626a987edd2"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Sat Sep 12 07:35:43 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Sep 14 08:24:53 2009 +0200"
      },
      "message": "block: use blkdev_issue_discard in blk_ioctl_discard\n\nblk_ioctl_discard duplicates large amounts of code from blkdev_issue_discard,\nthe only difference between the two is that blkdev_issue_discard needs to\nsend a barrier discard request and blk_ioctl_discard a non-barrier one,\nand blk_ioctl_discard needs to wait on the request.  To facilitates this\nadd a flags argument to blkdev_issue_discard to control both aspects of the\nbehaviour.  This will be very useful later on for using the waiting\nfuncitonality for other callers.\n\nBased on an earlier patch from Matthew Wilcox \u003cmatthew@wil.cx\u003e.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "2b88f7c535a8125213def012a67c1b0a667ceb2e",
      "tree": "9351a2c0a444c5054bf9b4744f37b3ac30a2ab32",
      "parents": [
        "acf7e2444acfaf4c8540603b76d71010eea3fc24"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Sep 09 15:59:35 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Sep 09 15:59:35 2009 +0100"
      },
      "message": "GFS2: Remove unused sysfs file\n\nThe /sys/fs/gfs2/\u003cfsname\u003e/lock_module/id file has been unused for\nsome time now, so we can remove it. We still accept the mount option\nthough, as userspace still sends that.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "acf7e2444acfaf4c8540603b76d71010eea3fc24",
      "tree": "7c31957ffbbb4008f368b8640c289f72657330a5",
      "parents": [
        "8d8291ae93ecb4a246e87e452d55cca412373300"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Sep 08 18:00:30 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Sep 08 18:00:30 2009 +0100"
      },
      "message": "GFS2: Be extra careful about deallocating inodes\n\nThere is a potential race in the inode deallocation code if two\nnodes try to deallocate the same inode at the same time. Most of\nthe issue is solved by the iopen locking. There is still a small\nwindow which is not covered by the iopen lock. This patches fixes\nthat and also makes the deallocation code more robust in the face of\nany errors in the rgrp bitmaps, or erroneous iopen callbacks from\nother nodes.\n\nThis does introduce one extra disk read, but that is generally not\nan issue since its the same block that must be written to later\nin the deallocation process. The total disk accesses therefore stay\nthe same,\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "8d8291ae93ecb4a246e87e452d55cca412373300",
      "tree": "ccf67c703fb9f9b2e4ee945f3221b8b20c1804db",
      "parents": [
        "307cf6e63cfa5025589ea1a06db44439a43819ff"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Aug 27 15:51:07 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Aug 27 15:51:07 2009 +0100"
      },
      "message": "GFS2: Remove no_formal_ino generating code\n\nThe inum structure used throughout GFS2 has two fields. One\nno_addr is the disk block number of the inode in question and\nis used everywhere as the inode number. The other, no_formal_ino,\nis used only as the generation number for NFS.\n\nHistorically the no_formal_ino field was set using a complicated\nsystem of one global and one per-node file containing inode numbers\nin order to ensure that each no_formal_ino was unique. Also this\ncode made no provision for what would happen when eventually the\n(64 bit) numbers ran out. Now I know that is pretty unlikely to\nhappen given the large space of numbers, but it is possible\nnevertheless.\n\nThe only guarantee required for no_formal_ino is that, for any\nsingle inode, the same number doesn\u0027t get reused too quickly.\n\nWe already have a generation number which is kept in the inode\nand initialised from a counter in the resource group (almost\nno overhead, since we have to touch the resource group anyway\nin order to allocate an inode in the first place). Aside from\nensuring that we never use the value 0 in the no_formal_ino\nfield, we can use that counter directly.\n\nAs a result of that change, we lose about 200 lines of code and\nalso gain about 10 creates/sec on the postmark benchmark (on\nmy test machine).\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "307cf6e63cfa5025589ea1a06db44439a43819ff",
      "tree": "a1c8be1c2af112dc055a16569487cdcd99ebfdb2",
      "parents": [
        "40b78a322365aa1d87770200f7fc7de3b361c11a"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Aug 26 18:51:04 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Aug 26 18:51:04 2009 +0100"
      },
      "message": "GFS2: Rename eattr.[ch] as xattr.[ch]\n\nUse the more conventional name for the extended attribute\nsupport code. Update all the places which care.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "40b78a322365aa1d87770200f7fc7de3b361c11a",
      "tree": "9e33daa30113741d9ef716f3723ac1d9690e33cf",
      "parents": [
        "b6ed2e03df1e2c6ee41cf0e2e2699f2410671916"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Aug 26 18:41:32 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Aug 26 18:41:32 2009 +0100"
      },
      "message": "GFS2: Clean up of extended attribute support\n\nThis has been on my list for some time. We need to change the way\nin which we handle extended attributes to allow faster file creation\ntimes (by reducing the number of transactions required) and the\nextended attribute code is the main obstacle to this.\n\nIn addition to that, the VFS provides a way to demultiplex the xattr\ncalls which we ought to be using, rather than rolling our own. This\npatch changes the GFS2 code to use that VFS feature and as a result\nthe code shrinks by a couple of hundred lines or so, and becomes\neasier to read.\n\nI\u0027m planning on doing further clean up work in this area, but this\npatch is a good start. The cleaned up code also uses the more usual\n\"xattr\" shorthand, I plan to eliminate the use of \"eattr\" eventually\nand in the mean time it serves as a flag as to which bits of the code\nhave been updated.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "d34843d0c4a20872f3f3bfb510328bd043b939ff",
      "tree": "f10ab461e0a7e3923856b56eeba75383dffafac7",
      "parents": [
        "cd0120751d631bc4b99f180c1c22de2caca98207"
      ],
      "author": {
        "name": "Bob Peterson",
        "email": "rpeterso@redhat.com",
        "time": "Mon Aug 24 10:44:18 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Aug 24 10:44:18 2009 +0100"
      },
      "message": "GFS2: Add \"-o errors\u003dpanic|withdraw\" mount options\n\nThis patch adds \"-o errors\u003dpanic\" and \"-o errors\u003dwithdraw\" to the\ngfs2 mount options.  The \"errors\u003dwithdraw\" option is today\u0027s\ncurrent behaviour, meaning to withdraw from the file system if a\nnon-serious gfs2 error occurs.  The new \"errors\u003dpanic\" option\ntells gfs2 to force a kernel panic if a non-serious gfs2 file\nsystem error occurs.  This may be useful, for example, where\nfabric-level fencing is used that has no way to reboot (such as\nfence_scsi).\n\nSigned-off-by: Bob Peterson \u003crpeterso@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "cd0120751d631bc4b99f180c1c22de2caca98207",
      "tree": "b0f600750681c8f6bf8e0bd4d53901e5e9172271",
      "parents": [
        "970343cd49048446da4189986cf960273588d71a"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Sat Aug 22 19:26:42 2009 +0200"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Aug 24 10:41:44 2009 +0100"
      },
      "message": "GFS2: jumping to wrong label?\n\nAlso a gfs2_glock_dq() is required here.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n\n"
    },
    {
      "commit": "970343cd49048446da4189986cf960273588d71a",
      "tree": "5497eeee001b2f47cb5ca7ae7069948234a6b1be",
      "parents": [
        "0aa87445842036f88b53db7f377ad8376bd94ab8"
      ],
      "author": {
        "name": "Wengang Wang",
        "email": "wen.gang.wang@oracle.com",
        "time": "Tue Aug 18 14:25:03 2009 +0800"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Aug 18 10:29:39 2009 +0100"
      },
      "message": "GFS2: free disk inode which is deleted by remote node -V2\n\nthis patch is for the same problem that Benjamin Marzinski fixes at commit\nb94a170e96dc416828af9d350ae2e34b70ae7347\n\nquotation of the original problem:\n\n---cut here---\nWhen a file is deleted from a gfs2 filesystem on one node, a dcache\nentry for it may still exist on other nodes in the cluster. If this\nhappens, gfs2 will be unable to free this file on disk. Because of this,\nit\u0027s possible to have a gfs2 filesystem with no files on it and no free\nspace. With this patch, when a node receives a callback notifying it\nthat the file is being deleted on another node, it schedules a new\nworkqueue thread to remove the file\u0027s dcache entry.\n---end cut---\n\nafter applying Benjamin\u0027s patch, I think there is still a case in which the disk\ninode remains even when \"no space\" is hit. the case is that when running\nd_prune_aliases() against the inode, there are one or more dentries(aliases)\nwhich have reference count number \u003e 0. in this case the dentries won\u0027t be pruned.\nand even later, the reference count becomes to 0, the dentries can still be\ncached in memory. unfortunately, no callback come again, things come back to\nthe state before the callback runs. thus the on disk inode remains there until\nin memoryinode is removed for some other reason(shrinking inode cache or unmount\nthe volume..).\n\nthis patch is to remove those dentries when their reference count becomes to 0 and\nthe inode is deleted by remote node. for implementation, gfs2_dentry_delete() is\nadded as dentry_operations.d_delete. the function returns true when the inode is\ndeleted by remote node. in dput(), gfs2_dentry_delete() is called and since it\nreturns true, the dentry is unhashed from dcache and then removed. when all dentries\nare removed, the in memory inode get removed so that the on disk inode is freed.\n\nSigned-off-by: Wengang Wang \u003cwen.gang.wang@oracle.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n\n"
    },
    {
      "commit": "31e54b01f3f00b595aac02e887960e5dcc575844",
      "tree": "61518f30980188ce060ae045b28f19a4022608c2",
      "parents": [
        "05164e5b37a8329bfbcf72f526302cb2dd885fbd"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Aug 13 12:18:08 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Aug 17 11:11:18 2009 +0100"
      },
      "message": "GFS2: Add sysfs link to device\n\nThis adds a link from the per-gfs2 sb sysfs directory to\nthe block device upon which the filesystem is mounted. The\nlink is called \"device\", strangely enough :-)\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "05164e5b37a8329bfbcf72f526302cb2dd885fbd",
      "tree": "069af9ca385f0c7d9cb273d0c3b70c6c3b2043f3",
      "parents": [
        "6050b9c74f24513191fc6b5e4b3583e38d146bf5"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Aug 17 11:06:43 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Aug 17 11:06:43 2009 +0100"
      },
      "message": "GFS2: Replace assertion with proper error handling\n\nOne fewer assert, one more place we can recover gracefully\nif there is an error.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "6050b9c74f24513191fc6b5e4b3583e38d146bf5",
      "tree": "ff77010d008e55f6091df69519182e9f88a78215",
      "parents": [
        "440d6da207e9eef2b576331cfedd5ecae9068663"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jul 31 16:19:40 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Aug 17 11:05:31 2009 +0100"
      },
      "message": "GFS2: Improve error handling in inode allocation\n\nA little while back, block allocation was given some improved\nerror handling which meant that -EIO was returned in the case\nof there being a problem in the resource group data. In addition\na message is printed explaning what went wrong and how to fix it.\nThis extends that error handling so that it also covers inode\nallocation too.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "440d6da207e9eef2b576331cfedd5ecae9068663",
      "tree": "307bd414e11a37a3bc2b198f2aafa7c9325da1ab",
      "parents": [
        "8633ecfaba4ce53c094f8db92dbd7ac474a7aa36"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jul 31 12:16:25 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Aug 17 11:05:00 2009 +0100"
      },
      "message": "GFS2: Add some more info to uevents\n\nWith each uevent, we now always include the journal ID. We\ncan\u0027t call it JID since that is already in use by some of\nthe individual events relating to recovery, so we use\nJOURNALID instead. We don\u0027t send the JOURNALID for spectator\nmounts, since there isn\u0027t one.\n\nAlso the ADD event now has both RDONLY and SPECTATOR information\nto match that of the ONLINE event.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "8633ecfaba4ce53c094f8db92dbd7ac474a7aa36",
      "tree": "badd46586f0d33184e42e3091f510c21f063d7de",
      "parents": [
        "894ef820b10d77e2d6d717342fc408bdd9825139"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jul 31 11:07:29 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Aug 17 11:04:42 2009 +0100"
      },
      "message": "GFS2: Add online uevent to GFS2\n\nWe already have an offline uevent (used when a withdraw occurs)\nbut no online uevent. This adds an online uevent so that userspace\nwill be able to detect a successful mount by means other than\nnot receiving a remove event after the add \u0026 recovery (change)\nuevents.\n\nIt has also been added to the remount path as well - we can\u0027t use\na change uevent there as older GFS2 userspace acts on change uevents\naccording to the state that it thinks the fs is in, so we can\u0027t\neasily add any new ones.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "d7e623da1a757fbd8c117fa29190ca8bef14dab3",
      "tree": "96fd46643f1b381a6985da15ea984a9e1f66e8f5",
      "parents": [
        "64f1607ffbbc772685733ea63e6f7f4183df1b16"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Aug 11 11:20:11 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Aug 14 14:04:46 2009 +0100"
      },
      "message": "GFS2: Fix permissions on \"recover\" file\n\nAlthough this file is only ever written and not read by\nuserspace, it seems that the utils are opening this\nfile O_RDWR, so we need to allow that.\n\nAlso fixes the whitespace which seemed to be broken.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "b94a170e96dc416828af9d350ae2e34b70ae7347",
      "tree": "6000929d554359c7b520a49a63415b9fc18b48b9",
      "parents": [
        "6b94617024bd6810cde1d0d491202c30d5a38d91"
      ],
      "author": {
        "name": "Benjamin Marzinski",
        "email": "bmarzins@redhat.com",
        "time": "Thu Jul 23 18:52:34 2009 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Jul 30 11:01:03 2009 +0100"
      },
      "message": "GFS2: remove dcache entries for remote deleted inodes\n\nWhen a file is deleted from a gfs2 filesystem on one node, a dcache\nentry for it may still exist on other nodes in the cluster. If this\nhappens, gfs2 will be unable to free this file on disk. Because of this,\nit\u0027s possible to have a gfs2 filesystem with no files on it and no free\nspace. With this patch, when a node receives a callback notifying it\nthat the file is being deleted on another node, it schedules a new\nworkqueue thread to remove the file\u0027s dcache entry.\n\nSigned-off-by: Benjamin Marzinski \u003cbmarzins@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "6b94617024bd6810cde1d0d491202c30d5a38d91",
      "tree": "0c43470d42191b3b445a41add6d01ce84e482290",
      "parents": [
        "8ff22a6f9bdaac87c0eeb1d56c736181f11b4221"
      ],
      "author": {
        "name": "Benjamin Marzinski",
        "email": "bmarzins@redhat.com",
        "time": "Fri Jul 10 18:13:26 2009 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Jul 30 11:00:28 2009 +0100"
      },
      "message": "GFS2: Fix incorrent statfs consistency check\n\nSince both linked and unlinked inodes are counted by rgd-\u003erd_dinodes, It\nmakes no sense to count them with the used data blocks (first check that\nI changed), it makes sense to count them with the linked inodes (second\ncheck), and it makes no sense to care if there are more unlinked inodes\nthan linked ones. This fixes these errors.\n\nSigned-off-by: Benjamin Marzinski \u003cbmarzins@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "8ff22a6f9bdaac87c0eeb1d56c736181f11b4221",
      "tree": "00b0ad7afe45497d251adb244baf6875a0744985",
      "parents": [
        "1e19a19584b332eb92a573b66b7342fb97e67507"
      ],
      "author": {
        "name": "Benjamin Marzinski",
        "email": "bmarzins@redhat.com",
        "time": "Fri Jul 10 18:04:24 2009 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Jul 30 11:00:09 2009 +0100"
      },
      "message": "GFS2: Don\u0027t put unlikely reclaim candidates on the reclaim list.\n\nGFS2 was placing far too many glocks on the reclaim list that were not good\ncandidates for freeing up from cache.  These locks would sit there and\nrepeatedly get scanned to see if they could be reclaimed, wasting a lot\nof time when there was memory pressure. This fix does more checks on the\nlocks to see if they are actually likely to be removable from cache.\n\nSigned-off-by: Benjamin Marzinski \u003cbmarzins@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "1e19a19584b332eb92a573b66b7342fb97e67507",
      "tree": "c02ad1ff429ba770da8bee47c5444be829729666",
      "parents": [
        "a51b56fff3f04fc5aa66b21a2a6d693ee9862d66"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jul 10 21:13:38 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Jul 30 10:59:50 2009 +0100"
      },
      "message": "GFS2: Don\u0027t try and dealloc own inode\n\nWhen searching for unlinked, but still allocated inodes during block\nallocation, avoid the block relating to the inode that is doing the\nallocation. This fixes a hang caused when an unlinked, but still\nopen, inode tries to allocate some more blocks and lands up\nfinding itself during the search for deallocatable inodes.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "a51b56fff3f04fc5aa66b21a2a6d693ee9862d66",
      "tree": "e93c25ebe818e7a157f2b878a9512ada0f2f2bd1",
      "parents": [
        "1946f70ab5e4eb8b54a8eaaedba2293a3750ab7e"
      ],
      "author": {
        "name": "Benjamin Marzinski",
        "email": "bmarzins@redhat.com",
        "time": "Tue Jun 30 13:51:11 2009 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Jul 30 10:59:28 2009 +0100"
      },
      "message": "GFS2: Fix panic in glock memory shrinker\n\nIt is possible for gfs2_shrink_glock_memory() to check a glock for\ndemotion\nthat\u0027s in the process of being freed by gfs2_glock_put().  In this case,\ngfs2_shrink_glock_memory() will acquire a new reference to this glock,\nand\nthen try to free the glock itself when it drops the refernce.  To solve\nthis, gfs2_shrink_glock_memory() just needs to check if the glock is in\nthe process of being freed, and if so skip it without ever unlocking the\nlru_lock.\n\nSigned-off-by: Benjamin Marzinski \u003cbmarzins@redhat.com\u003e\nAcked-by: Bob Peterson \u003crpeterso@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "1946f70ab5e4eb8b54a8eaaedba2293a3750ab7e",
      "tree": "91cc1850c7777d5cdea8713710081f70bb63a202",
      "parents": [
        "2163b1e616c41c286f5ab79912671cd4bf52057c"
      ],
      "author": {
        "name": "Benjamin Marzinski",
        "email": "bmarzins@redhat.com",
        "time": "Thu Jun 25 15:09:51 2009 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Jul 30 10:52:33 2009 +0100"
      },
      "message": "GFS2: keep statfs info in sync on grows\n\nGFS2 wasn\u0027t syncing its statfs info on grows.  This causes a problem\nwhen you grow the filesystem on multiple nodes.  GFS2 would calculate\nthe new space based on the resource groups (which are always current),\nand then assume that the filesystem had grown the from the existing\nstatfs size.  If you grew the filesystem on two different nodes in a\nshort time, the second node wouldn\u0027t see the statfs size change from the\nfirst node, and would assume that it was grown by a larger amount than\nit was.  When all these changes were synced out, the total fileystem\nsize would be incorrect (the first grow would be counted twice).\n\nThis patch syncs makes GFS2 read in the statfs changes from disk before\na grow, and write them out after the grow, while the master statfs inode\nis locked.\n\nSigned-off-by: Benjamin Marzinski \u003cbmarzins@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "2163b1e616c41c286f5ab79912671cd4bf52057c",
      "tree": "5f7170d724c69e0f51857367b5de5a2c0e9bdbae",
      "parents": [
        "4be3bd7849165e7efa6b0b35a23d6a3598d97465"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Jun 25 16:30:26 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Jul 30 10:52:14 2009 +0100"
      },
      "message": "GFS2: Shrink the shrinker\n\nThis patch removes some of the special cases that the shrinker\nwas trying to deal with. As a result we leave fewer items on\nthe list and none at all which cannot be demoted. This makes\nthe list scanning more efficient and solves some issues seen\nwith large numbers of inodes.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "d0b6e04a4cd8360e3c9c419f7c30a3081a0c142a",
      "tree": "621a99cac5fdc0c90a3bcdab60d5896daba04a00",
      "parents": [
        "7638d5322bd89d49e013a03fe2afaeb6d214fabd"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Jul 13 10:33:21 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 13 10:59:55 2009 +0200"
      },
      "message": "tracing/events: Move TRACE_SYSTEM outside of include guard\n\nIf TRACE_INCLDUE_FILE is defined, \u003ctrace/events/TRACE_INCLUDE_FILE.h\u003e\nwill be included and compiled, otherwise it will be\n\u003ctrace/events/TRACE_SYSTEM.h\u003e\n\nSo TRACE_SYSTEM should be defined outside of #if proctection,\njust like TRACE_INCLUDE_FILE.\n\nImaging this scenario:\n\n #include \u003ctrace/events/foo.h\u003e\n    -\u003e TRACE_SYSTEM \u003d\u003d foo\n ...\n #include \u003ctrace/events/bar.h\u003e\n    -\u003e TRACE_SYSTEM \u003d\u003d bar\n ...\n #define CREATE_TRACE_POINTS\n #include \u003ctrace/events/foo.h\u003e\n    -\u003e TRACE_SYSTEM \u003d\u003d bar !!!\n\nand then bar.h will be included and compiled.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A5A9CF1.2010007@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "90c699a9ee4be165966d40f1837909ccb8890a68",
      "tree": "ff136ce7b73c7d7bbf5eb4241d01cb3b930d3566",
      "parents": [
        "3a02c8e8142f7f133d4c6e72bc3e1d830e6b8b9e"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jun 19 08:08:50 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jun 19 08:08:50 2009 +0200"
      },
      "message": "block: rename CONFIG_LBD to CONFIG_LBDAF\n\nFollow-up to \"block: enable by default support for large devices\nand files on 32-bit archs\".\n\nRename CONFIG_LBD to CONFIG_LBDAF to:\n- allow update of existing [def]configs for \"default y\" change\n- reflect that it is used also for large files support nowadays\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "3ea400581f2b595afd91207bbd79c11cb38598e0",
      "tree": "c8d1095b2cb4b516c91f93646fea4d7cb14db92f",
      "parents": [
        "63997775b795f97ef51f3e56bc3abc9edc04bbb0"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jun 12 13:40:47 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jun 12 13:40:47 2009 +0100"
      },
      "message": "GFS2: Remove lock_kernel from gfs2_put_super()\n\nIt is not required here.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat,com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "63997775b795f97ef51f3e56bc3abc9edc04bbb0",
      "tree": "607519910f92b1101fbe0223c301c503001bc0ef",
      "parents": [
        "8ebf975608aaebd7feb33d77f07ba21a6380e086"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jun 12 08:49:20 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jun 12 08:49:20 2009 +0100"
      },
      "message": "GFS2: Add tracepoints\n\nThis patch adds the ability to trace various aspects of the GFS2\nfilesystem. The trace points are divided into three groups,\nglocks, logging and bmap. These points have been chosen because\nthey allow inspection of the major internal functions of GFS2\nand they are also generic enough that they are unlikely to need\nany major changes as the filesystem evolves.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "6cfd0148425e528b859b26e436b01f23f6926224",
      "tree": "60e3257053554ff198fe5825e6f12a00c3b4422a",
      "parents": [
        "a9e220f8322e2b0e0b8903fe00265461cffad3f0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue May 05 15:40:36 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:07 2009 -0400"
      },
      "message": "push BKL down into -\u003eput_super\n\nMove BKL into -\u003eput_super from the only caller.  A couple of\nfilesystems had trivial enough -\u003eput_super (only kfree and NULLing of\ns_fs_info + stuff in there) to not get any locking: coda, cramfs, efs,\nhugetlbfs, omfs, qnx4, shmem, all others got the full treatment.  Most\nof them probably don\u0027t need it, but I\u0027d rather sort that out individually.\nPreferably after all the other BKL pushdowns in that area.\n\n[AV: original used to move lock_super() down as well; these changes are\nremoved since we don\u0027t do lock_super() at all in generic_shutdown_super()\nnow]\n[AV: fuse, btrfs and xfs are known to need no damn BKL, exempt]\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b7d245de25d1f0bb75a0d04194b647762b30d3db",
      "tree": "7c7f00651751db70432feef2a6a8327f67bc4109",
      "parents": [
        "ca41f7b918294c2a17780e057568413dcbfc6d49"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Apr 27 09:46:43 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:05 2009 -0400"
      },
      "message": "gfs2: remove -\u003ewrite_super and stop maintaining -\u003es_dirt\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c9059598ea8981d02356eead3188bf7fa4d717b8",
      "tree": "03e73b20a30e988da7c6a3e0ad93b2dc5843274d",
      "parents": [
        "0a33f80a8373eca7f4bea3961d1346c3815fa5ed",
        "b0fd271d5fba0b2d00888363f3869e3f9b26caa9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 10:52:27 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 11:10:35 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.31\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.31\u0027 of git://git.kernel.dk/linux-2.6-block: (153 commits)\n  block: add request clone interface (v2)\n  floppy: fix hibernation\n  ramdisk: remove long-deprecated \"ramdisk\u003d\" boot-time parameter\n  fs/bio.c: add missing __user annotation\n  block: prevent possible io_context-\u003erefcount overflow\n  Add serial number support for virtio_blk, V4a\n  block: Add missing bounce_pfn stacking and fix comments\n  Revert \"block: Fix bounce limit setting in DM\"\n  cciss: decode unit attention in SCSI error handling code\n  cciss: Remove no longer needed sendcmd reject processing code\n  cciss: change SCSI error handling routines to work with interrupts enabled.\n  cciss: separate error processing and command retrying code in sendcmd_withirq_core()\n  cciss: factor out fix target status processing code from sendcmd functions\n  cciss: simplify interface of sendcmd() and sendcmd_withirq()\n  cciss: factor out core of sendcmd_withirq() for use by SCSI error handling code\n  cciss: Use schedule_timeout_uninterruptible in SCSI error handling code\n  block: needs to set the residual length of a bidi request\n  Revert \"block: implement blkdev_readpages\"\n  block: Fix bounce limit setting in DM\n  Removed reference to non-existing file Documentation/PCI/PCI-DMA-mapping.txt\n  ...\n\nManually fix conflicts with tracing updates in:\n\tblock/blk-sysfs.c\n\tdrivers/ide/ide-atapi.c\n\tdrivers/ide/ide-cd.c\n\tdrivers/ide/ide-floppy.c\n\tdrivers/ide/ide-tape.c\n\tinclude/trace/events/block.h\n\tkernel/trace/blktrace.c\n"
    },
    {
      "commit": "003dec8913d6bebb4ecc989ec04a235cf38f5ea9",
      "tree": "5a062c995c471190d2148af21b42db0f9d4294b4",
      "parents": [
        "40bc9a27e00d6c8c7e4dc2865c02d7402a950472"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Jun 10 10:31:45 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Jun 10 10:31:45 2009 +0100"
      },
      "message": "GFS2: Merge gfs2_get_sb into gfs2_get_sb_meta\n\nThese don\u0027t need to be separate functions.\n\nReported-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "40bc9a27e00d6c8c7e4dc2865c02d7402a950472",
      "tree": "0a445d4c8b22833898a5363f750744146cb05aff",
      "parents": [
        "f6d03139d745198b434f65a28aabed524f415a4c"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Jun 10 09:09:40 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Jun 10 09:09:40 2009 +0100"
      },
      "message": "GFS2: Fix cache coherency between truncate and O_DIRECT read\n\nIf a page was partially zeroed as the result of a truncate, then it was\nnot being correctly marked dirty. This resulted in the deleted data\nreappearing if the file was read back via direct I/O.\n\nReported-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "f6d03139d745198b434f65a28aabed524f415a4c",
      "tree": "e308567651c18954de9acd0fa8a359221680d3c1",
      "parents": [
        "e09f9446b94ac64b27d37e98c1110f29d712cdad"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jun 05 07:18:57 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jun 05 08:35:15 2009 +0100"
      },
      "message": "GFS2: Fix locking issue mounting gfs2meta fs\n\nThis patch uses sget() to get a reference to the\nexisting gfs2 sb when mouting the gfs2meta filesystem\n(in fact thats just another mount of the gfs2\nfilesystem with a different root and this interface\nis for backward compatibility).\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nReported-by: Benjamin Marzinski \u003cbmarzins@redhat.com\u003e\nTested-by: Benjamin Marzinski \u003cbmarzins@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "e09f9446b94ac64b27d37e98c1110f29d712cdad",
      "tree": "ed5877fa59b61ccce7fa4b6d53b327f43453408f",
      "parents": [
        "a12af1ebe675e85831fde3c4d0908fc3b0908b7a"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Jun 03 10:07:44 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Jun 03 10:07:44 2009 +0100"
      },
      "message": "GFS2: Remove unused variable\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "a12af1ebe675e85831fde3c4d0908fc3b0908b7a",
      "tree": "ae03ea46bfa57031ee561f21d6e387fcdd7c46c7",
      "parents": [
        "f6eb53498ee8f725832f3a0fffca90566bb118a6"
      ],
      "author": {
        "name": "Abhijith Das",
        "email": "adas@redhat.com",
        "time": "Mon Jun 01 12:30:03 2009 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Jun 02 08:01:12 2009 +0100"
      },
      "message": "GFS2: smbd proccess hangs with flock() call.\n\nGFS2 currently does not support mandatory flocks. An flock() call with\nLOCK_MAND triggers unexpected behavior because gfs2 is not checking for\nthis lock type. This patch corrects that.\n\nSigned-off-by: Abhi Das \u003cadas@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "f6eb53498ee8f725832f3a0fffca90566bb118a6",
      "tree": "bbf2f6eef1851d44ed7f62921ee480aa057817b4",
      "parents": [
        "e1b28aab5804aa477c33d19855d6747607a885fd"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue May 26 15:50:25 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue May 26 15:50:25 2009 +0100"
      },
      "message": "GFS2: Remove args subdir from gfs2 sysfs files\n\nSince we can cat /proc/mounts there is no need to have this\nsubdirectory in the gfs2 sysfs files. In fact this does not\nreflect the full range of possible mount argumenmts, where\nas /proc/mounts does.\n\nThere was only one userland user of this set of sysfs files\nand it will function perfectly well without these files\nbeing present (in fact that subcommand of gfs2_tool is\nobsolete anyway).\n\nThe tune/* subdirectory is also considered mostly obsolete,\nbut there are a few uses of this until mount arguments can\nbe added for the last few functions for which there are no\nequivalents currently. However the tune/* directory is still\nin my sights and new code should avoid using it. Only the gfs2_quota\nand gfs2_tool programs are know to use tune/* at the moment.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "e1b28aab5804aa477c33d19855d6747607a885fd",
      "tree": "b507a7636526e0edffc373756cb30d7e9f3c629d",
      "parents": [
        "87ec21741138bb42e7f943bb142b1d8567c10925"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue May 26 15:41:27 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue May 26 15:41:27 2009 +0100"
      },
      "message": "GFS2: Remove lockstruct subdir from gfs2 sysfs files\n\nThe lockstruct sub directory contained two entries, both of\nwhich are duplicated elsewhere in the gfs2 sysfs files as\nwell as being available via /proc/mounts. There is no userland program\nusing either of them, so this patch removes them.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "e1defc4ff0cf57aca6c5e3ff99fa503f5943c1f1",
      "tree": "d60d15a082171c58ac811d547d51a9c3119f23e3",
      "parents": [
        "9bd7de51ee8537094656149eaf45338cadb7d7d4"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri May 22 17:17:49 2009 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 23:22:54 2009 +0200"
      },
      "message": "block: Do away with the notion of hardsect_size\n\nUntil now we have had a 1:1 mapping between storage device physical\nblock size and the logical block sized used when addressing the device.\nWith SATA 4KB drives coming out that will no longer be the case.  The\nsector size will be 4KB but the logical block size will remain\n512-bytes.  Hence we need to distinguish between the physical block size\nand the logical ditto.\n\nThis patch renames hardsect_size to logical_block_size.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "87ec21741138bb42e7f943bb142b1d8567c10925",
      "tree": "d173754b440f7b14b2b29334ac7addc4b9621286",
      "parents": [
        "536baf02f650f4547f105386878b4736fbc181e8"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri May 22 10:54:50 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri May 22 10:54:50 2009 +0100"
      },
      "message": "GFS2: Move gfs2_unlink_ok into ops_inode.c\n\nAnother function which is only called from one ops_inode.c so\nwe move it and make it static.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "536baf02f650f4547f105386878b4736fbc181e8",
      "tree": "eeb326e76515c074f6eb0ae63deb598605632523",
      "parents": [
        "2286dbfad1fb622ee2691537e5caaedee4618860"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri May 22 10:48:59 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri May 22 10:48:59 2009 +0100"
      },
      "message": "GFS2: Move gfs2_readlinki into ops_inode.c\n\nMove gfs2_readlinki into ops_inode.c and make it static\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "2286dbfad1fb622ee2691537e5caaedee4618860",
      "tree": "da16646efb25515c3b6865b84bf3485a4714caee",
      "parents": [
        "9e6e0a128bca0a151d8d3fbd9459b22fc21cfebb"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri May 22 10:45:09 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri May 22 10:45:09 2009 +0100"
      },
      "message": "GFS2: Move gfs2_rmdiri into ops_inode.c\n\nMove gfs2_rmdiri() into ops_inode.c and make it static.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "9e6e0a128bca0a151d8d3fbd9459b22fc21cfebb",
      "tree": "1634ddf642a127bbd8533b7e73d5a1ebc572343f",
      "parents": [
        "b1e71b0622974953e46a284aa986504a90869a9b"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri May 22 10:36:01 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri May 22 10:36:01 2009 +0100"
      },
      "message": "GFS2: Merge mount.c and ops_super.c into super.c\n\nmount.c only contained a single function, so is not really\nworth retaining on its own. All of the super related code\nis now either in super.c or ops_fstype.c\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "b1e71b0622974953e46a284aa986504a90869a9b",
      "tree": "0eb0f68c8b432b6332437e918ca2ab4e0c72d897",
      "parents": [
        "1ce97e564b628bee30b8dbb64e5e653a484308f6"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri May 22 10:01:55 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri May 22 10:01:55 2009 +0100"
      },
      "message": "GFS2: Clean up some file names\n\nThis patch renames the ops_*.c files which have no counterpart\nwithout the ops_ prefix in order to shorten the name and make\nit more readable. In addition, ops_address.h (which was very\nsmall) is moved into inode.h and inode.h is cleaned up by\nadding extern where required.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "1ce97e564b628bee30b8dbb64e5e653a484308f6",
      "tree": "1c46105bb5bd29e0970afa2693e09654bef89164",
      "parents": [
        "60a0b8f93664621a07b93273fc8ebc29590c62f5"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu May 21 15:18:19 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu May 21 15:18:19 2009 +0100"
      },
      "message": "GFS2: Be more aggressive in reclaiming unlinked inodes\n\nThis patch increases the frequency with which gfs2 looks\nfor unlinked, but still allocated inodes. Its the equivalent\noperation to ext3\u0027s orphan list, but done with bitmaps in\nthe resource groups.\n\nThis also fixes a bug where a field in the rgrp was too small.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "60a0b8f93664621a07b93273fc8ebc29590c62f5",
      "tree": "6e819ce13d40aef078f3af45867b8af2e9c6ec85",
      "parents": [
        "09010978345e8883003bf411bb99753710eb5a3a"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu May 21 12:23:12 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu May 21 12:23:12 2009 +0100"
      },
      "message": "GFS2: Add a rgrp bitmap full flag\n\nDuring block allocation, it is useful to know if sections of disk\nare full on a finer grained basis than a single resource group.\nThis can make a performance difference when resource groups have\nlarger numbers of bitmap blocks, since we no longer have to search\nthem all block by block in each individual bitmap.\n\nThe full flag is set on a per-bitmap basis when it has been\nsearched and found to have no free space. It is then skipped in\nsubsequent searches until the flag is reset. The resetting\noccurs if we have to drop the glock on the resource group for any\nreason, or if we deallocate some blocks within that resource\ngroup and thus free up some space.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "09010978345e8883003bf411bb99753710eb5a3a",
      "tree": "c3a7eaf3a775649d11ad01c2be5d3549e90f6581",
      "parents": [
        "ef9e8b14a5c1d0afbaf12b4c3b271188ddfc52a4"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed May 20 10:48:47 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed May 20 10:48:47 2009 +0100"
      },
      "message": "GFS2: Improve resource group error handling\n\nThis patch improves the error handling in the case where we\ndiscover that the summary information in the resource group\ndoesn\u0027t match the bitmap information while in the process of\nallocating blocks. Originally this resulted in a kernel bug,\nbut this patch changes that so that we return -EIO and print\nsome messages explaining what went wrong, and how to fix it.\n\nWe also remember locally not to try and allocate from the\nsame rgrp again, so that a subsequent allocation in a\ndifferent rgrp should succeed.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "ef9e8b14a5c1d0afbaf12b4c3b271188ddfc52a4",
      "tree": "a0cf0f3e57484a1f897bae07af57870eff841c9a",
      "parents": [
        "e9ccb73ab57ada469602506496c42e5b4468ac3e"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue May 19 14:25:16 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue May 19 14:25:16 2009 +0100"
      },
      "message": "GFS2: Don\u0027t warn when delete inode fails on ro filesystem\n\nIf the filesystem is read-only, then we expect that delete inode\nwill fail, so there is no need to warn about it.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    }
  ],
  "next": "fe64d517df0970a68417184a12fcd4ba0589cc28"
}
