Re: [PATCH V3 1/3] mm/memory_hotplug: Prevalidate the address range being added with platform
From: David Hildenbrand <hidden>
Date: 2021-01-19 12:35:41
Also in:
linux-arm-kernel, linux-s390, lkml
From: David Hildenbrand <hidden>
Date: 2021-01-19 12:35:41
Also in:
linux-arm-kernel, linux-s390, lkml
On 18.01.21 14:12, Anshuman Khandual wrote:
This introduces memhp_range_allowed() which can be called in various memory hotplug paths to prevalidate the address range which is being added, with the platform. Then memhp_range_allowed() calls memhp_get_pluggable_range() which provides applicable address range depending on whether linear mapping is required or not. For ranges that require linear mapping, it calls a new arch callback arch_get_mappable_range() which the platform can override. So the new callback, in turn provides the platform an opportunity to configure acceptable memory hotplug address ranges in case there are constraints. This mechanism will help prevent platform specific errors deep down during hotplug calls. This drops now redundant check_hotplug_memory_addressable() check in __add_pages() but instead adds a VM_BUG_ON() check which would
In this patch, you keep the __add_pages() checks. But as discussed, we could perform it in mm/memremap.c:pagemap_range() insted and convert it to a VM_BUG_ON(). Apart from that looks good to me. -- Thanks, David / dhildenb