Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm
[linux-2.6-block.git] / fs / utimes.c
index 350c9c16ace1a2e8b247211e18ac731df538b7f1..1ba3f78838704a84e063a624d6cc3497bd2b1b35 100644 (file)
@@ -36,16 +36,14 @@ static int utimes_common(const struct path *path, struct timespec64 *times)
                if (times[0].tv_nsec == UTIME_OMIT)
                        newattrs.ia_valid &= ~ATTR_ATIME;
                else if (times[0].tv_nsec != UTIME_NOW) {
-                       newattrs.ia_atime.tv_sec = times[0].tv_sec;
-                       newattrs.ia_atime.tv_nsec = times[0].tv_nsec;
+                       newattrs.ia_atime = timestamp_truncate(times[0], inode);
                        newattrs.ia_valid |= ATTR_ATIME_SET;
                }
 
                if (times[1].tv_nsec == UTIME_OMIT)
                        newattrs.ia_valid &= ~ATTR_MTIME;
                else if (times[1].tv_nsec != UTIME_NOW) {
-                       newattrs.ia_mtime.tv_sec = times[1].tv_sec;
-                       newattrs.ia_mtime.tv_nsec = times[1].tv_nsec;
+                       newattrs.ia_mtime = timestamp_truncate(times[1], inode);
                        newattrs.ia_valid |= ATTR_MTIME_SET;
                }
                /*