On Tue, Aug 28, 2018 at 01:47:09PM +0200, Oscar Salvador wrote: > On Fri, Aug 17, 2018 at 05:41:25PM +0200, Oscar Salvador wrote: > > From: Oscar Salvador <osalvador@xxxxxxx> > [...] > > > > The main difficulty I faced here was in regard of HMM/devm, as it really handles > > the hot-add/remove memory particulary, and what is more important, > > also the resources. > > > > I really scratched my head for ideas about how to handle this case, and > > after some fails I came up with the idea that we could check for the > > res->flags. > > > > Memory resources that goes through the "official" memory-hotplug channels > > have the IORESOURCE_SYSTEM_RAM flag. > > This flag is made of (IORESOURCE_MEM|IORESOURCE_SYSRAM). > > > > HMM/devm, on the other hand, request and release the resources > > through devm_request_mem_region/devm_release_mem_region, and > > these resources do not contain the IORESOURCE_SYSRAM flag. > > > > So what I ended up doing is to check for IORESOURCE_SYSRAM > > in release_mem_region_adjustable. > > If we see that a resource does not have such a flag, we know that > > we are dealing with a resource coming from HMM/devm, and so, > > we do not need to do anything as HMM/dev will take care of that part. > > > > Jerome/Dan, now that the merge window is closed, and before sending the RFCv3, could you please check > this and see if you see something that is flagrant wrong? (about devm/HMM) > > If you prefer I can send v3 spliting up even more. > Maybe this will ease the review. > This looks good to me you can add Reviewed-by: Jérôme Glisse <jglisse@xxxxxxxxxx>