From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754508AbYIQJml (ORCPT ); Wed, 17 Sep 2008 05:42:41 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751610AbYIQJmd (ORCPT ); Wed, 17 Sep 2008 05:42:33 -0400 Received: from ey-out-2122.google.com ([74.125.78.24]:5293 "EHLO ey-out-2122.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751432AbYIQJmc (ORCPT ); Wed, 17 Sep 2008 05:42:32 -0400 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:reply-to:user-agent:mime-version:to:cc:subject :references:in-reply-to:x-enigmail-version:content-type :content-transfer-encoding; b=DVl5j/BTX3pN/gxYRdoBdgDBuwYAg3sCYgdwfW5aihgzlVwQGLCRb4WWy87oARq42b q4rCz8pFsXGdNhONkF8ujAUnUrVrtEb75DxGjmehZ64XD/gJJfW2eePMl+USSqBH09ga PbxP0F9+MNYxGOA9vbYqTyhxbCnmM2VppSqTo= Message-ID: <48D0D0FD.7010902@gmail.com> Date: Wed, 17 Sep 2008 11:42:21 +0200 From: Andrea Righi Reply-To: righi.andrea@gmail.com User-Agent: Thunderbird 2.0.0.16 (X11/20080724) MIME-Version: 1.0 To: Takuya Yoshikawa CC: Balbir Singh , Paul Menage , agk@sourceware.org, akpm@linux-foundation.org, axboe@kernel.dk, baramsori72@gmail.com, Carl Henrik Lunde , dave@linux.vnet.ibm.com, Divyesh Shah , eric.rannaud@gmail.com, fernando@oss.ntt.co.jp, Hirokazu Takahashi , Li Zefan , Marco Innocenti , matt@bluehost.com, ngupta@google.com, randy.dunlap@oracle.com, roberto@unbit.it, Ryo Tsuruta , Satoshi UCHIDA , subrata@linux.vnet.ibm.com, containers@lists.linux-foundation.org, linux-kernel@vger.kernel.org Subject: Re: [RFC][PATCH -mm 0/5] cgroup: block device i/o controller (v9) References: <> <1219853257-11052-1-git-send-email-righi.andrea@gmail.com> <48D0C800.30207@oss.ntt.co.jp> In-Reply-To: <48D0C800.30207@oss.ntt.co.jp> X-Enigmail-Version: 0.95.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Takuya Yoshikawa wrote: > Hi, > > Andrea Righi wrote: >> TODO: >> >> * Try to push down the throttling and implement it directly in the I/O >> schedulers, using bio-cgroup (http://people.valinux.co.jp/~ryov/bio-cgroup/) >> to keep track of the right cgroup context. This approach could lead to more >> memory consumption and increases the number of dirty pages (hard/slow to >> reclaim pages) in the system, since dirty-page ratio in memory is not >> limited. This could even lead to potential OOM conditions, but these problems >> can be resolved directly into the memory cgroup subsystem >> >> * Handle I/O generated by kswapd: at the moment there's no control on the I/O >> generated by kswapd; try to use the page_cgroup functionality of the memory >> cgroup controller to track this kind of I/O and charge the right cgroup when >> pages are swapped in/out > > Could you explain which cgroup we should charge when swap in or out occurs? IMHO we should charge the owner of the page being swapped in/out (not kswapd I mean). If a task is using a lot of memory and the memory of this task is swapped out, it's actually generating i/o. Yes, we could also hit other tasks that are using few pages in this way, but the most memory consuming guys should be charged proportionally to the memory they're consuming. IOW, this kind of i/o activity should be charge to the cgroup the task belongs to. -Andrea