[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ebba1959-53b3-4001-bf7d-30704cd3866d@arm.com>
Date: Mon, 1 Jul 2024 15:58:13 +0100
From: Vincenzo Frascino <vincenzo.frascino@....com>
To: Anna-Maria Behnsen <anna-maria@...utronix.de>,
Andy Lutomirski <luto@...nel.org>, Thomas Gleixner <tglx@...utronix.de>
Cc: linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/5] vdso/gettimeofday: Clarify comment about open coded
function
On 01/07/2024 15:47, Anna-Maria Behnsen wrote:
> The two comments state, that the following code open codes something but
> they lack to specify what exactly is open coded.
>
> Expand comments by mentioning the reference to the open coded function.
>
> Signed-off-by: Anna-Maria Behnsen <anna-maria@...utronix.de>
Reviewed-by: Vincenzo Frascino <vincenzo.frascino@....com>
> ---
> lib/vdso/gettimeofday.c | 20 ++++++++++----------
> 1 file changed, 10 insertions(+), 10 deletions(-)
>
> diff --git a/lib/vdso/gettimeofday.c b/lib/vdso/gettimeofday.c
> index 899850bd6f0b..c01eaafd8041 100644
> --- a/lib/vdso/gettimeofday.c
> +++ b/lib/vdso/gettimeofday.c
> @@ -140,14 +140,14 @@ static __always_inline int do_hres(const struct vdso_data *vd, clockid_t clk,
>
> do {
> /*
> - * Open coded to handle VDSO_CLOCKMODE_TIMENS. Time namespace
> - * enabled tasks have a special VVAR page installed which
> - * has vd->seq set to 1 and vd->clock_mode set to
> - * VDSO_CLOCKMODE_TIMENS. For non time namespace affected tasks
> - * this does not affect performance because if vd->seq is
> - * odd, i.e. a concurrent update is in progress the extra
> - * check for vd->clock_mode is just a few extra
> - * instructions while spin waiting for vd->seq to become
> + * Open coded function vdso_read_begin() to handle
> + * VDSO_CLOCKMODE_TIMENS. Time namespace enabled tasks have a
> + * special VVAR page installed which has vd->seq set to 1 and
> + * vd->clock_mode set to VDSO_CLOCKMODE_TIMENS. For non time
> + * namespace affected tasks this does not affect performance
> + * because if vd->seq is odd, i.e. a concurrent update is in
> + * progress the extra check for vd->clock_mode is just a few
> + * extra instructions while spin waiting for vd->seq to become
> * even again.
> */
> while (unlikely((seq = READ_ONCE(vd->seq)) & 1)) {
> @@ -223,8 +223,8 @@ static __always_inline int do_coarse(const struct vdso_data *vd, clockid_t clk,
>
> do {
> /*
> - * Open coded to handle VDSO_CLOCK_TIMENS. See comment in
> - * do_hres().
> + * Open coded function vdso_read_begin() to handle
> + * VDSO_CLOCK_TIMENS. See comment in do_hres().
> */
> while ((seq = READ_ONCE(vd->seq)) & 1) {
> if (IS_ENABLED(CONFIG_TIME_NS) &&
>
--
Regards,
Vincenzo
Powered by blists - more mailing lists