lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 20 Feb 2008 11:15:43 -0500
From:	"John Stoffel" <john@...ffel.org>
To:	balbir@...ux.vnet.ibm.com
Cc:	John Stoffel <john@...ffel.org>, Andi Kleen <andi@...stfloor.org>,
	akpm@...l.org, torvalds@...l.org, linux-kernel@...r.kernel.org,
	linux-mm@...ck.org
Subject: Re: [PATCH] Document huge memory/cache overhead of memory controller
 in Kconfig

>>>>> "Balbir" == Balbir Singh <balbir@...ux.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 from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ