)]}'
{
  "log": [
    {
      "commit": "7b6259e7a83647948fa33a736cc832310c8d85aa",
      "tree": "99bb872b179a93f5e32b51f312029abb1237b055",
      "parents": [
        "1920779e67cbf5ea8afef317777c5bf2b8096188"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Thu Jun 24 11:35:17 2010 +1000"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Jun 24 11:35:17 2010 +1000"
      },
      "message": "xfs: remove block number from inode lookup code\n\nThe block number comes from bulkstat based inode lookups to shortcut\nthe mapping calculations. We ar enot able to trust anything from\nbulkstat, so drop the block number as well so that the correct\nlookups and mappings are always done.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "7dce11dbac54fce777eea0f5fb25b2694ccd7900",
      "tree": "90d6d109ca110bcbf47a954a8283ec250be07003",
      "parents": [
        "1817176a86352f65210139d4c794ad2d19fc6b63"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Jun 23 18:11:11 2010 +1000"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jun 23 18:11:11 2010 +1000"
      },
      "message": "xfs: always use iget in bulkstat\n\nThe non-coherent bulkstat versionsthat look directly at the inode\nbuffers causes various problems with performance optimizations that\nmake increased use of just logging inodes.  This patch makes bulkstat\nalways use iget, which should be fast enough for normal use with the\nradix-tree based inode cache introduced a while ago.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdchinner@redhat.com\u003e\n"
    },
    {
      "commit": "1bf7dbfde8fe7ddaa8e2e1b4e0fc41a9fc6aa7a5",
      "tree": "fdb99e686fa40e79cc53f80dfed58e9b548ed4eb",
      "parents": [
        "ad8456361fa19068cf49b50a4f98e41b73c08e76",
        "f9369729496a0f4c607a4cc1ea4dfeddbbfc505a"
      ],
      "author": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jun 04 13:22:30 2010 -0500"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jun 04 13:22:30 2010 -0500"
      },
      "message": "Merge branch \u0027master\u0027 into for-linus\n"
    },
    {
      "commit": "38e712ab3d28d79725eaade02fe8aba51abac196",
      "tree": "e9fb77e11d0be890b86abcbe5fadc02e4761615f",
      "parents": [
        "3bd0946eb157e26240ca858d1a42738b095dc6f3"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Wed May 26 15:57:23 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri May 28 15:19:41 2010 -0500"
      },
      "message": "fs/xfs/quota: Add missing mutex_unlock\n\nAdd a mutex_unlock missing on the error path.  The use of this lock\nis balanced elsewhere in the file.\n\nThe semantic match that finds this problem is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\nexpression E1;\n@@\n\n* mutex_lock(E1,...);\n  \u003c+... when !\u003d E1\n  if (...) {\n    ... when !\u003d E1\n*   return ...;\n  }\n  ...+\u003e\n* mutex_unlock(E1,...);\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "88e88374ee4958786397a57f684de6f1fc5e0242",
      "tree": "750fe86ece5d65e597223eb07c5ce7cf5b3749a0",
      "parents": [
        "7e125f7b9cbfce4101191b8076d606c517a73066",
        "ccf7c23fc129e75ef60e6f59f60a485b7a056598"
      ],
      "author": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Mon May 24 11:57:36 2010 -0500"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Mon May 24 11:57:36 2010 -0500"
      },
      "message": "Merge branch \u0027delayed-logging-for-2.6.35\u0027 into for-linus\n"
    },
    {
      "commit": "c11554104f4dcb509fd43973389b097a04b9d51d",
      "tree": "18b67546aa2baacaa729ae51ad656465bdc2654f",
      "parents": [
        "64fc35de60da3b1fe970168d10914bf1cf34a3e3"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Fri May 07 11:05:19 2010 +1000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Mon May 24 10:33:39 2010 -0500"
      },
      "message": "xfs: Clean up XFS_BLI_* flag namespace\n\nClean up the buffer log format (XFS_BLI_*) flags because they have a\npolluted namespace. They XFS_BLI_ prefix is used for both in-memory\nand on-disk flag feilds, but have overlapping values for different\nflags. Rename the buffer log format flags to use the XFS_BLF_*\nprefix to avoid confusing them with the in-memory XFS_BLI_* prefixed\nflags.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "c472b43275976512e4c1c32da5ced03f339cb380",
      "tree": "9159fbfd1190456e8b3e699b856022c23f6ec10c",
      "parents": [
        "b9b2dd36c1bc64430f8e13990ab135cbecc10076"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu May 06 17:05:17 2010 -0400"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri May 21 19:30:44 2010 +0200"
      },
      "message": "quota: unify -\u003eset_dqblk\n\nPass the larger struct fs_disk_quota to the -\u003eset_dqblk operation so\nthat the Q_SETQUOTA and Q_XSETQUOTA operations can be implemented\nwith a single filesystem operation and we can retire the -\u003eset_xquota\noperation.  The additional information (RT-subvolume accounting and\nwarn counts) are left zero for the VFS quota implementation.\n\nAdd new fieldmask values for setting the numer of blocks and inodes\nvalues which is required for the VFS quota, but wasn\u0027t for XFS.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "1414a6046ab402ac21545522270c32c576327eb9",
      "tree": "2e1364e818bef8a05cb442503e4224b7c7a9d6a4",
      "parents": [
        "8112e9dc6d1494078122146647981bc02a452d6a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Apr 20 17:02:50 2010 +1000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed May 19 09:58:15 2010 -0500"
      },
      "message": "xfs: remove dead XFS_LOUD_RECOVERY code\n\nThis can\u0027t be enabled through the build system and has been dead for\nages.  Note that the CRC patches add back log checksumming, but the\ncode is quite different from the version removed here anyway.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\n\n"
    },
    {
      "commit": "8112e9dc6d1494078122146647981bc02a452d6a",
      "tree": "7b1822bcb4ab62b6b7f12b2447a550dae2366c5f",
      "parents": [
        "191f8488f9f7600a96e1500ee2ee74a407e2eb1c"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Apr 20 17:02:29 2010 +1000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed May 19 09:58:15 2010 -0500"
      },
      "message": "xfs: removed unused XFS_QMOPT_ flags\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\n\n"
    },
    {
      "commit": "191f8488f9f7600a96e1500ee2ee74a407e2eb1c",
      "tree": "23dbc84d31563e64ff60d99a2974727ca3bf8e42",
      "parents": [
        "8a7b8a89a3ae5b510396cdcc821698d4aa20afcf"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Apr 20 17:01:53 2010 +1000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed May 19 09:58:15 2010 -0500"
      },
      "message": "xfs: remove a few macro indirections in the quota code\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\n\n"
    },
    {
      "commit": "8a7b8a89a3ae5b510396cdcc821698d4aa20afcf",
      "tree": "c64b285dfc53091a258319c82571431c25b85921",
      "parents": [
        "37bc5743fdc29f60fb104cd9031babbabddff25a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Apr 20 17:01:30 2010 +1000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed May 19 09:58:14 2010 -0500"
      },
      "message": "xfs: access quotainfo structure directly\n\nAccess fields in m_quotainfo directly instead of hiding them behind the\nXFS_QI_* macros.  Add local variables for the quotainfo pointer in places\nwhere we have lots of them.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\n\n"
    },
    {
      "commit": "74457cf4a3e0f0634679aa6c22d967e9e8b26479",
      "tree": "3603ed6ff918ce43087ce76d60604698e1b08d51",
      "parents": [
        "3a8406f6d6916e8211936edb9e1193123df2daab"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Apr 13 15:06:53 2010 +1000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed May 19 09:58:11 2010 -0500"
      },
      "message": "xfs: remove xfs_dqmarker\n\nThe xfs_dqmarker structure does not need to exist anymore. Move the\nremaining flags field out of it and remove the structure altogether.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "3a8406f6d6916e8211936edb9e1193123df2daab",
      "tree": "53f490a433ef3bd2f430ef19cdfbbe5dc514e89d",
      "parents": [
        "e6a81f13aa9aa20ef03174210aed24791865b05e"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Tue Apr 13 15:06:52 2010 +1000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed May 19 09:58:11 2010 -0500"
      },
      "message": "xfs: convert the dquot free list to use list heads\n\nConvert the dquot free list on the filesystem to use listhead\ninfrastructure rather than the roll-your-own in the quota code.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n\n"
    },
    {
      "commit": "e6a81f13aa9aa20ef03174210aed24791865b05e",
      "tree": "727202721a225004e2522f32278de294c3748e70",
      "parents": [
        "368e136174344c417bad6ff0380b7b3f574bf120"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Tue Apr 13 15:06:51 2010 +1000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed May 19 09:58:11 2010 -0500"
      },
      "message": "xfs: convert the dquot hash list to use list heads\n\nConvert the dquot hash list on the filesystem to use listhead\ninfrastructure rather than the roll-your-own in the quota code.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "368e136174344c417bad6ff0380b7b3f574bf120",
      "tree": "1718f3e35b42adbaabf5a65062f2d3f5ecf1ac43",
      "parents": [
        "3a25404b3fccd41d36b2fda18d86011201608c38"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Tue Apr 13 15:06:50 2010 +1000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed May 19 09:58:11 2010 -0500"
      },
      "message": "xfs: remove duplicate code from dquot reclaim\n\nThe dquot shaker and the free-list reclaim code use exactly the same\nalgorithm but the code is duplicated and slightly different in each\ncase. Make the shaker code use the single dquot reclaim code to\nremove the code duplication.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "3a25404b3fccd41d36b2fda18d86011201608c38",
      "tree": "28979d8581760327c16a3389a2eb8752ed3f0665",
      "parents": [
        "9abbc539bf7f299819ad0a235064a1b643ab6407"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Tue Apr 13 15:06:48 2010 +1000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed May 19 09:58:10 2010 -0500"
      },
      "message": "xfs: convert the per-mount dquot list to use list heads\n\nConvert the dquot list on the filesytesm to use listhead\ninfrastructure rather than the roll-your-own in the quota code.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "8e123850863366b738d6dfb9a84045018ff038fc",
      "tree": "ffa0185553c55d235b920e5ff384310be33034c6",
      "parents": [
        "4aaf15d1aa9673dd2cc45c48957c946cb4aa2694"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Mon Mar 08 11:26:03 2010 +1100"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed May 19 09:58:08 2010 -0500"
      },
      "message": "xfs: remove stale parameter from -\u003eiop_unpin method\n\nThe staleness of a object being unpinned can be directly derived\nfrom the object itself - there is no need to extract it from the\nobject then pass it as a parameter into IOP_UNPIN().\n\nThis means we can kill the XFS_LID_BUF_STALE flag - it is set,\nchecked and cleared in the same places XFS_BLI_STALE flag in the\nxfs_buf_log_item so it is now redundant and hence safe to remove.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "43f5efc5b59db1b66e39fe9fdfc4ba6a27152afa",
      "tree": "100e2b49e622e6933d8f88e052076e23bd943ae1",
      "parents": [
        "e2a07812e93d4a51b1b1a6f15145a1634948db47"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Tue Mar 23 10:10:00 2010 +1100"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed May 19 09:58:07 2010 -0500"
      },
      "message": "xfs: factor log item initialisation\n\nEach log item type does manual initialisation of the log item.\nDelayed logging introduces new fields that need initialisation, so\nfactor all the open coded initialisation into a common function\nfirst.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "9bf729c0af67897ea8498ce17c29b0683f7f2028",
      "tree": "9e6350fd9da5aef0b53ddeddd82f618ae16bf931",
      "parents": [
        "79dba2eaa771c3173957eccfd288e0e0d12e4d3f"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Thu Apr 29 09:55:50 2010 +1000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Apr 29 16:22:13 2010 -0500"
      },
      "message": "xfs: add a shrinker to background inode reclaim\n\nOn low memory boxes or those with highmem, kernel can OOM before the\nbackground reclaims inodes via xfssyncd. Add a shrinker to run inode\nreclaim so that it inode reclaim is expedited when memory is low.\n\nThis is more complex than it needs to be because the VM folk don\u0027t\nwant a context added to the shrinker infrastructure. Hence we need\nto add a global list of XFS mount structures so the shrinker can\ntraverse them.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "d67b1b03254c501fef371b0e5916c94a52bfc2c5",
      "tree": "87d3505cb841844055c113fd9eea124ed31e2ba0",
      "parents": [
        "180040b89ee2aed88c0a0b1fcf7ada9a512b12e3"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Sat Feb 06 08:45:15 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Sat Feb 13 13:22:53 2010 -0600"
      },
      "message": "fs/xfs: Correct NULL test\n\nTest the value that was just allocated rather than the previously tested one.\n\nA simplified version of the semantic match that finds this problem is as\nfollows: (http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@r@\nexpression *x;\nexpression e;\nidentifier l;\n@@\n\nif (x \u003d\u003d NULL || ...) {\n    ... when forall\n    return ...; }\n... when !\u003d goto l;\n    when !\u003d x \u003d e\n    when !\u003d \u0026x\n*x \u003d\u003d NULL\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "20026d92013d7bb3abb295337191def6758fc086",
      "tree": "7cacdf4b14799534f9907833bd28500cb739a823",
      "parents": [
        "7d6a7bde52e449f21a0e86a7a4955b4e08a49d69"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Feb 04 09:48:58 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Feb 04 09:48:58 2010 +1100"
      },
      "message": "xfs: kill the unused XFS_QMOPT_* flush flags V2\n\ndquots are never flushed asynchronously. Remove the flag and the\nasync write support from the flush function. Make the default flush\na delwri flush to make the inode flush code, which leaves the\nXFS_QMOPT_SYNC the only flag remaining.  Convert that to use\nSYNC_WAIT instead, just like the inode flush code.\n\nV2:\n- just pass flush flags straight through\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "7d6a7bde52e449f21a0e86a7a4955b4e08a49d69",
      "tree": "b658055f660f7c825298cc2a88b3246e78fb1bce",
      "parents": [
        "089716aa1480b7197bcd678b8477774c379a2768"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Jan 26 15:13:41 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Jan 26 15:13:41 2010 +1100"
      },
      "message": "xfs: Use delay write promotion for dquot flushing\n\nxfs_qm_dqflock_pushbuf_wait() does a very similar trick to item\npushing used to do to flush out delayed write dquot buffers. Change\nit to use the new promotion method rather than an async flush.\n\nAlso, xfs_qm_dqflock_pushbuf_wait() can return without the flush lock\nheld, yet the callers make the assumption that after this call the\nflush lock is held. Always return with the flush lock held.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "d808f617ad00a413585b806de340feda5ad9a2da",
      "tree": "ed03d4d019a9d8b566ffd454e112e9fbce70bad8",
      "parents": [
        "c854363e80b49dd04a4de18ebc379eb8c8806674"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Feb 02 10:13:42 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Feb 02 10:13:42 2010 +1100"
      },
      "message": "xfs: Don\u0027t issue buffer IO direct from AIL push V2\n\nAll buffers logged into the AIL are marked as delayed write.\nWhen the AIL needs to push the buffer out, it issues an async write of the\nbuffer. This means that IO patterns are dependent on the order of\nbuffers in the AIL.\n\nInstead of flushing the buffer, promote the buffer in the delayed\nwrite list so that the next time the xfsbufd is run the buffer will\nbe flushed by the xfsbufd. Return the state to the xfsaild that the\nbuffer was promoted so that the xfsaild knows that it needs to cause\nthe xfsbufd to run to flush the buffers that were promoted.\n\nUsing the xfsbufd for issuing the IO allows us to dispatch all\nbuffer IO from the one queue. This means that we can make much more\nenlightened decisions on what order to flush buffers to disk as\nwe don\u0027t have multiple places issuing IO. Optimisations to xfsbufd\nwill be in a future patch.\n\nVersion 2\n- kill XFS_ITEM_FLUSHING as it is now unused.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "9b00f30762fe9f914eb6e03057a616ed63a4e8ca",
      "tree": "11644521534de9828b17e028f0d9c5d960785720",
      "parents": [
        "bdfb04301fa5fdd95f219539a9a5b9663b1e5fc2"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Jan 21 11:17:20 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 16:34:23 2010 -0600"
      },
      "message": "xfs: quota limit statvfs available blocks\n\nA \"df\" run on an NFS client of an exported XFS file system reports\nthe wrong information for \"available\" blocks.  When a block quota is\nenforced, the amount reported as free is limited by the quota, but\nthe amount reported available is not (and should be).\n\nReported-by: Guk-Bong, Kwon \u003cgbkwon@gmail.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "bdfb04301fa5fdd95f219539a9a5b9663b1e5fc2",
      "tree": "6d50b1c71d1f227cf1800ee0531a475266ef6da8",
      "parents": [
        "a14a348bff2f99471a28e5928eb6801224c053d8"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Jan 20 21:55:30 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 13:44:56 2010 -0600"
      },
      "message": "xfs: replace KM_LARGE with explicit vmalloc use\n\nWe use the KM_LARGE flag to make kmem_alloc and friends use vmalloc\nif necessary.  As we only need this for a few boot/mount time\nallocations just switch to explicit vmalloc calls there.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "a14a348bff2f99471a28e5928eb6801224c053d8",
      "tree": "9a34d7e988cd78bc9b19369cbad3ad009b9a2bfd",
      "parents": [
        "4139b3b337cffd106744386c842b89dc86e31d4b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Jan 19 09:56:46 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 13:44:49 2010 -0600"
      },
      "message": "xfs: cleanup up xfs_log_force calling conventions\n\nRemove the XFS_LOG_FORCE argument which was always set, and the\nXFS_LOG_URGE define, which was never used.\n\nSplit xfs_log_force into a two helpers - xfs_log_force which forces\nthe whole log, and xfs_log_force_lsn which forces up to the\nspecified LSN.  The underlying implementations already were entirely\nseparate, as were the users.\n\nAlso re-indent the new _xfs_log_force/_xfs_log_force which\npreviously had a weird coding style.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "4139b3b337cffd106744386c842b89dc86e31d4b",
      "tree": "13e98549e956cabcaf88dd3218268ae643802c78",
      "parents": [
        "0cadda1c5f194f98a05d252ff4385d86d2ed0862"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Jan 19 09:56:45 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 13:44:43 2010 -0600"
      },
      "message": "xfs: kill XLOG_VEC_SET_TYPE\n\nThis macro only obsfucates the log item type assignments, so kill it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "0cadda1c5f194f98a05d252ff4385d86d2ed0862",
      "tree": "a299a7a976f1478f9024f1d3aff9a2351a8397fe",
      "parents": [
        "a210c1aa7f6c90b729cc3a72d03e789b13cb6c47"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Jan 19 09:56:44 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 13:44:36 2010 -0600"
      },
      "message": "xfs: remove duplicate buffer flags\n\nCurrently we define aliases for the buffer flags in various\nnamespaces, which only adds confusion.  Remove all but the XBF_\nflags to clean this up a bit.\n\nNote that we still abuse XFS_B_ASYNC/XBF_ASYNC for some non-buffer\nuses, but I\u0027ll clean that up later.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "a210c1aa7f6c90b729cc3a72d03e789b13cb6c47",
      "tree": "ff454424108c99d97fd0797d52330b711f65154a",
      "parents": [
        "4d1f88d75b00c4d23f4c51305ab5b779a86ef74e"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Sun Jan 17 22:36:19 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 13:44:28 2010 -0600"
      },
      "message": "xfs: implement quota warnings via netlink\n\nWire up quota_send_warning to send quota warnings over netlink.\nThis is used by various desktops to show user quota warnings.\n\nTested by running the quota_nld daemon while running the xfstest\nquota tests and observing the warnings.  I\u0027ll see how I can get a\nmore formal testcase for it written.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "4d1f88d75b00c4d23f4c51305ab5b779a86ef74e",
      "tree": "9a0aa476c2c285a1557218a14f32f41cd1013f85",
      "parents": [
        "512dd1abd9539a474f2792eeaf6783c59ad7778a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Jan 13 22:05:49 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 13:44:22 2010 -0600"
      },
      "message": "xfs: clean up error handling in xfs_trans_dqresv\n\nMove the error code selection after the goto label and fold the\nxfs_quota_error helper into it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "512dd1abd9539a474f2792eeaf6783c59ad7778a",
      "tree": "24508eb59f5786131abf0c3e2bca4a1e125bdd69",
      "parents": [
        "587aa0feb74ffe3239b5e26ff5d017ba9f5daec9"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Jan 13 22:05:48 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 13:44:10 2010 -0600"
      },
      "message": "xfs: kill XFS_QMOPT_ASYNC\n\nThe option is unused and one of the few remaining users of\nxfs_bawrite, so let\u0027s get rid of it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "c8e20be020f234c8d492927a424a7d8bbefd5b5d",
      "tree": "ced84d52bf87d72d36a65e3ddca6b4fc4b7f819f",
      "parents": [
        "7284ce6c9f6153d1777df5f310c959724d1bd446"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Sun Jan 10 23:51:45 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 13:43:55 2010 -0600"
      },
      "message": "xfs: reclaim inodes under a write lock\n\nMake the inode tree reclaim walk exclusive to avoid races with\nconcurrent sync walkers and lookups. This is a version of a patch\nposted by Christoph Hellwig that avoids all the code duplication.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "0b1b213fcf3a8486ada99a2bab84ab8c6f51b264",
      "tree": "661fd8da7487231224c77b95c33986cb7d7b41ef",
      "parents": [
        "6ef3554422e2c7e7aa424ba63737da498881dff4"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Dec 14 23:14:59 2009 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Mon Dec 14 23:08:16 2009 -0600"
      },
      "message": "xfs: event tracing support\n\nConvert the old xfs tracing support that could only be used with the\nout of tree kdb and xfsidbg patches to use the generic event tracer.\n\nTo use it make sure CONFIG_EVENT_TRACING is enabled and then enable\nall xfs trace channels by:\n\n   echo 1 \u003e /sys/kernel/debug/tracing/events/xfs/enable\n\nor alternatively enable single events by just doing the same in one\nevent subdirectory, e.g.\n\n   echo 1 \u003e /sys/kernel/debug/tracing/events/xfs/xfs_ihold/enable\n\nor set more complex filters, etc. In Documentation/trace/events.txt\nall this is desctribed in more detail.  To reads the events do a\n\n   cat /sys/kernel/debug/tracing/trace\n\nCompared to the last posting this patch converts the tracing mostly to\nthe one tracepoint per callsite model that other users of the new\ntracing facility also employ.  This allows a very fine-grained control\nof the tracing, a cleaner output of the traces and also enables the\nperf tool to use each tracepoint as a virtual performance counter,\n     allowing us to e.g. count how often certain workloads git various\n     spots in XFS.  Take a look at\n\n    http://lwn.net/Articles/346470/\n\nfor some examples.\n\nAlso the btree tracing isn\u0027t included at all yet, as it will require\nadditional core tracing features not in mainline yet, I plan to\ndeliver it later.\n\nAnd the really nice thing about this patch is that it actually removes\nmany lines of code while adding this nice functionality:\n\n fs/xfs/Makefile                |    8\n fs/xfs/linux-2.6/xfs_acl.c     |    1\n fs/xfs/linux-2.6/xfs_aops.c    |   52 -\n fs/xfs/linux-2.6/xfs_aops.h    |    2\n fs/xfs/linux-2.6/xfs_buf.c     |  117 +--\n fs/xfs/linux-2.6/xfs_buf.h     |   33\n fs/xfs/linux-2.6/xfs_fs_subr.c |    3\n fs/xfs/linux-2.6/xfs_ioctl.c   |    1\n fs/xfs/linux-2.6/xfs_ioctl32.c |    1\n fs/xfs/linux-2.6/xfs_iops.c    |    1\n fs/xfs/linux-2.6/xfs_linux.h   |    1\n fs/xfs/linux-2.6/xfs_lrw.c     |   87 --\n fs/xfs/linux-2.6/xfs_lrw.h     |   45 -\n fs/xfs/linux-2.6/xfs_super.c   |  104 ---\n fs/xfs/linux-2.6/xfs_super.h   |    7\n fs/xfs/linux-2.6/xfs_sync.c    |    1\n fs/xfs/linux-2.6/xfs_trace.c   |   75 ++\n fs/xfs/linux-2.6/xfs_trace.h   | 1369 +++++++++++++++++++++++++++++++++++++++++\n fs/xfs/linux-2.6/xfs_vnode.h   |    4\n fs/xfs/quota/xfs_dquot.c       |  110 ---\n fs/xfs/quota/xfs_dquot.h       |   21\n fs/xfs/quota/xfs_qm.c          |   40 -\n fs/xfs/quota/xfs_qm_syscalls.c |    4\n fs/xfs/support/ktrace.c        |  323 ---------\n fs/xfs/support/ktrace.h        |   85 --\n fs/xfs/xfs.h                   |   16\n fs/xfs/xfs_ag.h                |   14\n fs/xfs/xfs_alloc.c             |  230 +-----\n fs/xfs/xfs_alloc.h             |   27\n fs/xfs/xfs_alloc_btree.c       |    1\n fs/xfs/xfs_attr.c              |  107 ---\n fs/xfs/xfs_attr.h              |   10\n fs/xfs/xfs_attr_leaf.c         |   14\n fs/xfs/xfs_attr_sf.h           |   40 -\n fs/xfs/xfs_bmap.c              |  507 +++------------\n fs/xfs/xfs_bmap.h              |   49 -\n fs/xfs/xfs_bmap_btree.c        |    6\n fs/xfs/xfs_btree.c             |    5\n fs/xfs/xfs_btree_trace.h       |   17\n fs/xfs/xfs_buf_item.c          |   87 --\n fs/xfs/xfs_buf_item.h          |   20\n fs/xfs/xfs_da_btree.c          |    3\n fs/xfs/xfs_da_btree.h          |    7\n fs/xfs/xfs_dfrag.c             |    2\n fs/xfs/xfs_dir2.c              |    8\n fs/xfs/xfs_dir2_block.c        |   20\n fs/xfs/xfs_dir2_leaf.c         |   21\n fs/xfs/xfs_dir2_node.c         |   27\n fs/xfs/xfs_dir2_sf.c           |   26\n fs/xfs/xfs_dir2_trace.c        |  216 ------\n fs/xfs/xfs_dir2_trace.h        |   72 --\n fs/xfs/xfs_filestream.c        |    8\n fs/xfs/xfs_fsops.c             |    2\n fs/xfs/xfs_iget.c              |  111 ---\n fs/xfs/xfs_inode.c             |   67 --\n fs/xfs/xfs_inode.h             |   76 --\n fs/xfs/xfs_inode_item.c        |    5\n fs/xfs/xfs_iomap.c             |   85 --\n fs/xfs/xfs_iomap.h             |    8\n fs/xfs/xfs_log.c               |  181 +----\n fs/xfs/xfs_log_priv.h          |   20\n fs/xfs/xfs_log_recover.c       |    1\n fs/xfs/xfs_mount.c             |    2\n fs/xfs/xfs_quota.h             |    8\n fs/xfs/xfs_rename.c            |    1\n fs/xfs/xfs_rtalloc.c           |    1\n fs/xfs/xfs_rw.c                |    3\n fs/xfs/xfs_trans.h             |   47 +\n fs/xfs/xfs_trans_buf.c         |   62 -\n fs/xfs/xfs_vnodeops.c          |    8\n 70 files changed, 2151 insertions(+), 2592 deletions(-)\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "af901ca181d92aac3a7dc265144a9081a86d8f39",
      "tree": "380054af22521144fbe1364c3bcd55ad24c9bde4",
      "parents": [
        "972b94ffb90ea6d20c589d9a47215df103388ddd"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Sat Nov 14 13:09:05 2009 -0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Dec 04 15:39:55 2009 +0100"
      },
      "message": "tree-wide: fix assorted typos all over the place\n\nThat is \"success\", \"unknown\", \"through\", \"performance\", \"[re|un]mapping\"\n, \"access\", \"default\", \"reasonable\", \"[con]currently\", \"temperature\"\n, \"channel\", \"[un]used\", \"application\", \"example\",\"hierarchy\", \"therefore\"\n, \"[over|under]flow\", \"contiguous\", \"threshold\", \"enough\" and others.\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "05277c75f6dea8ecf59138cd1b6781fb54ae08bd",
      "tree": "e61d1206c3201b306f4fadeb1a4fb2cdd55fa887",
      "parents": [
        "d0800703febc04827b8fa91921aa4e254d01e8d1"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Oct 12 23:42:10 2009 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Tue Oct 13 13:16:36 2009 -0500"
      },
      "message": "xfs: fix double IRELE in xfs_dqrele_inode\n\nxfs_dqrele_inode calls xfs_iput to release the ilock and a reference\nand then also calls IRELE which does a second decrement of the reference\ncount.  This leads to a premature freeing of inodes when quotas were turned\noff while the filesystem was mounted.\n\nThanks to Utako Kusaka for reporting the bug and provinding a good testcase.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReported-by: Utako Kusaka \u003cu-kusaka@wm.jp.nec.com\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "361735fd8ff8f7d8b9f0e134d0d99d99ee193d92",
      "tree": "16cc89f80380bc6d7fec6dee0c3553039fc671da",
      "parents": [
        "f08a59f1467b92cd9b8c78961506f69c74bb01a5"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Aug 28 23:55:00 2009 +0400"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Tue Sep 15 12:29:24 2009 -0500"
      },
      "message": "xfs: switch to seq_file\n\ncreate_proc_read_entry() is getting deprecated.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "ef14f0c1578dce4b688726eb2603e50b62d6665a",
      "tree": "5a221081850fab8f96455745e90f4a0e2127bce0",
      "parents": [
        "8b5403a6d772d340541cfb30a668fde119c40ac1"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Jun 10 17:07:47 2009 +0200"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Wed Jun 10 17:07:47 2009 +0200"
      },
      "message": "xfs: use generic Posix ACL code\n\nThis patch rips out the XFS ACL handling code and uses the generic\nfs/posix_acl.c code instead.  The ondisk format is of course left\nunchanged.\n\nThis also introduces the same ACL caching all other Linux filesystems do\nby adding pointers to the acl and default acl in struct xfs_inode.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "8b5403a6d772d340541cfb30a668fde119c40ac1",
      "tree": "0a81b174351ca56555d7ccc53ecd76c0b27edcee",
      "parents": [
        "b0710ccc6d9fa8fb908b5f6d1b0782a09d80e24f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 15:37:16 2009 +0200"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Mon Jun 08 15:37:16 2009 +0200"
      },
      "message": "xfs: remove SYNC_BDFLUSH\n\nSYNC_BDFLUSH is a leftover from IRIX and rather misnamed for todays\ncode.  Make xfs_sync_fsdata and xfs_dq_sync use the SYNC_TRYLOCK flag\nfor not blocking on logs just as the inode sync code already does.\n\nFor xfs_sync_fsdata it\u0027s a trivial 1:1 replacement, but for xfs_qm_sync\nI use the opportunity to decouple the non-blocking lock case from the\ndifferent flushing modes, similar to the inode sync code.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "fe588ed32867b42e0d906db558ca92fd9f8b128e",
      "tree": "4d5c6a5e34ebf1a0c2a82d3d1c08c272d5823264",
      "parents": [
        "75f3cb1393133682958db6f157e1b6473e5a366b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 15:35:27 2009 +0200"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Mon Jun 08 15:35:27 2009 +0200"
      },
      "message": "xfs: use generic inode iterator in xfs_qm_dqrele_all_inodes\n\nUse xfs_inode_ag_iterator instead of opencoding the inode walk in the\nquota code.  Mark xfs_inode_ag_iterator and xfs_sync_inode_valid non-static\nto allow using them from the quota code.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Josef \u0027Jeff\u0027 Sipek \u003cjeffpc@josefsipek.net\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "7d095257e321214e4cf359abd131ba1f09c60cba",
      "tree": "3f71e2650651616f8ba168b64a82ab48aedef14c",
      "parents": [
        "0c5e1ce89f1eacc366ec421c0f5f681159479c28"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 15:33:32 2009 +0200"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Mon Jun 08 15:33:32 2009 +0200"
      },
      "message": "xfs: kill xfs_qmops\n\nKill the quota ops function vector and replace it with direct calls or\nstubs in the CONFIG_XFS_QUOTA\u003dn case.\n\nMake sure we check XFS_IS_QUOTA_RUNNING in the right spots.  We can remove\nthe number of those checks because the XFS_TRANS_DQ_DIRTY flag can\u0027t be set\notherwise.\n\nThis brings us back closer to the way this code worked in IRIX and earlier\nLinux versions, but we keep a lot of the more useful factoring of common\ncode.\n\nEventually we should also kill xfs_qm_bhv.c, but that\u0027s left for a later\npatch.\n\nReduces the size of the source code by about 250 lines and the size of\nXFS module by about 1.5 kilobytes with quotas enabled:\n\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n 615957\t   2960\t   3848\t 622765\t  980ad\tfs/xfs/xfs.o\n 617231\t   3152\t   3848\t 624231\t  98667\tfs/xfs/xfs.o.old\n\nFallout:\n\n - xfs_qm_dqattach is split into xfs_qm_dqattach_locked which expects\n   the inode locked and xfs_qm_dqattach which does the locking around it,\n   thus removing XFS_QMOPT_ILOCKED.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "a0b0b8a5b3cb47892b5984cd86272446bee5f511",
      "tree": "d2e4d33edec465ec16f84b4a3aae24351f45d9dd",
      "parents": [
        "61454f33389ecfac68846e07d29c8d18af342c43"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Mar 29 09:51:00 2009 +0200"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Sun Mar 29 09:51:00 2009 +0200"
      },
      "message": "xfs: kill mutex_t typedef\n\nPeople continue to complain about this for weird reasons, but there\u0027s\nreally no point in keeping this typedef for a couple of users anyway.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nReviewed-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "fcafb71b57a039f2113b0321b3b5535fea3a0aca",
      "tree": "ba092276254f40cecb55764b7b4038eccdc6a296",
      "parents": [
        "c9a192dcf906a33f59c555924e7796a4b9454217"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Feb 09 08:47:34 2009 +0100"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Mon Feb 09 08:47:34 2009 +0100"
      },
      "message": "xfs: get rid of indirections in the quotaops implementation\n\nCurrently we call from the nicely abstracted linux quotaops into a ugly\nmultiplexer just to split the calls out at the same boundary again.\nRewrite the quota ops handling to remove that obfucation.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "c9a192dcf906a33f59c555924e7796a4b9454217",
      "tree": "fda65cd2f97b75d21762fcfa229c2c1e4920e9cf",
      "parents": [
        "7201813bf55cc06e6a7405831f63df96ee7842e7"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Feb 09 08:47:22 2009 +0100"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Mon Feb 09 08:47:22 2009 +0100"
      },
      "message": "xfs: sanitize qh_lock wrappers\n\nGet rid of various obsfucating wrappers for accessing the quota hash lock,\nwe only keep the accessors for accessing the mplist and freelist locks as\nthey encode a multi-level datastructure walk.  But make sure all of them\nare defined in the same way as simple macros.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "7201813bf55cc06e6a7405831f63df96ee7842e7",
      "tree": "12eadd4e19c3defe7bdb8c054cd2b4d66bb5f379",
      "parents": [
        "e249458220c9799fe94573abd341d29c83579671"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Feb 09 08:39:24 2009 +0100"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Mon Feb 09 08:39:24 2009 +0100"
      },
      "message": "xfs: use mutex_is_locked in XFS_DQ_IS_LOCKED\n\nNow that we have a helper to test if a mutex is held use it instead of our\nown little hacks.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "e249458220c9799fe94573abd341d29c83579671",
      "tree": "109a54c3609a44d1a7a55e062531ac55a9a3ead2",
      "parents": [
        "517b5e8c8516a25a0df3b530fd183eb493a96698"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Feb 09 08:38:39 2009 +0100"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Mon Feb 09 08:38:39 2009 +0100"
      },
      "message": "xfs: remove XFS_QM_LOCK/XFS_QM_UNLOCK/XFS_QM_HOLD/XFS_QM_RELE\n\nRemove these macros which only obsfucated the code in rather nast ways.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "8e9b6e7fa4544ea8a0e030c8987b918509c8ff47",
      "tree": "c9896c98d9f438f2efb64a411c314a5bd8ae950c",
      "parents": [
        "4346cdd4647e5eef15817dbfc2c091cac55e33d9"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Feb 08 21:51:42 2009 +0100"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Sun Feb 08 21:51:42 2009 +0100"
      },
      "message": "xfs: remove the unused XFS_QMOPT_DQLOCK flag\n\nThe XFS_QMOPT_DQLOCK flag introduces major complexity in the quota subsystem\nbut isn\u0027t actually used anywhere.  So remove it and all the hazzles it\nintroduces.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "98b8c7a0c42acf0d6963dbb9aabe4a2e312aae12",
      "tree": "0187d4acd07f7631a300257c0da93e81409d56ef",
      "parents": [
        "5bb87a33b2cfb8e7ef3383718274094bdff266a3"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jan 19 02:03:25 2009 +0100"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Mon Jan 19 02:03:25 2009 +0100"
      },
      "message": "xfs: add a lock class for group/project dquots\n\nWe can have both a user and a group/project dquot locked at the same time,\nas long as the user dquot is locked first.  Tell lockdep about that fact\nby making the group/project dquots a different lock class.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "5bb87a33b2cfb8e7ef3383718274094bdff266a3",
      "tree": "7917b0354e01dde2fc321a48214f72333aab3073",
      "parents": [
        "a4edd1da20af79b2e92efeee3ca94831c8024d61"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jan 19 02:03:19 2009 +0100"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Mon Jan 19 02:03:19 2009 +0100"
      },
      "message": "xfs: lockdep annotations for xfs_dqlock2\n\nxfs_dqlock2 locks two xfs_dquots, which is fine as it always locks the\ndquot with the lower id first.  Use mutex_lock_nested to tell lockdep\nabout this fact.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "a4edd1da20af79b2e92efeee3ca94831c8024d61",
      "tree": "920e0730dd3e84fb24bc64aab24ca049b5389cdb",
      "parents": [
        "178eae342b34185ef7b11e62df2f74ba45daa56e"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jan 19 02:03:11 2009 +0100"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Mon Jan 19 02:03:11 2009 +0100"
      },
      "message": "xfs: add a separate lock class for the per-mount list of dquots\n\nWe can have both a a quota hash chain and the per-mount list locked at\nthe same time.  But given that both use the same struct dqhash as list\nhead we have to tell lockdep that they are different lock classes.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "9d87c3192d96ef9ac1cec8321538e9b35e90b5aa",
      "tree": "dfcb9e8cf211c61885f1719b06633d87b43a320e",
      "parents": [
        "c088f4e9da74b901f7ed1749ad697d77622ed0f9"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Wed Jan 14 23:22:07 2009 -0600"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Fri Jan 16 17:10:42 2009 +1100"
      },
      "message": "[XFS] Remove the rest of the macro-to-function indirections.\n\nRemove the last of the macros-defined-to-static-functions.\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nReviewed-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "e57481dc269cd3773b22f53bfb869308780a7bf1",
      "tree": "0f93e375521a9afc49a8b5e143a0cff1945fc365",
      "parents": [
        "070c4616ec62fc207e2aeef9d0f28af294c651d0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Dec 03 12:20:36 2008 +0100"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@sgi.com",
        "time": "Thu Dec 04 15:39:23 2008 +1100"
      },
      "message": "no explicit xfs_iflush for special inodes during unmount\n\nCurrently we explicitly call xfs_iflush on the quota, real-time and root\ninodes from xfs_unmount_flush.  But we just called xfs_sync_inodes with\nSYNC_ATTR and do an XFS_bflush aka xfs_flush_buftarg to make sure all inodes\nare on disk already, so there is no need for these special cases.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\n"
    },
    {
      "commit": "00dd4029e9afa642c2b26dc3aac834322ac29b4a",
      "tree": "175fdc9fa1569d66d42e75bec46fb8001e140346",
      "parents": [
        "f35642e2f89f2b0379e929bd9027342365abc839"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Nov 28 14:23:36 2008 +1100"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@sgi.com",
        "time": "Mon Dec 01 11:36:46 2008 +1100"
      },
      "message": "[XFS] remove bhv_statvfs_t typedef\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\n"
    },
    {
      "commit": "6307091fe69ae74747298bdcaf43119ad67bda3a",
      "tree": "c1feb80479b7ae4ebcf9a4336e50dfd18aebcb38",
      "parents": [
        "cb4f0d1d4229f609f43c68acec69c7618ed72397"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Nov 10 17:13:23 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Mon Nov 10 17:13:23 2008 +1100"
      },
      "message": "[XFS] Avoid using inodes that haven\u0027t been completely initialised\n\nThe radix tree walks in xfs_sync_inodes_ag and xfs_qm_dqrele_all_inodes()\ncan find inodes that are still undergoing initialisation. Avoid\nthem by checking for the the XFS_INEW() flag once we have a reference\non the inode. This flag is cleared once the inode is properly initialised.\n\nSGI-PV: 987246\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "cb4f0d1d4229f609f43c68acec69c7618ed72397",
      "tree": "cc96ac86a126c2a2055183e3d42a5be38087abbb",
      "parents": [
        "d44dab8d1cde8aeba1faf44a7654f90800feb7fc"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Nov 10 17:11:18 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Mon Nov 10 17:11:18 2008 +1100"
      },
      "message": "[XFS] fix uninitialised variable bug in dquot release\n\ngcc on ARM warns about an using an uninitialised variable\nin xfs_qm_dqrele_all_inodes(). This is a real bug, but gcc\non x86_64 is not reporting this warning so it went unnoticed.\n\nFix the bug by bring the inode radix tree walk code up to\ndate with xfs_sync_inodes_ag().\n\nSGI-PV: 987246\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "9d565ffa33d574c2a22442f9d95ca2bd0be7cc42",
      "tree": "6a90c653b264fa286525a24f5bd2ce2f2767252e",
      "parents": [
        "5a792c4579af8466246408e38fd4eff45d8493b8"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Oct 30 17:53:24 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Oct 30 17:53:24 2008 +1100"
      },
      "message": "[XFS] kill struct xfs_mount_args\n\nNo need to parse the mount option into a structure before applying it to\nstruct xfs_mount.\n\nThe content of xfs_start_flags gets merged into xfs_parseargs. Calls\ninbetween don\u0027t care and can use mount members instead of the args struct.\n\nThis patch uncovered that the mount option for shared filesystems wasn\u0027t\never exposed on Linux. The code to handle it is #if 0\u0027ed in this patch\npending a decision on this feature. I\u0027ll send a writeup about it to the\nlist soon.\n\nSGI-PV: 987246\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32371a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "783a2f656f9674c31d4019708a94af93fa1d1c22",
      "tree": "7ac2123b187c0522dbd8a0d94de3856b33147c46",
      "parents": [
        "fc1829f34d30899701dfd5890030d39e13e1f47d"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Oct 30 17:39:58 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Thu Oct 30 17:39:58 2008 +1100"
      },
      "message": "[XFS] Finish removing the mount pointer from the AIL API\n\nChange all the remaining AIL API functions that are passed struct\nxfs_mount pointers to pass pointers directly to the struct xfs_ail being\nused. With this conversion, all external access to the AIL is via the\nstruct xfs_ail. Hence the operation and referencing of the AIL is almost\nentirely independent of the xfs_mount that is using it - it is now much\nmore tightly tied to the log and the items it is tracking in the log than\nit is tied to the xfs_mount.\n\nSGI-PV: 988143\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32353a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "c7e8f268278a292d3823b4352182fa7755a71410",
      "tree": "f7316f830fdc7feedfd9ae486ac097e8f5df8dad",
      "parents": [
        "7b2e2a31f5c23b5f028af8c895137b4c512cc1c8"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Oct 30 17:39:23 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Thu Oct 30 17:39:23 2008 +1100"
      },
      "message": "[XFS] Move the AIL lock into the struct xfs_ail\n\nBring the ail lock inside the struct xfs_ail. This means the AIL can be\nentirely manipulated via the struct xfs_ail rather than needing both the\nstruct xfs_mount and the struct xfs_ail.\n\nSGI-PV: 988143\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32350a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "7b2e2a31f5c23b5f028af8c895137b4c512cc1c8",
      "tree": "c37aa7117a16ebcd01d0ac2687b944e5dd8a7361",
      "parents": [
        "5b00f14fbd60d42441f78c0e414a539cbfba5cb9"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Oct 30 17:39:12 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Thu Oct 30 17:39:12 2008 +1100"
      },
      "message": "[XFS] Allow 64 bit machines to avoid the AIL lock during flushes\n\nWhen copying lsn\u0027s from the log item to the inode or dquot flush lsn, we\ncurrently grab the AIL lock. We do this because the LSN is a 64 bit\nquantity and it needs to be read atomically. The lock is used to guarantee\natomicity for 32 bit platforms.\n\nMake the LSN copying a small function, and make the function used\nconditional on BITS_PER_LONG so that 64 bit machines don\u0027t need to take\nthe AIL lock in these places.\n\nSGI-PV: 988143\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32349a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "a4e4c4f4a8f9376158f8181a75285091f52a79e3",
      "tree": "146e3f2d51e60db4536895a0cd4eb69a33762d37",
      "parents": [
        "cb56a4b995d44b7990ca3acd18db571eedd0649f"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Oct 30 17:16:11 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Thu Oct 30 17:16:11 2008 +1100"
      },
      "message": "[XFS] Kill xfs_sync()\n\nThere are no more callers to xfs_sync() now, so remove the function\naltogther.\n\nSGI-PV: 988140\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32311a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "2030b5aba8a4bcaca5aca85968514fa58207d3bd",
      "tree": "e01122f234efd0acad9c3217ffae05f023f8b247",
      "parents": [
        "bc60a99323b3ec628273b5fa998285c87d464ca6"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Oct 30 17:15:12 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Thu Oct 30 17:15:12 2008 +1100"
      },
      "message": "[XFS] use xfs_sync_inodes rather than xfs_syncsub\n\nKill the unused arg in xfs_syncsub() and xfs_sync_inodes(). For callers of\nxfs_syncsub() that only want to flush inodes, replace xfs_syncsub() with\ndirect calls to xfs_sync_inodes() as that is all that is being done with\nthe specific flags being passed in.\n\nSGI-PV: 988140\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32305a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "bc60a99323b3ec628273b5fa998285c87d464ca6",
      "tree": "5084bb53b48d1b9ba3ceed8a3995296cc21840c5",
      "parents": [
        "2af75df7be7ca86965bf73766f827575d1c26fbd"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Oct 30 17:15:03 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Thu Oct 30 17:15:03 2008 +1100"
      },
      "message": "[XFS] Use struct inodes instead of vnodes to kill vn_grab\n\nWith the sync code relocated to the linux-2.6 directory we can use struct\ninodes directly. If we do the same thing for the quota release code, we\ncan remove vn_grab altogether. While here, convert the VN_BAD() checks to\nis_bad_inode() so we can remove vnodes entirely from this code.\n\nSGI-PV: 988140\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32304a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "5b4d89ae0f5ae45c7fa1dfc616fd2bb8634bb7b7",
      "tree": "3dd6c2d0fc0072a822692fc3ea2a9e6cc8a6f5f5",
      "parents": [
        "683a897080a053733778b36398186cb1b22c377f"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Oct 30 17:08:03 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Thu Oct 30 17:08:03 2008 +1100"
      },
      "message": "[XFS] Traverse inode trees when releasing dquots\n\nMake releasing all inode dquots traverse the per-ag inode radix trees\nrather than the mount inode list. This removes another user of the mount\ninode list.\n\nVersion 3 o fix comment relating to avoiding trying to release the\n\nquota inodes and those in reclaim.\n\nVersion 2 o add comment explaining use of gang lookups for a single inode\no use IRELE, not VN_RELE o move check for ag initialisation to caller.\n\nSGI-PV: 988139\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32291a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "2f8a3ce1c20f20e6494cdb77fed76bc474ca3ca5",
      "tree": "01322bcb3c1d3bb9f8fd6e170414e5c748b6f77c",
      "parents": [
        "75c68f411b1242c8fdaf731078fdd4e77b14981d"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Oct 30 17:07:20 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Thu Oct 30 17:07:20 2008 +1100"
      },
      "message": "[XFS] don\u0027t block in xfs_qm_dqflush() during async writeback.\n\nNormally dquots are written back via delayed write mechanisms. They are\nflushed to their backing buffer by xfssyncd, which is then pushed out by\neither AIL or xfsbufd flushing. The flush from the xfssyncd is supposed to\nbe non-blocking, but xfs_qm_dqflush() always waits for pinned duots, which\nmeans that it will block for the length of time it takes to do a\nsynchronous log force. This causes unnecessary extra log I/O to be issued\nwhenever we try to flush a busy dquot.\n\nAvoid the log forces and blocking xfssyncd by making xfs_qm_dqflush() pay\nattention to what type of sync it is doing when it sees a pinned dquot and\nnot waiting when doing non-blocking flushes.\n\nSGI-PV: 988147\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32287a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Peter Leckie \u003cpleckie@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "d1de802155341ab63e64d37c58c61d6f358bb3ad",
      "tree": "3881b671ec5b133e8a4bb74a0c8fb90f18dcc3b5",
      "parents": [
        "bc3048e3cd3806ccfd5b16b1a30e5d6013abbd3d"
      ],
      "author": {
        "name": "Peter Leckie",
        "email": "pleckie@sgi.com",
        "time": "Thu Oct 30 17:05:18 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Thu Oct 30 17:05:18 2008 +1100"
      },
      "message": "[XFS] Fix build brakage from patch \"Clean up dquot pincount code\"\n\nThis is a fix for patch \" Clean up dquot pincount code\" which introduced a\nbuild breakage due to a missing \u0026 in xfs_qm_dquot_logitem_pin.\n\nSGI-PV: 986789\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32221a\n\nSigned-off-by: Peter Leckie \u003cpleckie@sgi.com\u003e\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "bc3048e3cd3806ccfd5b16b1a30e5d6013abbd3d",
      "tree": "c6e27010cb66cc52f41bc696def885cb672fb61f",
      "parents": [
        "d112f2984592acb774187b3adddc107fb0825500"
      ],
      "author": {
        "name": "Peter Leckie",
        "email": "pleckie@sgi.com",
        "time": "Thu Oct 30 17:05:04 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Thu Oct 30 17:05:04 2008 +1100"
      },
      "message": "[XFS] Clean up dquot pincount code.\n\nThis is a code cleanup and optimization that removes a per mount point\nspinlock from the quota code and cleans up the code.\n\nThe patch changes the pincount from being an int protected by a spinlock\nto an atomic_t allowing the pincount to be manipulated without holding the\nspinlock.\n\nThis cleanup also protects against random wakup\u0027s of both the aild and\nxfssyncd by reevaluating the pincount after been woken. Two latter patches\nwill address the Spurious wakeups.\n\nSGI-PV: 986789\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32215a\n\nSigned-off-by: Peter Leckie \u003cpleckie@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "5695ef46ef02ba1c6658daa46e6879a2d4f52f5f",
      "tree": "885687ac9cdbba4717f01eef26195fd4eef2ee90",
      "parents": [
        "d62c251fe4a06144255291cffd68cbadf3bf002f"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Wed Aug 13 16:51:57 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:51:57 2008 +1000"
      },
      "message": "[XFS] Use KM_NOFS for debug trace buffers\n\nUse KM_NOFS to prevent recursion back into the filesystem which can cause\ndeadlocks.\n\nIn the case of xfs_iread() we hold the lock on the inode cluster buffer\nwhile allocating memory for the trace buffers. If we recurse back into XFS\nto flush data that may require a transaction to allocate extents which\nneeds log space. This can deadlock with the xfsaild thread which can\u0027t\npush the tail of the log because it is trying to get the inode cluster\nbuffer lock.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31838a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "4249023a5d14f28d4e68ba15d24d25c0e5be71a6",
      "tree": "30d3d7992dc05879835bf96a5d7a6ab437d5a54b",
      "parents": [
        "77508ec8e6ed72c9ba8ca74248a7aabd664e3f57"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:49:32 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:49:32 2008 +1000"
      },
      "message": "[XFS] cleanup xfs_mountfs\n\nRemove all the useless flags and code keyed off it in xfs_mountfs.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31831a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "e1f49cf20cea18e3d1963939fe8612a75e319fbd",
      "tree": "3007ce4d1245487ed956c78591d9d4275793121f",
      "parents": [
        "c63942d3eeffb98219e05d0976862ab9907d297d"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Aug 13 16:41:43 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:41:43 2008 +1000"
      },
      "message": "[XFS] replace dquot flush semaphore with a completion\n\nUse the new completion flush code to implement the dquot flush lock.\nRemoves one of the final users of semaphores in the XFS code base.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31822a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "5ec7f8c7d14a3ea6bf920b3350f5c5d3527cb837",
      "tree": "3fa7d041b51027af39800ebccef63fb12af94f9d",
      "parents": [
        "df80c933f9eb01a7af3812bbe437e38205386304"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:22:40 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:22:40 2008 +1000"
      },
      "message": "[XFS] kill bhv_vnode_t\n\nAll remaining bhv_vnode_t instance are in code that\u0027s more or less Linux\nspecific. (Well, for xfs_acl.c that could be argued, but that code is on\nthe removal list, too). So just do an s/bhv_vnode_t/struct inode/ over the\nwhole tree. We can clean up variable naming and some useless helpers\nlater.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31781a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "0b1f917730dc2276fadbd9813ac3666abd7b1cbd",
      "tree": "8fe61b1287643bf47d3d88204f33393361d8d70c",
      "parents": [
        "604323ca760beebf00a07153706dcbe7128324e0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:13:09 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:13:09 2008 +1000"
      },
      "message": "[XFS] remove remaining VN_HOLD calls\n\nUse IHOLD(ip) instead of VN_HOLD(VFS_I(ip)).\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31765a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "e4f7529108d01bf66af8ebecd6be2b98d8db30ce",
      "tree": "62207729c248cd072b077ea3190635b444909102",
      "parents": [
        "705db4a24e0576f30d736de3c49623b4686ce473"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Aug 13 16:00:45 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:00:45 2008 +1000"
      },
      "message": "[XFS] Kill shouty XFS_ITOV() macro\n\nReplace XFS_ITOV() with the new VFS_I() inline.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31724a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "705db4a24e0576f30d736de3c49623b4686ce473",
      "tree": "f87bf78c747a7886043b93483775d2eb9ca49e20",
      "parents": [
        "016516462575d28fab3354f762cad16c86c09116"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Aug 13 15:47:43 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 15:47:43 2008 +1000"
      },
      "message": "[XFS] kill shouty XFS_ITOV_NULL macro\n\nReplace XFS_ITOV_NULL() with the new VFS_I() inline.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31722a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "26cc0021805e66daa6342174fb5a8c1c862f7c8e",
      "tree": "cb6bf666bef12e7470025d78c86df6e3d169c7b7",
      "parents": [
        "62a877e35d5085c65936ed3194d1bbaf84f419e1"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Jul 18 17:12:43 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:29 2008 +1000"
      },
      "message": "[XFS] s/XFS_PURGE_INODE/IRELE/g s/VN_HOLD(XFS_ITOV())/IHOLD()/\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31405a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "4f0e8a9816e78306bb821018613dbd2513184d8a",
      "tree": "ad9a8cb2b21c8339961fb9bbbabb07936a30dc0a",
      "parents": [
        "f0e2d93c29dc39ffd24cac180a19d48f700c0706"
      ],
      "author": {
        "name": "Denys Vlasenko",
        "email": "vda.linux@googlemail.com",
        "time": "Mon May 19 16:34:04 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:08 2008 +1000"
      },
      "message": "[XFS] Remove unused Falgs parameter from xfs_qm_dqpurge()\n\nSGI-PV: 981498\nSGI-Modid: xfs-linux-melb:xfs-kern:31056a\n\nSigned-off-by: Denys Vlasenko \u003cvda.linux@googlemail.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "f0e2d93c29dc39ffd24cac180a19d48f700c0706",
      "tree": "5bfac66c6a5cda98373eea222834a37877a590f9",
      "parents": [
        "7c12f296500e1157872ef45b3f3bb06b4b73f1c1"
      ],
      "author": {
        "name": "Denys Vlasenko",
        "email": "vda.linux@googlemail.com",
        "time": "Mon May 19 16:31:57 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:07 2008 +1000"
      },
      "message": "[XFS] Remove unused arg from kmem_free()\n\nkmem_free() function takes (ptr, size) arguments but doesn\u0027t actually use\nsecond one.\n\nThis patch removes size argument from all callsites.\n\nSGI-PV: 981498\nSGI-Modid: xfs-linux-melb:xfs-kern:31050a\n\nSigned-off-by: Denys Vlasenko \u003cvda.linux@googlemail.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "579aa9caf552c639fc78168db4cfe7ffcf00c3b3",
      "tree": "2fb1e057487afe46d03bc536fcba380dc0117cfb",
      "parents": [
        "eca450b7c23f804597b87085b2a05bfc5b3ccb8b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Apr 22 17:34:00 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Tue Apr 29 15:54:02 2008 +1000"
      },
      "message": "[XFS] shrink mrlock_t\n\nThe writer field is not needed for non_DEBU builds so remove it. While\nwe\u0027re at i also clean up the interface for is locked asserts to go through\nand xfs_iget.c helper with an interface like the xfs_ilock routines to\nisolated the XFS codebase from mrlock internals. That way we can kill\nmrlock_t entirely once rw_semaphores grow an islocked facility. Also\nremove unused flags to the ilock family of functions.\n\nSGI-PV: 976035\nSGI-Modid: xfs-linux-melb:xfs-kern:30902a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "6a7f422d47d4af461704ebb9d7a389d9e59766b2",
      "tree": "c51e1c699c364bbd09d36e2de3609619bac50c0d",
      "parents": [
        "4e5dbb3498e74514b9936d691413afc55fb84ea9"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Apr 22 17:33:40 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Tue Apr 29 15:53:31 2008 +1000"
      },
      "message": "[XFS] kill di_mode checks after xfs_iget\n\nUnless XFS_IGET_CREATE is passed xfs_iget will return ENOENT if it\nencounters an inode with di_mode \u003d\u003d 0. Remove the duplicated checks in the\ncallers.\n\n(the log recovery case is not touched for now)\n\nSGI-PV: 976035\nSGI-Modid: xfs-linux-melb:xfs-kern:30898a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "db7a19f2c89d99b66874a7e0c0dc681ff1f37b4e",
      "tree": "dd242710a41839617eae7a8b7e71f6effb4d608c",
      "parents": [
        "d64e31a2f53cdcb2f95b782196faacb0995ca0c0"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Thu Apr 10 12:22:24 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Apr 18 12:00:35 2008 +1000"
      },
      "message": "[XFS] Ensure xfs_bawrite() errors are checked.\n\nxfs_bawrite() can return immediate error status on async writes. Unlike\nxfsbdstrat() we don\u0027t ever check the error on the buffer after the call,\nso we currently do not catch errors at all here. Ensure we catch and\npropagate or warn to the syslog about up-front async write errors.\n\nSGI-PV: 980084\nSGI-Modid: xfs-linux-melb:xfs-kern:30824a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "e5720eec0548c08943d759e39db0388d8fe59287",
      "tree": "e38b474f0dbac30aee7141878953223a2a588c69",
      "parents": [
        "3c1e2bbe5bcdcd435510a05eb121fa74b848e24f"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Thu Apr 10 12:21:18 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Apr 18 11:58:17 2008 +1000"
      },
      "message": "[XFS] Propagate errors from xfs_trans_commit().\n\nxfs_trans_commit() can return errors when there are problems in the\ntransaction subsystem. They are indicative that the entire transaction may\nbe incomplete, and hence the error should be propagated as there is a good\npossibility that there is something fatally wrong in the filesystem. Catch\nand propagate or warn about commit errors in the places where they are\ncurrently ignored.\n\nSGI-PV: 980084\nSGI-Modid: xfs-linux-melb:xfs-kern:30795a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "88ab02085363b7c45935d66ab3e969b4fec9a20c",
      "tree": "933391b62fb0712c87feb182ded9219079f46167",
      "parents": [
        "cb6edc26c386d2268dcf61bcdec02b6fb50b6ba2"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Thu Apr 10 12:20:51 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Apr 18 11:57:36 2008 +1000"
      },
      "message": "[XFS] Propagate quota file truncation errors.\n\nTruncating the quota files can silently fail. Ensure that truncation\nerrors are propagated to the callers.\n\nSGI-PV: 980084\nSGI-Modid: xfs-linux-melb:xfs-kern:30791a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "cb6edc26c386d2268dcf61bcdec02b6fb50b6ba2",
      "tree": "420f39455fd5665dd1c61ee3d2fde135c1cf5bd0",
      "parents": [
        "31d5577b35d8397dea19f2ba7550e9225605a785"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Thu Apr 10 12:20:45 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Apr 18 11:57:26 2008 +1000"
      },
      "message": "[XFS] Catch errors when turning off quotas.\n\nWhen turning off quota, we need to write various transactions to the log\nto ensure that they are cleanly removed in the case of a crash. We need to\ncheck that the transactions hit the disk correctly. If we fail to write\nthe final quota off transaction, we are corrupt in memory and so the only\noption is to shut the filesystem down at this point.\n\nSGI-PV: 980084\nSGI-Modid: xfs-linux-melb:xfs-kern:30790a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "31d5577b35d8397dea19f2ba7550e9225605a785",
      "tree": "9702baeb058a786b3022475dccc9bac81defdb8f",
      "parents": [
        "53aa7915d67b9d0f5986c9f08e76846fedc520d4"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Thu Apr 10 12:20:38 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Apr 18 11:57:16 2008 +1000"
      },
      "message": "[XFS] Catch errors resetting quota flags.\n\nWarn to the syslog if we fail to reset the quota flags in the superblock\nwhen a quota check fails.\n\nSGI-PV: 980084\nSGI-Modid: xfs-linux-melb:xfs-kern:30789a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "53aa7915d67b9d0f5986c9f08e76846fedc520d4",
      "tree": "d80c449c1369de8bb92a8abe34506f2810732227",
      "parents": [
        "3c56836f92683cb871ebbf44c512069b0d48a08f"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Thu Apr 10 12:20:31 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Apr 18 11:57:05 2008 +1000"
      },
      "message": "[XFS] Clean up quotamount error handling.\n\nxfs_qm_mount_quotas() returns an error status that is ignored. If we fail\nto mount quotas, we continue with quota\u0027s turned off, which is all handled\ninside xfs_qm_mount_quotas(). Mark it as void to indicate that errors need\nnot be returned to the callers.\n\nSGI-PV: 980084\nSGI-Modid: xfs-linux-melb:xfs-kern:30788a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "3c56836f92683cb871ebbf44c512069b0d48a08f",
      "tree": "ac0ef5d76e086aa6e2542fb5548db26af5967297",
      "parents": [
        "4b8879df8c21bed3efd1eb2da5d72501199aba29"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Thu Apr 10 12:20:24 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Apr 18 11:56:55 2008 +1000"
      },
      "message": "[XFS] Check for dquot flush errors\n\nxfs_qm_dqflush() can fail, but the return is not checked anywhere. Hence\nwe never know if we\u0027ve failed to flush a dquot to disk. Propagate the\nerror and warn to the syslog if a flush ever fails.\n\nSGI-PV: 980084\nSGI-Modid: xfs-linux-melb:xfs-kern:30787a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "4b8879df8c21bed3efd1eb2da5d72501199aba29",
      "tree": "4a6991a366e93cd1aebf834f8172dbb83d636c6c",
      "parents": [
        "5b1397385bf536cbdb60f3362f44079d15d5f5ee"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Thu Apr 10 12:20:17 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Apr 18 11:54:56 2008 +1000"
      },
      "message": "[XFS] Propagate xfs_qm_dqflush_all() errors.\n\nxfs_qm_dqflush_all() can return flush errors. Ensure they are propagated\ninto the quotacheck code to determine if the quotacheck succeeded or not.\n\nSGI-PV: 980084\nSGI-Modid: xfs-linux-melb:xfs-kern:30786a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "5b1397385bf536cbdb60f3362f44079d15d5f5ee",
      "tree": "44ced2daad34684d65744d787425eef364c3660c",
      "parents": [
        "714082bc12b6c305f825411df02177efcb0085f1"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Thu Apr 10 12:20:10 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Apr 18 11:54:06 2008 +1000"
      },
      "message": "[XFS] xfs_qm_reset_dqcounts() does not return errors.\n\nDeclare it void.\n\nSGI-PV: 980084\nSGI-Modid: xfs-linux-melb:xfs-kern:30785a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "0225da1f35df46c67785eb08526995d7cdb4e3b0",
      "tree": "6af0fb2b99f249b90748d8f5edd36e918a35acb4",
      "parents": [
        "6b1d1a732f886936fe515d911b1a01d9cc50e179"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Thu Apr 10 12:19:10 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Apr 18 11:51:15 2008 +1000"
      },
      "message": "[XFS] Replace __inline with inline\n\nRemove the remaining uses of __inline in the XFS code base.\n\nSGI-PV: 976035\nSGI-Modid: xfs-linux-melb:xfs-kern:30774a\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "433550990e6c2e94995239bac6a52b4df454cae0",
      "tree": "4536c63306b8e6656b969dc71b099e1b2c149454",
      "parents": [
        "df26cfe849d8fd767b26fcd4bfebfff67bda9f3a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Mar 27 18:01:08 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Apr 18 11:49:08 2008 +1000"
      },
      "message": "[XFS] remove most calls to VN_RELE\n\nMost VN_RELE calls either directly contain a XFS_ITOV or have the\ncorresponding xfs_inode already in scope. Use the IRELE helper instead of\nVN_RELE to clarify the code. With a little more work we can kill VN_RELE\naltogether and define IRELE in terms of iput directly.\n\nSGI-PV: 976035\nSGI-Modid: xfs-linux-melb:xfs-kern:30710a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "6211870992502efdccf9cd6bae155c83277835fa",
      "tree": "1e8a5606550a4cccc7d8e82dd23e681077f223a6",
      "parents": [
        "7180c4c9e09888db0a188f729c96c6d7bd61fa83"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Thu Mar 06 13:44:28 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Apr 10 16:24:45 2008 +1000"
      },
      "message": "[XFS] remove shouting-indirection macros from xfs_sb.h\n\nRemove macro-to-small-function indirection from xfs_sb.h, and remove some\nwhich are completely unused.\n\nSGI-PV: 976035\nSGI-Modid: xfs-linux-melb:xfs-kern:30528a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "413d57c9907c72ed608df2be72ef8ed13a3eeb46",
      "tree": "92f98a1219915d2d72589b24a04232fccf3a40f2",
      "parents": [
        "91d35dd93e14c34539a8005183ea500f25caad02"
      ],
      "author": {
        "name": "Marcin Slusarz",
        "email": "marcin.slusarz@gmail.com",
        "time": "Wed Feb 13 15:03:29 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 13 16:21:19 2008 -0800"
      },
      "message": "xfs: convert beX_add to beX_add_cpu (new common API)\n\nremove beX_add functions and replace all uses with beX_add_cpu\n\nSigned-off-by: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nReviewed-by: Dave Chinner \u003cdgc@sgi.com\u003e\nCc: Timothy Shimmin \u003ctes@sgi.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e6a4b37f38dca6e86b2648d172946700ee921e12",
      "tree": "a094d91f8b864a33735a54c12a792bb084f7c5be",
      "parents": [
        "f7b7c3673e6e225de337abe00e14dc048e44782b"
      ],
      "author": {
        "name": "Tim Shimmin",
        "email": "tes@sgi.com",
        "time": "Fri Nov 23 16:30:42 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:17:58 2008 +1100"
      },
      "message": "[XFS] Remove the BPCSHIFT and NB* based macros from XFS.\n\nThe BPCSHIFT based macros, btoc*, ctob*, offtoc* and ctooff are either not\nused or don\u0027t need to be used. The NDPP, NDPP, NBBY macros don\u0027t need to\nbe used but instead are replaced directly by PAGE_SIZE and PAGE_CACHE_SIZE\nwhere appropriate. Initial patch and motivation from Nicolas Kaiser.\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:30096a\n\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "007c61c68640ea17c036785b698d05da67b4365e",
      "tree": "d4d4bc3d9268d174f42f45dc67844905f0e5933d",
      "parents": [
        "36e41eebdafc8b5fabdf66f59d0d43b0b60f0fdb"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Thu Oct 11 17:43:56 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:47:45 2008 +1100"
      },
      "message": "[XFS] Remove spin.h\n\nremove spinlock init abstraction macro in spin.h, remove the callers, and\nremove the file. Move no-op spinlock_destroy to xfs_linux.h Cleanup\nspinlock locals in xfs_mount.c\n\nSGI-PV: 970382\nSGI-Modid: xfs-linux-melb:xfs-kern:29751a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "3685c2a1d773781608c9e281a6ff6b4c8ea8f6f9",
      "tree": "f3d3a45002e64c8204de0db66bad2db1b73b5844",
      "parents": [
        "ba74d0cba51dcaa99e4dc2e4fb62e6e13abbf703"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Thu Oct 11 17:42:32 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:47:15 2008 +1100"
      },
      "message": "[XFS] Unwrap XFS_SB_LOCK.\n\nUn-obfuscate XFS_SB_LOCK, remove XFS_SB_LOCK-\u003emutex_lock-\u003espin_lock\nmacros, call spin_lock directly, remove extraneous cookie holdover from\nold xfs code, and change lock type to spinlock_t.\n\nSGI-PV: 970382\nSGI-Modid: xfs-linux-melb:xfs-kern:29746a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "869b906078720b68711569b68de0acca6b73b675",
      "tree": "be6241b9697ca7bb8b8417296c6e46f21bc7fd27",
      "parents": [
        "c8b5ea289fed15a7d7a4d6e911987ff16499aed7"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Thu Oct 11 17:38:18 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:44:50 2008 +1100"
      },
      "message": "[XFS] Unwrap XFS_DQ_PINUNLOCK.\n\nUn-obfuscate DQ_PINLOCK, remove DQ_PINLOCK-\u003emutex_lock-\u003espin_lock macros,\ncall spin_lock directly, remove extraneous cookie holdover from old xfs\ncode, and change lock type to spinlock_t.\n\nSGI-PV: 970382\nSGI-Modid: xfs-linux-melb:xfs-kern:29742a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "287f3dad14828275d2517c8696ad118c82b9243f",
      "tree": "4868d40f6c49984ff84f2957d84a3de160d46d7a",
      "parents": [
        "541d7d3c4b31e2b0ac846fe6d2eb5cdbe1353095"
      ],
      "author": {
        "name": "Donald Douwsma",
        "email": "donaldd@sgi.com",
        "time": "Thu Oct 11 17:36:05 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:44:23 2008 +1100"
      },
      "message": "[XFS] Unwrap AIL_LOCK\n\nSGI-PV: 970382\nSGI-Modid: xfs-linux-melb:xfs-kern:29739a\n\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "d757762bf2f6aea954745c76b4d767067b85be9d",
      "tree": "3885cad02c46003849f79f37195c7e8b7df13275",
      "parents": [
        "c6143911a7e0f8abef0319c801eb36718f57dfde"
      ],
      "author": {
        "name": "Donald Douwsma",
        "email": "donaldd@sgi.com",
        "time": "Fri Nov 23 16:27:42 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Mon Dec 10 13:40:10 2007 +1100"
      },
      "message": "[XFS] Fix dbflush panic in xfs_qm_sync.\n\nThe recent behaviour layer removal dropped the check for quotas that have\nbeen requested at mount time but have subsequently been turned off. This\nresults in a panic when accessing m_quotainfo which has been freed.\n\nThis patch adds the check originally made by xfs_qm_syncall() to\nxfs_qm_sync().\n\nSGI-PV: 969769\nSGI-Modid: xfs-linux-melb:xfs-kern:29908a\n\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "bd186aa901c183d6e25257711b6c64b42a90dde0",
      "tree": "a84157145a249923a79276d7bc9170701b100c43",
      "parents": [
        "0ce4cfd4f7dde5891d5b3e3c1a28ff7a7b4d36b3"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Aug 30 17:21:12 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:45:57 2007 +1000"
      },
      "message": "[XFS] kill the vfs_flags member in struct bhv_vfs\n\nAll flags are added to xfs_mount\u0027s m_flag instead. Note that the 32bit\ninode flag was duplicated in both of them, but only cleared in the mount\nwhen it was not nessecary due to the filesystem beeing small enough. Two\nflags are still required here - one to indicate the mount option setting,\nand one to indicate if it applies or not.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29507a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "b09cc77109dbf33463480952de10511a2b67bba6",
      "tree": "722ed205af03de0f33b955aeb3a573565242497a",
      "parents": [
        "293688ec420f1160ed93ea4c7948ed5baf8bafa7"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Aug 30 17:19:57 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:43:26 2007 +1000"
      },
      "message": "[XFS] remove dependency of the quota module on behaviors\n\nMount options are now parsed by the main XFS module and rejected if quota\nsupport is not available, and there are some new quota operation for the\nquotactl syscall and calls to quote in the mount, unmount and sync\ncallchains.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29503a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "0a74cd1964501fdb577176f14ed3d02b8e148127",
      "tree": "ec4aa3dff46b141cd60734bb6c8a0c6b6a2e7111",
      "parents": [
        "2aeaa258c0527026228c43148ec6dffdc56bea1c"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 29 11:53:12 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:40:24 2007 +1000"
      },
      "message": "[XFS] kill struct bhv_vnode\n\nNow that struct bhv_vnode is empty we can just kill it. Retain bhv_vnode_t\nas a typedef for struct inode for the time being until all the fallout is\ncleaned up.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29500a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "a6f64d4aea0d0c8483e910c7dd2d1ee48e42245c",
      "tree": "f3fb20bb6d816f6d674bd4c8bfa687b013443eaf",
      "parents": [
        "d580ef6eaae6eaaef1e06c7d689fc9949faee9da"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Aug 16 16:23:40 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Mon Oct 15 16:25:51 2007 +1000"
      },
      "message": "[XFS] split ondisk vs incore versions of xfs_bmbt_rec_t\n\ncurrently xfs_bmbt_rec_t is used both for ondisk extents as well as\nhost-endian ones. This patch adds a new xfs_bmbt_rec_host_t for the native\nendian ones and cleans up the fallout. There have been various endianess\nissues in the tracing / debug printf code that are fixed by this patch.\n\nSGI-PV: 968563\nSGI-Modid: xfs-linux-melb:xfs-kern:29318a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    }
  ],
  "next": "5995cb7d805496362e5af73235145667096fbc6f"
}
