* [PATCH v2] char: ipmi: ipmi_ssif: Replace timeval with timespec64
@ 2015-10-23 19:51 Amitoj Kaur Chawla
2015-10-23 19:53 ` [Y2038] " Arnd Bergmann
2015-10-23 20:18 ` Corey Minyard
0 siblings, 2 replies; 3+ messages in thread
From: Amitoj Kaur Chawla @ 2015-10-23 19:51 UTC (permalink / raw)
To: outreachy-kernel; +Cc: y2038, minyard, openipmi-developer, linux-kernel
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>
---
Changes in v2:
-Removed unnecessary format string change in pr_info()
drivers/char/ipmi/ipmi_ssif.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/drivers/char/ipmi/ipmi_ssif.c b/drivers/char/ipmi/ipmi_ssif.c
index 877205d..90e6246 100644
--- a/drivers/char/ipmi/ipmi_ssif.c
+++ b/drivers/char/ipmi/ipmi_ssif.c
@@ -52,6 +52,7 @@
#include <linux/kthread.h>
#include <linux/acpi.h>
#include <linux/ctype.h>
+#include <linux/time64.h>
#define PFX "ipmi_ssif: "
#define DEVICE_NAME "ipmi_ssif"
@@ -1041,12 +1042,12 @@ static void sender(void *send_info,
start_next_msg(ssif_info, flags);
if (ssif_info->ssif_debug & SSIF_DEBUG_TIMING) {
- struct timeval t;
+ struct timespec64 t;
- do_gettimeofday(&t);
- pr_info("**Enqueue %02x %02x: %ld.%6.6ld\n",
+ ktime_get_real_ts64(&t);
+ pr_info("**Enqueue %02x %02x: %lld.%6.6ld\n",
msg->data[0], msg->data[1],
- (long) t.tv_sec, (long) t.tv_usec);
+ (long long) t.tv_sec, (long) t.tv_nsec / NSEC_PER_USEC);
}
}
--
1.9.1
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [Y2038] [PATCH v2] char: ipmi: ipmi_ssif: Replace timeval with timespec64
2015-10-23 19:51 [PATCH v2] char: ipmi: ipmi_ssif: Replace timeval with timespec64 Amitoj Kaur Chawla
@ 2015-10-23 19:53 ` Arnd Bergmann
2015-10-23 20:18 ` Corey Minyard
1 sibling, 0 replies; 3+ messages in thread
From: Arnd Bergmann @ 2015-10-23 19:53 UTC (permalink / raw)
To: y2038
Cc: Amitoj Kaur Chawla, outreachy-kernel, openipmi-developer,
linux-kernel, minyard
On Saturday 24 October 2015 01:21:04 Amitoj Kaur Chawla wrote:
> 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>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v2] char: ipmi: ipmi_ssif: Replace timeval with timespec64
2015-10-23 19:51 [PATCH v2] char: ipmi: ipmi_ssif: Replace timeval with timespec64 Amitoj Kaur Chawla
2015-10-23 19:53 ` [Y2038] " Arnd Bergmann
@ 2015-10-23 20:18 ` Corey Minyard
1 sibling, 0 replies; 3+ messages in thread
From: Corey Minyard @ 2015-10-23 20:18 UTC (permalink / raw)
To: Amitoj Kaur Chawla, outreachy-kernel
Cc: y2038, openipmi-developer, linux-kernel
Queued for 4.4. Thanks.
-corey
On 10/23/2015 02:51 PM, Amitoj Kaur Chawla wrote:
> 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>
> ---
> Changes in v2:
> -Removed unnecessary format string change in pr_info()
>
> drivers/char/ipmi/ipmi_ssif.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/char/ipmi/ipmi_ssif.c b/drivers/char/ipmi/ipmi_ssif.c
> index 877205d..90e6246 100644
> --- a/drivers/char/ipmi/ipmi_ssif.c
> +++ b/drivers/char/ipmi/ipmi_ssif.c
> @@ -52,6 +52,7 @@
> #include <linux/kthread.h>
> #include <linux/acpi.h>
> #include <linux/ctype.h>
> +#include <linux/time64.h>
>
> #define PFX "ipmi_ssif: "
> #define DEVICE_NAME "ipmi_ssif"
> @@ -1041,12 +1042,12 @@ static void sender(void *send_info,
> start_next_msg(ssif_info, flags);
>
> if (ssif_info->ssif_debug & SSIF_DEBUG_TIMING) {
> - struct timeval t;
> + struct timespec64 t;
>
> - do_gettimeofday(&t);
> - pr_info("**Enqueue %02x %02x: %ld.%6.6ld\n",
> + ktime_get_real_ts64(&t);
> + pr_info("**Enqueue %02x %02x: %lld.%6.6ld\n",
> msg->data[0], msg->data[1],
> - (long) t.tv_sec, (long) t.tv_usec);
> + (long long) t.tv_sec, (long) t.tv_nsec / NSEC_PER_USEC);
> }
> }
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-10-23 20:18 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-10-23 19:51 [PATCH v2] char: ipmi: ipmi_ssif: Replace timeval with timespec64 Amitoj Kaur Chawla
2015-10-23 19:53 ` [Y2038] " Arnd Bergmann
2015-10-23 20:18 ` Corey Minyard
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).