22 Dec, 2008

1 commit

  • xfs_fs_vcmn_err can be called under a spinlock, but does a sleeping memory
    allocation to create buffer for it's internal sprintf. Fortunately it's
    the only caller of icmn_err, so we can merge the two and have one single
    static buffer and spinlock protecting it. While we're at it make sure
    we proper __attribute__ format annotations so that the compiler can detect
    mismatched format strings.

    Reported-by: Alexander Beregalov
    Signed-off-by: Christoph Hellwig
    Reviewed-by: Eric Sandeen
    Signed-off-by: Lachlan McIlroy

    Christoph Hellwig
     

13 Aug, 2008

1 commit

  • All the error injection is already enabled through ifdef DEBUG, so kill
    the never set second cpp symbol to activate it without the rest of the
    debugging infrastructure.

    SGI-PV: 981498

    SGI-Modid: xfs-linux-melb:xfs-kern:31771a

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Niv Sardi
    Signed-off-by: Lachlan McIlroy

    Christoph Hellwig
     

28 Jul, 2008

2 commits

  • Currently the xfs module init/exit code is a mess. It's farmed out over a
    lot of function with very little error checking. This patch makes sure we
    propagate all initialization failures properly and clean up after them.
    Various runtime initializations are replaced with compile-time
    initializations where possible to make this easier. The exit path is
    similarly consolidated.

    There's now split out function to create/destroy the kmem zones and
    alloc/free the trace buffers. I've also changed the ktrace allocations to
    KM_MAYFAIL and handled errors resulting from that.

    And yes, we really should replace the XFS_*_TRACE ifdefs with a single
    XFS_TRACE..

    SGI-PV: 976035

    SGI-Modid: xfs-linux-melb:xfs-kern:31354a

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Niv Sardi
    Signed-off-by: Lachlan McIlroy

    Christoph Hellwig
     
  • kmem_free() function takes (ptr, size) arguments but doesn't actually use
    second one.

    This patch removes size argument from all callsites.

    SGI-PV: 981498
    SGI-Modid: xfs-linux-melb:xfs-kern:31050a

    Signed-off-by: Denys Vlasenko
    Signed-off-by: David Chinner
    Signed-off-by: Lachlan McIlroy

    Denys Vlasenko
     

07 Feb, 2008

1 commit


16 Oct, 2007

1 commit

  • vfs_altfsid was just a pointer to mp->m_fixedfsid so we can trivially
    replace it with the latter. vfs_fsid also was identical to m_fixedfsid
    through rather obfuscated ways so we can kill it as well and simply its
    only user.

    SGI-PV: 969608
    SGI-Modid: xfs-linux-melb:xfs-kern:29506a

    Signed-off-by: Christoph Hellwig
    Signed-off-by: David Chinner
    Signed-off-by: Tim Shimmin

    Christoph Hellwig
     

15 Oct, 2007

1 commit

  • 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: David Chinner
    Signed-off-by: Christoph Hellwig
    Signed-off-by: Tim Shimmin

    David Chinner
     

08 May, 2007

1 commit


10 Feb, 2007

1 commit


20 Jun, 2006

1 commit


12 Jan, 2006

1 commit


02 Nov, 2005

2 commits


21 Jun, 2005

1 commit


17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds