linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: "John Stoffel" <john@stoffel.org>
To: balbir@linux.vnet.ibm.com
Cc: John Stoffel <john@stoffel.org>, Andi Kleen <andi@firstfloor.org>,
	akpm@osdl.org, torvalds@osdl.org, linux-kernel@vger.kernel.org,
	linux-mm@kvack.org
Subject: Re: [PATCH] Document huge memory/cache overhead of memory controller in Kconfig
Date: Wed, 20 Feb 2008 11:15:43 -0500	[thread overview]
Message-ID: <18364.21039.360703.931967@stoffel.org> (raw)
In-Reply-To: <47BC4554.10304@linux.vnet.ibm.com>

>>>>> "Balbir" == Balbir Singh <balbir@linux.vnet.ibm.com> writes:

Balbir> John Stoffel wrote:
>> I know this is a pedantic comment, but why the heck is it called such
>> a generic term as "Memory Controller" which doesn't give any
>> indication of what it does.
>> 
>> Shouldn't it be something like "Memory Quota Controller", or "Memory
>> Limits Controller"?
>> 

Balbir> It's called the memory controller since it controls the amount
Balbir> of memory that a user can allocate (via limits).

Ding!  See how you mention limits here?  That should be part of the
generic term in the Kconfig to make it crystal clear what you mean by
a memory controller.

Balbir>  The generic term for any resource manager plugged into
Balbir> cgroups is a controller. 

The general term for managing resources is limits or quotas.  Not
controllers.  

Balbir> If you look through some of the references in the document,
Balbir> we've listed our plans to support other categories of memory
Balbir> as well. Hence it's called a memory controller

Still don't buy it, sorry.  :]

>> Also, the Kconfig name "CGROUP_MEM_CONT" is just wrong, it should be
>> "CGROUP_MEM_CONTROLLER", just spell it out so it's clear what's up.
>> 

Balbir> This has some history as well. Control groups was called
Balbir> containers earlier.  That way a name like CGROUP_MEM_CONT
Balbir> could stand for cgroup memory container or cgroup memory
Balbir> controller.

>> It took me a bunch of reading of Documentation/controllers/memory.txt
>> to even start to understand what the purpose of this was.  The
>> document could also use a re-writing to include a clear introduction
>> at the top to explain "what" a memory controller is.  
>> 
>> Something which talks about limits, resource management, quotas, etc
>> would be nice.  
>> 

Balbir> The references, specially reference [1] contains a lot of
Balbir> details on limits, guarantees, etc.  Since they've been
Balbir> documented in the past on lkml, I decided to keep them out of
Balbir> the documentation and mention them as references. If it's
Balbir> going to help to add that terminology; I can create another
Balbir> document describing what resource management means and what
Balbir> the commonly used terms mean.

Well, I think you need to first setup a new directory called
Documentation/cgroups/ and then you can put in an introduction.txt and
your controllers.txt files there.  

But controllers is just too generic a term.  For example, if I'm
talking about a controller on my desktop, does that mean I'm talking
about:

	SCSI, IDE, memory, USB, Firewire or serial ports?  

I've got all of them on my main system.  Again, I think you're
overloading a very generic term in a very non-obvious way and it needs
to be clarified for the regular developers and users.

Thanks,
John

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  parent reply	other threads:[~2008-02-20 16:15 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-20 12:23 Andi Kleen
2008-02-20 12:52 ` Balbir Singh
2008-02-20 15:00   ` John Stoffel
2008-02-20 15:20     ` Balbir Singh
2008-02-20 15:49       ` Jan Engelhardt
2008-02-20 16:10         ` John Stoffel
2008-02-20 16:15           ` Balbir Singh
2008-02-20 17:00             ` Andi Kleen
2008-02-21  6:49             ` KAMEZAWA Hiroyuki
2008-02-21  6:52               ` Balbir Singh
2008-02-20 18:19         ` Pavel Machek
2008-02-20 18:28           ` Jan Engelhardt
2008-02-20 18:51             ` Pavel Machek
2008-02-21 14:46               ` KOSAKI Motohiro
2008-02-21 14:52                 ` Balbir Singh
2008-02-21 23:55                 ` Pavel Machek
2008-02-22  3:09                   ` KOSAKI Motohiro
2008-02-20 16:15       ` John Stoffel [this message]
2008-02-20 16:54       ` Ray Lee
2008-02-20 16:57     ` Andi Kleen
2008-02-21  4:35   ` Nick Piggin
2008-02-21  5:06     ` Balbir Singh
     [not found]       ` <200802211622.51751.nickpiggin@yahoo.com.au>
2008-02-21  5:46         ` Balbir Singh
2008-02-21 10:44       ` Andi Kleen
2008-02-22  4:41         ` Balbir Singh
2008-02-22  9:51           ` Andi Kleen
2008-02-22 12:14             ` Balbir Singh
2008-02-22 13:00               ` Andi Kleen
2008-02-22 15:47                 ` Balbir Singh
2008-02-21 10:37     ` Andi Kleen
2008-02-21 11:03       ` Balbir Singh
2008-02-22  6:59         ` KAMEZAWA Hiroyuki
2008-02-22  7:06           ` Balbir Singh

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=18364.21039.360703.931967@stoffel.org \
    --to=john@stoffel.org \
    --cc=akpm@osdl.org \
    --cc=andi@firstfloor.org \
    --cc=balbir@linux.vnet.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=torvalds@osdl.org \
    /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