All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] misc: ibmasm: Replace timeval with timespec64
@ 2015-10-23 12:22 Amitoj Kaur Chawla
  2015-10-23 13:39 ` [Outreachy kernel] " Arnd Bergmann
  0 siblings, 1 reply; 5+ messages in thread
From: Amitoj Kaur Chawla @ 2015-10-23 12:22 UTC (permalink / raw)
  To: outreachy-kernel; +Cc: y2038

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 strings in sprintf() for now.tv_sec and
now.tv_nsec to incorporate 'long long' on 32 bit architectures and
leading zeroes respectively.

Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com>
---
Changes in v2:
        -change format string of now.tv_sec to '%llu'
        -change format string of now.tv_nsec to '%.08lu' 

 drivers/misc/ibmasm/ibmasm.h | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/misc/ibmasm/ibmasm.h b/drivers/misc/ibmasm/ibmasm.h
index 9b08344..d73be61 100644
--- a/drivers/misc/ibmasm/ibmasm.h
+++ b/drivers/misc/ibmasm/ibmasm.h
@@ -34,6 +34,7 @@
 #include <linux/kref.h>
 #include <linux/device.h>
 #include <linux/input.h>
+#include <linux/time64.h>
 
 /* Driver identification */
 #define DRIVER_NAME	"ibmasm"
@@ -53,9 +54,9 @@ extern int ibmasm_debug;
 
 static inline char *get_timestamp(char *buf)
 {
-	struct timeval now;
-	do_gettimeofday(&now);
-	sprintf(buf, "%lu.%lu", now.tv_sec, now.tv_usec);
+	struct timespec64 now;
+	ktime_get_real_ts64(&now);
+	sprintf(buf, "%llu.%.08lu", (long long)now.tv_sec, now.tv_usec);
 	return buf;
 }
 
-- 
1.9.1



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [Outreachy kernel] [PATCH v2] misc: ibmasm: Replace timeval with timespec64
  2015-10-23 12:22 [PATCH v2] misc: ibmasm: Replace timeval with timespec64 Amitoj Kaur Chawla
@ 2015-10-23 13:39 ` Arnd Bergmann
  2015-10-23 13:47   ` Arnd Bergmann
  0 siblings, 1 reply; 5+ messages in thread
From: Arnd Bergmann @ 2015-10-23 13:39 UTC (permalink / raw)
  To: outreachy-kernel; +Cc: Amitoj Kaur Chawla, y2038

On Friday 23 October 2015 17:52:06 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 strings in sprintf() for now.tv_sec and
> now.tv_nsec to incorporate 'long long' on 32 bit architectures and
> leading zeroes respectively.
> 
> Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com>

Reviewed-by: Arnd Bergmann <arnd@arndb.de>


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Outreachy kernel] [PATCH v2] misc: ibmasm: Replace timeval with timespec64
  2015-10-23 13:39 ` [Outreachy kernel] " Arnd Bergmann
@ 2015-10-23 13:47   ` Arnd Bergmann
  2015-10-23 13:58     ` Amitoj Kaur Chawla
  0 siblings, 1 reply; 5+ messages in thread
From: Arnd Bergmann @ 2015-10-23 13:47 UTC (permalink / raw)
  To: outreachy-kernel; +Cc: Amitoj Kaur Chawla, y2038, gregkh

On Friday 23 October 2015 15:39:49 Arnd Bergmann wrote:
> On Friday 23 October 2015 17:52:06 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 strings in sprintf() for now.tv_sec and
> > now.tv_nsec to incorporate 'long long' on 32 bit architectures and
> > leading zeroes respectively.
> > 
> > Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com>
> 
> Reviewed-by: Arnd Bergmann <arnd@arndb.de>

I was going to suggest to send this to the maintainers now, but after
checking the MAINTAINERS file myself, I see that this would be Greg and me ;-)

Greg, can you pick this up into the char-misc tree?

	Arnd


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Outreachy kernel] [PATCH v2] misc: ibmasm: Replace timeval with timespec64
  2015-10-23 13:47   ` Arnd Bergmann
@ 2015-10-23 13:58     ` Amitoj Kaur Chawla
  2015-10-23 14:21       ` [Y2038] " Arnd Bergmann
  0 siblings, 1 reply; 5+ messages in thread
From: Amitoj Kaur Chawla @ 2015-10-23 13:58 UTC (permalink / raw)
  To: Arnd Bergmann; +Cc: outreachy-kernel, y2038, Greg KH

On Fri, Oct 23, 2015 at 7:17 PM, Arnd Bergmann <arnd@arndb.de> wrote:
> On Friday 23 October 2015 15:39:49 Arnd Bergmann wrote:
>> On Friday 23 October 2015 17:52:06 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 strings in sprintf() for now.tv_sec and
>> > now.tv_nsec to incorporate 'long long' on 32 bit architectures and
>> > leading zeroes respectively.
>> >
>> > Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com>
>>
>> Reviewed-by: Arnd Bergmann <arnd@arndb.de>
>
> I was going to suggest to send this to the maintainers now, but after
> checking the MAINTAINERS file myself, I see that this would be Greg and me ;-)
>
> Greg, can you pick this up into the char-misc tree?
>
>         Arnd

Hi Arnd,

I made a slight error while sending v2 which I caught after figuring
out of my issue of compiling the module.

I'm sending a v3 after build testing it.

Should I cc you and Greg separately or let it be?

-- 
Amitoj


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Y2038] [Outreachy kernel] [PATCH v2] misc: ibmasm: Replace timeval with timespec64
  2015-10-23 13:58     ` Amitoj Kaur Chawla
@ 2015-10-23 14:21       ` Arnd Bergmann
  0 siblings, 0 replies; 5+ messages in thread
From: Arnd Bergmann @ 2015-10-23 14:21 UTC (permalink / raw)
  To: y2038; +Cc: Amitoj Kaur Chawla, outreachy-kernel, Greg KH

On Friday 23 October 2015 19:28:00 Amitoj Kaur Chawla wrote:
> On Fri, Oct 23, 2015 at 7:17 PM, Arnd Bergmann <arnd@arndb.de> wrote:
> > On Friday 23 October 2015 15:39:49 Arnd Bergmann wrote:
> >> On Friday 23 October 2015 17:52:06 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 strings in sprintf() for now.tv_sec and
> >> > now.tv_nsec to incorporate 'long long' on 32 bit architectures and
> >> > leading zeroes respectively.
> >> >
> >> > Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com>
> >>
> >> Reviewed-by: Arnd Bergmann <arnd@arndb.de>
> >
> > I was going to suggest to send this to the maintainers now, but after
> > checking the MAINTAINERS file myself, I see that this would be Greg and me 
> >
> > Greg, can you pick this up into the char-misc tree?
> >
> >         Arnd
> 
> Hi Arnd,
> 
> I made a slight error while sending v2 which I caught after figuring
> out of my issue of compiling the module.
> 
> I'm sending a v3 after build testing it.
> 
> Should I cc you and Greg separately or let it be?

In general, it helps to Cc maintainers. We are good at ignoring duplicate
mails.

	Arnd


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2015-10-23 14:21 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-10-23 12:22 [PATCH v2] misc: ibmasm: Replace timeval with timespec64 Amitoj Kaur Chawla
2015-10-23 13:39 ` [Outreachy kernel] " Arnd Bergmann
2015-10-23 13:47   ` Arnd Bergmann
2015-10-23 13:58     ` Amitoj Kaur Chawla
2015-10-23 14:21       ` [Y2038] " Arnd Bergmann

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.