|
|
Log in / Subscribe / Register

vdso: Rework struct vdso_time_data and introduce struct vdso_clock

From:  Thomas Weißschuh <thomas.weissschuh-AT-linutronix.de>
To:  Andy Lutomirski <luto-AT-kernel.org>, Thomas Gleixner <tglx-AT-linutronix.de>, Vincenzo Frascino <vincenzo.frascino-AT-arm.com>, Catalin Marinas <catalin.marinas-AT-arm.com>, Will Deacon <will-AT-kernel.org>, Anna-Maria Behnsen <anna-maria-AT-linutronix.de>, Frederic Weisbecker <frederic-AT-kernel.org>, Ingo Molnar <mingo-AT-redhat.com>, Borislav Petkov <bp-AT-alien8.de>, Dave Hansen <dave.hansen-AT-linux.intel.com>, x86-AT-kernel.org, "H. Peter Anvin" <hpa-AT-zytor.com>, Madhavan Srinivasan <maddy-AT-linux.ibm.com>, Michael Ellerman <mpe-AT-ellerman.id.au>, Nicholas Piggin <npiggin-AT-gmail.com>, Christophe Leroy <christophe.leroy-AT-csgroup.eu>, Naveen N Rao <naveen-AT-kernel.org>, Heiko Carstens <hca-AT-linux.ibm.com>, Vasily Gorbik <gor-AT-linux.ibm.com>, Alexander Gordeev <agordeev-AT-linux.ibm.com>, Christian Borntraeger <borntraeger-AT-linux.ibm.com>, Sven Schnelle <svens-AT-linux.ibm.com>, Arnd Bergmann <arnd-AT-arndb.de>
Subject:  [PATCH 00/19] vdso: Rework struct vdso_time_data and introduce struct vdso_clock
Date:  Mon, 03 Mar 2025 12:11:02 +0100
Message-ID:  <20250303-vdso-clock-v1-0-c1b5c69a166f@linutronix.de>
Cc:  linux-kernel-AT-vger.kernel.org, linux-arm-kernel-AT-lists.infradead.org, linuxppc-dev-AT-lists.ozlabs.org, linux-s390-AT-vger.kernel.org, linux-arch-AT-vger.kernel.org, Nam Cao <namcao-AT-linutronix.de>, Thomas Weißschuh <thomas.weissschuh-AT-linutronix.de>
Archive-link:  Article

To support multiple PTP clocks, the VDSO data structure needs to be
reworked. All clock specific data will end up in struct vdso_clock and in
struct vdso_time_data there will be an array of it.

This series is based on and intended to be merged through tip/timers/vdso.

Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
---
Anna-Maria Behnsen (15):
      vdso: Make vdso_time_data cacheline aligned
      vdso/datapage: Define for vdso_data to make rework of vdso possible
      vdso/helpers: Prepare introduction of struct vdso_clock
      vdso/gettimeofday: Prepare introduction of struct vdso_clock
      vdso/gettimeofday: Prepare do_hres() for introduction of struct vdso_clock
      vdso/gettimeofday: Prepare do_hres_timens() for introduction of struct vdso_clock
      vdso/gettimeofday: Prepare do_coarse() for introduction of struct vdso_clock
      vdso/gettimeofday: Prepare do_coarse_timens() for introduction of struct vdso_clock
      vdso/gettimeofday: Prepare helper functions for introduction of struct vdso_clock
      vdso/vsyscall: Prepare introduction of struct vdso_clock
      vdso/namespace: Rename timens_setup_vdso_data() to reflect new vdso_clock struct
      time/namespace: Prepare introduction of struct vdso_clock
      x86/vdso: Prepare introduction of struct vdso_clock
      vdso: Move arch related data before basetime
      vdso: Rework struct vdso_time_data and introduce struct vdso_clock

Nam Cao (2):
      arm64/vdso: Prepare introduction of struct vdso_clock
      powerpc/vdso: Prepare introduction of struct vdso_clock

Thomas Weißschuh (2):
      vdso: Introduce vdso/cache.h
      arm64: Make asm/cache.h compatible with vDSO

 arch/arm64/include/asm/cache.h                    |   4 +-
 arch/arm64/include/asm/vdso/compat_gettimeofday.h |   6 +-
 arch/arm64/include/asm/vdso/vsyscall.h            |   4 +-
 arch/powerpc/include/asm/vdso/gettimeofday.h      |   2 +-
 arch/s390/kernel/time.c                           |  11 +-
 arch/x86/include/asm/vdso/gettimeofday.h          |  16 +--
 include/asm-generic/vdso/vsyscall.h               |   2 +-
 include/linux/cache.h                             |   9 +-
 include/vdso/cache.h                              |  15 +++
 include/vdso/datapage.h                           |  48 ++++---
 include/vdso/helpers.h                            |  20 +--
 kernel/time/namespace.c                           |  20 +--
 kernel/time/vsyscall.c                            |  47 +++----
 lib/vdso/datastore.c                              |   6 +-
 lib/vdso/gettimeofday.c                           | 146 ++++++++++++----------
 15 files changed, 196 insertions(+), 160 deletions(-)
---
base-commit: ac1a42f4e4e296b5ba5fdb39444f65d6e5196240
change-id: 20250224-vdso-clock-f10f017c4b80

Best regards,
-- 
Thomas Weißschuh <thomas.weissschuh@linutronix.de>




Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds