)]}'
{
  "log": [
    {
      "commit": "a447c0932445f92ce6f4c1bd020f62c5097a7842",
      "tree": "bacf05bc7f9764515cdd6f7dc5e2254776b4f160",
      "parents": [
        "54cebc68c81eacac41a21bdfe99dc889d3882c60"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Oct 13 10:46:57 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 10:10:37 2008 -0700"
      },
      "message": "vfs: Use const for kernel parser table\n\nThis is a much better version of a previous patch to make the parser\ntables constant. Rather than changing the typedef, we put the \"const\" in\nall the various places where its required, allowing the __initconst\nexception for nfsroot which was the cause of the previous trouble.\n\nThis was posted for review some time ago and I believe its been in -mm\nsince then.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Alexander Viro \u003caviro@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "73f6aa4d44ab6157badc456ddfa05b31e58de5f0",
      "tree": "77543df806dbeda22ce245d2d04b3831fce40f4f",
      "parents": [
        "445e1ceda377a681c6f53595311b0d654ca21003"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Oct 10 17:28:29 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 10 11:08:07 2008 -0700"
      },
      "message": "Fix barrier fail detection in XFS\n\nCurrently we disable barriers as soon as we get a buffer in xlog_iodone\nthat has the XBF_ORDERED flag cleared.  But this can be the case not only\nfor buffers where the barrier failed, but also the first buffer of a\nsplit log write in case of a log wraparound.  Due to the disabled\nbarriers we can easily get directory corruption on unclean shutdowns.\nSo instead of using this check add a new buffer flag for failed barrier\nwrites.\n\nThis is a regression vs 2.6.26 caused by patch to use the right macro\nto check for the ORDERED flag, as we previously got true returned for\nevery buffer.\n\nThanks to Toei Rei for reporting the bug.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nReviewed-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "71a8c87fb300b601eacf7a86cc6c6322fe827bfd",
      "tree": "9f0e12933f6b2d74a452b69438693527853486c8",
      "parents": [
        "f1ccd2955157e1aff992f6aaaba0944209076220"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Fri Sep 26 12:17:57 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Sep 26 12:17:57 2008 +1000"
      },
      "message": "[XFS] Remove xfs_iext_irec_compact_full()\n\nYet another bug was found in xfs_iext_irec_compact_full() and while the\nsource of the bug was found it wasn\u0027t an easy task to track it down\nbecause the conditions are very difficult to reproduce.\n\nA HUGE thank-you goes to Russell Cattelan and Eric Sandeen for their\nsignificant effort in tracking down the source of this corruption.\n\nxfs_iext_irec_compact_full() and xfs_iext_irec_compact_pages() are almost\nidentical - they both compact indirect extent lists by moving extents from\nsubsequent buffers into earlier ones. xfs_iext_irec_compact_pages() only\nmoves extents if all of the extents in the next buffer will fit into the\nempty space in the buffer before it. xfs_iext_irec_compact_full() will go\na step further and move part of the next buffer if all the extents wont\nfit. It will then shift the remaining extents in the next buffer up to the\nstart of the buffer. The bug here was that we did not update er_extoff and\nthis caused extent list corruption.\n\nIt does not appear that this extra functionality gains us much. Calling\nxfs_iext_irec_compact_pages() instead will do a good enough job at\ncompacting the indirect list and will be quicker too.\n\nFor the case in xfs_iext_indirect_to_direct() the total number of extents\nin the indirect list will fit into one buffer so we will never need the\nextra functionality of xfs_iext_irec_compact_full() there.\n\nAlso xfs_iext_irec_compact_pages() doesn\u0027t need to do a memmove() (the\nbuffers will never overlap) so we don\u0027t want the performance hit that can\nincur.\n\nSGI-PV: 987159\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32166a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "f1ccd2955157e1aff992f6aaaba0944209076220",
      "tree": "224a32be1bd5cd508d0b85bc446783ea939b7ad3",
      "parents": [
        "6ef190cc92e33565accff6a320f0e7d90480bfe7"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Fri Sep 26 12:16:46 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Sep 26 12:16:46 2008 +1000"
      },
      "message": "[XFS] Fix extent list corruption in xfs_iext_irec_compact_full().\n\nIf we don\u0027t move all the records from the next buffer into the current\nbuffer then we need to update the er_extoff field of the next buffer as we\nshift the remaining records to the start of the buffer.\n\nSGI-PV: 987159\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32165a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Russell Cattelan \u003ccattelan@thebarn.com\u003e\n"
    },
    {
      "commit": "2fd6f6ec64ff347447d26646ac6188f3658b383c",
      "tree": "bfa49e13be769ffbbbc152cb1b771fe10dcb185e",
      "parents": [
        "e1f5dbd7077eebec794452a516cb02f1669b036d"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Wed Sep 17 16:52:50 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Sep 17 16:52:50 2008 +1000"
      },
      "message": "[XFS] Don\u0027t do I/O beyond eof when unreserving space\n\nWhen unreserving space with boundaries that are not block aligned we round\nup the start and round down the end boundaries and then use this function,\nxfs_zero_remaining_bytes(), to zero the parts of the blocks that got\ndropped during the rounding. The problem is we don\u0027t consider if these\nblocks are beyond eof. Worse still is if we encounter delayed allocations\nbeyond eof we will try to use the magic delayed allocation block number as\na real block number. If the file size is ever extended to expose these\nblocks then we\u0027ll go through xfs_zero_eof() to zero them anyway.\n\nSGI-PV: 983683\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32055a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "e1f5dbd7077eebec794452a516cb02f1669b036d",
      "tree": "6419e5089f94ef8cb10ab49ac3f66b2d67afd40c",
      "parents": [
        "f9114eba1eb08ee75fd0f1eee780f0290fb3c043"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Wed Sep 17 16:52:13 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Sep 17 16:52:13 2008 +1000"
      },
      "message": "[XFS] Fix use-after-free with buffers\n\nWe have a use-after-free issue where log completions access buffers via\nthe buffer log item and the buffer has already been freed. Fix this by\ntaking a reference on the buffer when attaching the buffer log item and\nrelease the hold when the buffer log item is detached and we no longer\nneed the buffer. Also create a new function xfs_buf_item_free() to combine\nsome common code.\n\nSGI-PV: 985757\n\nSGI-Modid: xfs-linux-melb:xfs-kern:32025a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "f9114eba1eb08ee75fd0f1eee780f0290fb3c043",
      "tree": "cfdb27e38eb600f84a4278744b19e1576ca5e7d3",
      "parents": [
        "b5b8c9acd547244eb2b7d0280ba38b9dd01971cc"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Sep 17 16:51:21 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Sep 17 16:51:21 2008 +1000"
      },
      "message": "[XFS] Prevent lockdep false positives when locking two inodes.\n\nIf we call xfs_lock_two_inodes() to grab both the iolock and the ilock,\nthen drop the ilocks on both inodes, then grab them again (as\nxfs_swap_extents() does) then lockdep will report a locking order problem.\nThis is a false positive.\n\nTo avoid this, disallow xfs_lock_two_inodes() fom locking both inode locks\nat once - force calers to make two separate calls. This means that nested\ndropping and regaining of the ilocks will retain the same lockdep subclass\nand so lockdep will not see anything wrong with this code.\n\nSGI-PV: 986238\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31999a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Peter Leckie \u003cpleckie@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "b5b8c9acd547244eb2b7d0280ba38b9dd01971cc",
      "tree": "ed441ac656570773941463a2d9e14032df5b6c36",
      "parents": [
        "364f358a734ddcd827c662ccbfa58ee3ac510762"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Sep 17 16:50:50 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Sep 17 16:50:50 2008 +1000"
      },
      "message": "[XFS] Fix barrier status change detection.\n\nThe current code in xlog_iodone() uses the wrong macro to check if the\nbarrier has been cleared due to an EOPNOTSUPP error form the lower layer.\n\nSGI-PV: 986143\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31984a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Nathaniel W. Turner \u003cnate@houseofnate.net\u003e\nSigned-off-by: Peter Leckie \u003cpleckie@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "364f358a734ddcd827c662ccbfa58ee3ac510762",
      "tree": "2af362aa418b145e0626066ed2c8b3b0918630eb",
      "parents": [
        "6efdf281777eb07fac28ac2b2d7df1e619ee6da1"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Wed Sep 17 16:50:14 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Sep 17 16:50:14 2008 +1000"
      },
      "message": "[XFS] Prevent direct I/O from mapping extents beyond eof\n\nWith the help from some tracing I found that we try to map extents beyond\neof when doing a direct I/O read. It appears that the way to inform the\ngeneric direct I/O path (ie do_direct_IO()) that we have breached eof is\nto return an unmapped buffer from xfs_get_blocks_direct(). This will cause\ndo_direct_IO() to jump to the hole handling code where is will check for\neof and then abort.\n\nThis problem was found because a direct I/O read was trying to map beyond\neof and was encountering delayed allocations. The delayed allocations\nbeyond eof are speculative allocations and they didn\u0027t get converted when\nthe direct I/O flushed the file because there was only enough space in the\ncurrent AG to convert and write out the dirty pages within eof. Note that\nxfs_iomap_write_allocate() wont necessarily convert all the delayed\nallocation passed to it - it will return after allocating the first extent\n- so if the delayed allocation extends beyond eof then it will stay that\nway.\n\nSGI-PV: 983683\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31929a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "6efdf281777eb07fac28ac2b2d7df1e619ee6da1",
      "tree": "300ee54e4a9a7d7180a9b6770a51d42ad544b989",
      "parents": [
        "31bd61f2bb79e098117d823e054342b03aa87668"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Sep 17 16:49:33 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Sep 17 16:49:33 2008 +1000"
      },
      "message": "[XFS] Fix regression introduced by remount fixup\n\nLogically we would return an error in xfs_fs_remount code to prevent users\nfrom believing they might have changed mount options using remount which\ncan\u0027t be changed.\n\nBut unfortunately mount(8) adds all options from mtab and fstab to the\nmount arguments in some cases so we can\u0027t blindly reject options, but have\nto check for each specified option if it actually differs from the\ncurrently set option and only reject it if that\u0027s the case.\n\nUntil that is implemented we return success for every remount request, and\nsilently ignore all options that we can\u0027t actually change.\n\nSGI-PV: 985710\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31908a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "31bd61f2bb79e098117d823e054342b03aa87668",
      "tree": "a98afc0d4bcd98f0f4e648a5e1dddcc090c3f791",
      "parents": [
        "bc45eb8950b8c14487385cfd2bda1613ca8d9703"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Wed Sep 17 16:45:37 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Sep 17 16:45:37 2008 +1000"
      },
      "message": "[XFS] Move memory allocations for log tracing out of the critical path\n\nMemory allocations for log-\u003el_grant_trace and iclog-\u003eic_trace are done on\ndemand when the first event is logged. In xlog_state_get_iclog_space() we\ncall xlog_trace_iclog() under a spinlock and allocating memory here can\ncause us to sleep with a spinlock held and deadlock the system.\n\nFor the log grant tracing we use KM_NOSLEEP but that means we can lose\ntrace entries. Since there is no locking to serialize the log grant\ntracing we could race and have multiple allocations and leak memory.\n\nSo move the allocations to where we initialize the log/iclog structures.\nUse KM_NOFS to avoid recursing into the filesystem and drop log-\u003el_trace\nsince it\u0027s not even used.\n\nSGI-PV: 983738\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31896a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "59af1584bf33810639cb98d79856021253e2177c",
      "tree": "dbb7261a2abdef5f1716b27417f8b2b61d42b418",
      "parents": [
        "8f3f655da7288504c1013621090ecc940173ae1c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 24 07:24:41 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 25 01:18:09 2008 -0400"
      },
      "message": "[PATCH] fix -\u003ellseek() for a bunch of directories\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e45b590b976465c258f3e2a6cc84573fc19e16d3",
      "tree": "54b795a1acd985b9bcc5adbe057706209a2612d3",
      "parents": [
        "2d8a10cd1760e7ecc07a21e409485947c68a3291"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Aug 07 23:49:07 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 25 01:18:05 2008 -0400"
      },
      "message": "[PATCH] change d_add_ci argument ordering\n\nAs pointed out during review d_add_ci argument order should match d_add,\nso switch the dentry and inode arguments.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7a8fc9b248e77a4eab0613acf30a6811799786b3",
      "tree": "24b3beb8bc0633db27ffdb791f94dce95d51b1d0",
      "parents": [
        "d3ee1b405872214609868f3cde631ac157026dd0"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Sun Aug 17 17:36:59 2008 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 23 12:14:12 2008 -0700"
      },
      "message": "removed unused #include \u003clinux/version.h\u003e\u0027s\n\nThis patch lets the files using linux/version.h match the files that\n#include it.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9e2b2dc4133f65272a6d3c5dcb2ce63f8a87cae9",
      "tree": "96a9da2c1e733cce2dced4868aaa68b48ced49e1",
      "parents": [
        "8d0968abd03ec6b407df117adc773562386702fa"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Aug 13 16:20:04 2008 +0100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Aug 14 09:35:23 2008 +1000"
      },
      "message": "CRED: Introduce credential access wrappers\n\nThe patches that are intended to introduce copy-on-write credentials for 2.6.28\nrequire abstraction of access to some fields of the task structure,\nparticularly for the case of one task accessing another\u0027s credentials where RCU\nwill have to be observed.\n\nIntroduced here are trivial no-op versions of the desired accessors for current\nand other tasks so that other subsystems can start to be converted over more\neasily.\n\nWrappers are introduced into a new header (linux/cred.h) for UID/GID,\nEUID/EGID, SUID/SGID, FSUID/FSGID, cap_effective and current\u0027s subscribed\nuser_struct.  These wrappers are macros because the ordering between header\nfiles mitigates against making them inline functions.\n\nlinux/cred.h is #included from linux/sched.h.\n\nFurther, XFS is modified such that it no longer defines and uses parameterised\nversions of current_fs[ug]id(), thus getting rid of the namespace collision\notherwise incurred.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "c6a7b0f8a49aa71792dd108efc535435f462bf79",
      "tree": "45ffdd756cf4e024a1ab6742b2dfa4ed962ea741",
      "parents": [
        "c94312de223644e2f18e7064ae8cafa14e5c6ef6"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Wed Aug 13 16:52:50 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:52:50 2008 +1000"
      },
      "message": "[XFS] Fix use after free in xfs_log_done().\n\nThe ticket allocation code got reworked in 2.6.26 and we now free tickets\nwhereas before we used to cache them so the use-after-free went\nundetected.\n\nSGI-PV: 985525\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31877a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "c94312de223644e2f18e7064ae8cafa14e5c6ef6",
      "tree": "1e4b346e37e1787f9058a981e6f04e95a2071d8c",
      "parents": [
        "5695ef46ef02ba1c6658daa46e6879a2d4f52f5f"
      ],
      "author": {
        "name": "Ruben Porras",
        "email": "ruben.porras@linworks.de",
        "time": "Wed Aug 13 16:52:25 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:52:25 2008 +1000"
      },
      "message": "[XFS] Make xfs_bmap_*_count_leaves void.\n\nxfs_bmap_count_leaves and xfs_bmap_disk_count_leaves always return always\n0, make them void.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31844a\n\nSigned-off-by: Ruben Porras \u003cruben.porras@linworks.de\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": "d62c251fe4a06144255291cffd68cbadf3bf002f",
      "tree": "421f1b6c08bde9fa48f8291b9be5d8a94df3109e",
      "parents": [
        "ff4f038c6bbb27044a84adbcd27bc237d7237e66"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:51:29 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:51:29 2008 +1000"
      },
      "message": "[XFS] use KM_MAYFAIL in xfs_mountfs\n\nUse KM_MAYFAIL for the m_perag allocation, we can deal with the error\neasily and blocking forever during mount is not a good idea either.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31837a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "ff4f038c6bbb27044a84adbcd27bc237d7237e66",
      "tree": "c6358574b56ae08505d1f914f97a6c772addae4d",
      "parents": [
        "6203300e5e9121440b27d3ed0b9fe2a64cb62b53"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:50:47 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:50:47 2008 +1000"
      },
      "message": "[XFS] refactor xfs_mount_free\n\nxfs_mount_free mostly frees the perag data, which is something that is\nduplicated in the mount error path.\n\nMove the XFS_QM_DONE call to the caller and remove the useless\nmutex_destroy/spinlock_destroy calls so that we can re-use it for the\nmount error path. Also rename it to xfs_free_perag to reflect what it\ndoes.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31836a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "6203300e5e9121440b27d3ed0b9fe2a64cb62b53",
      "tree": "df0e5dfe72d73324efcd4835d6b7da1dff72f28b",
      "parents": [
        "41b5c2e77a0221cf07ac127afa122add67ac5418"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:50:21 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:50:21 2008 +1000"
      },
      "message": "[XFS] don\u0027t call xfs_freesb from xfs_unmountfs\n\nxfs_readsb is called before xfs_mount so xfs_freesb should be called after\nxfs_unmountfs, too. This means it now happens after a few things during\nthe of xfs_unmount which all have nothing to do with the superblock.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31835a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "41b5c2e77a0221cf07ac127afa122add67ac5418",
      "tree": "7ba8db919624d68c5db2b2dd022d4742cc9ea104",
      "parents": [
        "4249023a5d14f28d4e68ba15d24d25c0e5be71a6"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:49:57 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:49:57 2008 +1000"
      },
      "message": "[XFS] xfs_unmountfs should return void\n\nxfs_unmounts can\u0027t and shouldn\u0027t return errors so declare it as returning\nvoid.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31833a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.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": "77508ec8e6ed72c9ba8ca74248a7aabd664e3f57",
      "tree": "d43fbde9c21fa21b8d3b791a18ee0d98af2f6102",
      "parents": [
        "3a76c1ea07ee4e9da7c8e476e43be7e1b2bf24fb"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:49:04 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:49:04 2008 +1000"
      },
      "message": "[XFS] move root inode IRELE into xfs_unmountfs\n\nThe root inode is allocated in xfs_mountfs so it should be release in\nxfs_unmountfs. For the unmount case that means we do it after the the\nxfs_sync(mp, SYNC_WAIT | SYNC_CLOSE) in the forced shutdown case and the\ndmapi unmount event. Note that both reference the rip variable which might\nbe freed by that time in case inode flushing has kicked in, so strictly\nspeaking this might count as a bug fix\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31830a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "3a76c1ea07ee4e9da7c8e476e43be7e1b2bf24fb",
      "tree": "710ff6b462d1e43d7c5d77d72f47f297e196ccf8",
      "parents": [
        "8e5975c82f66bce36955f38e9abc259d5143a72a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:48:12 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:48:12 2008 +1000"
      },
      "message": "[XFS] stop using file_update_time\n\nxfs_ichtime updates the xfs_inode and Linux inode timestamps just fine, no\nneed to call file_update_time and then copy the values over to the XFS\ninode. The only additional thing in file_update_time are checks not\napplicable to the write path.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31829a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "8e5975c82f66bce36955f38e9abc259d5143a72a",
      "tree": "def4ae55c36f02f920037b769a268f389c5b513a",
      "parents": [
        "dff35fd41f252476cba7f761d7204dd9f47d739e"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:45:13 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:45:13 2008 +1000"
      },
      "message": "[XFS] optimize xfs_ichgtime\n\nPort a little optmization from file_update_time to xfs_ichgtime, and only\nupdate the timestamp and mark the inode dirty if the timestamp actually\nchanges in the timer tick resultion supported by the running kernel.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31827a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "dff35fd41f252476cba7f761d7204dd9f47d739e",
      "tree": "3f4da55c3e5aede3de6d97a11bd0d53656aa6781",
      "parents": [
        "ab4a9b04a33c97dd17495f943447f5a15ecf2b51"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:44:15 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:44:15 2008 +1000"
      },
      "message": "[XFS] update timestamp in xfs_ialloc manually\n\nIn xfs_ialloc we just want to set all timestamps to the current time. We\ndon\u0027t need to mark the inode dirty like xfs_ichgtime does, and we don\u0027t\nneed nor want the opimizations in xfs_ichgtime that I will introduce in\nthe next patch.\n\nSo just opencode the timestamp update in xfs_ialloc, and remove the new\nunused XFS_ICHGTIME_ACC case in xfs_ichgtime.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31825a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "ab4a9b04a33c97dd17495f943447f5a15ecf2b51",
      "tree": "e8c141fe903f0504225e677d124a66680c63b131",
      "parents": [
        "e1f49cf20cea18e3d1963939fe8612a75e319fbd"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Aug 13 16:42:10 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:42:10 2008 +1000"
      },
      "message": "[XFS] remove the sema_t from XFS.\n\nNow that all users of the sema_t are gone from XFS we can finally kill it.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31823a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\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": "c63942d3eeffb98219e05d0976862ab9907d297d",
      "tree": "2f00c2aa9df30c3e91c06aa46c5722382093c5de",
      "parents": [
        "39d2f1ab2a36ac527a6c41cfe689f50c239eaca3"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Aug 13 16:41:16 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:41:16 2008 +1000"
      },
      "message": "[XFS] replace inode flush semaphore with a completion\n\nUse the new completion flush code to implement the inode 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:31817a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "b4dd330b9e0c9c78ebff754e72563b148f05e9e0",
      "tree": "babb6e975be2b9dbed0df09df1ee156dbb4c1428",
      "parents": [
        "12017faf387437c01ff63bbe46b629550b15bd70"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Aug 13 16:36:11 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:36:11 2008 +1000"
      },
      "message": "[XFS] replace the XFS buf iodone semaphore with a completion\n\nThe xfs_buf_t b_iodonesema is really just a semaphore that wants to be a\ncompletion. Change it to a completion and remove the last user of the\nsema_t from XFS.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31815a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "12017faf387437c01ff63bbe46b629550b15bd70",
      "tree": "30213176cb4521fc8b5e944c5815832ecfd93bc5",
      "parents": [
        "597bca6378e0273a5d16346c941cab1ec2e0116d"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Aug 13 16:34:31 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:34:31 2008 +1000"
      },
      "message": "[XFS] clean up stale references to semaphores\n\nA lot of code has been converted away from semaphores, but there are still\ncomments that reference semaphore behaviour. The log code is the worst\noffender. Update the comments to reflect what the code really does now.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31814a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "597bca6378e0273a5d16346c941cab1ec2e0116d",
      "tree": "c98d1a0cd5b73ad24732383fddfc5ca69188ad1f",
      "parents": [
        "d63f154a36c4ec7c2826874371887cecae375ebb"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Aug 13 16:29:21 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:29:21 2008 +1000"
      },
      "message": "[XFS] use get_unaligned_* helpers\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31813a\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "d63f154a36c4ec7c2826874371887cecae375ebb",
      "tree": "b22fa05115f7f9aca280f391ed7f4d2f3c5d9a22",
      "parents": [
        "169d6227a71da125913c69c381643a8ae89da62d"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Wed Aug 13 16:28:40 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:28:40 2008 +1000"
      },
      "message": "[XFS] Fix compile failure in xfs_buf_trace()\n\nSGI-PV: 957103\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31804a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "169d6227a71da125913c69c381643a8ae89da62d",
      "tree": "dfd2fbd343e7be583c5e767f897140de7ccc482c",
      "parents": [
        "cdcf43335cbb2380e533441e007e0c4ec42634d5"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:25:27 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:25:27 2008 +1000"
      },
      "message": "[XFS] Use the same btree_cur union member for alloc and inobt trees.\n\nThe alloc and inobt btree use the same agbp/agno pair in the btree_cur\nunion. Make them use the same bc_private.a union member so that code for\nthese two short form btree implementations can be shared.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31788a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "cdcf43335cbb2380e533441e007e0c4ec42634d5",
      "tree": "4c6ce14cb16c0cdbfb19504e1a0d7f3a7d759e25",
      "parents": [
        "41be8bed1f3168f34386f3a15d63682cfd586b8e"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:23:50 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:23:50 2008 +1000"
      },
      "message": "[XFS] small cleanups in xfs_btree.c\n\nRemove unneeded xfs_btree_get_block forward declaration. Move\nxfs_btree_firstrec next to xfs_btree_lastrec.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31787a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "41be8bed1f3168f34386f3a15d63682cfd586b8e",
      "tree": "8cddec00890168b807853e5b6761625a3e194f3e",
      "parents": [
        "5ec7f8c7d14a3ea6bf920b3350f5c5d3527cb837"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:23:13 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:23:13 2008 +1000"
      },
      "message": "[XFS] sanitize xfs_initialize_vnode\n\nSanitize setting up the Linux indode.\n\nSetting up the xfs_inode \u003c-\u003e inode link is opencoded in xfs_iget_core now\nbecause that\u0027s the only place it needs to be done, xfs_initialize_vnode is\nrenamed to xfs_setup_inode and loses all superflous paramaters. The check\nfor I_NEW is removed because it always is true and the di_mode check moves\ninto xfs_iget_core because it\u0027s only needed there.\n\nxfs_set_inodeops and xfs_revalidate_inode are merged into xfs_setup_inode\nand the whole things is moved into xfs_iops.c where it belongs.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31782a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.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": "df80c933f9eb01a7af3812bbe437e38205386304",
      "tree": "ea20515f5f77558a63de202dcdb36fd96b91ffbd",
      "parents": [
        "e1cccd917be7364f81b5dc4e33ee3a6e0db21a99"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:22:09 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:22:09 2008 +1000"
      },
      "message": "[XFS] remove some easy bhv_vnode_t instances\n\nIn various places we can just move a VFS_I call into the argument list of\ncalled functions/macros instead of having a local bhv_vnode_t.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31776a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "e1cccd917be7364f81b5dc4e33ee3a6e0db21a99",
      "tree": "9722a113d77695d886e6d2c1bc504e98cdb97b67",
      "parents": [
        "1550d0b0b08bc34c0c37a86bd884b1a70782104e"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:18:07 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:18:07 2008 +1000"
      },
      "message": "[XFS] kill xfs_lock_dir_and_entry\n\nWhen multiple inodes are locked in XFS it happens in order of the inode\nnumber, with the everything but the first inode trylocked if any of the\nprevious inodes is in the AIL.\n\nExcept for the sorting of the inodes this logic is implemented in\nxfs_lock_inodes, but also partially duplicated in xfs_lock_dir_and_entry\nin a particularly stupid way adds a lock roundtrip if the inode ordering\nis not optimal.\n\nThis patch adds a new helper xfs_lock_two_inodes that takes two inodes and\nlocks them in the most optimal way according to the above locking protocol\nand uses it for all places that want to lock two inodes.\n\nThe only caller of xfs_lock_inodes is xfs_rename which might lock up to\nfour inodes.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31772a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "1550d0b0b08bc34c0c37a86bd884b1a70782104e",
      "tree": "6d760d1398b74c73c99097989e21d8a9622cdfa3",
      "parents": [
        "907f49a8f552acc5d75635e86d567f05daf5c0d8"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:17:37 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:17:37 2008 +1000"
      },
      "message": "[XFS] kill INDUCE_IO_ERROR\n\nAll the error injection is already enabled through ifdef DEBUG, so kill\nthe never set second cpp symbol to activate it without the rest of the\ndebugging infrastructure.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31771a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "907f49a8f552acc5d75635e86d567f05daf5c0d8",
      "tree": "a6c835cf6b5be39111c0107039e8123e273339a2",
      "parents": [
        "0b1f917730dc2276fadbd9813ac3666abd7b1cbd"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:13:45 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:13:45 2008 +1000"
      },
      "message": "[XFS] implement IHOLD/IRELE directly\n\nNow that all direct calls to VN_HOLD/VN_RELE are gone we can implement\nIHOLD/IRELE directly.\n\nFor the IHOLD case also replace igrab with a direct increment of i_count\nbecause we are guaranteed to already have a live and referenced inode by\nthe VFS. Also remove the vn_hold statistic because it\u0027s been rather\nmeaningless for some time with most references done by other callers.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31764a\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": "604323ca760beebf00a07153706dcbe7128324e0",
      "tree": "52094a047c2b51200c85ccbe55ba039f2eac3785",
      "parents": [
        "863890cd90e8b213f7028036c6e2200d93223527"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:12:37 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:12:37 2008 +1000"
      },
      "message": "[XFS] remove spurious VN_HOLD/VN_RELE calls from xfs_acl.c\n\nAll the ACL routines are called from inode operations which are guaranteed\nto have a referenced inode by the VFS, so there\u0027s no need for the ACL code\nto grab another temporary one.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31763a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "863890cd90e8b213f7028036c6e2200d93223527",
      "tree": "3b4312d515113e4b19d7e82fea9902c69d183d60",
      "parents": [
        "a19d033cd2cc66120f01b370ec081d67b59b7924"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:12:05 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:12:05 2008 +1000"
      },
      "message": "[XFS] kill vn_to_inode\n\nbhv_vnode_t is just a typedef for struct inode, so there\u0027s\nno need for a helper to convert between the two.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31761a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "a19d033cd2cc66120f01b370ec081d67b59b7924",
      "tree": "8301461c9fb6a662abaccbfc277136a82752f8d1",
      "parents": [
        "39dab9d7daf5f664a3569378107a2cb284c8a594"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:11:26 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:11:26 2008 +1000"
      },
      "message": "[XFS] Remove vn_from_inode()\n\nbhv_vnode_t is just a typedef for struct inode, so there\u0027s\nno need for a helper to convert between the two.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31760a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "39dab9d7daf5f664a3569378107a2cb284c8a594",
      "tree": "e28685c145054fe2795d1d85949332a1e16c0e2c",
      "parents": [
        "db7a2c71d287686eef1d4df1565fa32f89a9fe68"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Wed Aug 13 16:10:52 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:10:52 2008 +1000"
      },
      "message": "[XFS] remove shouting-indirection macros from xfs_trans.h\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31758a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "db7a2c71d287686eef1d4df1565fa32f89a9fe68",
      "tree": "4e3ddb7a6c090546ca9d21e5fd1cf7c211c480f8",
      "parents": [
        "cdeb380aa2ca3b8f8ba3736f2469f5818eadb9aa"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Wed Aug 13 16:09:25 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:09:25 2008 +1000"
      },
      "message": "[XFS] convert xfs to use ERR_CAST\n\nLooks like somehow xfs got missed in the conversion that took place in\ne231c2ee64eb1c5cd3c63c31da9dac7d888dcf7f, \"Convert ERR_PTR(PTR_ERR(p))\ninstances to ERR_CAST(p)\n\u003chttp://git.kernel.org/?p\u003dlinux/kernel/git/torvalds/linux-2.6.git;a\u003dcommit\ndiff;h\u003de231c2ee64eb1c5cd3c63c31da9dac7d888dcf7f\u003e\"\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31757a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "cdeb380aa2ca3b8f8ba3736f2469f5818eadb9aa",
      "tree": "dd4dad87f19848b9c86fd05f4cb47833007e9c44",
      "parents": [
        "322ff6b8cd54feb1c4c0426630f3642ab1dd2176"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Wed Aug 13 16:07:53 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:07:53 2008 +1000"
      },
      "message": "[XFS] remove INT_GET and friends\n\nThanks to hch\u0027s endian work, INT_GET etc are no longer used, and may as\nwell be removed. INT_SET is still used in the acl code, though.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31756a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\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": "322ff6b8cd54feb1c4c0426630f3642ab1dd2176",
      "tree": "76ea7d8cee4a30eb60cbe4a27a1efccf149bcc91",
      "parents": [
        "a738159df2b97398f960978272944cbdd8f726ef"
      ],
      "author": {
        "name": "Niv Sardi",
        "email": "xaiki@sgi.com",
        "time": "Wed Aug 13 16:05:49 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:05:49 2008 +1000"
      },
      "message": "[XFS] Move xfs_attr_rolltrans to xfs_trans_roll\n\nMove it from the attr code to the transaction code and make\nthe attr code call the new function.\n\nWe rolltrans is really usefull whenever we want to use rolling\ntransaction, should be generic, it isn\u0027t dependent on any part\nof the attr code anyway.\n\nWe use this excuse to change all the:\n\nif ((error \u003d xfs_attr_rolltrans()))\n\ncalls into:\n\nerror \u003d xfs_trans_roll();\n\nif (error)\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31729a\n\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": "a738159df2b97398f960978272944cbdd8f726ef",
      "tree": "20959d5f1d941dd7c755bf9bc8141f20f97249dd",
      "parents": [
        "5e9da7b7a1edfc75a839b0269935393fa347f38b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:04:05 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:04:05 2008 +1000"
      },
      "message": "[XFS] don\u0027t leak m_fsname/m_rtname/m_logname\n\nAdd a helper to free the m_fsname/m_rtname/m_logname allocations and use\nit properly for all mount failure cases. Also switch the allocations for\nthese to kstrdup while we\u0027re at it.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31728a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "5e9da7b7a1edfc75a839b0269935393fa347f38b",
      "tree": "3d74c413b4e5c5413094eb4b6c8065778e2c5637",
      "parents": [
        "6785073ba138a2f0dc575c332c1812b713670b6a"
      ],
      "author": {
        "name": "Niv Sardi",
        "email": "xaiki@sgi.com",
        "time": "Wed Aug 13 16:03:35 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:03:35 2008 +1000"
      },
      "message": "[XFS] Move attr log alloc size calculator to another function.\n\nWe will need that to be able to calculate the size of log we need for a\nspecific attr (for Create+EA). The local flag is needed so that we can\nfail if we run into ENOSPC when trying to alloc blocks.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31727a\n\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "6785073ba138a2f0dc575c332c1812b713670b6a",
      "tree": "ab27d02e3e80ff593a7aab8fd1915fd642426787",
      "parents": [
        "e6064d30c3407db7f8c19d5538ec847b29e47e30"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Aug 13 16:02:51 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:02:51 2008 +1000"
      },
      "message": "[XFS] Use KM_NOFS for incore inode extent tree allocation V2\n\nIf we allow incore extent tree allocations to recurse into the\nfilesystem under memory pressure, new delayed allocations through\nxfs_iomap_write_delay() can deadlock on themselves if memory\nreclaim tries to write back dirty pages from that inode.\n\nIt will deadlock in xfs_iomap_write_allocate() trying to take the\nilock we already hold. This can also show up as complex ABBA deadlocks\nwhen multiple threads are triggering memory reclaim when trying to\nallocate extents.\n\nThe main cause of this is the fact that delayed allocation is not done in\na transaction, so KM_NOFS is not automatically added to the allocations to\nprevent this recursion.\n\nMark all allocations done for the incore inode extent tree as KM_NOFS to\nensure they never recurse back into the filesystem.\n\nVersion 2: o KM_NOFS implies KM_SLEEP, so just use KM_NOFS\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31726a\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": "e6064d30c3407db7f8c19d5538ec847b29e47e30",
      "tree": "0717b05a9a937e707c99309be8264b22546e4a44",
      "parents": [
        "e4f7529108d01bf66af8ebecd6be2b98d8db30ce"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Aug 13 16:01:45 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:01:45 2008 +1000"
      },
      "message": "[XFS] XFS: Kill xfs_vtoi()\n\nxfs_vtoi() is redundant and only unsed in small sections of code.\nReplace them with widely used XFS_I() inline and kill xfs_vtoi().\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31725a\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": "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": "016516462575d28fab3354f762cad16c86c09116",
      "tree": "ef644fe09f5eb963df28ad7e7bda3d547cae46d1",
      "parents": [
        "3790689fa3c771bba6bafb7dee3e8389dd0b55bc"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Aug 13 15:45:15 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 15:45:15 2008 +1000"
      },
      "message": "[XFS] Avoid directly referencing the VFS inode.\n\nIn several places we directly convert from the XFS inode\nto the linux (VFS) inode by a simple deference of ip-\u003ei_vnode.\nWe should not do this - a helper function should be used to\nextract the VFS inode from the XFS inode.\n\nIntroduce the function VFS_I() to extract the VFS inode\nfrom the XFS inode. The name was chosen to match XFS_I() which\nis used to extract the XFS inode from the VFS inode.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31720a\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": "3790689fa3c771bba6bafb7dee3e8389dd0b55bc",
      "tree": "1445885f92de7f14034f4f5a647ea3e5ea6b43d8",
      "parents": [
        "79071eb0b2f142b9cc6531d04fa2915943938b5e"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Wed Aug 13 15:42:10 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 15:42:10 2008 +1000"
      },
      "message": "[XFS] Do not access buffers after dropping reference count\n\nWe should not access a buffer after dropping it\u0027s reference count\notherwise we could race with another thread that releases the final\nreference count and frees the buffer causing us to access potentially\nunmapped memory. The bug this change fixes only occured on DEBUG XFS since\nthe offending code was in an ASSERT.\n\nSGI-PV: 984429\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31715a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "79071eb0b2f142b9cc6531d04fa2915943938b5e",
      "tree": "dfab0f9e306322454f98c5ae77e93d1150aefbeb",
      "parents": [
        "10fec20ef5eec1c91913baec1225400f0d02df40"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Aug 13 15:41:12 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 15:41:12 2008 +1000"
      },
      "message": "[XFS] Use the generic bitops rather than implementing them ourselves.\n\nThis keeps xfs_lowbit64 as it was since there aren\u0027t good generic helpers\nthere ... Patch inspired by Andi Kleen.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31472a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\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": "ca5de404ff036a29b25e9a83f6919c9f606c5841",
      "tree": "474da867c4d4086313cee90cdc3560bb17fade96",
      "parents": [
        "529ae9aaa08378cfe2a4350bded76f32cc8ff0ce"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Sat Aug 02 12:02:13 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 21:56:09 2008 -0700"
      },
      "message": "fs: rename buffer trylock\n\nLike the page lock change, this also requires name change, so convert the\nraw test_and_set bitop to a trylock.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "529ae9aaa08378cfe2a4350bded76f32cc8ff0ce",
      "tree": "d3ae998f9876c72a83a022805103a92111852b21",
      "parents": [
        "e9ba9698187ddbc0c5bfcf41de0349a662d23d02"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Sat Aug 02 12:01:03 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 21:31:34 2008 -0700"
      },
      "message": "mm: rename page trylock\n\nConverting page lock to new locking bitops requires a change of page flag\noperation naming, so we might as well convert it to something nicer\n(!TestSetPageLocked_Lock \u003d\u003e trylock_page, SetPageLocked \u003d\u003e set_page_locked).\n\nThis also facilitates lockdeping of page lock.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f13fae2d2a9372a5155d20bc9da4c14f02193277",
      "tree": "19bca1e8b3d5034ff84ad19e6a7640216ed3afaf",
      "parents": [
        "0f285c8a1c4cacfd9f2aec077b06e2b537ee57ab"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Jul 21 16:16:15 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:39 2008 +1000"
      },
      "message": "[XFS] Remove vn_revalidate calls in xfs.\n\nThese days most of the attributes in struct inode are properly kept in\nsync by XFS. This patch removes the need for vn_revalidate completely by:\n\n- keeping inode.i_flags uptodate after any flags are updated in\n\nxfs_ioctl_setattr\n\n- keeping i_mode, i_uid and i_gid uptodate in xfs_setattr\n\nSGI-PV: 984566\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31679a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "0f285c8a1c4cacfd9f2aec077b06e2b537ee57ab",
      "tree": "5b10300cfe765f13e1437d0ffa4a66a6d31d1187",
      "parents": [
        "25fe55e814a2964c7e16d16a5d08cae6e9313a3a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Jul 18 17:13:28 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:37 2008 +1000"
      },
      "message": "[XFS] Now that xfs_setattr is only used for attributes set from -\u003esetattr\nit can be switched to take struct iattr directly and thus simplify the\nimplementation greatly. Also rename the ATTR_ flags to XFS_ATTR_ to not\nconflict with the ATTR_ flags used by the VFS.\n\nSGI-PV: 984565\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31678a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "25fe55e814a2964c7e16d16a5d08cae6e9313a3a",
      "tree": "9337a4270cafe83a0bfd14e1c297aa5f24e02c33",
      "parents": [
        "c032bfcf468013643e05c8274824af10dd7cbb61"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Jul 18 17:13:20 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:36 2008 +1000"
      },
      "message": "[XFS] xfs_setattr currently doesn\u0027t just handle the attributes set through\n-\u003esetattr but also addition XFS-specific attributes: project id, inode\nflags and extent size hint. Having these in a single function makes it\nmore complicated and forces to have us a bhv_vattr intermediate structure\neating up stackspace.\n\nThis patch adds a new xfs_ioctl_setattr helper for the XFS ioctls that set\nthese attributes and remove the code to set them through xfs_setattr.\n\nSGI-PV: 984564\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31677a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "c032bfcf468013643e05c8274824af10dd7cbb61",
      "tree": "a45a27cb8647dd5685deccf2035acada24a93f4a",
      "parents": [
        "6a617dd22bdbf5a4c9828db98c1a8b076c9e95c8"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Fri Jul 18 17:13:12 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:34 2008 +1000"
      },
      "message": "[XFS] fix use after free with external logs or real-time devices\n\nSGI-PV: 983806\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31666a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "6a617dd22bdbf5a4c9828db98c1a8b076c9e95c8",
      "tree": "1cb09cdece74d432ab4f7c5c65c6605e1e044240",
      "parents": [
        "766b0925c07cd363c17ff54ebf59b6d34d8042d5"
      ],
      "author": {
        "name": "Tim Shimmin",
        "email": "tes@sgi.com",
        "time": "Fri Jul 18 17:13:04 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:32 2008 +1000"
      },
      "message": "[XFS] A bug was found in xfs_bmap_add_extent_unwritten_real(). In a\nparticular case, the delta param which is supposed to describe the region\nwhere extents have changed was not updated appropriately.\n\nSGI-PV: 984030\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31663a\n\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Olaf Weber \u003colaf@sgi.com\u003e\n"
    },
    {
      "commit": "766b0925c07cd363c17ff54ebf59b6d34d8042d5",
      "tree": "780d34454313c039e65efbe295bd02aa010f329c",
      "parents": [
        "26cc0021805e66daa6342174fb5a8c1c862f7c8e"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Jul 18 17:12:50 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:31 2008 +1000"
      },
      "message": "[XFS] fix compilation without CONFIG_PROC_FS\n\nSGI-PV: 984019\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31408a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\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": "62a877e35d5085c65936ed3194d1bbaf84f419e1",
      "tree": "76f16d460d8eec4f1d39bb533167e591bb6113c6",
      "parents": [
        "deeb5912db12e8b7ccf3f4b1afaad60bc29abed9"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Jul 18 17:12:36 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:28 2008 +1000"
      },
      "message": "[XFS] fix mount option parsing in remount\n\nRemount currently happily accept any option thrown at it, although the\nonly filesystem specific option it actually handles is barrier/nobarrier.\nAnd it actually doesn\u0027t handle these correctly either because it only uses\nthe value it parsed when we\u0027re doing a ro-\u003erw transition. In addition to\nthat there\u0027s also a bad bug in xfs_parseargs which doesn\u0027t touch the\nactual option in the mount point except for a single one,\nXFS_MOUNT_SMALL_INUMS and thus forced any filesystem that\u0027s every\nremounted in some way to not support 64bit inodes with no way to recover\nunless unmounted.\n\nThis patch changes xfs_fs_remount to use it\u0027s own linux/parser.h based\noptions parse instead of xfs_parseargs and reject all options except for\nbarrier/nobarrier and to the right thing in general. Eventually I\u0027d like\nto have a single big option table used for mount aswell but that can wait\nfor a while.\n\nSGI-PV: 983964\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31382a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "deeb5912db12e8b7ccf3f4b1afaad60bc29abed9",
      "tree": "a348dab8dc552802e12c824bad287c8a6672ebf4",
      "parents": [
        "9f8868ffb39c2f80ba69df4552cb530b6634f646"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Fri Jul 18 17:12:18 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:26 2008 +1000"
      },
      "message": "[XFS] Disable queue flag test in barrier check.\n\nmd raid1 can pass down barriers, but does not set an ordered flag on the\nqueue, so xfs does not even attempt a barrier write, and will never use\nbarriers on these block devices.\n\nRemove the flag check and just let the barrier write test determine\nbarrier support.\n\nA possible risk here is that if something does not set an ordered flag and\nalso does not properly return an error on a barrier write... but if it\u0027s\nany consolation jbd/ext3/reiserfs never test the flag, and don\u0027t even do a\ntest write, they just disable barriers the first time an actual journal\nbarrier write fails.\n\nSGI-PV: 983924\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31377a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "9f8868ffb39c2f80ba69df4552cb530b6634f646",
      "tree": "fba09366faf55ee039cdbd91dff78b7d87a86d0b",
      "parents": [
        "136f8f21b6d564f553abe6130127d16fb50432d3"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Jul 18 17:11:46 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:25 2008 +1000"
      },
      "message": "[XFS] streamline init/exit path\n\nCurrently the xfs module init/exit code is a mess. It\u0027s farmed out over a\nlot of function with very little error checking. This patch makes sure we\npropagate all initialization failures properly and clean up after them.\nVarious runtime initializations are replaced with compile-time\ninitializations where possible to make this easier. The exit path is\nsimilarly consolidated.\n\nThere\u0027s now split out function to create/destroy the kmem zones and\nalloc/free the trace buffers. I\u0027ve also changed the ktrace allocations to\nKM_MAYFAIL and handled errors resulting from that.\n\nAnd yes, we really should replace the XFS_*_TRACE ifdefs with a single\nXFS_TRACE..\n\nSGI-PV: 976035\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31354a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "136f8f21b6d564f553abe6130127d16fb50432d3",
      "tree": "f8d835db90982079742a4c1b8f2212be1c555440",
      "parents": [
        "2edbddd5f46cc123b68c11179115041c54759fa2"
      ],
      "author": {
        "name": "Tim Shimmin",
        "email": "tes@sgi.com",
        "time": "Fri Jun 27 13:34:42 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:17 2008 +1000"
      },
      "message": "[XFS] Fix up problem when CONFIG_XFS_POSIX_ACL is not set and yet we still\ncan use the _ACL_TYPE_* definitions in linux-2.6/xfs_xattr.c. The\nforthcoming generic acl code will also fix this problem.\n\nSGI-PV: 982343\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31369a\n\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "2edbddd5f46cc123b68c11179115041c54759fa2",
      "tree": "845f418fd623875c5a39f0faf823114364e53de8",
      "parents": [
        "8f8670bb1cfa177d35c54e4cc96152dc425a7ab3"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Fri Jun 27 13:34:34 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:15 2008 +1000"
      },
      "message": "[XFS] Don\u0027t assert if trying to mount with blocksize \u003e pagesize\n\nIf we don\u0027t do the blocksize/PAGESIZE check before calling\nxfs_sb_validate_fsb_count() we can assert if we try to mount with a\nblocksize \u003e pagesize. The assert is valid so leave it and just move the\nblocksize/pagesize check earlier.\n\nSGI-PV: 983734\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31365a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\n"
    },
    {
      "commit": "8f8670bb1cfa177d35c54e4cc96152dc425a7ab3",
      "tree": "677c7b6801ac0b1307966df96470aa27cee78441",
      "parents": [
        "313b5c767a044c7a0db5e773cb7aea70383b2627"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Jun 27 13:34:26 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:14 2008 +1000"
      },
      "message": "[XFS] Don\u0027t update mtime on rename source\n\nAs reported by Michael-John Turner XFS updates the mtime on the source\ninode of a rename call in case it\u0027s a directory and changes the parent.\n\nThis doesn\u0027t make any sense, is not mentioned in the standards and not\nperformed by any other Linux filesystems so remove it.\n\nSGI-PV: 983684\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31364a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Barry Naujok \u003cbnaujok@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "313b5c767a044c7a0db5e773cb7aea70383b2627",
      "tree": "5752234a32bbfacd7b0dd01365986af76396c18b",
      "parents": [
        "b877e3d37dda0154868a3c78f02f38a1ec14ce79"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Fri Jun 27 13:33:11 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:13 2008 +1000"
      },
      "message": "[XFS] Allow xfs_bmbt_split() to fallback to the lowspace allocator\nalgorithm\n\nIf xfs_bmbt_split() cannot find an AG with sufficient free space to\nsatisfy a full extent btree split then fall back to the lowspace allocator\nalgorithm.\n\nSGI-PV: 983338\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31359a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\n"
    },
    {
      "commit": "b877e3d37dda0154868a3c78f02f38a1ec14ce79",
      "tree": "0c654086bf0ed0be90bc2652eb7b67448ae568dc",
      "parents": [
        "4ddd8bb1d25f9cbb345e1f64a56c0f641a787ede"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Fri Jun 27 13:33:03 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:11 2008 +1000"
      },
      "message": "[XFS] Restore the lowspace extent allocator algorithm\n\nWhen free space is running low the extent allocator may choose to allocate\nan extent from an AG without leaving sufficient space for a btree split\nwhen inserting the new extent (see where xfs_bmap_btalloc() sets minleft\nto 0). In this case the allocator will enable the lowspace algorithm which\nis supposed to allow further allocations (such as btree splits and\nnewroots) to allocate from sequential AGs. This algorithm has been broken\nfor a long time and this patch restores its behaviour.\n\nSGI-PV: 983338\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31358a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\n"
    },
    {
      "commit": "4ddd8bb1d25f9cbb345e1f64a56c0f641a787ede",
      "tree": "297e8fa754cbd910450ff76a9058a2ac6cd07b39",
      "parents": [
        "e182f57ac019b034b40d16f3c6d8e86826aecd56"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Fri Jun 27 13:32:53 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:10 2008 +1000"
      },
      "message": "[XFS] use minleft when allocating in xfs_bmbt_split()\n\nThe bmap btree split code relies on a previous data extent allocation\n(from xfs_bmap_btalloc()) to find an AG that has sufficient space to\nperform a full btree split, when inserting the extent. When converting\nunwritten extents we don\u0027t allocate a data extent so a btree split will be\nthe first allocation. In this case we need to set minleft so the allocator\nwill pick an AG that has space to complete the split(s).\n\nSGI-PV: 983338\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31357a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\n"
    },
    {
      "commit": "e182f57ac019b034b40d16f3c6d8e86826aecd56",
      "tree": "b270d1ccd9c019b8172661aa87d5eb03f1a54219",
      "parents": [
        "90ad58a83accbeb8de09de4a55d3e6b429767eae"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Jun 27 13:32:31 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:09 2008 +1000"
      },
      "message": "[XFS] attrmulti cleanup\n\nxfs_attrmulti_by_handle currently request the size based on\nsizeof(attr_multiop_t) but should be using sizeof(xfs_attr_multiop_t)\nbecause that is what it is dealing with. Despite beeing wrong this\nactually harmless in practice because both structures are the same size on\nall platforms.\n\nBut this sizeof was the only user of struct attr_multiop so we can just\nkill it. Also move the ATTR_OP_* defines xfs_attr.h into the struct\nxfs_attr_multiop defintion in xfs_fs.h because they are only used with\nthat structure, and are part of the user ABI for the\nXFS_IOC_ATTRMULTI_BY_HANDLE ioctl.\n\nSGI-PV: 983508\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31352a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "90ad58a83accbeb8de09de4a55d3e6b429767eae",
      "tree": "73786e6eaf77dfe9651dc643b94b967b013c41ce",
      "parents": [
        "07fe4dd48d046feeff8705a2a224a8fba050b1c6"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Jun 27 13:32:19 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:07 2008 +1000"
      },
      "message": "[XFS] Check for invalid flags in xfs_attrlist_by_handle.\n\nxfs_attrlist_by_handle should only take the ATTR_ flags for the root\nnamespaces. The ATTR_KERN* flags may change at anytime and expect special\npreconditions that can\u0027t be guaranteed for userspace-originating requests.\nFor example passing down ATTR_KERNNOVAL through xfs_attrlist_by_handle\nwill hit an assert in debug builds currently.\n\nSGI-PV: 983677\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31351a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "07fe4dd48d046feeff8705a2a224a8fba050b1c6",
      "tree": "e6c6c206f8c3cc66bb1e8c4fdd0944b34e4bfc73",
      "parents": [
        "f9e09f095f323948b26ba09638d2eb3b0578d094"
      ],
      "author": {
        "name": "Barry Naujok",
        "email": "bnaujok@sgi.com",
        "time": "Fri Jun 27 13:32:11 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:06 2008 +1000"
      },
      "message": "[XFS] Fix CI lookup in leaf-form directories\n\nInstead of comparing buffer pointers, compare buffer block numbers and\ndon\u0027t keep buff\n\nSGI-PV: 983564\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31346a\n\nSigned-off-by: Barry Naujok \u003cbnaujok@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "f9e09f095f323948b26ba09638d2eb3b0578d094",
      "tree": "8495fd835664bfa6131c2cfe50b3dc9f793c15cc",
      "parents": [
        "ddea2d5246b4ffbe49bbfb700aa3dbe717eb0915"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Mon Jun 23 13:34:09 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:04 2008 +1000"
      },
      "message": "[XFS] Use the generic xattr methods.\n\nAdd missing file fs/xfs/linux-2.6/xfs_xattr.c\n\nSGI-PV: 982343\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31234a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "ddea2d5246b4ffbe49bbfb700aa3dbe717eb0915",
      "tree": "9b3041590c9a6f2a15ab15682605d796d7ba9d19",
      "parents": [
        "6bd8fc8a55cba263bab0b1c24786e95c5a2dc720"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Mon Jun 23 13:25:53 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:03 2008 +1000"
      },
      "message": "[XFS] Always reset btree cursor after an insert\n\nAfter a btree insert operation a cursor can be invalid due to block splits\nand a maybe a new root block. We reset the cursor in xfs_bmbt_insert() in\nthe cases where we think we need to but it isn\u0027t enough as we still see\nassertions. Just do what we do elsewhere and reset the cursor\nunconditionally. Also remove the fix to revalidate the original cursor in\nxfs_bmbt_insert().\n\nSGI-PV: 983336\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31342a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\n"
    },
    {
      "commit": "6bd8fc8a55cba263bab0b1c24786e95c5a2dc720",
      "tree": "73c8ae606f262f5ccc1c956b90a3cad859828275",
      "parents": [
        "90bb7ab077a63facbe3aa0b9e3763a0cb956a4c1"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Mon Jun 23 13:25:46 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:02 2008 +1000"
      },
      "message": "[XFS] Convert ASSERTs to XFS_WANT_CORRUPTED_GOTOs\n\nASSERTs are no good to us on a non-debug build so use\nXFS_WANT_CORRUPTED_GOTOs to report extent btree corruption ASAP.\n\nSGI-PV: 983500\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31338a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "90bb7ab077a63facbe3aa0b9e3763a0cb956a4c1",
      "tree": "fae24e57f69a35c6de32910e2b5d75b7df0f3c04",
      "parents": [
        "e5700704b2b0853c059e424284cceeff3032ea28"
      ],
      "author": {
        "name": "Barry Naujok",
        "email": "bnaujok@sgi.com",
        "time": "Mon Jun 23 13:25:38 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:01 2008 +1000"
      },
      "message": "[XFS] Fix returning case-preserved name with CI node form directories\n\nxfs_dir2_node_lookup() calls xfs_da_node_lookup_int() which iterates\nthrough leaf blocks containing the matching hash value for the name being\nlooked up. Inside xfs_da_node_lookup_int(), it calls the\nxfs_dir2_leafn_lookup_for_entry() for each leaf block.\nxfs_dir2_leafn_lookup_for_entry() iterates through each matching\nhash/offset pair doing a name comparison to find the matching dirent.\n\nFor CI mode, the state-\u003eextrablk retains the details of the block that has\nthe CI match so xfs_dir2_node_lookup() can return the case-preserved name.\n\nThe original implementation didn\u0027t retain the xfs_da_buf_t properly, so\nthe lookup was returning a bogus name to be stored in the dentry.\n\nIn the case of unlink, the bad name was passed and in debug mode, ASSERTed\nwhen it can\u0027t find the entry.\n\nSGI-PV: 983284\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31337a\n\nSigned-off-by: Barry Naujok \u003cbnaujok@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "e5700704b2b0853c059e424284cceeff3032ea28",
      "tree": "f1b4a42cdbf7a745491cbcb3966f300ad52401f0",
      "parents": [
        "8f112e3bc3508afc8d1612868d178359446c08fd"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Jun 23 13:25:25 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:59:00 2008 +1000"
      },
      "message": "[XFS] Don\u0027t update i_size for directories and special files\n\nThe core kernel uses vfs_getattr to look at the inode size and similar\nattributes, so there is no need to keep i_size uptodate for directories or\nspecial files. This means we can remove xfs_validate_fields because the\nI/O path already keeps i_size uptodate for regular files.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31336a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Barry Naujok \u003cbnaujok@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "8f112e3bc3508afc8d1612868d178359446c08fd",
      "tree": "64a03e036369ab3819f6675698454a8a250097d1",
      "parents": [
        "61f10fad1947116055c694321d9d8f21152c0582"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Jun 23 13:25:17 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:58 2008 +1000"
      },
      "message": "[XFS] Merge xfs_rmdir into xfs_remove\n\nxfs_remove and xfs_rmdir are almost the same with a little more work\nperformed in xfs_rmdir due to the . and .. entries. This patch merges\nxfs_rmdir into xfs_remove and performs these actions conditionally.\n\nAlso clean up the error handling which was a nightmare in both versions\nbefore.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31335a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Barry Naujok \u003cbnaujok@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "61f10fad1947116055c694321d9d8f21152c0582",
      "tree": "f9b9c1d9eeecd4321303c2b48428cbeae90c719d",
      "parents": [
        "6278debdf95b100a516b803f90d6f11b41c34171"
      ],
      "author": {
        "name": "Tim Shimmin",
        "email": "tes@sgi.com",
        "time": "Mon Jun 23 13:25:09 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:57 2008 +1000"
      },
      "message": "[XFS] Fix up warning for xfs_vn_listxatt\u0027s call of list_one_attr() with\ncontext count of ssize_t versus int. Change context count to be ssize_t.\n\nSGI-PV: 983395\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31333a\n\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "6278debdf95b100a516b803f90d6f11b41c34171",
      "tree": "ea4021d53cf15a295bee5b83a31134ba2e6a8cb7",
      "parents": [
        "7f871d5d1b9b126c1a0cece737a37c6980c988e3"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Mon Jun 23 13:25:02 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:56 2008 +1000"
      },
      "message": "[XFS] fix extent corruption in xfs_iext_irec_compact_full()\n\nThis function is used to compact the indirect extent list by moving\nextents from one page to the previous to fill them up. After we move some\nextents to an earlier page we need to shuffle the remaining extents to the\nstart of the page. The actual bug here is the second argument to memmove()\nneeds to index past the extents, that were copied to the previous page,\nand move the remaining extents. For pages that are already full (ie\next_avail \u003d\u003d 0) the compaction code has no net effect so don\u0027t do it.\n\nSGI-PV: 983337\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31332a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "7f871d5d1b9b126c1a0cece737a37c6980c988e3",
      "tree": "c5eda9a03a16da85786bf15c7f31f5b23bc5492b",
      "parents": [
        "ad9b463aa206b8c8f0bab378cf7c090c1a9a8e34"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Mon Jun 23 13:23:57 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:54 2008 +1000"
      },
      "message": "[XFS] make inode reclaim wait for log I/O to complete\n\nDuring a forced shutdown a xfs inode can be destroyed before log I/O\ninvolving that inode is complete. We need to wait for the inode to be\nunpinned before tearing it down. Version 2 cleans up the code a bit by\nrelying on xfs_iflush() to do the unpinning and forced shutdown check.\n\nSGI-PV: 981240\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31326a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\n"
    },
    {
      "commit": "ad9b463aa206b8c8f0bab378cf7c090c1a9a8e34",
      "tree": "c427ffd218b9123ec5fc6d004d6bd25e65e8de1f",
      "parents": [
        "caf8aabdbc6849de772850d26d3dbe35e8f63bff"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Jun 23 13:23:48 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:53 2008 +1000"
      },
      "message": "[XFS] Switches xfs_vn_listxattr to set it\u0027s put_listent callback directly\nand not go through xfs_attr_list.\n\nSGI-PV: 983395\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31324a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "caf8aabdbc6849de772850d26d3dbe35e8f63bff",
      "tree": "779c0b2c25f592d4e807b676d13ba975846aeacf",
      "parents": [
        "ae23a5e87dbbf4657a82e1ff8ebc52ab50361c14"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Jun 23 13:23:41 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:52 2008 +1000"
      },
      "message": "[XFS] Factor out code for whether inode has attributes or not.\n\nSGI-PV: 983394\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31323a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "ae23a5e87dbbf4657a82e1ff8ebc52ab50361c14",
      "tree": "4165d72de28027d7cedf6ba8daa305b59f5304f0",
      "parents": [
        "0ec585163ac81e329bde25fb6311a043a1c63952"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Mon Jun 23 13:23:32 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:50 2008 +1000"
      },
      "message": "[XFS] Pack some shortform dir2 structures for the ARM old ABI\narchitecture.\n\nThis should fix the longstanding issues with xfs and old ABI arm boxes,\nwhich lead to various asserts and xfs shutdowns, and for which an\n(incorrect) patch has been floating around for years.\n\nI\u0027ve verified this patch by comparing the on-disk structure layouts using\npahole from the dwarves package, as well as running through a bit of xfsqa\nunder qemu-arm, modified so that the check/repair phase after each test\nactually executes check/repair from the x86 host, on the filesystem\npopulated by the arm emulator. Thus far it all looks good.\n\nThere are 2 other structures with extra padding at the end, but they don\u0027t\nseem to cause trouble. I suppose they could be packed as well:\nxfs_dir2_data_unused_t and xfs_dir2_sf_t.\n\nNote that userspace needs a similar treatment, and any filesystems which\nwere running with the previous rogue \"fix\" will now see corruption (either\nin the kernel, or during xfs_repair) with this fix properly in place; it\nmay be worth teaching xfs_repair to identify and fix that specific issue.\n\nSGI-PV: 982930\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31280a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "0ec585163ac81e329bde25fb6311a043a1c63952",
      "tree": "304193ab41f88e5d82e51053bbd7d21fbfb7a83f",
      "parents": [
        "d532506cd8b59543b376e155508f88a03a81dad1"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Mon Jun 23 13:23:01 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:49 2008 +1000"
      },
      "message": "[XFS] Use the generic xattr methods.\n\nUse the generic set, get and removexattr methods and supply the s_xattr\narray with fine-grained handlers. All XFS/Linux highlevel attr handling is\nrewritten from scratch and placed into fs/xfs/linux-2.6/xfs_xattr.c so\nthat it\u0027s separated from the generic low-level code.\n\nSGI-PV: 982343\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31234a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "d532506cd8b59543b376e155508f88a03a81dad1",
      "tree": "554e401cf6bcb9894e0110e05ead0d04d6d0e907",
      "parents": [
        "87affd08bc9c741b99053cabb908cf54a135a0fa"
      ],
      "author": {
        "name": "Barry Naujok",
        "email": "bnaujok@sgi.com",
        "time": "Mon Jun 16 12:07:41 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:47 2008 +1000"
      },
      "message": "[XFS] Invalidate dentry in unlink/rmdir if in case-insensitive mode\n\nThe vfs_unlink/d_delete functionality in the Linux VFS make the\ndentry negative if it is the only inode being referenced. Case-insensitive\nmode doesn\u0027t work with negative dentries, so if using CI-mode, invalidate\nthe dentry on unlink/rmdir.\n\nSGI-PV: 983102\nSGI-Modid: xfs-linux-melb:xfs-kern:31308a\n\nSigned-off-by: Barry Naujok \u003cbnaujok@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "87affd08bc9c741b99053cabb908cf54a135a0fa",
      "tree": "27b72efbae045a45829a09e7e9a0109dc5f09b13",
      "parents": [
        "866d5dc974682c6247d5fde94dbc6545f864e7d7"
      ],
      "author": {
        "name": "Barry Naujok",
        "email": "bnaujok@sgi.com",
        "time": "Tue Jun 03 11:59:18 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:46 2008 +1000"
      },
      "message": "[XFS] Zero uninitialised xfs_da_args structure in xfs_dir2.c\n\nFixes a problem in the xfs_dir2_remove and xfs_dir2_replace paths which\nintenally call directory format specific lookup funtions that assume\nargs-\u003ecmpresult is zeroed.\n\nSGI-PV: 982606\nSGI-Modid: xfs-linux-melb:xfs-kern:31268a\n\nSigned-off-by: Barry Naujok \u003cbnaujok@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "866d5dc974682c6247d5fde94dbc6545f864e7d7",
      "tree": "616888e514542fc6b666e1fdbf7adbbcf2704d61",
      "parents": [
        "d3689d7687dbbc46c5004557d53349f6952fbc93"
      ],
      "author": {
        "name": "Barry Naujok",
        "email": "bnaujok@sgi.com",
        "time": "Thu May 22 17:21:40 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:44 2008 +1000"
      },
      "message": "[XFS] Remove d_add call for an ENOENT lookup return code\n\nSGI-PV: 981521\nSGI-Modid: xfs-linux-melb:xfs-kern:31214a\n\nSigned-off-by: Barry Naujok \u003cbnaujok@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\n"
    },
    {
      "commit": "d3689d7687dbbc46c5004557d53349f6952fbc93",
      "tree": "a3434177bebc4f6834ae64f6cd519c9d4da379b0",
      "parents": [
        "189f4bf22bdc3c2402b038016d11fd3cb1c89f07"
      ],
      "author": {
        "name": "Barry Naujok",
        "email": "bnaujok@sgi.com",
        "time": "Wed May 21 18:38:40 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:43 2008 +1000"
      },
      "message": "[XFS] kmem_free and kmem_realloc to use const void *\n\nSGI-PV: 981498\nSGI-Modid: xfs-linux-melb:xfs-kern:31212a\n\nSigned-off-by: Barry Naujok \u003cbnaujok@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "189f4bf22bdc3c2402b038016d11fd3cb1c89f07",
      "tree": "98a168b063b87609fc28685ace7ce0fec589beff",
      "parents": [
        "384f3ced07efdddf6838f6527366089d37843c94"
      ],
      "author": {
        "name": "Barry Naujok",
        "email": "bnaujok@sgi.com",
        "time": "Wed May 21 16:58:55 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:42 2008 +1000"
      },
      "message": "[XFS] XFS: ASCII case-insensitive support\n\nImplement ASCII case-insensitive support. It\u0027s primary purpose is for\nsupporting existing filesystems that already use this case-insensitive\nmode migrated from IRIX. But, if you only need ASCII-only case-insensitive\nsupport (ie. English only) and will never use another language, then this\nmode is perfectly adequate.\n\nASCII-CI is implemented by generating hashes based on lower-case letters\nand doing lower-case compares. It implements a new xfs_nameops vector for\ndoing the hashes and comparisons for all filename operations.\n\nTo create a filesystem with this CI mode, use: # mkfs.xfs -n version\u003dci\n\u003cdevice\u003e\n\nSGI-PV: 981516\nSGI-Modid: xfs-linux-melb:xfs-kern:31209a\n\nSigned-off-by: Barry Naujok \u003cbnaujok@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "384f3ced07efdddf6838f6527366089d37843c94",
      "tree": "13037bc99115f6f940b6fe924b75dc48e0577678",
      "parents": [
        "9403540c0653122ca34884a180439ddbfcbcb524"
      ],
      "author": {
        "name": "Barry Naujok",
        "email": "bnaujok@sgi.com",
        "time": "Wed May 21 16:58:22 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:40 2008 +1000"
      },
      "message": "[XFS] Return case-insensitive match for dentry cache\n\nThis implements the code to store the actual filename found during a\nlookup in the dentry cache and to avoid multiple entries in the dcache\npointing to the same inode.\n\nTo avoid polluting the dcache, we implement a new directory inode\noperations for lookup. xfs_vn_ci_lookup() stores the correct case name in\nthe dcache.\n\nThe \"actual name\" is only allocated and returned for a case- insensitive\nmatch and not an actual match.\n\nAnother unusual interaction with the dcache is not storing negative\ndentries like other filesystems doing a d_add(dentry, NULL) when an ENOENT\nis returned. During the VFS lookup, if a dentry returned has no inode,\ndput is called and ENOENT is returned. By not doing a d_add, this actually\nremoves it completely from the dcache to be reused. create/rename have to\nbe modified to support unhashed dentries being passed in.\n\nSGI-PV: 981521\nSGI-Modid: xfs-linux-melb:xfs-kern:31208a\n\nSigned-off-by: Barry Naujok \u003cbnaujok@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "6a178100abf01282eb697ab62b6086b2886dfc00",
      "tree": "5830f1257fc9662c0f9dcd107eda5377de716a4c",
      "parents": [
        "5163f95a08cbf058ae16452c2242c5600fedc32e"
      ],
      "author": {
        "name": "Barry Naujok",
        "email": "bnaujok@sgi.com",
        "time": "Wed May 21 16:42:05 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:37 2008 +1000"
      },
      "message": "[XFS] Add op_flags field and helpers to xfs_da_args\n\nThe end of the xfs_da_args structure has 4 unsigned char fields for\ntrue/false information on directory and attr operations using the\nxfs_da_args structure.\n\nThe following converts these 4 into a op_flags field that uses the first 4\nbits for these fields and allows expansion for future operation\ninformation (eg. case-insensitive lookup request).\n\nSGI-PV: 981520\nSGI-Modid: xfs-linux-melb:xfs-kern:31206a\n\nSigned-off-by: Barry Naujok \u003cbnaujok@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    }
  ],
  "next": "5163f95a08cbf058ae16452c2242c5600fedc32e"
}
