aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char
diff options
context:
space:
mode:
authorAmitoj Kaur Chawla <amitoj1606@gmail.com>2015-10-23 15:51:04 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2015-10-24 22:46:42 -0400
commit526290aa6288e133db18d64c2c175a0a1a58b438 (patch)
tree74b0d8ee7d7d9c9a8aea1087ce52d3d0ee0e3789 /drivers/char
parent28f98a12f7bac9c3e5ba85d245d32ec0910cf8e5 (diff)
char: ipmi: ipmi_ssif: Replace timeval with timespec64
This patch replaces timeval with timespec64 as 32 bit 'struct timeval' will not give current time beyond 2038. The patch changes the code to use ktime_get_real_ts64() which returns a 'struct timespec64' instead of do_gettimeofday() which returns a 'struct timeval' This patch also alters the format string in pr_info() for now.tv_sec to incorporate 'long long' on 32 bit architectures. Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com> Reviewed-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/char')
-rw-r--r--drivers/char/ipmi/ipmi_ssif.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/char/ipmi/ipmi_ssif.c b/drivers/char/ipmi/ipmi_ssif.c
index 877205d22046..90e624662257 100644
--- a/drivers/char/ipmi/ipmi_ssif.c
+++ b/drivers/char/ipmi/ipmi_ssif.c
@@ -52,6 +52,7 @@
52#include <linux/kthread.h> 52#include <linux/kthread.h>
53#include <linux/acpi.h> 53#include <linux/acpi.h>
54#include <linux/ctype.h> 54#include <linux/ctype.h>
55#include <linux/time64.h>
55 56
56#define PFX "ipmi_ssif: " 57#define PFX "ipmi_ssif: "
57#define DEVICE_NAME "ipmi_ssif" 58#define DEVICE_NAME "ipmi_ssif"
@@ -1041,12 +1042,12 @@ static void sender(void *send_info,
1041 start_next_msg(ssif_info, flags); 1042 start_next_msg(ssif_info, flags);
1042 1043
1043 if (ssif_info->ssif_debug & SSIF_DEBUG_TIMING) { 1044 if (ssif_info->ssif_debug & SSIF_DEBUG_TIMING) {
1044 struct timeval t; 1045 struct timespec64 t;
1045 1046
1046 do_gettimeofday(&t); 1047 ktime_get_real_ts64(&t);
1047 pr_info("**Enqueue %02x %02x: %ld.%6.6ld\n", 1048 pr_info("**Enqueue %02x %02x: %lld.%6.6ld\n",
1048 msg->data[0], msg->data[1], 1049 msg->data[0], msg->data[1],
1049 (long) t.tv_sec, (long) t.tv_usec); 1050 (long long) t.tv_sec, (long) t.tv_nsec / NSEC_PER_USEC);
1050 } 1051 }
1051} 1052}
1052 1053