mirror of
https://github.com/torvalds/linux.git
synced 2024-12-23 03:11:46 +00:00
3d1ad640f8
We should only try to initialize GICv4 data structures on a GICv4 capable system. Move the vgic_supports_direct_msis() check inito vgic_v4_init() so that any KVM VGIC initialization path does not fail on non-GICv4 systems. Also be slightly more strict in the checking of the return value in vgic_its_create, and only error out on negative return values from the vgic_v4_init() function. This is important because the kvm device code only treats negative values as errors and only cleans up in this case. Errornously treating a positive return value as an error from the vgic_v4_init() function can lead to NULL pointer dereferences, as has recently been observed. Acked-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org> |
||
---|---|---|
.. | ||
hyp | ||
vgic | ||
aarch32.c | ||
arch_timer.c | ||
arm.c | ||
mmio.c | ||
mmu.c | ||
perf.c | ||
pmu.c | ||
psci.c | ||
trace.h |