mm/memblock.c: skip kmemleak for kasan_init()
[sfrench/cifs-2.6.git] / include / linux / memblock.h
index aee299a6aa76d328f4d0bcf3494a5ad93b496ee9..64c41cf455906ab750d042f93410fa0c4c5aded6 100644 (file)
@@ -154,7 +154,6 @@ void __next_mem_range_rev(u64 *idx, int nid, enum memblock_flags flags,
 void __next_reserved_mem_region(u64 *idx, phys_addr_t *out_start,
                                phys_addr_t *out_end);
 
-void __memblock_free_early(phys_addr_t base, phys_addr_t size);
 void __memblock_free_late(phys_addr_t base, phys_addr_t size);
 
 /**
@@ -320,6 +319,7 @@ static inline int memblock_get_region_node(const struct memblock_region *r)
 /* Flags for memblock allocation APIs */
 #define MEMBLOCK_ALLOC_ANYWHERE        (~(phys_addr_t)0)
 #define MEMBLOCK_ALLOC_ACCESSIBLE      0
+#define MEMBLOCK_ALLOC_KASAN           1
 
 /* We are using top down, so it is safe to use 0 here */
 #define MEMBLOCK_LOW_LIMIT 0
@@ -414,13 +414,13 @@ static inline void * __init memblock_alloc_node_nopanic(phys_addr_t size,
 static inline void __init memblock_free_early(phys_addr_t base,
                                              phys_addr_t size)
 {
-       __memblock_free_early(base, size);
+       memblock_free(base, size);
 }
 
 static inline void __init memblock_free_early_nid(phys_addr_t base,
                                                  phys_addr_t size, int nid)
 {
-       __memblock_free_early(base, size);
+       memblock_free(base, size);
 }
 
 static inline void __init memblock_free_late(phys_addr_t base, phys_addr_t size)