linux/arch/arm64/kvm
Marc Zyngier 47e6223c84 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: 90134ac9ca ("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
2021-08-04 13:10:47 +01:00
..
hyp arm64 updates for 5.14 2021-06-28 14:04:24 -07:00
vgic KVM: arm64: vgic: Implement SW-driven deactivation 2021-06-01 10:46:00 +01:00
arch_timer.c KVM: arm64: timer: Add support for SW-based deactivation 2021-06-01 10:46:00 +01:00
arm.c KVM: arm64: Unregister HYP sections from kmemleak in protected mode 2021-08-04 13:10:47 +01:00
debug.c Merge branch 'kvm-arm64/debug-5.13' into kvmarm-master/next 2021-04-13 15:34:15 +01:00
fpsimd.c KVM: arm64: Save/restore SVE state for nVHE 2021-03-18 14:23:12 +00:00
guest.c KVM/arm64 updates for v5.14. 2021-06-25 11:24:24 -04:00
handle_exit.c KVM: arm64: Log source when panicking from nVHE hyp 2021-04-01 09:54:37 +01:00
hypercalls.c KVM: arm64: Add support for the KVM PTP service 2021-04-07 16:33:20 +01:00
inject_fault.c KVM: arm64: Move AArch32 exceptions over to AArch64 sysregs 2020-11-10 11:22:51 +00:00
irq.h
Kconfig kvm: Select SCHED_INFO instead of TASK_DELAY_ACCT 2021-05-12 11:43:24 +02:00
Makefile KVM: stats: Add fd-based API to read binary stats data 2021-06-24 11:47:57 -04:00
mmio.c KVM: arm64: Make kvm_skip_instr() and co private to HYP 2020-11-10 08:34:24 +00:00
mmu.c KVM: arm64: Fix detection of shared VMAs on guest fault 2021-07-14 09:49:10 +01:00
perf.c Merge branch 'kvm-arm64/kill_oprofile_dependency' into kvmarm-master/next 2021-04-22 13:41:49 +01:00
pmu-emul.c KVM: arm64: Restore PMU configuration on first run 2021-06-18 14:18:37 +01:00
pmu.c KVM: arm64: Disable PMU support in protected mode 2021-03-19 12:02:19 +00:00
psci.c KVM: arm64: Convert ARCH_WORKAROUND_2 to arm64_get_spectre_v4_state() 2020-09-29 16:08:17 +01:00
pvtime.c KVM: arm64: Use kvm_write_guest_lock when init stolen time 2020-12-03 19:02:18 +00:00
reset.c KVM: arm64: Expose KVM_ARM_CAP_MTE 2021-06-22 14:08:06 +01:00
sys_regs.c KVM: arm64: Expose KVM_ARM_CAP_MTE 2021-06-22 14:08:06 +01:00
sys_regs.h Merge branch 'kvm-arm64/copro-no-more' into kvmarm-master/next 2020-11-27 11:33:16 +00:00
trace_arm.h KVM: Move arm64's MMU notifier trace events to generic code 2021-04-17 08:30:56 -04:00
trace_handle_exit.h KVM: arm64: Fix address truncation in traces 2020-09-04 10:53:48 +01:00
trace.h
trng.c KVM: arm64: Implement the TRNG hypervisor call 2021-01-25 22:19:31 +00:00
va_layout.c KVM: arm64: Generate final CTR_EL0 value when running in Protected mode 2021-03-25 11:00:33 +00:00
vgic-sys-reg-v3.c KVM: arm64: Drop is_aarch32 trap attribute 2020-11-10 11:22:52 +00:00