On 14.3.2018 16:01, Michal Simek wrote:
> From: Rob Herring <r...@kernel.org>
> 
> Microblaze doesn't set CONFIG_NO_BOOTMEM and so memblock_virt_alloc()
> doesn't work for CONFIG_HAVE_MEMBLOCK && !CONFIG_NO_BOOTMEM.
> 
> Similar change was already done by others architectures
> "ARM: mm: Remove bootmem code and switch to NO_BOOTMEM"
> (sha1: 84f452b1e8fc73ac0e31254c66e3e2260ce5263d)
> or
> "openrisc: Consolidate setup to use memblock instead of bootmem"
> (sha1: 266c7fad157265bb54d17db1c9545f2aaa488643)
> or
> "parisc: Drop bootmem and switch to memblock"
> (sha1: 4fe9e1d957e45ad8eba9885ee860a0e93d13a7c7)
> or
> "powerpc: Remove bootmem allocator"
> (sha1: 10239733ee8617bac3f1c1769af43a88ed979324)
> or
> "s390/mm: Convert bootmem to memblock"
> (sha1: 50be634507284eea38df78154d22615d21200b42)
> or
> "sparc64: Convert over to NO_BOOTMEM."
> (sha1: 625d693e9784f988371e69c2b41a2172c0be6c11)
> or
> "xtensa: drop sysmem and switch to memblock"
> (sha1: 0e46c1115f5816949220d62dd3ff04aa68e7ac6b)
> 
> Issue was introduced by:
> "of/fdt: use memblock_virt_alloc for early alloc"
> (sha1: 0fa1c579349fdd90173381712ad78aa99c09d38b)
> 
> Signed-off-by: Rob Herring <r...@kernel.org>
> Tested-by: Alvaro Gamez Machado <alvaro.ga...@hazent.com>
> Tested-by: Michal Simek <michal.si...@xilinx.com>
> Signed-off-by: Michal Simek <michal.si...@xilinx.com>
> ---
> 
>  arch/microblaze/Kconfig   |  1 +
>  arch/microblaze/mm/init.c | 55 
> ++++++-----------------------------------------
>  2 files changed, 7 insertions(+), 49 deletions(-)
> 
> diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig
> index 4f798aa671dd..3817a3e2146c 100644
> --- a/arch/microblaze/Kconfig
> +++ b/arch/microblaze/Kconfig
> @@ -24,6 +24,7 @@ config MICROBLAZE
>       select HAVE_FTRACE_MCOUNT_RECORD
>       select HAVE_FUNCTION_GRAPH_TRACER
>       select HAVE_FUNCTION_TRACER
> +     select NO_BOOTMEM
>       select HAVE_MEMBLOCK
>       select HAVE_MEMBLOCK_NODE_MAP
>       select HAVE_OPROFILE
> diff --git a/arch/microblaze/mm/init.c b/arch/microblaze/mm/init.c
> index 5bc9c7fbb541..6ab1ef2daf1d 100644
> --- a/arch/microblaze/mm/init.c
> +++ b/arch/microblaze/mm/init.c
> @@ -32,9 +32,6 @@
>  #ifndef CONFIG_MMU
>  unsigned int __page_offset;
>  EXPORT_SYMBOL(__page_offset);
> -
> -#else
> -static int init_bootmem_done;
>  #endif /* CONFIG_MMU */
>  
>  char *klimit = _end;
> @@ -174,17 +171,6 @@ void __init setup_memory(void)
>       pr_info("%s: max_low_pfn: %#lx\n", __func__, max_low_pfn);
>       pr_info("%s: max_pfn: %#lx\n", __func__, max_pfn);
>  
> -     /*
> -      * Find an area to use for the bootmem bitmap.
> -      * We look for the first area which is at least
> -      * 128kB in length (128kB is enough for a bitmap
> -      * for 4GB of memory, using 4kB pages), plus 1 page
> -      * (in case the address isn't page-aligned).
> -      */
> -     map_size = init_bootmem_node(NODE_DATA(0),

map_size variable should be also removed. Fixed in v2.

Thanks,
Michal

-- 
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Xilinx Microblaze
Maintainer of Linux kernel - Xilinx Zynq ARM and ZynqMP ARM64 SoCs
U-Boot custodian - Xilinx Microblaze/Zynq/ZynqMP SoCs


Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to