1. 18 4月, 2008 16 次提交
  2. 10 4月, 2008 1 次提交
  3. 07 2月, 2008 10 次提交
  4. 19 10月, 2007 1 次提交
    • C
      [XFS] cleanup fid types mess · c6143911
      Christoph Hellwig 提交于
      Currently XFs has three different fid types: struct fid, struct xfs_fid
      and struct xfs_fid2 with hte latter two beeing identicaly and the first
      one beeing the same size but an unstructured array with the same size.
      
      This patch consolidates all this to alway uuse struct xfs_fid.
      
      This patch is required for an upcoming patch series from me that revamps
      the nfs exporting code and introduces a Linux-wide struct fid.
      
      SGI-PV: 970336
      SGI-Modid: xfs-linux-melb:xfs-kern:29651a
      Signed-off-by: NChristoph Hellwig <hch@infradead.org>
      Signed-off-by: NLachlan McIlroy <lachlan@sgi.com>
      Signed-off-by: NTim Shimmin <tes@sgi.com>
      c6143911
  5. 16 10月, 2007 8 次提交
  6. 15 10月, 2007 4 次提交
    • C
      [XFS] decontaminate vnode operations from behavior details · 993386c1
      Christoph Hellwig 提交于
      All vnode ops now take struct xfs_inode pointers and the behaviour related
      glue is split out into methods of it's own. This required fixing
      xfs_create/mkdir/symlink to not mess with the inode pointer but rather use
      a separate boolean for error handling. Thanks to Dave Chinner for that
      fix.
      
      SGI-PV: 969608
      SGI-Modid: xfs-linux-melb:xfs-kern:29492a
      Signed-off-by: NChristoph Hellwig <hch@infradead.org>
      Signed-off-by: NDavid Chinner <dgc@sgi.com>
      Signed-off-by: NTim Shimmin <tes@sgi.com>
      993386c1
    • D
      [XFS] Radix tree based inode caching · da353b0d
      David Chinner 提交于
      One of the perpetual scaling problems XFS has is indexing it's incore
      inodes. We currently uses hashes and the default hash sizes chosen can
      only ever be a tradeoff between memory consumption and the maximum
      realistic size of the cache.
      
      As a result, anyone who has millions of inodes cached on a filesystem
      needs to tunes the size of the cache via the ihashsize mount option to
      allow decent scalability with inode cache operations.
      
      A further problem is the separate inode cluster hash, whose size is based
      on the ihashsize but is smaller, and so under certain conditions (sparse
      cluster cache population) this can become a limitation long before the
      inode hash is causing issues.
      
      The following patchset removes the inode hash and cluster hash and
      replaces them with radix trees to avoid the scalability limitations of the
      hashes. It also reduces the size of the inodes by 3 pointers....
      
      SGI-PV: 969561
      SGI-Modid: xfs-linux-melb:xfs-kern:29481a
      Signed-off-by: NDavid Chinner <dgc@sgi.com>
      Signed-off-by: NChristoph Hellwig <hch@infradead.org>
      Signed-off-by: NTim Shimmin <tes@sgi.com>
      da353b0d
    • C
      [XFS] stop using uio in the readlink code · 804c83c3
      Christoph Hellwig 提交于
      Simplify the readlink code to get rid of the last user of uio.
      
      SGI-PV: 968563
      SGI-Modid: xfs-linux-melb:xfs-kern:29479a
      Signed-off-by: NChristoph Hellwig <hch@infradead.org>
      Signed-off-by: NDavid Chinner <dgc@sgi.com>
      Signed-off-by: NTim Shimmin <tes@sgi.com>
      804c83c3
    • C
      [XFS] use filldir internally · 051e7cd4
      Christoph Hellwig 提交于
      Currently xfs has a rather complicated internal scheme to allow for
      different directory formats in IRIX. This patch rips all code related to
      this out and pushes useage of the Linux filldir callback into the lowlevel
      directory code. This does not make the code any less portable because
      filldir can be used to create dirents of all possible variations
      (including the IRIX ones as proved by the IRIX binary emulation code under
      arch/mips/).
      
      This patch get rid of an unessecary copy in the readdir path, about 400
      lines of code and one of the last two users of the uio structure.
      
      This version is updated to deal with dmapi aswell which greatly simplifies
      the get_dirattrs code. The dmapi part has been tested using the
      get_dirattrs tools from the xfstest dmapi suite1 with various small and
      large directories.
      
      SGI-PV: 968563
      SGI-Modid: xfs-linux-melb:xfs-kern:29478a
      Signed-off-by: NChristoph Hellwig <hch@infradead.org>
      Signed-off-by: NDavid Chinner <dgc@sgi.com>
      Signed-off-by: NTim Shimmin <tes@sgi.com>
      051e7cd4