Re: [PATCH] kexec: allocate buffer in top-down, if specified, correctly
From: Thiago Jung Bauermann
Date: Thu Apr 27 2017 - 18:00:47 EST
Hello,
Am Mittwoch, 26. April 2017, 17:22:09 BRT schrieb AKASHI Takahiro:
> The current kexec_locate_mem_hole(kbuf.top_down == 1) stops searching at
> the first memory region that has enough space for requested size even if
> some of higher regions may also have.
kexec_locate_mem_hole expects arch_kexec_walk_mem to walk memory from top to
bottom if top_down is true. That is what powerpc's version does.
Isn't it possible to walk resources from top to bottom?
> This behavior is not consistent with locate_hole(hole_end == -1) function
> of kexec-tools.
>
> This patch fixes the bug, going though all the memory regions anyway.
This patch would break powerpc, because at the end of the memory walk kbuf
would have the lowest memory hole.
If it's not possible to walk resources in reverse order, then this patch needs
to change powerpc to always walk memory from bottom to top.
--
Thiago Jung Bauermann
IBM Linux Technology Center