[PATCH] [PPC64] Fix memory corruption when using realloc_memory_ranges()
Simon Horman
horms at verge.net.au
Sun Jan 18 20:17:18 EST 2009
On Fri, Jan 16, 2009 at 07:11:34PM +0100, Bernhard Walle wrote:
> Because realloc_memory_ranges() makes the old memory invalid, and we return
> a pointer to memory_range in get_memory_ranges(), we need to copy the contents
> in get_memory_ranges().
>
> Some code that calls realloc_memory_ranges() may be triggered by
> get_base_ranges() which is called after get_memory_ranges().
>
> Yes, the memory needs to be deleted somewhere, but I don't know currently
> where it's the best, and since it's not in a loop and memory is deleted
> anyway after program termination I don't want to introduce unneccessary
> complexity. The problem is that get_base_ranges() gets called from
> architecture independent code and that allocation is PPC64-specific here.
Thanks, this sounds like a bit of a mess, but I think that your
patch does improve the situation.
Applied.
--
Simon Horman
VA Linux Systems Japan K.K., Sydney, Australia Satellite Office
H: www.vergenet.net/~horms/ W: www.valinux.co.jp/en
More information about the kexec
mailing list