* [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.