Messages in this thread Patch in this message | | | From | Michal Hocko <> | Subject | [PATCH 5/6] mm, sparse: complain about implicit altmap usage in vmemmap_populate | Date | Tue, 1 Aug 2017 14:41:10 +0200 |
| |
From: Michal Hocko <mhocko@suse.com>
All current users of the altmap are in the memory hotplug code and they use __vmemmap_populate explicitly (via __sparse_mem_map_populate). Complain if somebody uses vmemmap_populate with altmap registered because that could be an unexpected usage. Also call __vmemmap_populate with NULL from that code path.
Signed-off-by: Michal Hocko <mhocko@suse.com> --- include/linux/mm.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/include/linux/mm.h b/include/linux/mm.h index 3ce673570fb8..ae1fa053d09e 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2456,8 +2456,12 @@ int __vmemmap_populate(unsigned long start, unsigned long end, int node, static inline int vmemmap_populate(unsigned long start, unsigned long end, int node) { - struct vmem_altmap *altmap = to_vmem_altmap(start); - return __vmemmap_populate(start, end, node, altmap); + /* + * All users of the altmap have to be explicit and use + * __vmemmap_populate directly + */ + WARN_ON(to_vmem_altmap(start)); + return __vmemmap_populate(start, end, node, NULL); } void vmemmap_populate_print_last(void); -- 2.13.2
| |