arm64: arch_timer: Disable the compat vdso for cores affected by ARM64_WORKAROUND_1418040
authorMarc Zyngier <maz@kernel.org>
Mon, 6 Jul 2020 16:38:01 +0000 (17:38 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 16 Jul 2020 06:13:34 +0000 (08:13 +0200)
commit4bf31fc4705fc72e10a42ae580708808b211dc1c
treebc185be1d67c7f7a41ec480b4f816e17127e673b
parent4d2c72712eb3520802ad762b3cb8698cf5212821
arm64: arch_timer: Disable the compat vdso for cores affected by ARM64_WORKAROUND_1418040

commit 4b661d6133c5d3a7c9aca0b4ee5a78c7766eff3f upstream.

ARM64_WORKAROUND_1418040 requires that AArch32 EL0 accesses to
the virtual counter register are trapped and emulated by the kernel.
This makes the vdso pretty pointless, and in some cases livelock
prone.

Provide a workaround entry that limits the vdso to 64bit tasks.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20200706163802.1836732-4-maz@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/clocksource/arm_arch_timer.c