diff options
author | Mike Rapoport <rppt@linux.ibm.com> | 2019-03-12 02:30:46 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2019-03-12 13:04:02 -0400 |
commit | fe145124dbe53c86bf32b941b2f2f88f891d985d (patch) | |
tree | df349702489f4c9d283599e78df81ba9c6afb55c | |
parent | 26fb3dae0a1ec78bdde4b5b72e0e709503e8c596 (diff) |
memblock: remove memblock_{set,clear}_region_flags
The memblock API provides dedicated helpers to set or clear a flag on a
memory region, e.g. memblock_{mark,clear}_hotplug().
The memblock_{set,clear}_region_flags() functions are used only by the
memblock internal function that adjusts the region flags. Drop these
functions and use open-coded implementation instead.
Link: http://lkml.kernel.org/r/1549455025-17706-2-git-send-email-rppt@linux.ibm.com
Signed-off-by: Mike Rapoport <rppt@linux.ibm.com>
Reviewed-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Michal Hocko <mhocko@suse.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | include/linux/memblock.h | 12 | ||||
-rw-r--r-- | mm/memblock.c | 9 |
2 files changed, 6 insertions, 15 deletions
diff --git a/include/linux/memblock.h b/include/linux/memblock.h index db69ad97aa2e..294d5d80e150 100644 --- a/include/linux/memblock.h +++ b/include/linux/memblock.h | |||
@@ -273,18 +273,6 @@ void __next_mem_pfn_range(int *idx, int nid, unsigned long *out_start_pfn, | |||
273 | for_each_mem_range_rev(i, &memblock.memory, &memblock.reserved, \ | 273 | for_each_mem_range_rev(i, &memblock.memory, &memblock.reserved, \ |
274 | nid, flags, p_start, p_end, p_nid) | 274 | nid, flags, p_start, p_end, p_nid) |
275 | 275 | ||
276 | static inline void memblock_set_region_flags(struct memblock_region *r, | ||
277 | enum memblock_flags flags) | ||
278 | { | ||
279 | r->flags |= flags; | ||
280 | } | ||
281 | |||
282 | static inline void memblock_clear_region_flags(struct memblock_region *r, | ||
283 | enum memblock_flags flags) | ||
284 | { | ||
285 | r->flags &= ~flags; | ||
286 | } | ||
287 | |||
288 | #ifdef CONFIG_HAVE_MEMBLOCK_NODE_MAP | 276 | #ifdef CONFIG_HAVE_MEMBLOCK_NODE_MAP |
289 | int memblock_set_node(phys_addr_t base, phys_addr_t size, | 277 | int memblock_set_node(phys_addr_t base, phys_addr_t size, |
290 | struct memblock_type *type, int nid); | 278 | struct memblock_type *type, int nid); |
diff --git a/mm/memblock.c b/mm/memblock.c index 0ab30d0185bc..068e147695ee 100644 --- a/mm/memblock.c +++ b/mm/memblock.c | |||
@@ -858,11 +858,14 @@ static int __init_memblock memblock_setclr_flag(phys_addr_t base, | |||
858 | if (ret) | 858 | if (ret) |
859 | return ret; | 859 | return ret; |
860 | 860 | ||
861 | for (i = start_rgn; i < end_rgn; i++) | 861 | for (i = start_rgn; i < end_rgn; i++) { |
862 | struct memblock_region *r = &type->regions[i]; | ||
863 | |||
862 | if (set) | 864 | if (set) |
863 | memblock_set_region_flags(&type->regions[i], flag); | 865 | r->flags |= flag; |
864 | else | 866 | else |
865 | memblock_clear_region_flags(&type->regions[i], flag); | 867 | r->flags &= ~flag; |
868 | } | ||
866 | 869 | ||
867 | memblock_merge_regions(type); | 870 | memblock_merge_regions(type); |
868 | return 0; | 871 | return 0; |