linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Vivek Goyal <vgoyal@redhat.com>
To: Jens Axboe <axboe@kernel.dk>
Cc: Justin TerAvest <teravest@google.com>,
	Chad Talbott <ctalbott@google.com>,
	Nauman Rafique <nauman@google.com>,
	Divyesh Shah <dpshah@google.com>,
	lkml <linux-kernel@vger.kernel.org>,
	Gui Jianfeng <guijianfeng@cn.fujitsu.com>,
	Corrado Zoccolo <czoccolo@gmail.com>
Subject: Re: RFC: default group_isolation to 1, remove option
Date: Mon, 7 Mar 2011 15:46:51 -0500	[thread overview]
Message-ID: <20110307204651.GK9540@redhat.com> (raw)
In-Reply-To: <4D7540F6.3080303@kernel.dk>

On Mon, Mar 07, 2011 at 09:32:54PM +0100, Jens Axboe wrote:

[..]
> > So given then fact that per-ioc-per-disk accounting of request descriptors
> > makes the accounting complicated and also makes it hard for block IO
> > controller to use it, the other approach of implementing per group limit
> > and per-group-per-bdi congested might be reasonable. Having said that, the
> > patch I had written for per group descritor was also not necessarily very
> > simple.
> 
> So before all of this gets over designed a lot... If we get rid of the
> one remaining direct buffered writeback in bdp(), then only the flusher
> threads should be sending huge amounts of IO. So if we attack the
> problem from that end instead, have it do that accounting in the bdi.
> With that in place, I'm fairly confident that we can remove the request
> limits.
> 
> Basically just replace the congestion_wait() in there with a bit of
> accounting logic. Since it's per bdi anyway, we don't even have to
> maintain that state in the bdi itself. It can remain in the thread
> stack.

Moving the accounting up sounds interesting. For cgroup stuff we again shall
have to do something additional like having per cgroup per bdi flusher threads
or mainting the number of pending IO per group and not flusher thread does not
submitting IOs for groups which have lots of pending IOs (to avoid faster
group getting blocked behind slower one).

Thanks
Vivek

  reply	other threads:[~2011-03-07 20:47 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-01  0:19 RFC: default group_isolation to 1, remove option Justin TerAvest
2011-03-01 14:20 ` Vivek Goyal
2011-03-01 18:44   ` Justin TerAvest
2011-03-02 21:28     ` Vivek Goyal
2011-03-06 16:06       ` Andrea Righi
2011-03-03  3:45   ` Jens Axboe
2011-03-03 15:30     ` Per iocontext request descriptor limits (Was: Re: RFC: default group_isolation to 1, remove option) Vivek Goyal
2011-03-03 15:44       ` Jens Axboe
2011-03-03 16:57         ` Vivek Goyal
2011-03-03 18:03           ` Vivek Goyal
2011-03-04 11:01             ` Jens Axboe
2011-03-04 21:31               ` Vivek Goyal
2011-03-04 21:34                 ` Jens Axboe
2011-03-07 18:20     ` RFC: default group_isolation to 1, remove option Justin TerAvest
2011-03-07 19:39       ` Jens Axboe
2011-03-07 20:24         ` Vivek Goyal
2011-03-07 20:32           ` Jens Axboe
2011-03-07 20:46             ` Vivek Goyal [this message]
2011-03-07 20:47               ` Jens Axboe
2011-03-07 23:41                 ` Justin TerAvest
2011-03-08  0:05             ` Vivek Goyal
2011-03-07 20:34           ` Vivek Goyal
2011-03-07 20:36             ` Jens Axboe

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110307204651.GK9540@redhat.com \
    --to=vgoyal@redhat.com \
    --cc=axboe@kernel.dk \
    --cc=ctalbott@google.com \
    --cc=czoccolo@gmail.com \
    --cc=dpshah@google.com \
    --cc=guijianfeng@cn.fujitsu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nauman@google.com \
    --cc=teravest@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).