Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932817AbYARWjv (ORCPT ); Fri, 18 Jan 2008 17:39:51 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1763069AbYARWjp (ORCPT ); Fri, 18 Jan 2008 17:39:45 -0500 Received: from smtp-out.google.com ([216.239.33.17]:43892 "EHLO smtp-out.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1762050AbYARWjo (ORCPT ); Fri, 18 Jan 2008 17:39:44 -0500 DomainKey-Signature: a=rsa-sha1; s=beta; d=google.com; c=nofws; q=dns; h=received:message-id:date:from:to:subject:cc:mime-version: content-type:content-transfer-encoding:content-disposition; b=qEGhiyYAbK2U+MNWVdCYIJ/ly9eex2ZuJVPRvmJxYIC5Af6Iv0LLwE8jaKRouD5ck xxrvVThHnNvLCCURlCsng== Message-ID: <2846be6b0801181439o55dcff09ted2b8f817e7ba682@mail.gmail.com> Date: Fri, 18 Jan 2008 14:39:39 -0800 From: "Naveen Gupta" To: "Andrea Righi" Subject: Re: [PATCH] cgroup: limit block I/O bandwidth Cc: "Paul Menage" , "Dhaval Giani" , "Balbir Singh" , LKML MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1588 Lines: 34 >Paul Menage wrote: >> On Jan 18, 2008 7:36 AM, Dhaval Giani wrote: >>> On Fri, Jan 18, 2008 at 12:41:03PM +0100, Andrea Righi wrote: >>>> Allow to limit the block I/O bandwidth for specific process containers >>>> (cgroups) imposing additional delays on I/O requests for those processes >>>> that exceed the limits defined in the control group filesystem. >>>> >>>> Example: >>>> # mkdir /dev/cgroup >>>> # mount -t cgroup -oio-throttle io-throttle /dev/cgroup >>> Just a minor nit, can't we name it as io, keeping in mind that other >>> controllers are known as cpu and memory? >> >> Or maybe "blockio"? > >Agree, blockio seems better. Not all I/O is performed on block devices >and in this case we're considering block devices only. Here we want to rate limit in block layer, I would think I/O scheduler is the place where we are in much better position to do this kind of limiting. Also we are changing the behavior of application by adding sleeps to it during request submission. Moreover, we will prevent requests from being merged since we won't allow them to be submitted in this case. Since bulk of submission for writes is done in background kernel threads and we throttle based on limits on current, we will end up throttling these threads and not the actual processes submitting i/o. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/