Messages in this thread |  | | Date | Thu, 11 Jun 2015 18:41:21 +0800 | From | Zhu Guihua <> | Subject | Re: [PATCH] mm/memory hotplug: print the last vmemmap region at the end of hot add memory |
| |
On 06/10/2015 04:29 AM, Andrew Morton wrote: > On Tue, 9 Jun 2015 11:41:28 +0800 Zhu Guihua <zhugh.fnst@cn.fujitsu.com> wrote: > >>>> --- a/mm/memory_hotplug.c >>>> +++ b/mm/memory_hotplug.c >>>> @@ -513,6 +513,7 @@ int __ref __add_pages(int nid, struct zone *zone, unsigned long phys_start_pfn, >>>> break; >>>> err = 0; >>>> } >>>> + vmemmap_populate_print_last(); >>>> >>>> return err; >>>> } >>> vmemmap_populate_print_last() is only available on x86_64, when >>> CONFIG_SPARSEMEM_VMEMMAP=y. Are you sure this won't break builds? >> I tried this on i386 and on x86_64 when CONFIG_SPARSEMEM_VMEMMAP=n , >> it builds ok. > With powerpc: > > akpm3:/usr/src/25> make allmodconfig > akpm3:/usr/src/25> make mm/memory_hotplug.o > akpm3:/usr/src/25> nm mm/memory_hotplug.o | grep vmemmap_populate_print_last > U .vmemmap_populate_print_last > akpm3:/usr/src/25> grep -r vmemmap_populate_print_last arch/powerpc > akpm3:/usr/src/25> > > So I think that's going to break. > > I expect ia64 will break also, but I didn't investigate. > . >
There is void __weak __meminit vmemmap_populate_print last(void) in /mm/sparse.c, so I think this won't break builds.
And I found the function was invoked in void __init sparse_init(void) without CONFIG_SPARSEMEM_VMEMMAP=y.
I also tried this on arm, it builds ok too.
|  |