Messages in this thread | | | Date | Mon, 18 Feb 2019 10:39:16 +0800 | From | Wei Wang <> | Subject | Re: [RFC][Patch v8 0/7] KVM: Guest Free Page Hinting |
| |
On 02/18/2019 10:36 AM, Wei Wang wrote: > On 02/15/2019 05:41 PM, David Hildenbrand wrote: >> On 15.02.19 10:05, Wang, Wei W wrote: >>> On Thursday, February 14, 2019 5:43 PM, David Hildenbrand wrote: >>>> Yes indeed, that is the important bit. They must not be put pack to >>>> the >>>> buddy before they have been processed by the hypervisor. But as the >>>> pages >>>> are not in the buddy, no one allocating a page will stumble over >>>> such a page >>>> and try to allocate it. Threads trying to allocate memory will >>>> simply pick >>>> another buddy page instead of "busy waiting" for that page to be >>>> finished >>>> reporting. >>> What if a guest thread try to allocate some pages but the buddy >>> cannot satisfy >>> because all the pages are isolated? Would it be the same case that >>> the guest thread >>> gets blocked by waiting all the isolated pages to get madvised by >>> the host and >>> returned to the guest buddy, or even worse, some guest threads get >>> killed due to oom? >> Your question targets low memory situations in the guest. I think Nitesh >> already answered parts of that question somewhere and I'll let him >> answer it in detail, only a short comment from my side :) >> >> I can imagine techniques where the OOM killer can be avoided, but the >> OOM handler will eventually kick in and handle it. >> >> In general your question is valid and we will have to think about a way >> to avoid that from happening. However, in contrast to your approach >> blocking on potentially every page that is being hinted, in Nitesh's >> approach this would only happen when the guest is really low on memory. >> And the question is in general, if a guest wants to hint if low on >> memory ("safety buffer"). > > I think we should forget that the guest is low on memory because %s/should/shouldn't > this approach takes all the pages off the list, not because the guest > really > uses up the free memory. > > Guest allocating one page could also potentially be blocked until all > the pages > (as opposed to one page) being madvised and returned to the guest buddy. > > Best, > Wei
| |