]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commit
KVM: arm64: Unregister HYP sections from kmemleak in protected mode
authorMarc Zyngier <maz@kernel.org>
Mon, 2 Aug 2021 12:38:30 +0000 (13:38 +0100)
committerMarc Zyngier <maz@kernel.org>
Wed, 4 Aug 2021 12:10:47 +0000 (13:10 +0100)
commit47e6223c841e029bfc23c3ce594dac5525cebaf8
treead65ee53a676e788d59364a6c70521de2bfaa303
parenteb48d154cd0dade56a0e244f0cfa198ea2925ed3
KVM: arm64: Unregister HYP sections from kmemleak in protected mode

Booting a KVM host in protected mode with kmemleak quickly results
in a pretty bad crash, as kmemleak doesn't know that the HYP sections
have been taken away. This is specially true for the BSS section,
which is part of the kernel BSS section and registered at boot time
by kmemleak itself.

Unregister the HYP part of the BSS before making that section
HYP-private. The rest of the HYP-specific data is obtained via
the page allocator or lives in other sections, none of which is
subjected to kmemleak.

Fixes: 90134ac9cabb ("KVM: arm64: Protect the .hyp sections from the host")
Reviewed-by: Quentin Perret <qperret@google.com>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Cc: stable@vger.kernel.org # 5.13
Link: https://lore.kernel.org/r/20210802123830.2195174-3-maz@kernel.org
arch/arm64/kvm/arm.c