[tip: timers/urgent] vdso/gettimeofday: Correct the read of tz_minuteswest and tz_dsttime

From: tip-bot2 for Thomas Weißschuh

Date: Sun Oct 25 2026 - 18:37:52 EST


The following commit has been merged into the timers/urgent branch of tip:

Commit-ID: cbd0f65b48f52d308c457b0fd5201324abadb501
Gitweb: https://git.kernel.org/tip/cbd0f65b48f52d308c457b0fd5201324abadb501
Author: Thomas Weißschuh <thomas.weissschuh@xxxxxxxxxxxxx>
AuthorDate: Wed, 02 Sep 2026 14:06:15 +02:00
Committer: Thomas Gleixner <tglx@xxxxxxxxxx>
CommitterDate: Sun, 25 Oct 2026 23:30:54 +01:00

vdso/gettimeofday: Correct the read of tz_minuteswest and tz_dsttime

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@xxxxxxxxxxxxx>
Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxx>
Reviewed-by: Nam Cao <namcao@xxxxxxxxxxxxx>
Reviewed-by: Vincenzo Frascino <vincenzo.frascino@xxxxxxx>
Link: https://patch.msgid.link/20260902-vdso-tz-v1-1-4d37a6b85ff9@xxxxxxxxxxxxx
---
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 f7a591a..6e9b030 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;