memblock: use memblock_free for freeing virtual pointers
[sfrench/cifs-2.6.git] / mm / percpu.c
index d65ddf6f2a353487b9ade8e5e8fed98540297bd2..f5b2c2ea5a548adf4704ee7aacfdade4be3c1c13 100644 (file)
@@ -2472,7 +2472,7 @@ struct pcpu_alloc_info * __init pcpu_alloc_alloc_info(int nr_groups,
  */
 void __init pcpu_free_alloc_info(struct pcpu_alloc_info *ai)
 {
-       memblock_phys_free(__pa(ai), ai->__ai_size);
+       memblock_free(ai, ai->__ai_size);
 }
 
 /**
@@ -3134,7 +3134,7 @@ out_free_areas:
 out_free:
        pcpu_free_alloc_info(ai);
        if (areas)
-               memblock_phys_free(__pa(areas), areas_size);
+               memblock_free(areas, areas_size);
        return rc;
 }
 #endif /* BUILD_EMBED_FIRST_CHUNK */
@@ -3256,7 +3256,7 @@ enomem:
                free_fn(page_address(pages[j]), PAGE_SIZE);
        rc = -ENOMEM;
 out_free_ar:
-       memblock_phys_free(__pa(pages), pages_size);
+       memblock_free(pages, pages_size);
        pcpu_free_alloc_info(ai);
        return rc;
 }
@@ -3286,7 +3286,7 @@ static void * __init pcpu_dfl_fc_alloc(unsigned int cpu, size_t size,
 
 static void __init pcpu_dfl_fc_free(void *ptr, size_t size)
 {
-       memblock_phys_free(__pa(ptr), size);
+       memblock_free(ptr, size);
 }
 
 void __init setup_per_cpu_areas(void)