1. 06 7月, 2006 1 次提交
  2. 25 6月, 2006 1 次提交
  3. 15 6月, 2006 1 次提交
    • S
      [GFS2] Fix unlinked file handling · feaa7bba
      Steven Whitehouse 提交于
      This patch fixes the way we have been dealing with unlinked,
      but still open files. It removes all limits (other than memory
      for inodes, as per every other filesystem) on numbers of these
      which we can support on GFS2. It also means that (like other
      fs) its the responsibility of the last process to close the file
      to deallocate the storage, rather than the person who did the
      unlinking. Note that with GFS2, those two events might take place
      on different nodes.
      
      Also there are a number of other changes:
      
       o We use the Linux inode subsystem as it was intended to be
      used, wrt allocating GFS2 inodes
       o The Linux inode cache is now the point which we use for
      local enforcement of only holding one copy of the inode in
      core at once (previous to this we used the glock layer).
       o We no longer use the unlinked "special" file. We just ignore it
      completely. This makes unlinking more efficient.
       o We now use the 4th block allocation state. The previously unused
      state is used to track unlinked but still open inodes.
       o gfs2_inoded is no longer needed
       o Several fields are now no longer needed (and removed) from the in
      core struct gfs2_inode
       o Several fields are no longer needed (and removed) from the in core
      superblock
      
      There are a number of future possible optimisations and clean ups
      which have been made possible by this patch.
      Signed-off-by: NSteven Whitehouse <swhiteho@redhat.com>
      feaa7bba
  4. 24 5月, 2006 1 次提交
  5. 19 5月, 2006 3 次提交
  6. 06 5月, 2006 1 次提交
    • S
      [GFS2] Readpages support · fd88de56
      Steven Whitehouse 提交于
      This adds readpages support (and also corrects a small bug in
      the readpage error path at the same time). Hopefully this will
      improve performance by allowing GFS to submit larger lumps of
      I/O at a time.
      
      In order to simplify the setting of BH_Boundary, it currently gets
      set when we hit the end of a indirect pointer block. There is
      always a boundary at this point with the current allocation code.
      It doesn't get all the boundaries right though, so there is still
      room for improvement in this.
      
      See comments in fs/gfs2/ops_address.c for further information about
      readpages with GFS2.
      
      Signed-off-by: Steven Whitehouse
      fd88de56
  7. 28 4月, 2006 3 次提交
    • S
      [GFS2] Remove some unused code · 56409abb
      Steven Whitehouse 提交于
      Remove some of the unused code flagged up by Adrian Bunk.
      
      Cc: Adrian Bunk <bunk@stusta.de>
      Signed-off-by: Steven Whitehouse
      56409abb
    • A
      [GFS2] [-mm patch] fs/gfs2/: possible cleanups · 08bc2dbc
      Adrian Bunk 提交于
      This patch contains the following possible cleanups:
      - make needlessly global code static
      - #if 0 unused functions
      - remove the following global function that was both unused and
        unimplemented:
        - super.c: gfs2_do_upgrade()
      Signed-off-by: NAdrian Bunk <bunk@stusta.de>
      Signed-off-by: NSteven Whitehouse <swhiteho@redhat.com>
      08bc2dbc
    • S
      [GFS2] Reordering in deallocation to avoid recursive locking · 36327521
      Steven Whitehouse 提交于
      Despite my earlier careful search, there was a recursive lock left
      in the deallocation code. This removes it. It also should speed up
      deallocation be reducing the number of locking operations which take
      place by using two "try lock" operations on the two locks involved in
      inode deallocation which allows us to grab the locks out of order
      (compared with NFS which grabs the inode lock first and the iopen
      lock later). It is ok for us to fail while doing this since if it
      does fail it means that someone else is still using the inode and
      thus it wouldn't be possible to deallocate anyway.
      
      This fixes the bug reported to me by Rob Kenna.
      
      Cc: Rob Kenna <rkenna@redhat.com>
      Signed-off-by: NSteven Whitehouse <swhiteho@redhat.com>
      36327521
  8. 27 4月, 2006 3 次提交
  9. 21 4月, 2006 1 次提交
  10. 18 4月, 2006 1 次提交
    • S
      [GFS2] Use vmalloc() in dir code · fe1bdedc
      Steven Whitehouse 提交于
      When allocating memory to sort directory entries, use vmalloc()
      rather than kmalloc() since for larger directories, the required
      size can easily be graeter than the 128k maximum of kmalloc().
      
      Also adding the first steps towards getting the AOP_TRUNCATED_PAGE
      return code get in the glock code by flagging all places where we
      request a glock and we are holding a page lock.
      Signed-off-by: NSteven Whitehouse <swhiteho@redhat.com>
      fe1bdedc
  11. 30 3月, 2006 1 次提交
    • S
      [GFS2] Update debugging code · d0dc80db
      Steven Whitehouse 提交于
      Update the debugging code in trans.c and at the same time improve
      the debugging code for gfs2_holders. The new code should be pretty
      fast during the normal case and provide just as much information
      in case of errors (or more).
      
      One small function from glock.c has moved to glock.h as a static inline so
      that its return address won't get in the way of the debugging.
      Signed-off-by: NSteven Whitehouse <swhiteho@redhat.com>
      d0dc80db
  12. 28 2月, 2006 1 次提交
    • S
      [GFS2] Macros removal in gfs2.h · 5c676f6d
      Steven Whitehouse 提交于
      As suggested by Pekka Enberg <penberg@cs.helsinki.fi>.
      
      The DIV_RU macro is renamed DIV_ROUND_UP and and moved to kernel.h
      The other macros are gone from gfs2.h as (although not requested
      by Pekka Enberg) are a number of included header file which are now
      included individually. The inode number comparison function is
      now an inline function.
      
      The DT2IF and IF2DT may be addressed in a future patch.
      Signed-off-by: NSteven Whitehouse <swhiteho@redhat.com>
      5c676f6d
  13. 27 2月, 2006 1 次提交
  14. 23 2月, 2006 2 次提交
  15. 21 2月, 2006 1 次提交
  16. 17 1月, 2006 1 次提交