mm/memblock: add a name for memblock flags enumeration

Since kernel-doc does not like anonymous enums the name is required for
adding documentation. While on it, I've also updated all the function
declarations to use 'enum memblock_flags' instead of unsigned long.

Signed-off-by: Mike Rapoport <rppt@linux.vnet.ibm.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
This commit is contained in:
Mike Rapoport 2018-06-30 17:55:01 +03:00 committed by Jonathan Corbet
parent 58faef9328
commit e1720fee27
3 changed files with 33 additions and 28 deletions

View File

@ -21,7 +21,7 @@
#define INIT_PHYSMEM_REGIONS 4 #define INIT_PHYSMEM_REGIONS 4
/* Definition of memblock flags. */ /* Definition of memblock flags. */
enum { enum memblock_flags {
MEMBLOCK_NONE = 0x0, /* No special request */ MEMBLOCK_NONE = 0x0, /* No special request */
MEMBLOCK_HOTPLUG = 0x1, /* hotpluggable region */ MEMBLOCK_HOTPLUG = 0x1, /* hotpluggable region */
MEMBLOCK_MIRROR = 0x2, /* mirrored region */ MEMBLOCK_MIRROR = 0x2, /* mirrored region */
@ -31,7 +31,7 @@ enum {
struct memblock_region { struct memblock_region {
phys_addr_t base; phys_addr_t base;
phys_addr_t size; phys_addr_t size;
unsigned long flags; enum memblock_flags flags;
#ifdef CONFIG_HAVE_MEMBLOCK_NODE_MAP #ifdef CONFIG_HAVE_MEMBLOCK_NODE_MAP
int nid; int nid;
#endif #endif
@ -72,7 +72,7 @@ void memblock_discard(void);
phys_addr_t memblock_find_in_range_node(phys_addr_t size, phys_addr_t align, phys_addr_t memblock_find_in_range_node(phys_addr_t size, phys_addr_t align,
phys_addr_t start, phys_addr_t end, phys_addr_t start, phys_addr_t end,
int nid, ulong flags); int nid, enum memblock_flags flags);
phys_addr_t memblock_find_in_range(phys_addr_t start, phys_addr_t end, phys_addr_t memblock_find_in_range(phys_addr_t start, phys_addr_t end,
phys_addr_t size, phys_addr_t align); phys_addr_t size, phys_addr_t align);
void memblock_allow_resize(void); void memblock_allow_resize(void);
@ -89,19 +89,19 @@ int memblock_clear_hotplug(phys_addr_t base, phys_addr_t size);
int memblock_mark_mirror(phys_addr_t base, phys_addr_t size); int memblock_mark_mirror(phys_addr_t base, phys_addr_t size);
int memblock_mark_nomap(phys_addr_t base, phys_addr_t size); int memblock_mark_nomap(phys_addr_t base, phys_addr_t size);
int memblock_clear_nomap(phys_addr_t base, phys_addr_t size); int memblock_clear_nomap(phys_addr_t base, phys_addr_t size);
ulong choose_memblock_flags(void); enum memblock_flags choose_memblock_flags(void);
/* Low level functions */ /* Low level functions */
int memblock_add_range(struct memblock_type *type, int memblock_add_range(struct memblock_type *type,
phys_addr_t base, phys_addr_t size, phys_addr_t base, phys_addr_t size,
int nid, unsigned long flags); int nid, enum memblock_flags flags);
void __next_mem_range(u64 *idx, int nid, ulong flags, void __next_mem_range(u64 *idx, int nid, enum memblock_flags flags,
struct memblock_type *type_a, struct memblock_type *type_a,
struct memblock_type *type_b, phys_addr_t *out_start, struct memblock_type *type_b, phys_addr_t *out_start,
phys_addr_t *out_end, int *out_nid); phys_addr_t *out_end, int *out_nid);
void __next_mem_range_rev(u64 *idx, int nid, ulong flags, void __next_mem_range_rev(u64 *idx, int nid, enum memblock_flags flags,
struct memblock_type *type_a, struct memblock_type *type_a,
struct memblock_type *type_b, phys_addr_t *out_start, struct memblock_type *type_b, phys_addr_t *out_start,
phys_addr_t *out_end, int *out_nid); phys_addr_t *out_end, int *out_nid);
@ -253,13 +253,13 @@ void __next_mem_pfn_range(int *idx, int nid, unsigned long *out_start_pfn,
NUMA_NO_NODE, MEMBLOCK_NONE, p_start, p_end, NULL) NUMA_NO_NODE, MEMBLOCK_NONE, p_start, p_end, NULL)
static inline void memblock_set_region_flags(struct memblock_region *r, static inline void memblock_set_region_flags(struct memblock_region *r,
unsigned long flags) enum memblock_flags flags)
{ {
r->flags |= flags; r->flags |= flags;
} }
static inline void memblock_clear_region_flags(struct memblock_region *r, static inline void memblock_clear_region_flags(struct memblock_region *r,
unsigned long flags) enum memblock_flags flags)
{ {
r->flags &= ~flags; r->flags &= ~flags;
} }
@ -317,10 +317,10 @@ static inline bool memblock_bottom_up(void)
phys_addr_t __init memblock_alloc_range(phys_addr_t size, phys_addr_t align, phys_addr_t __init memblock_alloc_range(phys_addr_t size, phys_addr_t align,
phys_addr_t start, phys_addr_t end, phys_addr_t start, phys_addr_t end,
ulong flags); enum memblock_flags flags);
phys_addr_t memblock_alloc_base_nid(phys_addr_t size, phys_addr_t memblock_alloc_base_nid(phys_addr_t size,
phys_addr_t align, phys_addr_t max_addr, phys_addr_t align, phys_addr_t max_addr,
int nid, ulong flags); int nid, enum memblock_flags flags);
phys_addr_t memblock_alloc_base(phys_addr_t size, phys_addr_t align, phys_addr_t memblock_alloc_base(phys_addr_t size, phys_addr_t align,
phys_addr_t max_addr); phys_addr_t max_addr);
phys_addr_t __memblock_alloc_base(phys_addr_t size, phys_addr_t align, phys_addr_t __memblock_alloc_base(phys_addr_t size, phys_addr_t align,

View File

@ -60,7 +60,7 @@ static int memblock_can_resize __initdata_memblock;
static int memblock_memory_in_slab __initdata_memblock = 0; static int memblock_memory_in_slab __initdata_memblock = 0;
static int memblock_reserved_in_slab __initdata_memblock = 0; static int memblock_reserved_in_slab __initdata_memblock = 0;
ulong __init_memblock choose_memblock_flags(void) enum memblock_flags __init_memblock choose_memblock_flags(void)
{ {
return system_has_some_mirror ? MEMBLOCK_MIRROR : MEMBLOCK_NONE; return system_has_some_mirror ? MEMBLOCK_MIRROR : MEMBLOCK_NONE;
} }
@ -109,7 +109,7 @@ bool __init_memblock memblock_overlaps_region(struct memblock_type *type,
static phys_addr_t __init_memblock static phys_addr_t __init_memblock
__memblock_find_range_bottom_up(phys_addr_t start, phys_addr_t end, __memblock_find_range_bottom_up(phys_addr_t start, phys_addr_t end,
phys_addr_t size, phys_addr_t align, int nid, phys_addr_t size, phys_addr_t align, int nid,
ulong flags) enum memblock_flags flags)
{ {
phys_addr_t this_start, this_end, cand; phys_addr_t this_start, this_end, cand;
u64 i; u64 i;
@ -143,7 +143,7 @@ __memblock_find_range_bottom_up(phys_addr_t start, phys_addr_t end,
static phys_addr_t __init_memblock static phys_addr_t __init_memblock
__memblock_find_range_top_down(phys_addr_t start, phys_addr_t end, __memblock_find_range_top_down(phys_addr_t start, phys_addr_t end,
phys_addr_t size, phys_addr_t align, int nid, phys_addr_t size, phys_addr_t align, int nid,
ulong flags) enum memblock_flags flags)
{ {
phys_addr_t this_start, this_end, cand; phys_addr_t this_start, this_end, cand;
u64 i; u64 i;
@ -188,7 +188,8 @@ __memblock_find_range_top_down(phys_addr_t start, phys_addr_t end,
*/ */
phys_addr_t __init_memblock memblock_find_in_range_node(phys_addr_t size, phys_addr_t __init_memblock memblock_find_in_range_node(phys_addr_t size,
phys_addr_t align, phys_addr_t start, phys_addr_t align, phys_addr_t start,
phys_addr_t end, int nid, ulong flags) phys_addr_t end, int nid,
enum memblock_flags flags)
{ {
phys_addr_t kernel_end, ret; phys_addr_t kernel_end, ret;
@ -251,7 +252,7 @@ phys_addr_t __init_memblock memblock_find_in_range(phys_addr_t start,
phys_addr_t align) phys_addr_t align)
{ {
phys_addr_t ret; phys_addr_t ret;
ulong flags = choose_memblock_flags(); enum memblock_flags flags = choose_memblock_flags();
again: again:
ret = memblock_find_in_range_node(size, align, start, end, ret = memblock_find_in_range_node(size, align, start, end,
@ -472,7 +473,8 @@ static void __init_memblock memblock_merge_regions(struct memblock_type *type)
static void __init_memblock memblock_insert_region(struct memblock_type *type, static void __init_memblock memblock_insert_region(struct memblock_type *type,
int idx, phys_addr_t base, int idx, phys_addr_t base,
phys_addr_t size, phys_addr_t size,
int nid, unsigned long flags) int nid,
enum memblock_flags flags)
{ {
struct memblock_region *rgn = &type->regions[idx]; struct memblock_region *rgn = &type->regions[idx];
@ -504,7 +506,7 @@ static void __init_memblock memblock_insert_region(struct memblock_type *type,
*/ */
int __init_memblock memblock_add_range(struct memblock_type *type, int __init_memblock memblock_add_range(struct memblock_type *type,
phys_addr_t base, phys_addr_t size, phys_addr_t base, phys_addr_t size,
int nid, unsigned long flags) int nid, enum memblock_flags flags)
{ {
bool insert = false; bool insert = false;
phys_addr_t obase = base; phys_addr_t obase = base;
@ -873,7 +875,8 @@ void __init_memblock __next_reserved_mem_region(u64 *idx,
* As both region arrays are sorted, the function advances the two indices * As both region arrays are sorted, the function advances the two indices
* in lockstep and returns each intersection. * in lockstep and returns each intersection.
*/ */
void __init_memblock __next_mem_range(u64 *idx, int nid, ulong flags, void __init_memblock __next_mem_range(u64 *idx, int nid,
enum memblock_flags flags,
struct memblock_type *type_a, struct memblock_type *type_a,
struct memblock_type *type_b, struct memblock_type *type_b,
phys_addr_t *out_start, phys_addr_t *out_start,
@ -982,7 +985,8 @@ void __init_memblock __next_mem_range(u64 *idx, int nid, ulong flags,
* *
* Reverse of __next_mem_range(). * Reverse of __next_mem_range().
*/ */
void __init_memblock __next_mem_range_rev(u64 *idx, int nid, ulong flags, void __init_memblock __next_mem_range_rev(u64 *idx, int nid,
enum memblock_flags flags,
struct memblock_type *type_a, struct memblock_type *type_a,
struct memblock_type *type_b, struct memblock_type *type_b,
phys_addr_t *out_start, phys_addr_t *out_start,
@ -1140,7 +1144,8 @@ int __init_memblock memblock_set_node(phys_addr_t base, phys_addr_t size,
static phys_addr_t __init memblock_alloc_range_nid(phys_addr_t size, static phys_addr_t __init memblock_alloc_range_nid(phys_addr_t size,
phys_addr_t align, phys_addr_t start, phys_addr_t align, phys_addr_t start,
phys_addr_t end, int nid, ulong flags) phys_addr_t end, int nid,
enum memblock_flags flags)
{ {
phys_addr_t found; phys_addr_t found;
@ -1162,7 +1167,7 @@ static phys_addr_t __init memblock_alloc_range_nid(phys_addr_t size,
phys_addr_t __init memblock_alloc_range(phys_addr_t size, phys_addr_t align, phys_addr_t __init memblock_alloc_range(phys_addr_t size, phys_addr_t align,
phys_addr_t start, phys_addr_t end, phys_addr_t start, phys_addr_t end,
ulong flags) enum memblock_flags flags)
{ {
return memblock_alloc_range_nid(size, align, start, end, NUMA_NO_NODE, return memblock_alloc_range_nid(size, align, start, end, NUMA_NO_NODE,
flags); flags);
@ -1170,14 +1175,14 @@ phys_addr_t __init memblock_alloc_range(phys_addr_t size, phys_addr_t align,
phys_addr_t __init memblock_alloc_base_nid(phys_addr_t size, phys_addr_t __init memblock_alloc_base_nid(phys_addr_t size,
phys_addr_t align, phys_addr_t max_addr, phys_addr_t align, phys_addr_t max_addr,
int nid, ulong flags) int nid, enum memblock_flags flags)
{ {
return memblock_alloc_range_nid(size, align, 0, max_addr, nid, flags); return memblock_alloc_range_nid(size, align, 0, max_addr, nid, flags);
} }
phys_addr_t __init memblock_alloc_nid(phys_addr_t size, phys_addr_t align, int nid) phys_addr_t __init memblock_alloc_nid(phys_addr_t size, phys_addr_t align, int nid)
{ {
ulong flags = choose_memblock_flags(); enum memblock_flags flags = choose_memblock_flags();
phys_addr_t ret; phys_addr_t ret;
again: again:
@ -1258,7 +1263,7 @@ static void * __init memblock_virt_alloc_internal(
{ {
phys_addr_t alloc; phys_addr_t alloc;
void *ptr; void *ptr;
ulong flags = choose_memblock_flags(); enum memblock_flags flags = choose_memblock_flags();
if (WARN_ONCE(nid == MAX_NUMNODES, "Usage of MAX_NUMNODES is deprecated. Use NUMA_NO_NODE instead\n")) if (WARN_ONCE(nid == MAX_NUMNODES, "Usage of MAX_NUMNODES is deprecated. Use NUMA_NO_NODE instead\n"))
nid = NUMA_NO_NODE; nid = NUMA_NO_NODE;
@ -1733,7 +1738,7 @@ phys_addr_t __init_memblock memblock_get_current_limit(void)
static void __init_memblock memblock_dump(struct memblock_type *type) static void __init_memblock memblock_dump(struct memblock_type *type)
{ {
phys_addr_t base, end, size; phys_addr_t base, end, size;
unsigned long flags; enum memblock_flags flags;
int idx; int idx;
struct memblock_region *rgn; struct memblock_region *rgn;
@ -1751,7 +1756,7 @@ static void __init_memblock memblock_dump(struct memblock_type *type)
snprintf(nid_buf, sizeof(nid_buf), " on node %d", snprintf(nid_buf, sizeof(nid_buf), " on node %d",
memblock_get_region_node(rgn)); memblock_get_region_node(rgn));
#endif #endif
pr_info(" %s[%#x]\t[%pa-%pa], %pa bytes%s flags: %#lx\n", pr_info(" %s[%#x]\t[%pa-%pa], %pa bytes%s flags: %#x\n",
type->name, idx, &base, &end, &size, nid_buf, flags); type->name, idx, &base, &end, &size, nid_buf, flags);
} }
} }

View File

@ -42,7 +42,7 @@ static void * __init __alloc_memory_core_early(int nid, u64 size, u64 align,
{ {
void *ptr; void *ptr;
u64 addr; u64 addr;
ulong flags = choose_memblock_flags(); enum memblock_flags flags = choose_memblock_flags();
if (limit > memblock.current_limit) if (limit > memblock.current_limit)
limit = memblock.current_limit; limit = memblock.current_limit;