Skip to content
Snippets Groups Projects
  1. Nov 01, 2016
    • Christoph Hellwig's avatar
      block: replace REQ_NOIDLE with REQ_IDLE · a2b80967
      Christoph Hellwig authored
      
      Noidle should be the default for writes as seen by all the compounds
      definitions in fs.h using it.  In fact only direct I/O really should
      be using NODILE, so turn the whole flag around to get the defaults
      right, which will make our life much easier especially onces the
      WRITE_* defines go away.
      
      This assumes all the existing "raw" users of REQ_SYNC for writes
      want noidle behavior, which seems to be spot on from a quick audit.
      
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarJens Axboe <axboe@fb.com>
      a2b80967
  2. Dec 10, 2015
  3. Jul 25, 2013
  4. Apr 09, 2013
  5. Jan 09, 2013
    • Tejun Heo's avatar
      cfq-iosched: enable full blkcg hierarchy support · d02f7aa8
      Tejun Heo authored
      
      With the previous two patches, all cfqg scheduling decisions are based
      on vfraction and ready for hierarchy support.  The only thing which
      keeps the behavior flat is cfqg_flat_parent() which makes vfraction
      calculation consider all non-root cfqgs children of the root cfqg.
      
      Replace it with cfqg_parent() which returns the real parent.  This
      enables full blkcg hierarchy support for cfq-iosched.  For example,
      consider the following hierarchy.
      
              root
            /      \
         A:500      B:250
        /     \
       AA:500  AB:1000
      
      For simplicity, let's say all the leaf nodes have active tasks and are
      on service tree.  For each leaf node, vfraction would be
      
       AA: (500  / 1500) * (500 / 750) =~ 0.2222
       AB: (1000 / 1500) * (500 / 750) =~ 0.4444
        B:                 (250 / 750) =~ 0.3333
      
      and vdisktime will be distributed accordingly.  For more detail,
      please refer to Documentation/block/cfq-iosched.txt.
      
      v2: cfq-iosched.txt updated to describe group scheduling as suggested
          by Vivek.
      
      v3: blkio-controller.txt updated.
      
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Acked-by: default avatarVivek Goyal <vgoyal@redhat.com>
      d02f7aa8
  6. Aug 09, 2012
  7. Aug 05, 2011
    • Vivek Goyal's avatar
      cfq-iosched: Add documentation about idling · 4931402a
      Vivek Goyal authored
      
      There are always questions about why CFQ is idling on various conditions.
      Recent ones is Christoph asking again why to idle on REQ_NOIDLE. His
      assertion is that XFS is relying more and more on workqueues and is
      concerned that CFQ idling on IO from every workqueue will impact
      XFS badly.
      
      So he suggested that I add some more documentation about CFQ idling
      and that can provide more clarity on the topic and also gives an
      opprotunity to poke a hole in theory and lead to improvements.
      
      So here is my attempt at that. Any comments are welcome.
      
      Signed-off-by: default avatarVivek Goyal <vgoyal@redhat.com>
      Signed-off-by: default avatarJens Axboe <jaxboe@fusionio.com>
      4931402a
  8. Aug 23, 2010
Loading