1. 20 10月, 2011 1 次提交
  2. 19 10月, 2011 19 次提交
  3. 18 10月, 2011 1 次提交
  4. 17 10月, 2011 2 次提交
  5. 15 10月, 2011 4 次提交
  6. 14 10月, 2011 8 次提交
  7. 13 10月, 2011 4 次提交
  8. 12 10月, 2011 1 次提交
    • C
      xfs: revert to using a kthread for AIL pushing · 0030807c
      Christoph Hellwig 提交于
      Currently we have a few issues with the way the workqueue code is used to
      implement AIL pushing:
      
       - it accidentally uses the same workqueue as the syncer action, and thus
         can be prevented from running if there are enough sync actions active
         in the system.
       - it doesn't use the HIGHPRI flag to queue at the head of the queue of
         work items
      
      At this point I'm not confident enough in getting all the workqueue flags and
      tweaks right to provide a perfectly reliable execution context for AIL
      pushing, which is the most important piece in XFS to make forward progress
      when the log fills.
      
      Revert back to use a kthread per filesystem which fixes all the above issues
      at the cost of having a task struct and stack around for each mounted
      filesystem.  In addition this also gives us much better ways to diagnose
      any issues involving hung AIL pushing and removes a small amount of code.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Reported-by: NStefan Priebe <s.priebe@profihost.ag>
      Tested-by: NStefan Priebe <s.priebe@profihost.ag>
      Reviewed-by: NDave Chinner <dchinner@redhat.com>
      Signed-off-by: NAlex Elder <aelder@sgi.com>
      0030807c