Re: [PATCH] clocksource: Fix arm_arch_timer clockmode when vDSO disabled

From: Vincenzo Frascino
Date: Fri Feb 21 2020 - 09:48:34 EST


Hi Marc,

On 21/02/2020 13:34, Marc Zyngier wrote:
> Vincenzo,
>
> Please include Mark and myself for anything that touches the arch timers
> (get_maintainer.pl will tell you who you need to cc).
>

Sorry about that, I posted it too quickly without the proper Cc on the patch.

> On 2020-02-21 13:03, Vincenzo Frascino wrote:

[...]

>
> This feels pretty clunky.
>
> I'd extect VDSO_ARCH_CLOCKMODES (or some similar architecture-specific
> symbol) to be used for vdso_default, and that symbol to be defined as
> VDSO_CLOCKMODE_NONE when CONFIG_GENERIC_GETTIMEOFDAY isn't selected.
>

My understanding is that currently VDSO_ARCH_CLOCKMODES depending on the
architecture can identify one or more clocks. In the case of arm and the
arm_arch_timer the arch specific symbol is VDSO_CLOCKMODE_ARCHTIMER (used for
vdso_default), which as you are correctly stating has to be defined as
VDSO_CLOCKMODE_NONE when CONFIG_GENERIC_GETTIMEOFDAY isn't selected.

> Otherwise, you'll end-up replicating the same pattern in every
> clock-source that gets used by the VDSO.

Based on my investigation this fix should be replicated for all the clocksources
used by architectures supported by Unified VDSO and of which VDSOs can be
disabled (otherwise the current solution works). After a quick grep on the
kernel tree:

$ grep -nr "config VDSO" *

arch/arm/mm/Kconfig:895:config VDSO

Since the only clocksource that falls into these conditions seems to be
arm_arch_timer I modified its driver.

Please feel free to correct me if I missed or misunderstood something.

>
> ÂÂÂÂÂÂÂ M.

--
Regards,
Vincenzo

Attachment: pEpkey.asc
Description: application/pgp-keys