On Wed, Jul 24, 2019 at 03:03:56PM -0700, Alexander Duyck wrote: > On Wed, 2019-07-24 at 17:38 -0400, Michael S. Tsirkin wrote: > > On Wed, Jul 24, 2019 at 10:12:10AM -0700, Alexander Duyck wrote: > > > From: Alexander Duyck <alexander.h.duyck@xxxxxxxxxxxxxxx> > > > > > > Add support for what I am referring to as "bubble hinting". Basically the > > > idea is to function very similar to how the balloon works in that we > > > basically end up madvising the page as not being used. However we don't > > > really need to bother with any deflate type logic since the page will be > > > faulted back into the guest when it is read or written to. > > > > > > This is meant to be a simplification of the existing balloon interface > > > to use for providing hints to what memory needs to be freed. I am assuming > > > this is safe to do as the deflate logic does not actually appear to do very > > > much other than tracking what subpages have been released and which ones > > > haven't. > > > > > > Signed-off-by: Alexander Duyck <alexander.h.duyck@xxxxxxxxxxxxxxx> > > > > BTW I wonder about migration here. When we migrate we lose all hints > > right? Well destination could be smarter, detect that page is full of > > 0s and just map a zero page. Then we don't need a hint as such - but I > > don't think it's done like that ATM. > > I was wondering about that a bit myself. If you migrate with a balloon > active what currently happens with the pages in the balloon? Do you > actually migrate them, or do you ignore them and just assume a zero page? Ignore and assume zero page. > I'm just reusing the ram_block_discard_range logic that was being used for > the balloon inflation so I would assume the behavior would be the same. > > > I also wonder about interaction with deflate. ATM deflate will add > > pages to the free list, then balloon will come right back and report > > them as free. > > I don't know how likely it is that somebody who is getting the free page > reporting is likely to want to also use the balloon to take up memory. Why not? > However hinting on a page that came out of deflate might make sense when > you consider that the balloon operates on 4K pages and the hints are on 2M > pages. You are likely going to lose track of it all anyway as you have to > work to merge the 4K pages up to the higher order page. Right - we need to fix inflate/deflate anyway. When we do, we can do whatever :) -- MST