]> git.baikalelectronics.ru Git - kernel.git/commit
arm64: Introduce a way to disable the 32bit vdso
authorMarc Zyngier <maz@kernel.org>
Mon, 6 Jul 2020 16:37:59 +0000 (17:37 +0100)
committerWill Deacon <will@kernel.org>
Wed, 8 Jul 2020 20:57:51 +0000 (21:57 +0100)
commitb3068215b9e15da0ee6607702a0344d6a76a4758
treeb9ac51db97d88b22b5bb36e8ed35fcbb718e9eb2
parent89434f399274a57920e0a8a8f61464f44b0f1051
arm64: Introduce a way to disable the 32bit vdso

We have a class of errata (grouped under the ARM64_WORKAROUND_1418040
banner) that force the trapping of counter access from 32bit EL0.

We would normally disable the whole vdso for such defect, except that
it would disable it for 64bit userspace as well, which is a shame.

Instead, add a new vdso_clock_mode, which signals that the vdso
isn't usable for compat tasks.  This gets checked in the new
vdso_clocksource_ok() helper, now provided for the 32bit vdso.

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-2-maz@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
arch/arm64/include/asm/vdso/clocksource.h
arch/arm64/include/asm/vdso/compat_gettimeofday.h