Messages in this thread | | | From | Dan Williams <> | Date | Fri, 28 Sep 2018 08:50:46 -0700 | Subject | Re: [PATCH v5 4/4] mm: Defer ZONE_DEVICE page initialization to the point where we init pgmap |
| |
On Fri, Sep 28, 2018 at 1:45 AM Oscar Salvador <osalvador@techadventures.net> wrote: > > On Fri, Sep 28, 2018 at 10:12:24AM +0200, Oscar Salvador wrote: > > Although I am not sure about leaving memmap_init_zone unprotected. > > For the normal memory, that is not a problem since the memblock's lock > > protects us from touching the same pages at the same time in online/offline_pages, > > but for HMM/devm the story is different. > > > > I am totally unaware of HMM/devm, so I am not sure if its protected somehow. > > e.g: what happens if devm_memremap_pages and devm_memremap_pages_release are running > > at the same time for the same memory-range (with the assumption that the hotplug-lock > > does not protect move_pfn_range_to_zone anymore). > > I guess that this could not happen since the device is not linked to devm_memremap_pages_release > until the end with: > > devm_add_action(dev, devm_memremap_pages_release, pgmap)
It's a bug if devm_memremap_pages and devm_memremap_pages_release are running simultaneously for the same range. This is enforced by the requirement that the caller has done a successful request_region() on the range before the call to map pages.
| |