Re: [PATCH] kmemleak: powerpc: skip scanning holes in the .bss section

From: Qian Cai
Date: Thu Mar 21 2019 - 14:17:55 EST


On Thu, 2019-03-21 at 17:19 +0000, Catalin Marinas wrote:
> The commit 2d4f567103ff ("KVM: PPC: Introduce kvm_tmp framework") adds
> kvm_tmp[] into the .bss section and then free the rest of unused spaces
> back to the page allocator.
>
> kernel_init
> Â kvm_guest_init
> ÂÂÂÂkvm_free_tmp
> ÂÂÂÂÂÂfree_reserved_area
> ÂÂÂÂÂÂÂÂfree_unref_page
> ÂÂÂÂÂÂÂÂÂÂfree_unref_page_prepare
>
> With DEBUG_PAGEALLOC=y, it will unmap those pages from kernel. As the
> result, kmemleak scan will trigger a panic when it scans the .bss
> section with unmapped pages.
>
> This patch creates dedicated kmemleak objects for the .data, .bss and
> potentially .data..ro_after_init sections to allow partial freeing via
> the kmemleak_free_part() in the powerpc kvm_free_tmp() function.
>
> Acked-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx> (powerpc)
> Reported-by: Qian Cai <cai@xxxxxx>
> Signed-off-by: Catalin Marinas <catalin.marinas@xxxxxxx>

Tested-by: Qian Cai <cai@xxxxxx>