Well, I don't think that we should return success when memory
allocation fails. For kdump, I think if the memory has not been
reserved, then the function should failed, for whatever reason it
failed. Because we cannot load the crashkernel.
So IMO the code should look like
[...]
int ret;
if (pfn >= end_pfn)
return -EFAULT;
/* Should check here against the e820 map to avoid double free */
#ifdef CONFIG_NUMA
nid = phys_to_nid(phys);
[...]
Bernhard
--
Bernhard Walle, SUSE LINUX Products GmbH, Architecture Maintenance
--