Messages in this thread | | | From | KY Srinivasan <> | Subject | RE: [PATCH 1/2] mm: Export vm_committed_as | Date | Mon, 5 Nov 2012 22:12:25 +0000 |
| |
> -----Original Message----- > From: Andrew Morton [mailto:akpm@linux-foundation.org] > Sent: Monday, November 05, 2012 4:45 PM > To: KY Srinivasan > Cc: Greg KH; olaf@aepfle.de; linux-kernel@vger.kernel.org; andi@firstfloor.org; > apw@canonical.com; devel@linuxdriverproject.org; linux-mm@kvack.org; > Hiroyuki Kamezawa; Michal Hocko; Johannes Weiner; Ying Han > Subject: Re: [PATCH 1/2] mm: Export vm_committed_as > > On Sat, 3 Nov 2012 14:09:38 +0000 > KY Srinivasan <kys@microsoft.com> wrote: > > > > > > > > > > > > > Ok, but you're going to have to get the -mm developers to agree that > > > > this is ok before I can accept it. > > > > > > Well I guess it won't kill us. > > > > Andrew, > > > > I presumed this was an Ack from you with regards to exporting the > > symbol. Looks like Greg is waiting to hear from you before he can check > > these patches in. Could you provide an explicit Ack. > > > > Well, I do have some qualms about exporting vm_committed_as to modules. > > vm_committed_as is a global thing and only really makes sense in a > non-containerised system. If the application is running within a > memory cgroup then vm_enough_memory() and the global overcommit policy > are at best irrelevant and misleading. > > If use of vm_committed_as is indeed a bad thing, then exporting it to > modules might increase the amount of badness in the kernel. > > > I don't think these qualms are serious enough to stand in the way of > this patch, but I'd be interested in hearing the memcg developers' > thoughts on the matter? > > > Perhaps you could provide a detailed description of why your module > actually needs this? Precisely what information is it looking for > and why? If we know that then perhaps a more comfortable alternative > can be found.
The Hyper-V host has a policy engine for managing available physical memory across competing virtual machines. This policy decision is based on a number of parameters including the memory pressure reported by the guest. Currently, the pressure calculation is based on the memory commitment made by the guest. From what I can tell, the ratio of currently allocated physical memory to the current memory commitment made by the guest (vm_committed_as) is used as one of the parameters in making the memory balancing decision on the host. This is what Windows guests report to the host. So, I need some measure of memory commitments made by the Linux guest. This is the reason I want export vm_committed_as.
Regards,
K. Y
| |