)]}'
{
  "log": [
    {
      "commit": "1bd960ee2b1231759bd485aad0fa483c2f793a3b",
      "tree": "557463c5faac349791e14890f35668e4c1bcb639",
      "parents": [
        "7704a8b6fc4a8f51599eb2af4dcf1e2ac9c7e576"
      ],
      "author": {
        "name": "Josef Jeff Sipek",
        "email": "jeffpc@josefsipek.net",
        "time": "Fri Feb 29 13:58:40 2008 +1100"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@oss.sgi.com",
        "time": "Thu Feb 28 20:37:56 2008 -0800"
      },
      "message": "[XFS] If you mount an XFS filesystem with no mount options at all, then\nthe \"ikeep\" option is set rather than \"noikeep\".\n\nThis regression was introduced in 970451.\n\nWith no mount options specified, xfs_parseargs() does the following:\n\nint ikeep \u003d 0;\n\nargs-\u003eflags |\u003d XFSMNT_BARRIER;\n\nargs-\u003eflags2 |\u003d XFSMNT2_COMPAT_IOSIZE;\n\nif (!options)\n\ngoto done;\n\nIt only sets the above two options by default and before, it also used to\nset XFSMNT_IDELETE by default.\n\nIf options are specified, then\n\nif (!(args-\u003eflags \u0026 XFSMNT_DMAPI) \u0026\u0026 !ikeep)\n\nargs-\u003eflags |\u003d XFSMNT_IDELETE;\n\nis executed later on which is skipped by the \"goto done;\" above.\n\nThe solution is to invert the logic.\n\nSGI-PV: 977771\nSGI-Modid: xfs-linux-melb:xfs-kern:30590a\n\nSigned-off-by: Niv Sardi \u003cxaiki@sgi.com\u003e\nSigned-off-by: Barry Naujok \u003cbnaujok@sgi.com\u003e\nSigned-off-by: Josef \u0027Jeff\u0027 Sipek \u003cjeffpc@josefsipek.net\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "1d957f9bf87da74f420424d16ece005202bbebd3",
      "tree": "363d4770c0c74a536524c99ccd2762ce96ee9bbe",
      "parents": [
        "4ac9137858e08a19f29feac4e1f4df7c268b0ba5"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@suse.de",
        "time": "Thu Feb 14 19:34:35 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:13:33 2008 -0800"
      },
      "message": "Introduce path_put()\n\n* Add path_put() functions for releasing a reference to the dentry and\n  vfsmount of a struct path in the right order\n\n* Switch from path_release(nd) to path_put(\u0026nd-\u003epath)\n\n* Rename dput_path() to path_put_conditional()\n\n[akpm@linux-foundation.org: fix cifs]\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: \u003clinux-fsdevel@vger.kernel.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Steven French \u003csfrench@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4ac9137858e08a19f29feac4e1f4df7c268b0ba5",
      "tree": "f5b5d84fd12fcc2b0ba0e7ce1a79ff381ad8f5dd",
      "parents": [
        "c5e725f33b733a77de622e91b6ba5645fcf070be"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@suse.de",
        "time": "Thu Feb 14 19:34:32 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:13:33 2008 -0800"
      },
      "message": "Embed a struct path into struct nameidata instead of nd-\u003e{dentry,mnt}\n\nThis is the central patch of a cleanup series. In most cases there is no good\nreason why someone would want to use a dentry for itself. This series reflects\nthat fact and embeds a struct path into nameidata.\n\nTogether with the other patches of this series\n- it enforced the correct order of getting/releasing the reference count on\n  \u003cdentry,vfsmount\u003e pairs\n- it prepares the VFS for stacking support since it is essential to have a\n  struct path in every place where the stack can be traversed\n- it reduces the overall code size:\n\nwithout patch series:\n   text    data     bss     dec     hex filename\n5321639  858418  715768 6895825  6938d1 vmlinux\n\nwith patch series:\n   text    data     bss     dec     hex filename\n5320026  858418  715768 6894212  693284 vmlinux\n\nThis patch:\n\nSwitch from nd-\u003e{dentry,mnt} to nd-\u003epath.{dentry,mnt} everywhere.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: fix cifs]\n[akpm@linux-foundation.org: fix smack]\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0b61a2ba5dfd1620731e717d686e6ade657fd975",
      "tree": "dea84efd43934a7d6139048f87c4ba86d68d4b6d",
      "parents": [
        "a13ff0bb3feda8b1fcffc69951320277ed7c4101",
        "de2eeea609b55e8c3994133a565b39edeaaaaf69"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 07 19:12:12 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 07 19:12:12 2008 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com:8090/xfs/xfs-2.6\n\n* \u0027for-linus\u0027 of git://oss.sgi.com:8090/xfs/xfs-2.6: (62 commits)\n  [XFS] add __init/__exit mark to specific init/cleanup functions\n  [XFS] Fix oops in xfs_file_readdir()\n  [XFS] kill xfs_root\n  [XFS] keep i_nlink updated and use proper accessors\n  [XFS] stop updating inode-\u003ei_blocks\n  [XFS] Make xfs_ail_check check less by default\n  [XFS] Move AIL pushing into it\u0027s own thread\n  [XFS] use generic_permission\n  [XFS] stop re-checking permissions in xfs_swapext\n  [XFS] clean up xfs_swapext\n  [XFS] remove permission check from xfs_change_file_space\n  [XFS] prevent panic during log recovery due to bogus op_hdr length\n  [XFS] Cleanup various fid related bits:\n  [XFS] Fix xfs_lowbit64\n  [XFS] Remove CFORK macros and use code directly in IFORK and DFORK macros.\n  [XFS] kill superflous buffer locking (2nd attempt)\n  [XFS] Use kernel-supplied \"roundup_pow_of_two\" for simplicity\n  [XFS] Remove the BPCSHIFT and NB* based macros from XFS.\n  [XFS] Remove bogus assert\n  [XFS] optimize XFS_IS_REALTIME_INODE w/o realtime config\n  ...\n"
    },
    {
      "commit": "de2eeea609b55e8c3994133a565b39edeaaaaf69",
      "tree": "f0726491c2667427e643e5e26808b0c250884f4e",
      "parents": [
        "450790a2c51e6d9d47ed30dbdcf486656b8e186f"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Wed Feb 06 13:37:56 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:25:19 2008 +1100"
      },
      "message": "[XFS] add __init/__exit mark to specific init/cleanup functions\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:30459a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Denis Cheng \u003ccrquan@gmail.com\u003e\n"
    },
    {
      "commit": "450790a2c51e6d9d47ed30dbdcf486656b8e186f",
      "tree": "4951fb3e7fae21a791fd7c4b161a1d3f0e6dc571",
      "parents": [
        "cbc89dcfd24fd161f7a8e262266177db160a58fb"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Wed Feb 06 13:37:40 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:24:13 2008 +1100"
      },
      "message": "[XFS] Fix oops in xfs_file_readdir()\n\nWhen xfs_file_readdir() exactly fills a buffer, it can move it\u0027s index\npast the end of the buffer and dereference it even though the result of\nthe dereference is never used. On some platforms this causes an oops.\n\nSGI-PV: 976923\nSGI-Modid: xfs-linux-melb:xfs-kern:30458a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "cbc89dcfd24fd161f7a8e262266177db160a58fb",
      "tree": "135e0ce9605b4e91357570def1b3869a35f5592e",
      "parents": [
        "4188c78d951d8a44630f4c33bc0f5b63374572a4"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Feb 05 12:14:01 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:24:00 2008 +1100"
      },
      "message": "[XFS] kill xfs_root\n\nThe only caller (xfs_fs_fill_super) can simplify call igrab on the root\ninode.\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:30393a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "4188c78d951d8a44630f4c33bc0f5b63374572a4",
      "tree": "f550ffdc10f87cd6fe553fc3fd9093dba04d1c57",
      "parents": [
        "222096ae7f7616caa9e4150948096160cc8a8141"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Feb 05 12:13:53 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:23:38 2008 +1100"
      },
      "message": "[XFS] keep i_nlink updated and use proper accessors\n\nTo get the read-only bind mounts in -mm to work correctly with XFS we need\nto call the drop_nlink and inc_nlink helpers to monitor the link count.\nAdd calls to these to xfs_bumplink and xfs_droplink and stop copying over\ndi_nlink to i_nlink in xfs_validate_fields and vn_revalidate.\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:30392a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "222096ae7f7616caa9e4150948096160cc8a8141",
      "tree": "0740ca11affec2f153e84d7d096d1c11466879e6",
      "parents": [
        "de08dbc1977419efa47eb71f10d96a98eb5bb111"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Feb 05 12:13:46 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:23:15 2008 +1100"
      },
      "message": "[XFS] stop updating inode-\u003ei_blocks\n\nThe VFS doesn\u0027t use i_blocks, it\u0027s only used by generic_fillattr and the\ngeneric quota code which XFS doesn\u0027t use. In XFS there is one use to check\nwhether we have an inline or out of line sumlink, but we can replace that\nwith a check of the XFS_IFINLINE inode flag.\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:30391a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "249a8c1124653fa90f3a3afff869095a31bc229f",
      "tree": "e0681990b5b61155a64a9fd3c0cf73d4d6bb4ce5",
      "parents": [
        "4576758db5817a91b8974c696247d459dc653db2"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Tue Feb 05 12:13:32 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:22:51 2008 +1100"
      },
      "message": "[XFS] Move AIL pushing into it\u0027s own thread\n\nWhen many hundreds to thousands of threads all try to do simultaneous\ntransactions and the log is in a tail-pushing situation (i.e. full), we\ncan get multiple threads walking the AIL list and contending on the AIL\nlock.\n\nThe AIL push is, in effect, a simple I/O dispatch algorithm complicated by\nthe ordering constraints placed on it by the transaction subsystem. It\nreally does not need multiple threads to push on it - even when only a\nsingle CPU is pushing the AIL, it can push the I/O out far faster that\npretty much any disk subsystem can handle.\n\nSo, to avoid contention problems stemming from multiple list walkers, move\nthe list walk off into another thread and simply provide a \"target\" to\npush to. When a thread requires a push, it sets the target and wakes the\npush thread, then goes to sleep waiting for the required amount of space\nto become available in the log.\n\nThis mechanism should also be a lot fairer under heavy load as the waiters\nwill queue in arrival order, rather than queuing in \"who completed a push\nfirst\" order.\n\nAlso, by moving the pushing to a separate thread we can do more\neffectively overload detection and prevention as we can keep context from\nloop iteration to loop iteration. That is, we can push only part of the\nlist each loop and not have to loop back to the start of the list every\ntime we run. This should also help by reducing the number of items we try\nto lock and/or push items that we cannot move.\n\nNote that this patch is not intended to solve the inefficiencies in the\nAIL structure and the associated issues with extremely large list\ncontents. That needs to be addresses separately; parallel access would\ncause problems to any new structure as well, so I\u0027m only aiming to isolate\nthe structure from unbounded parallelism here.\n\nSGI-PV: 972759\nSGI-Modid: xfs-linux-melb:xfs-kern:30371a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "4576758db5817a91b8974c696247d459dc653db2",
      "tree": "43b5b471510f0981ea2dc668ca7591a75831f111",
      "parents": [
        "f6aa7f2184330262e1cb5f7802536e5346bd46a3"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Feb 05 12:13:24 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:22:38 2008 +1100"
      },
      "message": "[XFS] use generic_permission\n\nNow that all direct caller of xfs_iaccess are gone we can kill xfs_iaccess\nand xfs_access and just use generic_permission with a check_acl callback.\nThis is required for the per-mount read-only patchset in -mm to work\nproperly with XFS.\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:30370a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "f71354bc3a96c657a70e36dcf980cbad6c9fc63f",
      "tree": "1f32c9281e224fd067ff78ebc6dc0b763824bd98",
      "parents": [
        "edd319dc527733e61eec5bdc9ce20c94634b6482"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Dec 18 16:26:55 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:20:11 2008 +1100"
      },
      "message": "[XFS] Cleanup various fid related bits:\n\n- merge xfs_fid2 into it\u0027s only caller xfs_dm_inode_to_fh.\n- remove xfs_vget and opencode it in the two callers, simplifying\n  both of them by avoiding the awkward calling convetion.\n- assign directly to the dm_fid_t members in various places in the\n  dmapi code instead of casting them to xfs_fid_t first (which\n  is identical to dm_fid_t)\n\nSGI-PV: 974747\nSGI-Modid: xfs-linux-melb:xfs-kern:30258a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Vlad Apostolov \u003cvapo@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "a9759f2de38a3443d5107bddde03b4f3f550060e",
      "tree": "3a61d9818f5e457bc073958363a3136ac229f532",
      "parents": [
        "40ebd81d1a7635cf92a59c387a599fce4863206b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Dec 07 14:07:08 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:18:50 2008 +1100"
      },
      "message": "[XFS] kill superflous buffer locking (2nd attempt)\n\nThere is no need to lock any page in xfs_buf.c because we operate on our\nown address_space and all locking is covered by the buffer semaphore. If\nwe ever switch back to main blockdeive address_space as suggested e.g. for\nfsblock with a similar scheme the locking will have to be totally revised\nanyway because the current scheme is neither correct nor coherent with\nitself.\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:30156a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "e6a4b37f38dca6e86b2648d172946700ee921e12",
      "tree": "a094d91f8b864a33735a54c12a792bb084f7c5be",
      "parents": [
        "f7b7c3673e6e225de337abe00e14dc048e44782b"
      ],
      "author": {
        "name": "Tim Shimmin",
        "email": "tes@sgi.com",
        "time": "Fri Nov 23 16:30:42 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:17:58 2008 +1100"
      },
      "message": "[XFS] Remove the BPCSHIFT and NB* based macros from XFS.\n\nThe BPCSHIFT based macros, btoc*, ctob*, offtoc* and ctooff are either not\nused or don\u0027t need to be used. The NDPP, NDPP, NBBY macros don\u0027t need to\nbe used but instead are replaced directly by PAGE_SIZE and PAGE_CACHE_SIZE\nwhere appropriate. Initial patch and motivation from Nicolas Kaiser.\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:30096a\n\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "71ddabb94a623d1e16e7e66898bf439ff78ecc41",
      "tree": "ded37e51148312db71e6a68b18c8bfca49b95112",
      "parents": [
        "a67d7c5f5d25d0b13a4dfb182697135b014fa478"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Fri Nov 23 16:29:42 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:16:43 2008 +1100"
      },
      "message": "[XFS] optimize XFS_IS_REALTIME_INODE w/o realtime config\n\nUse XFS_IS_REALTIME_INODE in more places, and #define it to 0 if\nCONFIG_XFS_RT is off. This should be safe because mount checks in\nxfs_rtmount_init:\n\nso if we get mounted w/o CONFIG_XFS_RT, no realtime inodes should be\nencountered after that.\n\nDefining XFS_IS_REALTIME_INODE to 0 saves a bit of stack space,\npresumeably gcc can optimize around the various \"if (0)\" type checks:\n\nxfs_alloc_file_space -8 xfs_bmap_adjacent -16 xfs_bmapi -8\nxfs_bmap_rtalloc -16 xfs_bunmapi -28 xfs_free_file_space -64 xfs_imap +8\n\u003c-- ? hmm. xfs_iomap_write_direct -12 xfs_qm_dqusage_adjust -4\nxfs_qm_vop_chown_reserve -4\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:30014a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "a67d7c5f5d25d0b13a4dfb182697135b014fa478",
      "tree": "6afad71ef304075afd957ea227c584f0580558be",
      "parents": [
        "3ed6526441053d79b85d206b14d75125e6f51cc2"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Fri Nov 23 16:29:32 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:16:30 2008 +1100"
      },
      "message": "[XFS] Move platform specific mount option parse out of core XFS code\n\nMount option parsing is platform specific. Move it out of core code into\nthe platform specific superblock operation file.\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:30012a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "3ed6526441053d79b85d206b14d75125e6f51cc2",
      "tree": "338c4d47130cd5c2e35852309da273edf9d21146",
      "parents": [
        "5d51eff4538bdfeb9b7a2ec030ee3b0980b067d2"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Fri Nov 23 16:29:25 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:16:17 2008 +1100"
      },
      "message": "[XFS] Implement fallocate.\n\nImplement the new generic callout for file preallocation. Atomically\nchange the file size if requested.\n\nSGI-PV: 972756\nSGI-Modid: xfs-linux-melb:xfs-kern:30009a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "5d51eff4538bdfeb9b7a2ec030ee3b0980b067d2",
      "tree": "27606a34eab830ccc9a066f14f598af0c0c9027c",
      "parents": [
        "e4143a1cf5973e3443c0650fc4c35292d3b7baa8"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Fri Nov 23 16:29:18 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:16:07 2008 +1100"
      },
      "message": "[XFS] Fix inode allocation latency\n\nThe log force added in xfs_iget_core() has been a performance issue since\nit was introduced for tight loops that allocate then unlink a single file.\nunder heavy writeback, this can introduce unnecessary latency due tothe\nlog I/o getting stuck behind bulk data writes.\n\nFix this latency problem by avoinding the need for the log force by moving\nthe place we mark linux inode dirty to the transaction commit rather than\non transaction completion.\n\nThis also closes a potential hole in the sync code where a linux inode is\nnot dirty between the time it is modified and the time the log buffer has\nbeen written to disk.\n\nSGI-PV: 972753\nSGI-Modid: xfs-linux-melb:xfs-kern:30007a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "a8272ce0c1d49aa3bec57682678f0bdfe28ed4ca",
      "tree": "691b5ac5b1e36bf0dd59408434e3856438258a0e",
      "parents": [
        "a69b176df246d59626e6a9c640b44c0921fa4566"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Fri Nov 23 16:28:09 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:14:38 2008 +1100"
      },
      "message": "[XFS] Fix up sparse warnings.\n\nThese are mostly locking annotations, marking things static, casts where\nneeded and declaring stuff in header files.\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:30002a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "98ce2b5b1bd6db9f8d510b4333757fa6b1efe131",
      "tree": "d85791e0b40d9589fb4998070319b25b0700fa0d",
      "parents": [
        "bc58f9bb6be02a80b5f1f757b656c9affc07154f"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Fri Nov 23 16:27:32 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:13:27 2008 +1100"
      },
      "message": "[XFS] 971186 Undo mod xfs-linux-melb:xfs-kern:29845a due to a regression\n\nSGI-PV: 971596\nSGI-Modid: xfs-linux-melb:xfs-kern:29902a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "bc58f9bb6be02a80b5f1f757b656c9affc07154f",
      "tree": "1e9f4f89f1dd9cb64080e36eaec85337f2d0a0c3",
      "parents": [
        "d4f3cc016fd6b392d483adc586b6dfaabad081af"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Fri Oct 12 11:13:22 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:13:17 2008 +1100"
      },
      "message": "[XFS] fix 32-bit compat ioctls for GETXFLAGS, SETXFLAGS, GETVERSION\n\nXFS_IOC_GETVERSION, XFS_IOC_GETXFLAGS and XFS_IOC_SETXFLAGS all take a\n\"long\" which changes size between 32 and 64 bit platforms.\n\nSo, the ioctl cmds that come in from a 32-bit app aren\u0027t as expected, for\nexample on GETXFLAGS,\n\nunknown cmd fd(3) cmd(80046601){t:\u0027f\u0027;sz:4}\n\ndue to the size mismatch.\n\nSo, use instead the 32-bit version of the commands for compat ioctls, and\nother than that it doesn\u0027t take any more manipulation.\n\nAlso, for both native and compat versions, just define them to the values\nas defined in fs.h\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:29849a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "c40ea74101ab75a8f320d057e7cf4b772b090110",
      "tree": "047b725cf7347e4111b65edd532cf9b1ee8010d1",
      "parents": [
        "0771fb4515229821b7d74865b87a430de9fc1113"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Oct 12 11:12:39 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:12:07 2008 +1100"
      },
      "message": "[XFS] kill superflous buffer locking\n\nThere is no need to lock any page in xfs_buf.c because we operate on our\nown address_space and all locking is covered by the buffer semaphore. If\nwe ever switch back to main blockdeive address_space as suggested e.g. for\nfsblock with a similar scheme the locking will have to be totally revised\nanyway because the current scheme is neither correct nor coherent with\nitself.\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:29845a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "9909c4aa1a3e5b1f23cbc1bc2f0db025a7f75f85",
      "tree": "27a9a4a620a9af8163cfa1833d59c51008102e0d",
      "parents": [
        "10090be25c159c02208b7abf89ae90f8105a2423"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Oct 11 18:11:14 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 18:09:56 2008 +1100"
      },
      "message": "[XFS] kill xfs_freeze.\n\nNo need to have a wrapper just two call two more functions.\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:29816a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "10090be25c159c02208b7abf89ae90f8105a2423",
      "tree": "7af8a6eae91425c9c0fad617788b711978b14387",
      "parents": [
        "6e7f75eafbc9b0eb575097f52ba6ed27154cea1b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Oct 11 18:11:03 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:55:46 2008 +1100"
      },
      "message": "[XFS] cleanup vnode useage in xfs_iget.c\n\nGet rid of vnode useage in xfs_iget.c and pass Linux inode / xfs_inode\nwhere apropinquate. And kill some useless helpers while we\u0027re at it.\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:29808a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "6e7f75eafbc9b0eb575097f52ba6ed27154cea1b",
      "tree": "25f941063759a7cb108beb1fd9b0344d87cc49cc",
      "parents": [
        "4ca488eb45692520f745f96abc00ea4e268a87d4"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Oct 11 18:09:50 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:55:35 2008 +1100"
      },
      "message": "[XFS] cleanup vnode useage in xfs_ioctl.c\n\nxfs_ioctl.c passes around vnode pointers quite a lot, but all places\nalready have the Linux inode which is identical to the vnode these days.\nClean the code up to always use the Linux inode.\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:29807a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "4ca488eb45692520f745f96abc00ea4e268a87d4",
      "tree": "525662017ca7cfdc45b9d62f01e045d1da999e4a",
      "parents": [
        "c43f408795c3210c9f5c925e4a49dbb93d41bb57"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Oct 11 18:09:40 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:53:27 2008 +1100"
      },
      "message": "[XFS] Kill off xfs_statvfs.\n\nWe were already filling the Linux struct statfs anyway, and doing this\ntrivial task directly in xfs_fs_statfs makes the code quite a bit cleaner.\nWhile I was at it I also moved copying attributes that don\u0027t change over\nthe lifetime of the filesystem outside the superblock lock.\n\nxfs_fs_fill_super used to get the magic number and blocksize through\nxfs_statvfs, but assigning them directly is a lot cleaner and will save\nsome stack space during mount.\n\nSGI-PV: 971186\nSGI-Modid: xfs-linux-melb:xfs-kern:29802a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "c43f408795c3210c9f5c925e4a49dbb93d41bb57",
      "tree": "d60d693822eccbb242305a9945186dd0a4df1090",
      "parents": [
        "613d70436c1aeda6843ca8b70c7fab6d0484a591"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Oct 11 17:46:39 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:49:06 2008 +1100"
      },
      "message": "[XFS] simplify xfs_vn_getattr\n\nJust fill in struct kstat directly from the xfs_inode instead of doing a\ndetour through a bhv_vattr_t and xfs_getattr.\n\nSGI-PV: 970980\nSGI-Modid: xfs-linux-melb:xfs-kern:29770a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "613d70436c1aeda6843ca8b70c7fab6d0484a591",
      "tree": "e8cc8d1f2cf3720285f0439c9d057555ab293b0c",
      "parents": [
        "007c61c68640ea17c036785b698d05da67b4365e"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Oct 11 17:44:08 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:48:58 2008 +1100"
      },
      "message": "[XFS] kill xfs_iocore_t\n\nxfs_iocore_t is a structure embedded in xfs_inode. Except for one field it\njust duplicates fields already in xfs_inode, and there is nothing this\nabstraction buys us on XFS/Linux. This patch removes it and shrinks source\nand binary size of xfs aswell as shrinking the size of xfs_inode by 60/44\nbytes in debug/non-debug builds.\n\nSGI-PV: 970852\nSGI-Modid: xfs-linux-melb:xfs-kern:29754a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "007c61c68640ea17c036785b698d05da67b4365e",
      "tree": "d4d4bc3d9268d174f42f45dc67844905f0e5933d",
      "parents": [
        "36e41eebdafc8b5fabdf66f59d0d43b0b60f0fdb"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Thu Oct 11 17:43:56 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:47:45 2008 +1100"
      },
      "message": "[XFS] Remove spin.h\n\nremove spinlock init abstraction macro in spin.h, remove the callers, and\nremove the file. Move no-op spinlock_destroy to xfs_linux.h Cleanup\nspinlock locals in xfs_mount.c\n\nSGI-PV: 970382\nSGI-Modid: xfs-linux-melb:xfs-kern:29751a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "36e41eebdafc8b5fabdf66f59d0d43b0b60f0fdb",
      "tree": "5a3f1dc397b6eb1e69de2775fbcc44952cc4671d",
      "parents": [
        "3a0e487034107c0859b8a0d71d14b5c8988d356b"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Thu Oct 11 17:43:43 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:47:35 2008 +1100"
      },
      "message": "[XFS] Cleanup lock goop.\n\nSwitch last couple lock_t\u0027s to spinlock_t\u0027s. Remove now-unused\nspinlock-related macros \u0026 types.\n\nSGI-PV: 970382\nSGI-Modid: xfs-linux-melb:xfs-kern:29748a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "541d7d3c4b31e2b0ac846fe6d2eb5cdbe1353095",
      "tree": "d8c9cf9cf75fd3d23ebc19e5f6b646a4d807b72c",
      "parents": [
        "21a62542b6d7f726d6c1d2cfbfa084f721ba4a26"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Thu Oct 11 17:34:33 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:44:14 2008 +1100"
      },
      "message": "[XFS] kill unnessecary ioops indirection\n\nCurrently there is an indirection called ioops in the XFS data I/O path.\nVarious functions are called by functions pointers, but there is no\ncoherence in what this is for, and of course for XFS itself it\u0027s entirely\nunused. This patch removes it instead and significantly reduces source and\nbinary size of XFS while making maintaince easier.\n\nSGI-PV: 970841\nSGI-Modid: xfs-linux-melb:xfs-kern:29737a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "21a62542b6d7f726d6c1d2cfbfa084f721ba4a26",
      "tree": "db0a080fd3550b12000d96513c5d92836e95ae5b",
      "parents": [
        "15947f2d4f747897f31cfaa36e98a93f80ca3d3f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Sep 19 15:27:49 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:44:04 2008 +1100"
      },
      "message": "[XFS] simplify vn_revalidate\n\nNo need to allocate a bhv_vattr_t on stack and call xfs_getattr to update\na few fields in the Linux inode from the XFS inode, just do it directly.\n\nAnd yes, this function is in dire need of a better name and prototype,\nI\u0027ll do in a separate patch, though.\n\nSGI-PV: 970705\nSGI-Modid: xfs-linux-melb:xfs-kern:29713a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "15947f2d4f747897f31cfaa36e98a93f80ca3d3f",
      "tree": "962c533fce140064343f119d7c5f9d94a80140b7",
      "parents": [
        "7642861b7eeaddfc82d762b3342044c809c3f77e"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Mon Sep 17 13:11:58 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:43:54 2008 +1100"
      },
      "message": "[XFS] more vnode/inode tracing fixes\n\nSGI-PV: 970335\nSGI-Modid: xfs-linux-melb:xfs-kern:29697a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "7642861b7eeaddfc82d762b3342044c809c3f77e",
      "tree": "badaaae721ab515df925b0b6eddf610e6678542e",
      "parents": [
        "6214ed4461f1ad8aeec41857c73d58afb31be335"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Sep 14 15:23:31 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:43:44 2008 +1100"
      },
      "message": "[XFS] kill BMAPI_UNWRITTEN\n\nThere is no reason to go through xfs_iomap for the BMAPI_UNWRITTEN because\nit has nothing in common with the other cases. Instead check for the\nshutdown filesystem in xfs_end_bio_unwritten and perform a direct call to\nxfs_iomap_write_unwritten (which should be renamed to something more\nsensible one day)\n\nSGI-PV: 970241\nSGI-Modid: xfs-linux-melb:xfs-kern:29681a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "6214ed4461f1ad8aeec41857c73d58afb31be335",
      "tree": "cd01b3d54a4156ee9315ea88ef7fea26fb40acfb",
      "parents": [
        "cf441eeb79c32471379f0a4d97feaef691432a03"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Sep 14 15:23:17 2007 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:43:35 2008 +1100"
      },
      "message": "[XFS] kill BMAPI_DEVICE\n\nThere is no reason to go into the iomap machinery just to get the right\nblock device for an inode. Instead look at the realtime flag in the inode\nand grab the right device from the mount structure.\n\nI created a new helper, xfs_find_bdev_for_inode instead of opencoding it\nbecause I plan to use it in other places in the future.\n\nSGI-PV: 970240\nSGI-Modid: xfs-linux-melb:xfs-kern:29680a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "cf441eeb79c32471379f0a4d97feaef691432a03",
      "tree": "283347fcc807a87339a8244d3a45029eac90c825",
      "parents": [
        "44866d39282d0782b15fa4cb62aad937bf0a0897"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:42:19 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Thu Feb 07 16:42:19 2008 +1100"
      },
      "message": "[XFS] clean up vnode/inode tracing\n\nSimplify vnode tracing calls by embedding function name \u0026 return addr in\nthe calling macro.\n\nAlso do a lot of vnode-\u003einode renaming for consistency, while we\u0027re at it.\n\nSGI-PV: 970335\nSGI-Modid: xfs-linux-melb:xfs-kern:29650a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "9e2779fa281cfda13ac060753d674bbcaa23367e",
      "tree": "e2af17d69b71e0f8b3f00fe949cb8abfba4298ed",
      "parents": [
        "0b7a96114bd5991d355a1f1c1d3d9c0c9d9c1cfc"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Feb 04 22:28:34 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:14 2008 -0800"
      },
      "message": "is_vmalloc_addr(): Check if an address is within the vmalloc boundaries\n\nChecking if an address is a vmalloc address is done in a couple of places.\nDefine a common version in mm.h and replace the other checks.\n\nAgain the include structures suck.  The definition of VMALLOC_START and\nVMALLOC_END is not available in vmalloc.h since highmem.c cannot be included\nthere.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eebd2aa355692afaf9906f62118620f1a1c19dbb",
      "tree": "207eead3a736963c3e50942038c463f2f611ccce",
      "parents": [
        "b98348bdd08dc4ec11828aa98a78edde15c53cfa"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Feb 04 22:28:29 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:13 2008 -0800"
      },
      "message": "Pagecache zeroing: zero_user_segment, zero_user_segments and zero_user\n\nSimplify page cache zeroing of segments of pages through 3 functions\n\nzero_user_segments(page, start1, end1, start2, end2)\n\n        Zeros two segments of the page. It takes the position where to\n        start and end the zeroing which avoids length calculations and\n\tmakes code clearer.\n\nzero_user_segment(page, start, end)\n\n        Same for a single segment.\n\nzero_user(page, start, length)\n\n        Length variant for the case where we know the length.\n\nWe remove the zero_user_page macro. Issues:\n\n1. Its a macro. Inline functions are preferable.\n\n2. The KM_USER0 macro is only defined for HIGHMEM.\n\n   Having to treat this special case everywhere makes the\n   code needlessly complex. The parameter for zeroing is always\n   KM_USER0 except in one single case that we open code.\n\nAvoiding KM_USER0 makes a lot of code not having to be dealing\nwith the special casing for HIGHMEM anymore. Dealing with\nkmap is only necessary for HIGHMEM configurations. In those\nconfigurations we use KM_USER0 like we do for a series of other\nfunctions defined in highmem.h.\n\nSince KM_USER0 is depends on HIGHMEM the existing zero_user_page\nfunction could not be a macro. zero_user_* functions introduced\nhere can be be inline because that constant is not used when these\nfunctions are called.\n\nAlso extract the flushing of the caches to be outside of the kmap.\n\n[akpm@linux-foundation.org: fix nfs and ntfs build]\n[akpm@linux-foundation.org: fix ntfs build some more]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Steven French \u003csfrench@us.ibm.com\u003e\nCc: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Anton Altaparmakov \u003caia21@cantab.net\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nCc: Steven French \u003csfrench@us.ibm.com\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "aea6ad0ce5e215ce99fe9e3edd9268f696862d8f",
      "tree": "ab7e37bb1a046cabb01479b313493731359c68eb",
      "parents": [
        "fd0b45dfd1858c6b49d06355a460bcf36d654c06"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Jan 10 16:43:26 2008 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Jan 11 18:05:04 2008 +1100"
      },
      "message": "[XFS] fix unaligned access in readdir\n\nThis patch should fix the issue seen on Alpha with unaligned accesses in\nthe new readdir code. By aligning each dirent to sizeof(u64) we\u0027ll avoid\nunaligned accesses. To make doubly sure we\u0027re not hitting problems also\nrearrange struct hack_dirent to avoid holes.\n\nSGI-PV: 975411\nSGI-Modid: xfs-linux-melb:xfs-kern:30302a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "4743e0ec1217fd00f57461ebdd7979d31af18700",
      "tree": "9e497a5d4c554e2fe2575475c6b2464d5ba14e46",
      "parents": [
        "bad60fdd14df32459e31cc75ab681e4458bf25cf"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Dec 21 11:00:23 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Dec 21 11:40:05 2007 +1100"
      },
      "message": "[XFS] Initialise current offset in xfs_file_readdir correctly\n\nAfter reading the directory contents into the temporary buffer, we grab\neach dirent and pass it to filldir witht eh current offset of the dirent.\nThe current offset was not being set for the first dirent in the temporary\nbuffer, which coul dresult in bad offsets being set in the f_pos field\nresult in looping and duplicate entries being returned from readdir.\n\nSGI-PV: 974905\nSGI-Modid: xfs-linux-melb:xfs-kern:30282a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "bad60fdd14df32459e31cc75ab681e4458bf25cf",
      "tree": "8c768d937724751de565eded68d518f22d263e3e",
      "parents": [
        "041388b54ed95cd169546bd83bacd08ee32bd7ea"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Dec 21 10:58:56 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Fri Dec 21 11:39:58 2007 +1100"
      },
      "message": "[XFS] Fix mknod regression\n\nThis was broken by my \u0027[XFS] simplify xfs_create/mknod/symlink prototype\u0027,\nwhich assigned the re-shuffled ondisk dev_t back to the rdev variable in\nxfs_vn_mknod. Because of that i_rdev is set to the ondisk dev_t instead of\nthe linux dev_t later down the function.\n\nFortunately the fix for it is trivial: we can just remove the assignment\nbecause xfs_revalidate_inode has done the proper job before unlocking the\ninode.\n\nSGI-PV: 974873\nSGI-Modid: xfs-linux-melb:xfs-kern:30273a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "041388b54ed95cd169546bd83bacd08ee32bd7ea",
      "tree": "f457ee15545f6fbed0b0d5b8edd772c8ef7354e5",
      "parents": [
        "c734c79bc397eace039bea406997efa89f879c14"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Tue Dec 18 16:19:34 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Tue Dec 18 17:16:23 2007 +1100"
      },
      "message": "[XFS] Put the correct offset in dirent d_off\n\nThe recent filldir regression fix was not putting the correct d_off in\neach dirent. This was resulting in incorrect cookies being passed to dmapi\nioctls and the wrong offset appearing in the dirents. readdir was\nunaffected as the filp-\u003ef_pos was being updated with the correct offset\nand this was being written into the last dirent in each buffer. Fix the\nXFS code to do the right thing.\n\nSGI-PV: 973746\nSGI-Modid: xfs-linux-melb:xfs-kern:30240a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "41f81e88e01eb959f439f8537c58078e4bfc5291",
      "tree": "3d5dba6982a074bcd5f3248c57679215e5f8b701",
      "parents": [
        "dc3d532a1792263ec9b26c1cbc7ce566056b5b1f",
        "cf10e82bdc0d38d09dfaf46d0daf56136138ef3f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Dec 10 10:18:27 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Dec 10 10:18:27 2007 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com:8090/xfs/xfs-2.6\n\n* \u0027for-linus\u0027 of git://oss.sgi.com:8090/xfs/xfs-2.6:\n  [XFS] Fix xfs_ichgtime()s broken usage of I_SYNC\n  [XFS] Make xfsbufd threads freezable\n  [XFS] revert to double-buffering readdir\n  [XFS] Fix broken inode cluster setup.\n  [XFS] Clear XBF_READ_AHEAD flag on I/O completion.\n  [XFS] Fixed a few bugs in xfs_buf_associate_memory()\n  [XFS] 971064 Various fixups for xfs_bulkstat().\n  [XFS] Fix dbflush panic in xfs_qm_sync.\n"
    },
    {
      "commit": "cf10e82bdc0d38d09dfaf46d0daf56136138ef3f",
      "tree": "e862b00792b2e9c52a85022e4249e81b232b8f01",
      "parents": [
        "978c7b2ff49597ab76ff7529a933bd366941ac25"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Fri Dec 07 14:09:11 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Mon Dec 10 13:47:56 2007 +1100"
      },
      "message": "[XFS] Fix xfs_ichgtime()s broken usage of I_SYNC\n\nThe recent I_LOCK-\u003eI_SYNC changes mistakenly changed xfs_ichgtime to look\nat I_SYNC instead of I_LOCK. This was incorrect and prevents newly created\ninodes from moving to the dirty list. Change this to the correct check\nwhich is for I_NEW, not I_LOCK or I_SYNC so that behaviour is correct.\n\nSGI-PV: 974225\nSGI-Modid: xfs-linux-melb:xfs-kern:30204a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "978c7b2ff49597ab76ff7529a933bd366941ac25",
      "tree": "4695a237af4c1dffe439888fd922a87bd4b33147",
      "parents": [
        "e89bc612d61edbcefaeb6f2244f86c0f3ec89d23"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Dec 07 14:09:02 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Mon Dec 10 13:47:36 2007 +1100"
      },
      "message": "[XFS] Make xfsbufd threads freezable\n\nFix breakage caused by commit 831441862956fffa17b9801db37e6ea1650b0f69\nthat did not introduce the necessary call to set_freezable() in\nxfs/linux-2.6/xfs_buf.c .\n\nSGI-PV: 974224\nSGI-Modid: xfs-linux-melb:xfs-kern:30203a\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "e89bc612d61edbcefaeb6f2244f86c0f3ec89d23",
      "tree": "077e87a470b1ae2b8660fcc02f77f7b303e4c0f7",
      "parents": [
        "a7430847fcb19297d6db833f35b9c9645c4a6395"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Dec 07 14:07:53 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Mon Dec 10 13:47:15 2007 +1100"
      },
      "message": "[XFS] revert to double-buffering readdir\n\nThe current readdir implementation deadlocks on a btree buffers locks\nbecause nfsd calls back into -\u003elookup from the filldir callback. The only\nshort-term fix for this is to revert to the old inefficient\ndouble-buffering scheme.\n\nSGI-PV: 973377\nSGI-Modid: xfs-linux-melb:xfs-kern:30201a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "77be55a5a13d9c7ddf780a93861f2fba33f8be1a",
      "tree": "6ac9c9f5f8acb57d49bd58169d3bca54f03ae1d0",
      "parents": [
        "d1afb678ce77b930334a8a640a05b8e68178a377"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Fri Nov 23 16:31:00 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Mon Dec 10 13:46:45 2007 +1100"
      },
      "message": "[XFS] Clear XBF_READ_AHEAD flag on I/O completion.\n\nSGI-PV: 972554\nSGI-Modid: xfs-linux-melb:xfs-kern:30128a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "d1afb678ce77b930334a8a640a05b8e68178a377",
      "tree": "155f925fa5fca75e445e10611b3fbe12cfad09f4",
      "parents": [
        "cd57e594adc624dd9ee4c0ded3949da21ec24b2f"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Tue Nov 27 17:01:24 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Mon Dec 10 13:46:20 2007 +1100"
      },
      "message": "[XFS] Fixed a few bugs in xfs_buf_associate_memory()\n\n- calculation of \u0027page_count\u0027 was incorrect as it did not\n  consider the offset of \u0027mem\u0027 into the first page. The\n  logic to bump \u0027page_count\u0027 didn\u0027t work if \u0027len\u0027 was \u003c\u003d\n  PAGE_CACHE_SIZE (ie offset \u003d 3k, len \u003d 2k).\n- setting b_buffer_length to \u0027len\u0027 is incorrect if \u0027offset\u0027\n  is \u003e 0. Set it to the total length of the buffer.\n- I suspect that passing a non-aligned address into\n  mem_to_page() for the first page may have been causing\n  issues - don\u0027t know but just tidy up that code anyway.\n\nSGI-PV: 971596\nSGI-Modid: xfs-linux-melb:xfs-kern:30143a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "cd57e594adc624dd9ee4c0ded3949da21ec24b2f",
      "tree": "6c3fb257b4fd5e45ed286899c6fef9e2756287ec",
      "parents": [
        "d757762bf2f6aea954745c76b4d767067b85be9d"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Fri Nov 23 16:30:32 2007 +1100"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Mon Dec 10 13:44:11 2007 +1100"
      },
      "message": "[XFS] 971064 Various fixups for xfs_bulkstat().\n\n- sanity check for NULL user buffer in xfs_ioc_bulkstat[_compat]()\n- remove the special case for XFS_IOC_FSBULKSTAT with count \u003d\u003d 1. This\n  special case causes bulkstat to fail because the special case uses\n  xfs_bulkstat_single() instead of xfs_bulkstat() and the two functions\n  have different semantics.  xfs_bulkstat() will return the next inode\n  after the one supplied while skipping internal inodes (ie quota inodes).\n  xfs_bulkstate_single() will only lookup the inode supplied and return\n  an error if it is an internal inode.\n- in xfs_bulkstat(), need to initialise \u0027lastino\u0027 to the inode supplied\n  so in cases were we return without examining any inodes the scan wont\n  restart back at zero.\n- sanity check for valid *ubcountp values. Cannot sanity check for valid\n  ubuffer here because some users of xfs_bulkstat() don\u0027t supply a buffer.\n- checks against \u0027ubleft\u0027 (the space left in the user\u0027s buffer) should be\n  against \u0027statstruct_size\u0027 which is the supplied minimum object size.\n  The mixture of checks against statstruct_size and 0 was one of the\n  reasons we were skipping inodes.\n- if the formatter function returns BULKSTAT_RV_NOTHING and an error and\n  the error is not ENOENT or EINVAL then we need to abort the scan. ENOENT\n  is for inodes that are no longer valid and we just skip them. EINVAL is\n  returned if we try to lookup an internal inode so we skip them too. For\n  a DMF scan if the inode and DMF attribute cannot fit into the space left\n  in the user\u0027s buffer it would return ERANGE. We didn\u0027t handle this error\n  and skipped the inode. We would continue to skip inodes until one fitted\n  into the user\u0027s buffer or we completed the scan.\n- put back the recalculation of agino (that got removed with the last fix)\n  at the end of the while loop. This is because the code at the start of\n  the loop expects agino to be the last inode examined if it is non-zero.\n- if we found some inodes but then encountered an error, return success\n  this time and the error next time. If the formatter aborted with ENOMEM\n  we will now return this error but only if we couldn\u0027t read any inodes.\n  Previously if we encountered ENOMEM without reading any inodes we\n  returned a zero count and no error which falsely indicated the scan was\n  complete.\n\nSGI-PV: 973431\nSGI-Modid: xfs-linux-melb:xfs-kern:30089a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\n"
    },
    {
      "commit": "39655164405940d4818224a085e35420e2f97aed",
      "tree": "6b019b3bc77eecac1731fe64e5c031790c2b5223",
      "parents": [
        "cfaea787c05822acbb4d8963baee5edd1cc0258f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Oct 21 16:42:17 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 22 08:13:21 2007 -0700"
      },
      "message": "exportfs: make struct export_operations const\n\nNow that nfsd has stopped writing to the find_exported_dentry member we an\nmark the export_operations const\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Anton Altaparmakov \u003caia21@cantab.net\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: Timothy Shimmin \u003ctes@sgi.com\u003e\nCc: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Chris Mason \u003cmason@suse.com\u003e\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: \"Vladimir V. Saveliev\" \u003cvs@namesys.com\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c38344fe9e73c99d546cc15a2bb97c7a09942aad",
      "tree": "83d3cb3f57367ef934fd751e01ff0e11a21bf5e5",
      "parents": [
        "a35132068a91907c29328abc3156d31e50673412"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Oct 21 16:42:11 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 22 08:13:20 2007 -0700"
      },
      "message": "xfs: new export ops\n\nThis one is a lot more complicated than the previous ones.  XFS already had a\nvery clever scheme for supporting 64bit inode numbers in filehandles, and I\u0027ve\nreworked this to be some kind of a prototype for the generic 64bit inode\nfilehandle support.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: Timothy Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c6143911a7e0f8abef0319c801eb36718f57dfde",
      "tree": "86138962b153b617b5c117797394e23337f979c7",
      "parents": [
        "c8fcfac5a257f8a04f7ba3d397dedccffef19be2"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Sep 14 15:22:37 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Fri Oct 19 18:02:55 2007 +1000"
      },
      "message": "[XFS] cleanup fid types mess\n\nCurrently XFs has three different fid types: struct fid, struct xfs_fid\nand struct xfs_fid2 with hte latter two beeing identicaly and the first\none beeing the same size but an unstructured array with the same size.\n\nThis patch consolidates all this to alway uuse struct xfs_fid.\n\nThis patch is required for an upcoming patch series from me that revamps\nthe nfs exporting code and introduces a Linux-wide struct fid.\n\nSGI-PV: 970336\nSGI-Modid: xfs-linux-melb:xfs-kern:29651a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "347c53dca73fca317d57781f510f5ff4f6c0d0d7",
      "tree": "cdc405ac049751da4d76085ce58750b6b2a22326",
      "parents": [
        "5c8e191e8437616a498a8e1cc0af3dd0d32bbff2",
        "7f015072348a14f16d548be557ee58c5c55df0aa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 09:04:11 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 09:04:11 2007 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com:8090/xfs/xfs-2.6\n\n* \u0027for-linus\u0027 of git://oss.sgi.com:8090/xfs/xfs-2.6: (59 commits)\n  [XFS] eagerly remove vmap mappings to avoid upsetting Xen\n  [XFS] simplify validata_fields\n  [XFS] no longer using io_vnode, as was remaining from 23 cherrypick\n  [XFS] Remove STATIC which was missing from prior manual merge\n  [XFS] Put back the QUEUE_ORDERED_NONE test in the barrier check.\n  [XFS] Turn off XBF_ASYNC flag before re-reading superblock.\n  [XFS] avoid race in sync_inodes() that can fail to write out all dirty data\n  [XFS] This fix prevents bulkstat from spinning in an infinite loop.\n  [XFS] simplify xfs_create/mknod/symlink prototype\n  [XFS] avoid xfs_getattr in XFS_IOC_FSGETXATTR ioctl\n  [XFS] get_bulkall() could return incorrect inode state\n  [XFS] Kill unused IOMAP_EOF flag\n  [XFS] fix when DMAPI mount option processing happens\n  [XFS] ensure file size is logged on synchronous writes\n  [XFS] growlock should be a mutex\n  [XFS] replace some large xfs_log_priv.h macros by proper functions\n  [XFS] kill struct bhv_vfs\n  [XFS] move syncing related members from struct bhv_vfs to struct xfs_mount\n  [XFS] kill the vfs_flags member in struct bhv_vfs\n  [XFS] kill the vfs_fsid and vfs_altfsid members in struct bhv_vfs\n  ...\n"
    },
    {
      "commit": "1c0eeaf5698597146ed9b873e2f9e0961edcf0f9",
      "tree": "5265eac8437e8ce517a62db8fe2bd99db5b7019b",
      "parents": [
        "2e6883bdf49abd0e7f0d9b6297fc3be7ebb2250b"
      ],
      "author": {
        "name": "Joern Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Tue Oct 16 23:30:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:43:02 2007 -0700"
      },
      "message": "introduce I_SYNC\n\nI_LOCK was used for several unrelated purposes, which caused deadlock\nsituations in certain filesystems as a side effect.  One of the purposes\nnow uses the new I_SYNC bit.\n\nAlso document the various bits and change their order from historical to\nlogical.\n\n[bunk@stusta.de: make fs/inode.c:wake_up_inode() static]\nSigned-off-by: Joern Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nCc: Dave Kleikamp \u003cshaggy@linux.vnet.ibm.com\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: Anton Altaparmakov \u003caia21@cam.ac.uk\u003e\nCc: Al Viro \u003cviro@ftp.linux.org.uk\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1f7decf6d9f06dac008b8d66935c0c3b18e564f9",
      "tree": "e0f8430bd4e3ed5425aa55b7fa28483341bbfe87",
      "parents": [
        "08d8e9749e7f0435ba4683b620e8d30d59276b4c"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Tue Oct 16 23:30:42 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:43:02 2007 -0700"
      },
      "message": "writeback: remove pages_skipped accounting in __block_write_full_page()\n\nMiklos Szeredi \u003cmiklos@szeredi.hu\u003e and me identified a writeback bug:\n\n\u003e The following strange behavior can be observed:\n\u003e\n\u003e 1. large file is written\n\u003e 2. after 30 seconds, nr_dirty goes down by 1024\n\u003e 3. then for some time (\u003c 30 sec) nothing happens (disk idle)\n\u003e 4. then nr_dirty again goes down by 1024\n\u003e 5. repeat from 3. until whole file is written\n\u003e\n\u003e So basically a 4Mbyte chunk of the file is written every 30 seconds.\n\u003e I\u0027m quite sure this is not the intended behavior.\n\nIt can be produced by the following test scheme:\n\n# cat bin/test-writeback.sh\ngrep nr_dirty /proc/vmstat\necho 1 \u003e /proc/sys/fs/inode_debug\ndd if\u003d/dev/zero of\u003d/var/x bs\u003d1K count\u003d204800\u0026\nwhile true; do grep nr_dirty /proc/vmstat; sleep 1; done\n\n# bin/test-writeback.sh\nnr_dirty 19207\nnr_dirty 19207\nnr_dirty 30924\n204800+0 records in\n204800+0 records out\n209715200 bytes (210 MB) copied, 1.58363 seconds, 132 MB/s\nnr_dirty 47150\nnr_dirty 47141\nnr_dirty 47142\nnr_dirty 47142\nnr_dirty 47142\nnr_dirty 47142\nnr_dirty 47205\nnr_dirty 47214\nnr_dirty 47214\nnr_dirty 47214\nnr_dirty 47214\nnr_dirty 47214\nnr_dirty 47215\nnr_dirty 47216\nnr_dirty 47216\nnr_dirty 47216\nnr_dirty 47154\nnr_dirty 47143\nnr_dirty 47143\nnr_dirty 47143\nnr_dirty 47143\nnr_dirty 47143\nnr_dirty 47142\nnr_dirty 47142\nnr_dirty 47142\nnr_dirty 47142\nnr_dirty 47134\nnr_dirty 47134\nnr_dirty 47135\nnr_dirty 47135\nnr_dirty 47135\nnr_dirty 46097 \u003c\u003d\u003d -1038\nnr_dirty 46098\nnr_dirty 46098\nnr_dirty 46098\n[...]\nnr_dirty 46091\nnr_dirty 46092\nnr_dirty 46092\nnr_dirty 45069 \u003c\u003d\u003d -1023\nnr_dirty 45056\nnr_dirty 45056\nnr_dirty 45056\n[...]\nnr_dirty 37822\nnr_dirty 36799 \u003c\u003d\u003d -1023\n[...]\nnr_dirty 36781\nnr_dirty 35758 \u003c\u003d\u003d -1023\n[...]\nnr_dirty 34708\nnr_dirty 33672 \u003c\u003d\u003d -1024\n[...]\nnr_dirty 33692\nnr_dirty 32669 \u003c\u003d\u003d -1023\n\n% ls -li /var/x\n847824 -rw-r--r-- 1 root root 200M 2007-08-12 04:12 /var/x\n\n% dmesg|grep 847824  # generated by a debug printk\n[  529.263184] redirtied inode 847824 line 548\n[  564.250872] redirtied inode 847824 line 548\n[  594.272797] redirtied inode 847824 line 548\n[  629.231330] redirtied inode 847824 line 548\n[  659.224674] redirtied inode 847824 line 548\n[  689.219890] redirtied inode 847824 line 548\n[  724.226655] redirtied inode 847824 line 548\n[  759.198568] redirtied inode 847824 line 548\n\n# line 548 in fs/fs-writeback.c:\n543                 if (wbc-\u003epages_skipped !\u003d pages_skipped) {\n544                         /*\n545                          * writeback is not making progress due to locked\n546                          * buffers.  Skip this inode for now.\n547                          */\n548                         redirty_tail(inode);\n549                 }\n\nMore debug efforts show that __block_write_full_page()\nnever has the chance to call submit_bh() for that big dirty file:\nthe buffer head is *clean*. So basicly no page io is issued by\n__block_write_full_page(), hence pages_skipped goes up.\n\nAlso the comment in generic_sync_sb_inodes():\n\n544                         /*\n545                          * writeback is not making progress due to locked\n546                          * buffers.  Skip this inode for now.\n547                          */\n\nand the comment in __block_write_full_page():\n\n1713                 /*\n1714                  * The page was marked dirty, but the buffers were\n1715                  * clean.  Someone wrote them back by hand with\n1716                  * ll_rw_block/submit_bh.  A rare case.\n1717                  */\n\ndo not quite agree with each other. The page writeback should be skipped for\n\u0027locked buffer\u0027, but here it is \u0027clean buffer\u0027!\n\nThis patch fixes this bug. Though I\u0027m not sure why __block_write_full_page()\nis called only to do nothing and who actually issued the writeback for us.\n\nThis is the two possible new behaviors after the patch:\n\n1) pretty nice: wait 30s and write ALL:)\n2) not so good:\n\t- during the dd: ~16M\n\t- after 30s:      ~4M\n\t- after 5s:       ~4M\n\t- after 5s:     ~176M\n\nThe next patch will fix case (2).\n\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: Ken Chen \u003ckenchen@google.com\u003e\nSigned-off-by: Fengguang Wu \u003cwfg@mail.ustc.edu.cn\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4ba9b9d0ba0a49d91fa6417c7510ee36f48cf957",
      "tree": "191b4f45f926e44b882b1e87a9a85dc12230b892",
      "parents": [
        "b811c202a0edadaac7242ab834fe7ba409978ae7"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Tue Oct 16 23:25:51 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "Slab API: remove useless ctor parameter and reorder parameters\n\nSlab constructors currently have a flags parameter that is never used.  And\nthe order of the arguments is opposite to other slab functions.  The object\npointer is placed before the kmem_cache pointer.\n\nConvert\n\n        ctor(void *object, struct kmem_cache *s, unsigned long flags)\n\nto\n\n        ctor(struct kmem_cache *s, void *object)\n\nthroughout the kernel\n\n[akpm@linux-foundation.org: coupla fixes]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7f015072348a14f16d548be557ee58c5c55df0aa",
      "tree": "957c0ddf2bddd976269f707ef8043e588baf1c5f",
      "parents": [
        "6572bc28de150aaa6ca182eaf3e60c199ba48630"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Wed Oct 17 13:55:03 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Wed Oct 17 14:14:35 2007 +1000"
      },
      "message": "[XFS] eagerly remove vmap mappings to avoid upsetting Xen\n\nXFS leaves stray mappings around when it vmaps memory to make it virtually\ncontigious. This upsets Xen if one of those pages is being recycled into a\npagetable, since it finds an extra writable mapping of the page.\n\nThis patch solves the problem in a brute force way, by making XFS always\neagerly unmap its mappings.\n\nSGI-PV: 971902\nSGI-Modid: xfs-linux-melb:xfs-kern:29886a\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "6572bc28de150aaa6ca182eaf3e60c199ba48630",
      "tree": "ad1be400b0648e91b021289c60c578735e7d225a",
      "parents": [
        "150f29ef2e96392c6ddf24d49289dd40df2783f0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Sep 19 15:27:39 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Wed Oct 17 11:10:14 2007 +1000"
      },
      "message": "[XFS] simplify validata_fields\n\nStop using xfs_getattr and a onstack bhv_vattr_t just to get three fields\nfrom the underlying inode and opencode copying from the inode fields\ninstead.\n\nSGI-PV: 970662\nSGI-Modid: xfs-linux-melb:xfs-kern:29711a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "d79689c7038ea07182e8d7340786f7fcf8c77780",
      "tree": "8275c8ab209a8ecd03838f41e42228b053de00af",
      "parents": [
        "bfc1af650a8f36feba6b90a6c398325f885c00bc"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:06 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:55 2007 -0700"
      },
      "message": "xfs: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: Timothy Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "150f29ef2e96392c6ddf24d49289dd40df2783f0",
      "tree": "d827da7032b35c78b475b1d037230194933176d9",
      "parents": [
        "479ba36bbb322a21aa65cc89223c50adf78f4a56"
      ],
      "author": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 16:20:12 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 16:20:12 2007 +1000"
      },
      "message": "[XFS] no longer using io_vnode, as was remaining from 23 cherrypick\n\nBecause we cherrypicked SGI-Modid xfs-linux-melb:xfs-kern:29675a\nand it depended on the sgi mod which removed io_vnode (which was\nnot cherrypicked in 23) it was hand modified.\nThis fixes things back up (to the originial mod) now we have moved\non again.\n\nReviewed-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "cd514bdaa87e48b52d4074390043f19ce43ea2c4",
      "tree": "e481409645bc53921eaef606b85798bdb257e1c6",
      "parents": [
        "bebf963fec2f319d162c18d06b6592f572c9c101"
      ],
      "author": {
        "name": "Tim Shimmin",
        "email": "tes@sgi.com",
        "time": "Mon Oct 15 13:18:59 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 14:23:21 2007 +1000"
      },
      "message": "[XFS] Put back the QUEUE_ORDERED_NONE test in the barrier check.\n\nPut back the QUEUE_ORDERED_NONE test which caused us grief in sles when it\nwas taken out as, IIRC, it allowed md/lvm to be thought of as supporting\nbarriers when they weren\u0027t in some configurations. This patch will be\nreverting what went in as part of a change for the SGI-pv 964544\n(SGI-Modid: xfs-linux-melb:xfs-kern:28568a).\n\nSGI-PV: 971783\nSGI-Modid: xfs-linux-melb:xfs-kern:29882a\n\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\n"
    },
    {
      "commit": "e893bffd4cf2f000f3058319eea5abeeb1755969",
      "tree": "f72f91742c4e145df11168db118deb5ac2deb2b5",
      "parents": [
        "c2cba57e83dd7d2dda4ec425998b536669632c82"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Fri Oct 12 11:13:35 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 14:22:28 2007 +1000"
      },
      "message": "[XFS] avoid race in sync_inodes() that can fail to write out all dirty data\n\nIn xfs_fs_sync_super() treat a sync the same as a filesystem freeze. This\nis needed to force the log to disk for inodes which are not marked dirty\nin the Linux inode (the inodes are marked dirty on completion of the log\nI/O) and so sync_inodes() will not flush them.\n\nIn xfs_fs_write_inode() a synchronous flush will not get an EAGAIN from\nxfs_inode_flush() and if an asynchronous flush returns EAGAIN we should\npass it on to the caller. If we get an error while flushing the inode then\nre-dirty it so we can try again later.\n\nSGI-PV: 971670\nSGI-Modid: xfs-linux-melb:xfs-kern:29860a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "3e5daf05a0c7cce36dc2db41933b14b36d2048dc",
      "tree": "6116ce7e400b152594e867b9e4d67bdfe67a414c",
      "parents": [
        "c83bfab1faec9c32297d2079c06adaaaea2650d9"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Oct 11 18:09:12 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 14:15:32 2007 +1000"
      },
      "message": "[XFS] simplify xfs_create/mknod/symlink prototype\n\nSimplify the prototype for xfs_create/xfs_mkdir/xfs_symlink by not passing\ndown a bhv_vattr_t that just hogs stack space. Instead pass down the mode\nin a mode_t and in case of xfs_create the rdev as a scalar type as well.\n\nSGI-PV: 968563\nSGI-Modid: xfs-linux-melb:xfs-kern:29794a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "c83bfab1faec9c32297d2079c06adaaaea2650d9",
      "tree": "facee67eadcb9cee317f40a9cd421eafce376bbe",
      "parents": [
        "859d718279b6e1d6bc27a701db47c1be720b5907"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Oct 11 17:47:00 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 12:21:48 2007 +1000"
      },
      "message": "[XFS] avoid xfs_getattr in XFS_IOC_FSGETXATTR ioctl\n\nNo need to call into xfs_getattr and put a big bhv_vattr_t on the stack\njust to get a little information from the XFS inode.\n\nAdd a helper called xfs_ioc_fsgetxattr instead that deals with retrieving\nthe information in a clean way.\n\nSGI-PV: 968563\nSGI-Modid: xfs-linux-melb:xfs-kern:29780a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "5903c4956f7b429f515ba107d9c04bbbe7ce8f9d",
      "tree": "4d7d4199632f43082fbf29525c3af8a7632bbb71",
      "parents": [
        "cc92e7ac8d96418d99f0c31a9a132e9fccc54553"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Fri Sep 14 15:22:08 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 12:18:38 2007 +1000"
      },
      "message": "[XFS] ensure file size is logged on synchronous writes\n\nSynchronous writes currently log inode changes before syncing pages to\ndisk. Since the file size is updated on I/O completion we wont be writing\nout the updated file size and if we crash the file will have the wrong\nsize. This change moves the logging after the syncing of the pages to\nensure we log the correct file size.\n\nSGI-PV: 970334\nSGI-Modid: xfs-linux-melb:xfs-kern:29649a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "b267ce9952374c51099f21d6c3a59c78fa0d7586",
      "tree": "bb91ddce70fb9868217cb4f622e2c471ed4946b7",
      "parents": [
        "743944967021f3759d3540b0dfbc7ee7215bc4b0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Aug 30 17:21:30 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 12:17:27 2007 +1000"
      },
      "message": "[XFS] kill struct bhv_vfs\n\nNow that struct bhv_vfs doesn\u0027t have any members left we can kill it and\ngo directly from the super_block to the xfs_mount everywhere.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29509a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "743944967021f3759d3540b0dfbc7ee7215bc4b0",
      "tree": "6a7eed892bf6f6fd70d2072cd88cb536325cc4b8",
      "parents": [
        "bd186aa901c183d6e25257711b6c64b42a90dde0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Aug 30 17:21:22 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 12:16:35 2007 +1000"
      },
      "message": "[XFS] move syncing related members from struct bhv_vfs to struct xfs_mount\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29508a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "bd186aa901c183d6e25257711b6c64b42a90dde0",
      "tree": "a84157145a249923a79276d7bc9170701b100c43",
      "parents": [
        "0ce4cfd4f7dde5891d5b3e3c1a28ff7a7b4d36b3"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Aug 30 17:21:12 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:45:57 2007 +1000"
      },
      "message": "[XFS] kill the vfs_flags member in struct bhv_vfs\n\nAll flags are added to xfs_mount\u0027s m_flag instead. Note that the 32bit\ninode flag was duplicated in both of them, but only cleared in the mount\nwhen it was not nessecary due to the filesystem beeing small enough. Two\nflags are still required here - one to indicate the mount option setting,\nand one to indicate if it applies or not.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29507a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "0ce4cfd4f7dde5891d5b3e3c1a28ff7a7b4d36b3",
      "tree": "7ccb7197135e6705adcf51a40b1dea0a102ef213",
      "parents": [
        "745f691912b700ac98607b525f3c892204c7f12f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Aug 30 17:20:53 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:45:02 2007 +1000"
      },
      "message": "[XFS] kill the vfs_fsid and vfs_altfsid members in struct bhv_vfs\n\nvfs_altfsid was just a pointer to mp-\u003em_fixedfsid so we can trivially\nreplace it with the latter. vfs_fsid also was identical to m_fixedfsid\nthrough rather obfuscated ways so we can kill it as well and simply its\nonly user.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29506a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "745f691912b700ac98607b525f3c892204c7f12f",
      "tree": "4988bdf45dec4bc9bffd432fc3e521b73836172f",
      "parents": [
        "48c872a9f3ec4cdc37801aae9ef16c80026503ea"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Aug 30 17:20:39 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:44:08 2007 +1000"
      },
      "message": "[XFS] call common xfs vfs-level helpers directly and remove vfs operations\n\nAlso remove the now dead behavior code.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29505a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "48c872a9f3ec4cdc37801aae9ef16c80026503ea",
      "tree": "51d377e7ced7298d96daf9008558e54177e47a30",
      "parents": [
        "b09cc77109dbf33463480952de10511a2b67bba6"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Aug 30 17:20:31 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:43:55 2007 +1000"
      },
      "message": "[XFS] decontaminate vfs operations from behavior details\n\nAll vfs ops now take struct xfs_mount pointers and the behaviour related\nglue is split out into methods of its own.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29504a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "b09cc77109dbf33463480952de10511a2b67bba6",
      "tree": "722ed205af03de0f33b955aeb3a573565242497a",
      "parents": [
        "293688ec420f1160ed93ea4c7948ed5baf8bafa7"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Aug 30 17:19:57 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:43:26 2007 +1000"
      },
      "message": "[XFS] remove dependency of the quota module on behaviors\n\nMount options are now parsed by the main XFS module and rejected if quota\nsupport is not available, and there are some new quota operation for the\nquotactl syscall and calls to quote in the mount, unmount and sync\ncallchains.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29503a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "293688ec420f1160ed93ea4c7948ed5baf8bafa7",
      "tree": "3e342f759b3ae0499eedcb8f050dd2c4c1b48e93",
      "parents": [
        "f541d270dbce375b7bd8cef466bdaf0cff945b45"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 29 11:59:36 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:41:15 2007 +1000"
      },
      "message": "[XFS] remove dependency of the dmapi module on behaviors\n\nMount options are now parsed by the main XFS module and rejected if dmapi\nsupport is not available, and there is a new dm operation to send the\nmount event.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29502a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "f541d270dbce375b7bd8cef466bdaf0cff945b45",
      "tree": "c0dbbf48f4b2dfd3c2740f251afd403deb5db2fa",
      "parents": [
        "0a74cd1964501fdb577176f14ed3d02b8e148127"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 29 11:53:22 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:40:52 2007 +1000"
      },
      "message": "[XFS] move freeing the mount structure from xfs_mount_free into the callers\n\nIn the next patch we need to look at the mount structure until just before\nit\u0027s freed, so we need to be able to free it as the very last thing in\nxfs_unmount.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29501a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "0a74cd1964501fdb577176f14ed3d02b8e148127",
      "tree": "ec4aa3dff46b141cd60734bb6c8a0c6b6a2e7111",
      "parents": [
        "2aeaa258c0527026228c43148ec6dffdc56bea1c"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 29 11:53:12 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:40:24 2007 +1000"
      },
      "message": "[XFS] kill struct bhv_vnode\n\nNow that struct bhv_vnode is empty we can just kill it. Retain bhv_vnode_t\nas a typedef for struct inode for the time being until all the fallout is\ncleaned up.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29500a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "2aeaa258c0527026228c43148ec6dffdc56bea1c",
      "tree": "1febdf1533ec42a61e90d7a0dedc82c7aa0367af",
      "parents": [
        "1543d79c45a374f934f95ca34d87e2eeeb2039b4"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 29 11:46:57 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:39:42 2007 +1000"
      },
      "message": "[XFS] kill the v_number member in struct bhv_vnode\n\nIt\u0027s entirely unused except for ignored arguments in the mrlock\ninitialization, so remove it.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29499a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "1543d79c45a374f934f95ca34d87e2eeeb2039b4",
      "tree": "abe537e7c241f2a764687c54d805ebfdb5147e3c",
      "parents": [
        "b677c210cec0d6755335ffc01691982c417dd39e"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 29 11:46:47 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:39:25 2007 +1000"
      },
      "message": "[XFS] move v_trace from bhv_vnode to xfs_inode\n\nstruct bhv_vnode is on it\u0027s way out, so move the trace buffer to the XFS\ninode. Note that this makes the tracing macros rather misnamed, but this\nkind of fallout will be fixed up incrementally later on.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29498a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "b677c210cec0d6755335ffc01691982c417dd39e",
      "tree": "9a61fdd81e48aac948346a096bed9c72e5f34114",
      "parents": [
        "09262b4339de5417a10803fbfac277eebb38ca5a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 29 11:46:28 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:38:56 2007 +1000"
      },
      "message": "[XFS] move v_iocount from bhv_vnode to xfs_inode\n\nstruct bhv_vnode is on it\u0027s way out, so move the I/O count to the XFS\ninode.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29497a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "b3aea4edc2903fdee34920630b8b2433f6452f02",
      "tree": "9d9e93c4dac6dc5a30522e0c2ae051e3aad46b1b",
      "parents": [
        "2f6f7b3d9b5600e1f6e7622c62ab30f36bd0f57f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 29 11:44:37 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:37:29 2007 +1000"
      },
      "message": "[XFS] kill the v_flag member in struct bhv_vnode\n\nAll flags previously handled at the vnode level are not in the xfs_inode\nwhere we already have a flags mechanisms and free bits for flags\npreviously in the vnode.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29495a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "2f6f7b3d9b5600e1f6e7622c62ab30f36bd0f57f",
      "tree": "06fe541eb0b90227a8a433d8e3cf66d621df7038",
      "parents": [
        "739bfb2a7dfa369324f74aad1d020d6e0775e4f0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 29 11:44:18 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 11:23:43 2007 +1000"
      },
      "message": "[XFS] kill v_vfsp member from struct bhv_vnode\n\nWe can easily get at the vfsp through the super_block but it will soon be\ngone anyway.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29494a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "739bfb2a7dfa369324f74aad1d020d6e0775e4f0",
      "tree": "8fbe3e739e0d550137e3f148a36ce5c083f5ef2c",
      "parents": [
        "993386c19afa53fa54d00c7721e56ba820b3400d"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 29 10:58:01 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Oct 16 10:40:00 2007 +1000"
      },
      "message": "[XFS] call common xfs vnode-level helpers directly and remove vnode operations\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29493a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "993386c19afa53fa54d00c7721e56ba820b3400d",
      "tree": "1715fdeb9cc5ea99466e179b54e84b168fd5e127",
      "parents": [
        "b93bd20cd59eb7ec172f95d08b100fea688d8bcf"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Aug 28 16:12:30 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Mon Oct 15 16:54:29 2007 +1000"
      },
      "message": "[XFS] decontaminate vnode operations from behavior details\n\nAll vnode ops now take struct xfs_inode pointers and the behaviour related\nglue is split out into methods of it\u0027s own. This required fixing\nxfs_create/mkdir/symlink to not mess with the inode pointer but rather use\na separate boolean for error handling. Thanks to Dave Chinner for that\nfix.\n\nSGI-PV: 969608\nSGI-Modid: xfs-linux-melb:xfs-kern:29492a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "da353b0d64e070ae7c5342a0d56ec20ae9ef5cfb",
      "tree": "84454023d649df67cc6b125c73746ddb341ac34e",
      "parents": [
        "39cd9f877e63ce7e02cdc7f5dbf1b908451c9532"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Tue Aug 28 14:00:13 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Mon Oct 15 16:50:50 2007 +1000"
      },
      "message": "[XFS] Radix tree based inode caching\n\nOne of the perpetual scaling problems XFS has is indexing it\u0027s incore\ninodes. We currently uses hashes and the default hash sizes chosen can\nonly ever be a tradeoff between memory consumption and the maximum\nrealistic size of the cache.\n\nAs a result, anyone who has millions of inodes cached on a filesystem\nneeds to tunes the size of the cache via the ihashsize mount option to\nallow decent scalability with inode cache operations.\n\nA further problem is the separate inode cluster hash, whose size is based\non the ihashsize but is smaller, and so under certain conditions (sparse\ncluster cache population) this can become a limitation long before the\ninode hash is causing issues.\n\nThe following patchset removes the inode hash and cluster hash and\nreplaces them with radix trees to avoid the scalability limitations of the\nhashes. It also reduces the size of the inodes by 3 pointers....\n\nSGI-PV: 969561\nSGI-Modid: xfs-linux-melb:xfs-kern:29481a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "39cd9f877e63ce7e02cdc7f5dbf1b908451c9532",
      "tree": "a8ae9d0da02dc9e0b4e095806a05ae92170c2ba7",
      "parents": [
        "804c83c37607efe415774c3a170ad72a789e5992"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Aug 28 13:59:21 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Mon Oct 15 16:50:26 2007 +1000"
      },
      "message": "[XFS] kill move.[ch]\n\nKill uio related functions and defines now that they\u0027re unused.\n\nSGI-PV: 968563\nSGI-Modid: xfs-linux-melb:xfs-kern:29480a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "804c83c37607efe415774c3a170ad72a789e5992",
      "tree": "f53df9e59968cf16904e7652bca7e2a7cd3da57b",
      "parents": [
        "051e7cd44ab8f0f7c2958371485b4a1ff64a8d1b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Aug 28 13:59:03 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Mon Oct 15 16:50:13 2007 +1000"
      },
      "message": "[XFS] stop using uio in the readlink code\n\nSimplify the readlink code to get rid of the last user of uio.\n\nSGI-PV: 968563\nSGI-Modid: xfs-linux-melb:xfs-kern:29479a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "051e7cd44ab8f0f7c2958371485b4a1ff64a8d1b",
      "tree": "23389d878944e0566effed4eb2de4c1ed5fed96e",
      "parents": [
        "2bdf7cd0baa67608ada1517a281af359faf4c58c"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Aug 28 13:58:24 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Mon Oct 15 16:49:49 2007 +1000"
      },
      "message": "[XFS] use filldir internally\n\nCurrently xfs has a rather complicated internal scheme to allow for\ndifferent directory formats in IRIX. This patch rips all code related to\nthis out and pushes useage of the Linux filldir callback into the lowlevel\ndirectory code. This does not make the code any less portable because\nfilldir can be used to create dirents of all possible variations\n(including the IRIX ones as proved by the IRIX binary emulation code under\narch/mips/).\n\nThis patch get rid of an unessecary copy in the readdir path, about 400\nlines of code and one of the last two users of the uio structure.\n\nThis version is updated to deal with dmapi aswell which greatly simplifies\nthe get_dirattrs code. The dmapi part has been tested using the\nget_dirattrs tools from the xfstest dmapi suite1 with various small and\nlarge directories.\n\nSGI-PV: 968563\nSGI-Modid: xfs-linux-melb:xfs-kern:29478a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "eb9df39daf870d6f9e9528f092d506be04ebad2f",
      "tree": "77646f792ae63f00d3e08e6081e80afefe87e4e7",
      "parents": [
        "49ee6c911f0ae5b3a9a04e0589e3265e52f94f53"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Aug 16 18:42:07 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Mon Oct 15 16:45:25 2007 +1000"
      },
      "message": "[XFS] remove unessecary vfs argument to DM_EVENT_ENABLED\n\nSGI-PV: 968690\nSGI-Modid: xfs-linux-melb:xfs-kern:29340a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Vlad Apostolov \u003cvapo@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "af3a2e8a3f3055ef269b09433bb28e33a0d1b8c0",
      "tree": "e222949c263d87229d9d918caee86aed485e199a",
      "parents": [
        "6385f4d5579ccada7bd1d9fefbdea5515457b10d"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Thu Aug 16 16:25:23 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Mon Oct 15 16:40:46 2007 +1000"
      },
      "message": "[XFS] move linux/log2.h header to xfs_linux.h\n\nGenerally we try not to directly include linux header files in core xfs\ncode; xfs_linux.h is the spot for that.\n\nSGI-PV: 968563\nSGI-Modid: xfs-linux-melb:xfs-kern:29326a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "6385f4d5579ccada7bd1d9fefbdea5515457b10d",
      "tree": "3030e32d9bde4017a69efcdf807e32a785f20082",
      "parents": [
        "425f9ddd534573f58df8e7b633a534fcfc16d44d"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Thu Aug 16 16:25:10 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Mon Oct 15 16:40:14 2007 +1000"
      },
      "message": "[XFS] Remove xfs_physmem\n\nNow that nobody\u0027s using it, remove xfs_physmem \u0026 friends.\n\nSGI-PV: 968563\nSGI-Modid: xfs-linux-melb:xfs-kern:29325a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "40906630f18fdf5ac27f5928c20f76eeac8fb0f0",
      "tree": "d567e11ad9234ad37ed59213ad8344891d573c78",
      "parents": [
        "cd8b0a97bd9216578a44a9bf82188cd901295964"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Thu Aug 16 16:24:31 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Mon Oct 15 16:37:46 2007 +1000"
      },
      "message": "[XFS] Remove m_nreadaheads\n\nm_nreadaheads in the mount struct is never used; remove it and the various\nmacros assigned to it. Also remove a couple other unused macros in the\nsame areas.\n\nRemoves one user of xfs_physmem.\n\nSGI-PV: 968563\nSGI-Modid: xfs-linux-melb:xfs-kern:29322a\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "0bfefc46dc028df60120acdb92062169c9328769",
      "tree": "ce8cecb3f4546300c0d193efa27bf14f78170b3b",
      "parents": [
        "c1561cf463f4a480d1960e833c8fe628207b24e4"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Mon May 14 18:24:23 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Mon Oct 15 16:23:45 2007 +1000"
      },
      "message": "[XFS] Barriers need to be dynamically checked and switched off\n\nIf the underlying block device suddenly stops supporting barriers, we need\nto handle the -EOPNOTSUPP error in a sane manner rather than shutting\ndown the filesystem. If we get this error, clear the barrier flag, reissue\nthe I/O, and tell the world bad things are occurring.\n\nSGI-PV: 964544\nSGI-Modid: xfs-linux-melb:xfs-kern:28568a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "782e3b3b3804c38d5130c7f21d7ec7bf6709023f",
      "tree": "54e790dfd52f0451189fa1591dc97bc5ff5f5866",
      "parents": [
        "cbd09dbbb62096c1da627eca865f988d2ed0a84e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Fri Oct 12 07:17:47 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 12 00:29:50 2007 -0700"
      },
      "message": "Fix up more bio fallout\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6712ecf8f648118c3363c142196418f89a510b90",
      "tree": "347d39a7d5a7ed96d3b1afecd28de2a0f98b98c9",
      "parents": [
        "5bb23a688b2de23d7765a1dd439d89c038378978"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Sep 27 12:47:43 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:57 2007 +0200"
      },
      "message": "Drop \u0027size\u0027 argument from bio_endio and bi_end_io\n\nAs bi_end_io is only called once when the reqeust is complete,\nthe \u0027size\u0027 argument is now redundant.  Remove it.\n\nNow there is no need for bio_endio to subtract the size completed\nfrom bi_size.  So don\u0027t do that either.\n\nWhile we are at it, change bi_end_io to return void.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "776a75fa5cfb8f3602d3ca9d221dc34497133f4b",
      "tree": "760e34fa2e426e740cd50deab16ca80f9a3e483b",
      "parents": [
        "65de5567564e70edd01b6d4e95e548d7ba284872"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Fri Sep 14 15:22:50 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Tue Sep 18 20:12:51 2007 +1000"
      },
      "message": "[XFS] Ensure file size updates have been completed before writing inode to disk.\n\nSGI-PV: 968767\nSGI-Modid: xfs-linux-melb:xfs-kern:29675a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "265c1fac38e37e828df09965406e9cc20bfa3588",
      "tree": "6f977c9c373bf17ccb7cf79e040cdb9980e526c7",
      "parents": [
        "ee5c80239d5f152d99f69165afbd115518353563"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Aug 16 15:38:19 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Wed Sep 05 14:50:26 2007 +1000"
      },
      "message": "[XFS] fix sparse shadowed variable warnings\n\n- in xfs_probe_cluster rename the inner len to pg_len. There\u0027s no harm\n  here because the outer len isn\u0027t used after the inner len comes into\n  existence but it keeps the code clean.\n- in xfs_da_do_buf remove the inner i because they don\u0027t overlap\n  and they are both the same type.\n\nSGI-PV: 968555\nSGI-Modid: xfs-linux-melb:xfs-kern:29311a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "34521c5e4971d01f6ef650fdee59e07be6c2c5e3",
      "tree": "ff17a5076ff71294c29fe6e6fecc2615214cc153",
      "parents": [
        "4b80916b29170744632356dd2e801f7c374676eb"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Aug 16 15:37:57 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Wed Sep 05 14:48:00 2007 +1000"
      },
      "message": "[XFS] Fix sparse warning in kmem_shake_allow\n\nWe can\u0027t return a masked result of a __bitwise type. Compare it to 0 first\nto keep the behaviour without the warning.\n\nSGI-PV: 968555\nSGI-Modid: xfs-linux-melb:xfs-kern:29309a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "8da22d7a3690818f6d340baa0ea585e71f0c506f",
      "tree": "7537fec6ed2fca09aa135c1c2e410e8eaee3fa4f",
      "parents": [
        "b21010ed6498391c0f359f2a89c907533fe07fec"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Thu Aug 16 15:20:56 2007 +1000"
      },
      "committer": {
        "name": "Tim Shimmin",
        "email": "tes@chook.melbourne.sgi.com",
        "time": "Wed Sep 05 14:47:10 2007 +1000"
      },
      "message": "[XFS] Set filestreams object timeout to something sane.\n\nSGI-PV: 968554\nSGI-Modid: xfs-linux-melb:xfs-kern:29303a\n\nSigned-off-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Tim Shimmin \u003ctes@sgi.com\u003e\n"
    },
    {
      "commit": "ad690ef9e690f6c31f7d310b09ef1314bcec9033",
      "tree": "808c4c62ef881dd2d3ed7a6a546dbf1b2f525ac9",
      "parents": [
        "97f1e7f7d2cd950f90d64ac6920822e709095519"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Jul 26 17:35:59 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 26 11:11:57 2007 -0700"
      },
      "message": "xfs ioctl __user annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "20c2df83d25c6a95affe6157a4c9cac4cf5ffaac",
      "tree": "415c4453d2b17a50abe7a3e515177e1fa337bd67",
      "parents": [
        "64fb98fc40738ae1a98bcea9ca3145b89fb71524"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jul 20 10:11:58 2007 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jul 20 10:11:58 2007 +0900"
      },
      "message": "mm: Remove slab destructors from kmem_cache_create().\n\nSlab destructors were no longer supported after Christoph\u0027s\nc59def9f222d44bb7e2f0a559f2906191a0862d7 change. They\u0027ve been\nBUGs for both slab and slub, and slob never supported them\neither.\n\nThis rips out support for the dtor pointer from kmem_cache_create()\ncompletely and fixes up every single callsite in the kernel (there were\nabout 224, not including the slab allocator definitions themselves,\nor the documentation references).\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "fdb64f93b38a3470fa4db8cd5720b8c731922d1a",
      "tree": "3b17370d30a2b580af72b26f37ec7176c9ecdd84",
      "parents": [
        "2d9ce177e68645945e3366cfe2d66ee3c28cd4f2",
        "c32676eea19ce29cb74dba0f97b085e83f6b8915"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 14:41:33 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 14:41:33 2007 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com:8090/xfs/xfs-2.6\n\n* \u0027for-linus\u0027 of git://oss.sgi.com:8090/xfs/xfs-2.6:\n  [XFS] Fix inode size update before data write in xfs_setattr\n  [XFS] Allow punching holes to free space when at ENOSPC\n  [XFS] Implement -\u003epage_mkwrite in XFS.\n  [FS] Implement block_page_mkwrite.\n\nManually fix up conflict with Nick\u0027s VM fault handling patches in\nfs/xfs/linux-2.6/xfs_file.c\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "d0217ac04ca6591841e5665f518e38064f4e65bd"
}
