1. 09 Dec, 2011 15 commits
  2. 08 Dec, 2011 15 commits
  3. 07 Dec, 2011 9 commits
  4. 06 Dec, 2011 1 commit
    • Christoph Hellwig's avatar
      xfs: fix the logspace waiting algorithm · 9f9c19ec
      Christoph Hellwig authored
      Apply the scheme used in log_regrant_write_log_space to wake up any other
      threads waiting for log space before the newly added one to
      log_regrant_write_log_space as well, and factor the code into readable
      helpers.  For each of the queues we have add two helpers:
      
       - one to try to wake up all waiting threads.  This helper will also be
         usable by xfs_log_move_tail once we remove the current opportunistic
         wakeups in it.
       - one to sleep on t_wait until enough log space is available, loosely
         modelled after Linux waitqueues.
       
      And use them to reimplement the guts of log_regrant_write_log_space and
      log_regrant_write_log_space.  These two function now use one and the same
      algorithm for waiting on log space instead of subtly different ones before,
      with an option to completely unify them in the near future.
      
      Also move the filesystem shutdown handling to the common caller given
      that we had to touch it anyway.
      
      Based on hard debugging and an earlier patch from
      Chandra Seetharaman <sekharan@us.ibm.com>.
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Reviewed-by: default avatarChandra Seetharaman <sekharan@us.ibm.com>
      Tested-by: default avatarChandra Seetharaman <sekharan@us.ibm.com>
      Signed-off-by: default avatarBen Myers <bpm@sgi.com>
      9f9c19ec