From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Michael S. Tsirkin" Subject: Re: [RFC][Patch v9 2/6] KVM: Enables the kernel to isolate guest free pages Date: Fri, 8 Mar 2019 13:59:04 -0500 Message-ID: <20190308135700-mutt-send-email-mst@kernel.org> References: <20190306155048.12868-1-nitesh@redhat.com> <20190306155048.12868-3-nitesh@redhat.com> <2d9ae889-a9b9-7969-4455-ff36944f388b@redhat.com> <22e4b1cd-38a5-6642-8cbe-d68e4fcbb0b7@redhat.com> <78b604be-2129-a716-a7a6-f5b382c9fb9c@redhat.com> <20190307212845-mutt-send-email-mst@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: David Hildenbrand , Nitesh Narayan Lal , kvm list , LKML , linux-mm , Paolo Bonzini , lcapitulino@redhat.com, pagupta@redhat.com, wei.w.wang@intel.com, Yang Zhang , Rik van Riel , dodgen@google.com, Konrad Rzeszutek Wilk , dhildenb@redhat.com, Andrea Arcangeli To: Alexander Duyck Return-path: Content-Disposition: inline In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On Fri, Mar 08, 2019 at 10:06:14AM -0800, Alexander Duyck wrote: > On Thu, Mar 7, 2019 at 6:32 PM Michael S. Tsirkin wrote: > > > > On Thu, Mar 07, 2019 at 02:35:53PM -0800, Alexander Duyck wrote: > > > The only other thing I still want to try and see if I can do is to add > > > a jiffies value to the page private data in the case of the buddy > > > pages. > > > > Actually there's one extra thing I think we should do, and that is make > > sure we do not leave less than X% off the free memory at a time. > > This way chances of triggering an OOM are lower. > > If nothing else we could probably look at doing a watermark of some > sort so we have to have X amount of memory free but not hinted before > we will start providing the hints. It would just be a matter of > tracking how much memory we have hinted on versus the amount of memory > that has been pulled from that pool. It is another reason why we > probably want a bit in the buddy pages somewhere to indicate if a page > has been hinted or not as we can then use that to determine if we have > to account for it in the statistics. > > > > With that we could track the age of the page so it becomes > > > easier to only target pages that are truly going cold rather than > > > trying to grab pages that were added to the freelist recently. > > > > I like that but I have a vague memory of discussing this with Rik van > > Riel and him saying it's actually better to take away recently used > > ones. Can't see why would that be but maybe I remember wrong. Rik - am I > > just confused? > > It is probably to cut down on the need for disk writes in the case of > swap. If that is the case it ends up being a trade off. > > The sooner we hint the less likely it is that we will need to write a > given page to disk. However the sooner we hint, the more likely it is > we will need to trigger a page fault and pull back in a zero page to > populate the last page we were working on. The sweet spot will be that > period of time that is somewhere in between so we don't trigger > unnecessary page faults and we don't need to perform additional swap > reads/writes. Right but the question is - is it better to hint on least recently used, or most recently used pages? It looks like LRU should be better, but I vaguely rememeber there were arguments for why most recently used might be better. Can't figure out why, maybe I am remembering wrong. -- MST