Commit f67656b7 authored by Vincent Donnefort's avatar Vincent Donnefort
Browse files

ANDROID: KVM: arm64: Fix kmemleak for pKVM modules



The kernel module loader allocates a vmalloc region per type of memory
where hypervisor sections are copied, according to their ELF type. This
means those sections can be distributed over several vmalloc regions and
by definition over several kmemleak objects.

kmemleak_free_part() can only access a single kmemleak object even
though the size is bigger than that object. Also, this function is
intended to be used solely in early boot for memblocks.

Ideally we would just remove the pKVM sections from kmemleak objects,
but we have no way to remove those sections from the list of scanned
areas (or to even know if areas have been created). So it is safer to
disable kmemleak scan completely.

Bug: 278749606
Bug: 244543039
Bug: 244373730
Bug: 359429030
Fixes: be027b19 ("ANDROID: KVM: arm64: Allow loading modules to the pKVM hypervisor")
Change-Id: I0c25bf6211c5e653f52777917025c64bab778abe
Signed-off-by: default avatarVincent Donnefort <vdonnefort@google.com>
parent 73613a1d
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment