Re: [PATCH] kdump: Write a correct address of mem_section into vmcoreinfo

From: Ingo Molnar
Date: Sat Jan 13 2018 - 05:48:55 EST



* Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> wrote:

> Depending on configuration mem_section can now be an array or a pointer
> to an array allocated dynamically. In most cases, we can continue to refer
> to it as 'mem_section' regardless of what it is.
>
> But there's one exception: '&mem_section' means "address of the array" if
> mem_section is an array, but if mem_section is a pointer, it would mean
> "address of the pointer".
>
> We've stepped onto this in kdump code. VMCOREINFO_SYMBOL(mem_section)
> writes down address of pointer into vmcoreinfo, not array as we wanted.
>
> Let's introduce VMCOREINFO_SYMBOL_ARRAY() that would handle the
> situation correctly for both cases.
>
> Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
> Fixes: 83e3c48729d9 ("mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y")
> Cc: stable@xxxxxxxxxxxxxxx
> Acked-by: Baoquan He <bhe@xxxxxxxxxx>
> Acked-by: Dave Young <dyoung@xxxxxxxxxx>

You forgot the Reported-by - I added that to the commit.

Thanks,

Ingo