diff options
| author | Marc Zyngier <[email protected]> | 2020-07-06 16:38:00 +0000 |
|---|---|---|
| committer | Will Deacon <[email protected]> | 2020-07-08 20:57:51 +0000 |
| commit | c1fbec4ac0d701f350a581941d35643d5a9cd184 (patch) | |
| tree | 31240fab9eb3cba623c6c3fcc9b80c4c9ba54827 /drivers/clocksource/arm_arch_timer.c | |
| parent | arm64: Introduce a way to disable the 32bit vdso (diff) | |
| download | kernel-c1fbec4ac0d701f350a581941d35643d5a9cd184.tar.gz kernel-c1fbec4ac0d701f350a581941d35643d5a9cd184.zip | |
arm64: arch_timer: Allow an workaround descriptor to disable compat vdso
As we are about to disable the vdso for compat tasks in some circumstances,
let's allow a workaround descriptor to express exactly that.
Signed-off-by: Marc Zyngier <[email protected]>
Acked-by: Mark Rutland <[email protected]>
Cc: [email protected]
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Will Deacon <[email protected]>
Diffstat (limited to 'drivers/clocksource/arm_arch_timer.c')
| -rw-r--r-- | drivers/clocksource/arm_arch_timer.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c index ecf7b7db2d05..a8e4fb429f52 100644 --- a/drivers/clocksource/arm_arch_timer.c +++ b/drivers/clocksource/arm_arch_timer.c @@ -566,6 +566,9 @@ void arch_timer_enable_workaround(const struct arch_timer_erratum_workaround *wa if (wa->read_cntvct_el0) { clocksource_counter.vdso_clock_mode = VDSO_CLOCKMODE_NONE; vdso_default = VDSO_CLOCKMODE_NONE; + } else if (wa->disable_compat_vdso && vdso_default != VDSO_CLOCKMODE_NONE) { + vdso_default = VDSO_CLOCKMODE_ARCHTIMER_NOCOMPAT; + clocksource_counter.vdso_clock_mode = vdso_default; } } |
