[PATCH v3 2/7] mm/hotplug: Allow memmap on memory hotplug request to fallback
David Hildenbrand
david at redhat.com
Tue Jul 11 20:23:18 AEST 2023
> -bool mhp_supports_memmap_on_memory(unsigned long size)
> +static bool mhp_supports_memmap_on_memory(unsigned long size)
> {
> unsigned long nr_vmemmap_pages = size / PAGE_SIZE;
> unsigned long vmemmap_size = nr_vmemmap_pages * sizeof(struct page);
> @@ -1339,13 +1339,12 @@ int __ref add_memory_resource(int nid, struct resource *res, mhp_t mhp_flags)
> * Self hosted memmap array
> */
> if (mhp_flags & MHP_MEMMAP_ON_MEMORY) {
> - if (!mhp_supports_memmap_on_memory(size)) {
> - ret = -EINVAL;
> - goto error;
> + if (mhp_supports_memmap_on_memory(size)) {
> + mhp_altmap.free = PHYS_PFN(size);
> + mhp_altmap.base_pfn = PHYS_PFN(start);
> + params.altmap = &mhp_altmap;
> }
> - mhp_altmap.free = PHYS_PFN(size);
> - mhp_altmap.base_pfn = PHYS_PFN(start);
> - params.altmap = &mhp_altmap;
> + /* fallback to not using altmap */
> }
>
> /* call arch's memory hotadd */
In general, LGTM, but please extend the documentation of the parameter
in memory_hotplug.h, stating that this is just a hint and that the core
can decide to no do that.
--
Cheers,
David / dhildenb
More information about the Linuxppc-dev
mailing list