Messages in this thread | | | Date | Sun, 7 Feb 2016 21:30:02 -0800 | From | Greg KH <> | Subject | Re: [PATCH v3] misc: ibmasm: Replace timeval with timespec64 |
| |
On Fri, Oct 23, 2015 at 08:37:49PM +0530, 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> > --- > Changes in v2: > -change format string of now.tv_sec to '%llu' > -change format string of now.tv_nsec to '%.08lu' > Changes in v3: > -Replace tv_usec with tv_nsec, error made in v2 > -Build tested > > drivers/misc/ibmasm/ibmasm.h | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/drivers/misc/ibmasm/ibmasm.h b/drivers/misc/ibmasm/ibmasm.h > index 9b08344..82380ae 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,10 @@ 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_nsec / NSEC_PER_USEC); > return buf; > } >
Always run your patches through checkpatch so that a maintainer doesn't have to be grumpy and tell you to fix up the obvious checkpatch issues in it...
thanks,
greg k-h
| |