adfs: use timespec64 for time conversion
authorArnd Bergmann <arnd@arndb.de>
Wed, 22 Aug 2018 05:01:09 +0000 (22:01 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 22 Aug 2018 17:52:51 +0000 (10:52 -0700)
We just truncate the seconds to 32-bit in one place now, so this can
trivially be converted over to using timespec64 consistently.

Link: http://lkml.kernel.org/r/20180620100133.4035614-1-arnd@arndb.de
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/adfs/inode.c

index e91028d4340abf9b7ad32c5cf77f668bf32bfd4b..66621e96f9afe2a8a33bdb35d624353473aa7386 100644 (file)
@@ -167,7 +167,7 @@ adfs_mode2atts(struct super_block *sb, struct inode *inode)
  * of time to convert from RISC OS epoch to Unix epoch.
  */
 static void
-adfs_adfs2unix_time(struct timespec *tv, struct inode *inode)
+adfs_adfs2unix_time(struct timespec64 *tv, struct inode *inode)
 {
        unsigned int high, low;
        /* 01 Jan 1970 00:00:00 (Unix epoch) as nanoseconds since
@@ -195,11 +195,11 @@ adfs_adfs2unix_time(struct timespec *tv, struct inode *inode)
        /* convert from RISC OS to Unix epoch */
        nsec -= nsec_unix_epoch_diff_risc_os_epoch;
 
-       *tv = ns_to_timespec(nsec);
+       *tv = ns_to_timespec64(nsec);
        return;
 
  cur_time:
-       *tv = timespec64_to_timespec(current_time(inode));
+       *tv = current_time(inode);
        return;
 
  too_early:
@@ -242,7 +242,6 @@ adfs_unix2adfs_time(struct inode *inode, unsigned int secs)
 struct inode *
 adfs_iget(struct super_block *sb, struct object_info *obj)
 {
-       struct timespec ts;
        struct inode *inode;
 
        inode = new_inode(sb);
@@ -271,9 +270,7 @@ adfs_iget(struct super_block *sb, struct object_info *obj)
        ADFS_I(inode)->stamped   = ((obj->loadaddr & 0xfff00000) == 0xfff00000);
 
        inode->i_mode    = adfs_atts2mode(sb, inode);
-       ts = timespec64_to_timespec(inode->i_mtime);
-       adfs_adfs2unix_time(&ts, inode);
-       inode->i_mtime = timespec_to_timespec64(ts);
+       adfs_adfs2unix_time(&inode->i_mtime, inode);
        inode->i_atime = inode->i_mtime;
        inode->i_ctime = inode->i_mtime;