From: Arnd Bergmann <arnd@arndb.de> To: y2038@lists.linaro.org, Andy Lutomirski <luto@kernel.org>, Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>, x86@kernel.org, Jeff Dike <jdike@addtoit.com>, Richard Weinberger <richard@nod.at>, Anton Ivanov <anton.ivanov@cambridgegreys.com>, Vincenzo Frascino <vincenzo.frascino@arm.com> Cc: linux-kernel@vger.kernel.org, Arnd Bergmann <arnd@arndb.de>, "H. Peter Anvin" <hpa@zytor.com>, linux-um@lists.infradead.org Subject: [PATCH 05/23] y2038: vdso: change time_t to __kernel_old_time_t Date: Fri, 8 Nov 2019 22:07:25 +0100 [thread overview] Message-ID: <20191108210824.1534248-5-arnd@arndb.de> (raw) In-Reply-To: <20191108210236.1296047-1-arnd@arndb.de> Only x86 uses the 'time' syscall in vdso, so change that to __kernel_old_time_t as a preparation for removing 'time_t' and '__kernel_time_t' later. Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- arch/x86/entry/vdso/vclock_gettime.c | 6 +++--- arch/x86/entry/vsyscall/vsyscall_64.c | 2 +- arch/x86/um/vdso/um_vdso.c | 4 ++-- lib/vdso/gettimeofday.c | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/arch/x86/entry/vdso/vclock_gettime.c b/arch/x86/entry/vdso/vclock_gettime.c index d9ff616bb0f6..7d70935b6758 100644 --- a/arch/x86/entry/vdso/vclock_gettime.c +++ b/arch/x86/entry/vdso/vclock_gettime.c @@ -15,7 +15,7 @@ #include "../../../../lib/vdso/gettimeofday.c" extern int __vdso_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz); -extern time_t __vdso_time(time_t *t); +extern __kernel_old_time_t __vdso_time(__kernel_old_time_t *t); int __vdso_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz) { @@ -25,12 +25,12 @@ int __vdso_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz) int gettimeofday(struct __kernel_old_timeval *, struct timezone *) __attribute__((weak, alias("__vdso_gettimeofday"))); -time_t __vdso_time(time_t *t) +__kernel_old_time_t __vdso_time(__kernel_old_time_t *t) { return __cvdso_time(t); } -time_t time(time_t *t) __attribute__((weak, alias("__vdso_time"))); +__kernel_old_time_t time(__kernel_old_time_t *t) __attribute__((weak, alias("__vdso_time"))); #if defined(CONFIG_X86_64) && !defined(BUILD_VDSO32_64) diff --git a/arch/x86/entry/vsyscall/vsyscall_64.c b/arch/x86/entry/vsyscall/vsyscall_64.c index 76e62bcb8d87..bba5bfdb2a56 100644 --- a/arch/x86/entry/vsyscall/vsyscall_64.c +++ b/arch/x86/entry/vsyscall/vsyscall_64.c @@ -194,7 +194,7 @@ bool emulate_vsyscall(unsigned long error_code, break; case 1: - if (!write_ok_or_segv(regs->di, sizeof(time_t))) { + if (!write_ok_or_segv(regs->di, sizeof(__kernel_old_time_t))) { ret = -EFAULT; goto check_fault; } diff --git a/arch/x86/um/vdso/um_vdso.c b/arch/x86/um/vdso/um_vdso.c index 371724cf70da..2112b8d14668 100644 --- a/arch/x86/um/vdso/um_vdso.c +++ b/arch/x86/um/vdso/um_vdso.c @@ -37,7 +37,7 @@ int __vdso_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz) int gettimeofday(struct __kernel_old_timeval *, struct timezone *) __attribute__((weak, alias("__vdso_gettimeofday"))); -time_t __vdso_time(time_t *t) +__kernel_old_time_t __vdso_time(__kernel_old_time_t *t) { long secs; @@ -47,7 +47,7 @@ time_t __vdso_time(time_t *t) return secs; } -time_t time(time_t *t) __attribute__((weak, alias("__vdso_time"))); +__kernel_old_time_t time(__kernel_old_time_t *t) __attribute__((weak, alias("__vdso_time"))); long __vdso_getcpu(unsigned *cpu, unsigned *node, struct getcpu_cache *unused) diff --git a/lib/vdso/gettimeofday.c b/lib/vdso/gettimeofday.c index 45f57fd2db64..9ecfd3b547ba 100644 --- a/lib/vdso/gettimeofday.c +++ b/lib/vdso/gettimeofday.c @@ -164,10 +164,10 @@ __cvdso_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz) } #ifdef VDSO_HAS_TIME -static __maybe_unused time_t __cvdso_time(time_t *time) +static __maybe_unused __kernel_old_time_t __cvdso_time(__kernel_old_time_t *time) { const struct vdso_data *vd = __arch_get_vdso_data(); - time_t t = READ_ONCE(vd[CS_HRES_COARSE].basetime[CLOCK_REALTIME].sec); + __kernel_old_time_t t = READ_ONCE(vd[CS_HRES_COARSE].basetime[CLOCK_REALTIME].sec); if (time) *time = t; -- 2.20.0
WARNING: multiple messages have this Message-ID (diff)
From: Arnd Bergmann <arnd@arndb.de> To: y2038@lists.linaro.org, Andy Lutomirski <luto@kernel.org>, Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>, x86@kernel.org, Jeff Dike <jdike@addtoit.com>, Richard Weinberger <richard@nod.at>, Anton Ivanov <anton.ivanov@cambridgegreys.com>, Vincenzo Frascino <vincenzo.frascino@arm.com> Cc: linux-um@lists.infradead.org, linux-kernel@vger.kernel.org, Arnd Bergmann <arnd@arndb.de>, "H. Peter Anvin" <hpa@zytor.com> Subject: [PATCH 05/23] y2038: vdso: change time_t to __kernel_old_time_t Date: Fri, 8 Nov 2019 22:07:25 +0100 [thread overview] Message-ID: <20191108210824.1534248-5-arnd@arndb.de> (raw) In-Reply-To: <20191108210236.1296047-1-arnd@arndb.de> Only x86 uses the 'time' syscall in vdso, so change that to __kernel_old_time_t as a preparation for removing 'time_t' and '__kernel_time_t' later. Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- arch/x86/entry/vdso/vclock_gettime.c | 6 +++--- arch/x86/entry/vsyscall/vsyscall_64.c | 2 +- arch/x86/um/vdso/um_vdso.c | 4 ++-- lib/vdso/gettimeofday.c | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/arch/x86/entry/vdso/vclock_gettime.c b/arch/x86/entry/vdso/vclock_gettime.c index d9ff616bb0f6..7d70935b6758 100644 --- a/arch/x86/entry/vdso/vclock_gettime.c +++ b/arch/x86/entry/vdso/vclock_gettime.c @@ -15,7 +15,7 @@ #include "../../../../lib/vdso/gettimeofday.c" extern int __vdso_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz); -extern time_t __vdso_time(time_t *t); +extern __kernel_old_time_t __vdso_time(__kernel_old_time_t *t); int __vdso_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz) { @@ -25,12 +25,12 @@ int __vdso_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz) int gettimeofday(struct __kernel_old_timeval *, struct timezone *) __attribute__((weak, alias("__vdso_gettimeofday"))); -time_t __vdso_time(time_t *t) +__kernel_old_time_t __vdso_time(__kernel_old_time_t *t) { return __cvdso_time(t); } -time_t time(time_t *t) __attribute__((weak, alias("__vdso_time"))); +__kernel_old_time_t time(__kernel_old_time_t *t) __attribute__((weak, alias("__vdso_time"))); #if defined(CONFIG_X86_64) && !defined(BUILD_VDSO32_64) diff --git a/arch/x86/entry/vsyscall/vsyscall_64.c b/arch/x86/entry/vsyscall/vsyscall_64.c index 76e62bcb8d87..bba5bfdb2a56 100644 --- a/arch/x86/entry/vsyscall/vsyscall_64.c +++ b/arch/x86/entry/vsyscall/vsyscall_64.c @@ -194,7 +194,7 @@ bool emulate_vsyscall(unsigned long error_code, break; case 1: - if (!write_ok_or_segv(regs->di, sizeof(time_t))) { + if (!write_ok_or_segv(regs->di, sizeof(__kernel_old_time_t))) { ret = -EFAULT; goto check_fault; } diff --git a/arch/x86/um/vdso/um_vdso.c b/arch/x86/um/vdso/um_vdso.c index 371724cf70da..2112b8d14668 100644 --- a/arch/x86/um/vdso/um_vdso.c +++ b/arch/x86/um/vdso/um_vdso.c @@ -37,7 +37,7 @@ int __vdso_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz) int gettimeofday(struct __kernel_old_timeval *, struct timezone *) __attribute__((weak, alias("__vdso_gettimeofday"))); -time_t __vdso_time(time_t *t) +__kernel_old_time_t __vdso_time(__kernel_old_time_t *t) { long secs; @@ -47,7 +47,7 @@ time_t __vdso_time(time_t *t) return secs; } -time_t time(time_t *t) __attribute__((weak, alias("__vdso_time"))); +__kernel_old_time_t time(__kernel_old_time_t *t) __attribute__((weak, alias("__vdso_time"))); long __vdso_getcpu(unsigned *cpu, unsigned *node, struct getcpu_cache *unused) diff --git a/lib/vdso/gettimeofday.c b/lib/vdso/gettimeofday.c index 45f57fd2db64..9ecfd3b547ba 100644 --- a/lib/vdso/gettimeofday.c +++ b/lib/vdso/gettimeofday.c @@ -164,10 +164,10 @@ __cvdso_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz) } #ifdef VDSO_HAS_TIME -static __maybe_unused time_t __cvdso_time(time_t *time) +static __maybe_unused __kernel_old_time_t __cvdso_time(__kernel_old_time_t *time) { const struct vdso_data *vd = __arch_get_vdso_data(); - time_t t = READ_ONCE(vd[CS_HRES_COARSE].basetime[CLOCK_REALTIME].sec); + __kernel_old_time_t t = READ_ONCE(vd[CS_HRES_COARSE].basetime[CLOCK_REALTIME].sec); if (time) *time = t; -- 2.20.0 _______________________________________________ linux-um mailing list linux-um@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-um
next prev parent reply other threads:[~2019-11-08 21:11 UTC|newest] Thread overview: 124+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-11-08 21:02 [PATCH 00/23] y2038 cleanups Arnd Bergmann 2019-11-08 21:02 ` Arnd Bergmann 2019-11-08 21:02 ` Arnd Bergmann 2019-11-08 21:02 ` Arnd Bergmann 2019-11-08 21:02 ` Arnd Bergmann 2019-11-08 21:02 ` Arnd Bergmann 2019-11-08 21:02 ` Arnd Bergmann 2019-11-08 21:07 ` [PATCH 01/23] y2038: remove CONFIG_64BIT_TIME Arnd Bergmann 2019-11-20 22:28 ` [Y2038] " Ben Hutchings 2019-11-20 22:58 ` Dmitry Safonov 2019-11-08 21:07 ` [PATCH 02/23] y2038: add __kernel_old_timespec and __kernel_old_time_t Arnd Bergmann 2019-11-09 19:02 ` Deepa Dinamani 2019-11-20 22:30 ` [Y2038] " Ben Hutchings 2019-11-21 14:17 ` Arnd Bergmann 2019-11-08 21:07 ` [PATCH 03/23] y2038: vdso: change timeval to __kernel_old_timeval Arnd Bergmann 2019-11-08 21:07 ` Arnd Bergmann 2019-11-08 21:07 ` Arnd Bergmann 2019-11-08 21:07 ` Arnd Bergmann 2019-11-13 21:56 ` Thomas Gleixner 2019-11-13 21:56 ` Thomas Gleixner 2019-11-13 21:56 ` Thomas Gleixner 2019-11-13 21:56 ` Thomas Gleixner 2019-11-08 21:07 ` [PATCH 04/23] y2038: vdso: change timespec to __kernel_old_timespec Arnd Bergmann 2019-11-08 21:07 ` Arnd Bergmann 2019-11-08 21:07 ` Arnd Bergmann 2019-11-08 21:07 ` Arnd Bergmann [this message] 2019-11-08 21:07 ` [PATCH 05/23] y2038: vdso: change time_t to __kernel_old_time_t Arnd Bergmann 2019-11-13 21:57 ` Thomas Gleixner 2019-11-13 21:57 ` Thomas Gleixner 2019-11-08 21:07 ` [PATCH 06/23] y2038: vdso: nds32: open-code timespec_add_ns() Arnd Bergmann 2019-11-08 21:07 ` [PATCH 07/23] y2038: vdso: powerpc: avoid timespec references Arnd Bergmann 2019-11-08 21:07 ` Arnd Bergmann 2019-11-20 22:43 ` [Y2038] " Ben Hutchings 2019-11-20 22:43 ` Ben Hutchings 2019-11-21 14:23 ` Arnd Bergmann 2019-11-21 14:23 ` Arnd Bergmann 2019-11-21 16:25 ` Christophe Leroy 2019-11-21 16:25 ` Christophe Leroy 2019-11-27 11:03 ` Arnd Bergmann 2019-11-27 11:03 ` Arnd Bergmann 2019-12-02 12:55 ` Christophe Leroy 2019-12-02 12:55 ` Christophe Leroy 2019-12-02 14:03 ` Arnd Bergmann 2019-12-02 14:03 ` Arnd Bergmann 2019-11-08 21:07 ` [PATCH 08/23] y2038: ipc: remove __kernel_time_t reference from headers Arnd Bergmann 2019-11-08 21:07 ` Arnd Bergmann 2019-11-08 21:07 ` Arnd Bergmann 2019-11-20 22:49 ` [Y2038] " Ben Hutchings 2019-11-20 22:49 ` Ben Hutchings 2019-11-20 22:49 ` Ben Hutchings 2019-11-21 14:28 ` [Y2038] " Arnd Bergmann 2019-11-21 14:28 ` Arnd Bergmann 2019-11-21 14:28 ` Arnd Bergmann 2019-11-21 14:28 ` Arnd Bergmann 2019-11-08 21:07 ` [PATCH 09/23] y2038: stat: avoid 'time_t' in 'struct stat' Arnd Bergmann 2019-11-08 21:07 ` Arnd Bergmann 2019-11-08 21:07 ` Arnd Bergmann 2019-11-08 21:12 ` [PATCH 10/23] y2038: uapi: change __kernel_time_t to __kernel_old_time_t Arnd Bergmann 2019-11-09 19:03 ` Deepa Dinamani 2019-11-11 12:38 ` Christian Brauner 2019-11-08 21:12 ` [PATCH 11/23] y2038: rusage: use __kernel_old_timeval Arnd Bergmann 2019-11-12 21:09 ` Cyrill Gorcunov 2019-11-13 10:02 ` Arnd Bergmann 2019-11-13 17:22 ` Cyrill Gorcunov 2019-11-14 0:38 ` Christian Brauner 2019-11-14 0:38 ` Christian Brauner 2019-11-14 10:18 ` Arnd Bergmann 2019-11-14 10:23 ` Christian Brauner 2019-11-08 21:12 ` [PATCH 12/23] y2038: syscalls: change remaining timeval to __kernel_old_timeval Arnd Bergmann 2019-11-08 21:12 ` Arnd Bergmann 2019-11-11 12:44 ` Christian Brauner 2019-11-11 12:44 ` Christian Brauner 2019-11-11 12:44 ` Christian Brauner 2019-11-13 22:39 ` Rafael J. Wysocki 2019-11-13 22:39 ` Rafael J. Wysocki 2019-11-08 21:12 ` [PATCH 13/23] y2038: socket: remove timespec reference in timestamping Arnd Bergmann 2019-11-09 19:03 ` Deepa Dinamani 2019-11-11 20:24 ` Arnd Bergmann 2019-11-08 21:12 ` [PATCH 14/23] y2038: make ns_to_compat_timeval use __kernel_old_timeval Arnd Bergmann 2019-11-08 21:12 ` [PATCH 15/23] y2038: elfcore: Use __kernel_old_timeval for process times Arnd Bergmann 2019-11-08 21:12 ` [PATCH 16/23] y2038: timerfd: Use timespec64 internally Arnd Bergmann 2019-11-13 21:49 ` Thomas Gleixner 2019-11-08 21:12 ` [PATCH 17/23] y2038: time: avoid timespec usage in settimeofday() Arnd Bergmann 2019-11-13 21:53 ` Thomas Gleixner 2019-11-14 11:06 ` Arnd Bergmann 2019-11-14 11:06 ` Arnd Bergmann 2019-11-14 14:04 ` Thomas Gleixner 2019-11-14 14:04 ` Thomas Gleixner 2019-11-14 14:35 ` Arnd Bergmann 2019-11-14 23:01 ` Abel Vesa 2019-11-15 7:58 ` Arnd Bergmann 2019-11-15 10:27 ` Rasmus Villemoes 2019-11-15 13:50 ` Arnd Bergmann 2019-11-08 21:12 ` [PATCH 18/23] y2038: itimer: compat handling to itimer.c Arnd Bergmann 2019-11-13 21:54 ` Thomas Gleixner 2019-11-08 21:12 ` [PATCH 19/23] y2038: use compat_{get,set}_itimer on alpha Arnd Bergmann 2019-12-02 13:13 ` Guenter Roeck 2019-11-08 21:12 ` [PATCH 20/23] y2038: move itimer reset into itimer.c Arnd Bergmann 2019-11-09 13:43 ` Ondrej Mosnacek 2019-11-09 21:02 ` Arnd Bergmann 2019-11-09 23:07 ` Ondrej Mosnacek 2019-11-11 10:57 ` Arnd Bergmann 2019-11-14 8:51 ` Ondrej Mosnacek 2019-11-14 10:51 ` Thomas Gleixner 2019-11-13 22:03 ` Thomas Gleixner 2019-11-08 21:12 ` [PATCH 21/23] y2038: itimer: change implementation to timespec64 Arnd Bergmann 2019-11-13 22:28 ` Thomas Gleixner 2019-11-14 2:06 ` Steven Rostedt 2019-11-14 10:48 ` Thomas Gleixner 2019-11-14 10:52 ` Arnd Bergmann 2019-11-14 10:51 ` Arnd Bergmann 2019-11-14 10:57 ` Thomas Gleixner 2019-11-21 16:52 ` [Y2038] " Ben Hutchings 2019-11-25 20:26 ` Arnd Bergmann 2019-11-08 21:12 ` [PATCH 22/23] [RFC] y2038: itimer: use ktime_t internally Arnd Bergmann 2019-11-13 22:30 ` Thomas Gleixner 2019-11-08 21:12 ` [PATCH 23/23] y2038: allow disabling time32 system calls Arnd Bergmann 2019-11-11 12:31 ` Christian Brauner 2019-11-13 21:40 ` [PATCH 00/23] y2038 cleanups Arnd Bergmann 2019-11-13 21:40 ` Arnd Bergmann 2019-11-13 21:40 ` Arnd Bergmann 2019-11-13 21:40 ` Arnd Bergmann 2019-11-13 21:40 ` Arnd Bergmann 2019-11-13 21:40 ` Arnd Bergmann
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20191108210824.1534248-5-arnd@arndb.de \ --to=arnd@arndb.de \ --cc=anton.ivanov@cambridgegreys.com \ --cc=bp@alien8.de \ --cc=hpa@zytor.com \ --cc=jdike@addtoit.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-um@lists.infradead.org \ --cc=luto@kernel.org \ --cc=mingo@redhat.com \ --cc=richard@nod.at \ --cc=tglx@linutronix.de \ --cc=vincenzo.frascino@arm.com \ --cc=x86@kernel.org \ --cc=y2038@lists.linaro.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.