* [PATCH] vdso/gettimeofday: Clean up read of tz_minuteswest and tz_dsttime
@ 2026-09-02 12:06 Thomas Weißschuh
2026-09-02 13:13 ` Nam Cao
2026-09-02 13:56 ` Vincenzo Frascino
0 siblings, 2 replies; 3+ messages in thread
From: Thomas Weißschuh @ 2026-09-02 12:06 UTC (permalink / raw)
To: Andy Lutomirski, Thomas Gleixner, Vincenzo Frascino,
Anna-Maria Behnsen, Nam Cao
Cc: linux-kernel, Thomas Weißschuh
When these fields got moved from 'struct vdso_time_data' to the new
'struct vdso_clock', this access was forgotten.
'vd' is not an array, but a pointer to a single structure. The code
works by accident in its current form as CS_HRES_COARSE is 0.
Replace the incorrect array access with a regular pointer dereference.
Fixes: 886653e36639 ("vdso: Rework struct vdso_time_data and introduce struct vdso_clock")
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
---
lib/vdso/gettimeofday.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/vdso/gettimeofday.c b/lib/vdso/gettimeofday.c
index f7a591aba59f..6e9b03051bee 100644
--- a/lib/vdso/gettimeofday.c
+++ b/lib/vdso/gettimeofday.c
@@ -374,8 +374,8 @@ __cvdso_gettimeofday_data(const struct vdso_time_data *vd,
if (vdso_is_timens_clock(vc))
vd = vdso_timens_data(vd);
- tz->tz_minuteswest = vd[CS_HRES_COARSE].tz_minuteswest;
- tz->tz_dsttime = vd[CS_HRES_COARSE].tz_dsttime;
+ tz->tz_minuteswest = vd->tz_minuteswest;
+ tz->tz_dsttime = vd->tz_dsttime;
}
return 0;
---
base-commit: cee9395acd8043be0644b25c34bfa86623f2b935
change-id: 20260902-vdso-tz-b999f43c24bb
Best regards,
--
Thomas Weißschuh <thomas.weissschuh@linutronix.de>
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH] vdso/gettimeofday: Clean up read of tz_minuteswest and tz_dsttime
2026-09-02 12:06 [PATCH] vdso/gettimeofday: Clean up read of tz_minuteswest and tz_dsttime Thomas Weißschuh
@ 2026-09-02 13:13 ` Nam Cao
2026-09-02 13:56 ` Vincenzo Frascino
1 sibling, 0 replies; 3+ messages in thread
From: Nam Cao @ 2026-09-02 13:13 UTC (permalink / raw)
To: Thomas Weißschuh, Andy Lutomirski, Thomas Gleixner,
Vincenzo Frascino, Anna-Maria Behnsen
Cc: linux-kernel, Thomas Weißschuh
Thomas Weißschuh <thomas.weissschuh@linutronix.de> writes:
> When these fields got moved from 'struct vdso_time_data' to the new
> 'struct vdso_clock', this access was forgotten.
>
> 'vd' is not an array, but a pointer to a single structure. The code
> works by accident in its current form as CS_HRES_COARSE is 0.
>
> Replace the incorrect array access with a regular pointer dereference.
>
> Fixes: 886653e36639 ("vdso: Rework struct vdso_time_data and introduce struct vdso_clock")
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: Nam Cao <namcao@linutronix.de>
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH] vdso/gettimeofday: Clean up read of tz_minuteswest and tz_dsttime
2026-09-02 12:06 [PATCH] vdso/gettimeofday: Clean up read of tz_minuteswest and tz_dsttime Thomas Weißschuh
2026-09-02 13:13 ` Nam Cao
@ 2026-09-02 13:56 ` Vincenzo Frascino
1 sibling, 0 replies; 3+ messages in thread
From: Vincenzo Frascino @ 2026-09-02 13:56 UTC (permalink / raw)
To: Thomas Weißschuh, Andy Lutomirski, Thomas Gleixner,
Anna-Maria Behnsen, Nam Cao
Cc: linux-kernel
On 02/09/2026 13:06, Thomas Weißschuh wrote:
> When these fields got moved from 'struct vdso_time_data' to the new
> 'struct vdso_clock', this access was forgotten.
>
> 'vd' is not an array, but a pointer to a single structure. The code
> works by accident in its current form as CS_HRES_COARSE is 0.
>
> Replace the incorrect array access with a regular pointer dereference.
>
> Fixes: 886653e36639 ("vdso: Rework struct vdso_time_data and introduce struct vdso_clock")
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
> ---
> lib/vdso/gettimeofday.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/lib/vdso/gettimeofday.c b/lib/vdso/gettimeofday.c
> index f7a591aba59f..6e9b03051bee 100644
> --- a/lib/vdso/gettimeofday.c
> +++ b/lib/vdso/gettimeofday.c
> @@ -374,8 +374,8 @@ __cvdso_gettimeofday_data(const struct vdso_time_data *vd,
> if (vdso_is_timens_clock(vc))
> vd = vdso_timens_data(vd);
>
> - tz->tz_minuteswest = vd[CS_HRES_COARSE].tz_minuteswest;
> - tz->tz_dsttime = vd[CS_HRES_COARSE].tz_dsttime;
> + tz->tz_minuteswest = vd->tz_minuteswest;
> + tz->tz_dsttime = vd->tz_dsttime;
> }
>
> return 0;
>
> ---
> base-commit: cee9395acd8043be0644b25c34bfa86623f2b935
> change-id: 20260902-vdso-tz-b999f43c24bb
>
> Best regards,
> --
> Thomas Weißschuh <thomas.weissschuh@linutronix.de>
>
--
Regards,
Vincenzo
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-09-02 13:56 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-02 12:06 [PATCH] vdso/gettimeofday: Clean up read of tz_minuteswest and tz_dsttime Thomas Weißschuh
2026-09-02 13:13 ` Nam Cao
2026-09-02 13:56 ` Vincenzo Frascino
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®