mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [RFC][PATCH] sysinfo: Use timespec64 accessors for calculating uptime
@ 2015-03-12 17:24 John Stultz
  0 siblings, 0 replies; only message in thread
From: John Stultz @ 2015-03-12 17:24 UTC (permalink / raw)
  To: lkml
  Cc: John Stultz, Arnd Bergmann, Andrew Morton, Cyrill Gorcunov,
	Serge Hallyn, Dave Hansen, Thomas Gleixner, Alex Thorlton,
	vishnu.ps

As part of the y2038 effort, convert sysinfo's uptime calculation
to use the timespec64 based accessor.

Uptime isn't likely to ever exceed a s32, so this doesn't actually
bring much in the way of change, but it is done for consistency
sake as we deprecate 32bit internal interfaces.

Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Cyrill Gorcunov <gorcunov@openvz.org>
Cc: Serge Hallyn <serge.hallyn@canonical.com>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Alex Thorlton <athorlton@sgi.com>
Cc: "vishnu.ps" <vishnu.ps@samsung.com>
Signed-off-by: John Stultz <john.stultz@linaro.org>
---
 kernel/sys.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/kernel/sys.c b/kernel/sys.c
index a03d9cd..6d2d700 100644
--- a/kernel/sys.c
+++ b/kernel/sys.c
@@ -2260,12 +2260,16 @@ static int do_sysinfo(struct sysinfo *info)
 {
 	unsigned long mem_total, sav_total;
 	unsigned int mem_unit, bitcount;
-	struct timespec tp;
+	struct timespec64 tp;
 
 	memset(info, 0, sizeof(struct sysinfo));
 
-	get_monotonic_boottime(&tp);
-	info->uptime = tp.tv_sec + (tp.tv_nsec ? 1 : 0);
+	get_monotonic_boottime64(&tp);
+	/*
+	 * y2038: uptime is unlikely to ever grow beyond an s32
+	 * so this cast to a long shouldn't be an issue.
+	 */
+	info->uptime = (long)tp.tv_sec + (tp.tv_nsec ? 1 : 0);
 
 	get_avenrun(info->loads, 0, SI_LOAD_SHIFT - FSHIFT);
 
-- 
1.9.1


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2015-03-12 17:24 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-12 17:24 [RFC][PATCH] sysinfo: Use timespec64 accessors for calculating uptime John Stultz

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®