aboutsummaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorDeepa Dinamani <deepa.kernel@gmail.com>2016-09-14 10:48:05 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2016-09-27 21:06:22 -0400
commit02027d42c3f747945f19111d3da2092ed2148ac8 (patch)
tree1eac59f95ba905fb1d1fe5a53a792145e8e9c267 /fs
parent078cd8279e659989b103359bb22373cc79445bde (diff)
fs: Replace CURRENT_TIME_SEC with current_time() for inode timestamps
CURRENT_TIME_SEC is not y2038 safe. current_time() will be transitioned to use 64 bit time along with vfs in a separate patch. There is no plan to transistion CURRENT_TIME_SEC to use y2038 safe time interfaces. current_time() will also be extended to use superblock range checking parameters when range checking is introduced. This works because alloc_super() fills in the the s_time_gran in super block to NSEC_PER_SEC. Signed-off-by: Deepa Dinamani <deepa.kernel@gmail.com> Acked-by: Jan Kara <jack@suse.cz> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs')
-rw-r--r--fs/affs/amigaffs.c6
-rw-r--r--fs/affs/inode.c2
-rw-r--r--fs/bfs/dir.c14
-rw-r--r--fs/coda/dir.c2
-rw-r--r--fs/coda/file.c2
-rw-r--r--fs/coda/inode.c2
-rw-r--r--fs/ext2/acl.c2
-rw-r--r--fs/ext2/dir.c6
-rw-r--r--fs/ext2/ialloc.c2
-rw-r--r--fs/ext2/inode.c4
-rw-r--r--fs/ext2/ioctl.c4
-rw-r--r--fs/ext2/namei.c6
-rw-r--r--fs/ext2/xattr.c2
-rw-r--r--fs/fat/dir.c2
-rw-r--r--fs/fat/file.c4
-rw-r--r--fs/fat/inode.c2
-rw-r--r--fs/fat/namei_msdos.c12
-rw-r--r--fs/fat/namei_vfat.c10
-rw-r--r--fs/hfs/catalog.c8
-rw-r--r--fs/hfs/dir.c2
-rw-r--r--fs/hfs/inode.c2
-rw-r--r--fs/hfsplus/catalog.c8
-rw-r--r--fs/hfsplus/dir.c6
-rw-r--r--fs/hfsplus/inode.c2
-rw-r--r--fs/hfsplus/ioctl.c2
-rw-r--r--fs/jffs2/acl.c2
-rw-r--r--fs/jffs2/fs.c2
-rw-r--r--fs/minix/bitmap.c2
-rw-r--r--fs/minix/dir.c6
-rw-r--r--fs/minix/itree_common.c4
-rw-r--r--fs/minix/namei.c4
-rw-r--r--fs/omfs/dir.c4
-rw-r--r--fs/reiserfs/inode.c2
-rw-r--r--fs/reiserfs/ioctl.c4
-rw-r--r--fs/reiserfs/namei.c12
-rw-r--r--fs/reiserfs/stree.c8
-rw-r--r--fs/reiserfs/super.c2
-rw-r--r--fs/reiserfs/xattr.c6
-rw-r--r--fs/reiserfs/xattr_acl.c2
-rw-r--r--fs/sysv/dir.c6
-rw-r--r--fs/sysv/ialloc.c2
-rw-r--r--fs/sysv/itree.c4
-rw-r--r--fs/sysv/namei.c4
-rw-r--r--fs/ufs/dir.c6
-rw-r--r--fs/ufs/ialloc.c2
-rw-r--r--fs/ufs/inode.c6
-rw-r--r--fs/ufs/namei.c6
47 files changed, 105 insertions, 105 deletions
diff --git a/fs/affs/amigaffs.c b/fs/affs/amigaffs.c
index d8f217c711d3..0ec65c133b93 100644
--- a/fs/affs/amigaffs.c
+++ b/fs/affs/amigaffs.c
@@ -58,7 +58,7 @@ affs_insert_hash(struct inode *dir, struct buffer_head *bh)
58 mark_buffer_dirty_inode(dir_bh, dir); 58 mark_buffer_dirty_inode(dir_bh, dir);
59 affs_brelse(dir_bh); 59 affs_brelse(dir_bh);
60 60
61 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 61 dir->i_mtime = dir->i_ctime = current_time(dir);
62 dir->i_version++; 62 dir->i_version++;
63 mark_inode_dirty(dir); 63 mark_inode_dirty(dir);
64 64
@@ -112,7 +112,7 @@ affs_remove_hash(struct inode *dir, struct buffer_head *rem_bh)
112 112
113 affs_brelse(bh); 113 affs_brelse(bh);
114 114
115 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 115 dir->i_mtime = dir->i_ctime = current_time(dir);
116 dir->i_version++; 116 dir->i_version++;
117 mark_inode_dirty(dir); 117 mark_inode_dirty(dir);
118 118
@@ -313,7 +313,7 @@ affs_remove_header(struct dentry *dentry)
313 else 313 else
314 clear_nlink(inode); 314 clear_nlink(inode);
315 affs_unlock_link(inode); 315 affs_unlock_link(inode);
316 inode->i_ctime = CURRENT_TIME_SEC; 316 inode->i_ctime = current_time(inode);
317 mark_inode_dirty(inode); 317 mark_inode_dirty(inode);
318 318
319done: 319done:
diff --git a/fs/affs/inode.c b/fs/affs/inode.c
index 0fdb0f5b2239..ed120ec7542c 100644
--- a/fs/affs/inode.c
+++ b/fs/affs/inode.c
@@ -309,7 +309,7 @@ affs_new_inode(struct inode *dir)
309 inode->i_gid = current_fsgid(); 309 inode->i_gid = current_fsgid();
310 inode->i_ino = block; 310 inode->i_ino = block;
311 set_nlink(inode, 1); 311 set_nlink(inode, 1);
312 inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME_SEC; 312 inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
313 atomic_set(&AFFS_I(inode)->i_opencnt, 0); 313 atomic_set(&AFFS_I(inode)->i_opencnt, 0);
314 AFFS_I(inode)->i_blkcnt = 0; 314 AFFS_I(inode)->i_blkcnt = 0;
315 AFFS_I(inode)->i_lc = NULL; 315 AFFS_I(inode)->i_lc = NULL;
diff --git a/fs/bfs/dir.c b/fs/bfs/dir.c
index 34a5bc2f1290..4206419a4bdf 100644
--- a/fs/bfs/dir.c
+++ b/fs/bfs/dir.c
@@ -97,7 +97,7 @@ static int bfs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
97 set_bit(ino, info->si_imap); 97 set_bit(ino, info->si_imap);
98 info->si_freei--; 98 info->si_freei--;
99 inode_init_owner(inode, dir, mode); 99 inode_init_owner(inode, dir, mode);
100 inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME_SEC; 100 inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
101 inode->i_blocks = 0; 101 inode->i_blocks = 0;
102 inode->i_op = &bfs_file_inops; 102 inode->i_op = &bfs_file_inops;
103 inode->i_fop = &bfs_file_operations; 103 inode->i_fop = &bfs_file_operations;
@@ -165,7 +165,7 @@ static int bfs_link(struct dentry *old, struct inode *dir,
165 return err; 165 return err;
166 } 166 }
167 inc_nlink(inode); 167 inc_nlink(inode);
168 inode->i_ctime = CURRENT_TIME_SEC; 168 inode->i_ctime = current_time(inode);
169 mark_inode_dirty(inode); 169 mark_inode_dirty(inode);
170 ihold(inode); 170 ihold(inode);
171 d_instantiate(new, inode); 171 d_instantiate(new, inode);
@@ -194,7 +194,7 @@ static int bfs_unlink(struct inode *dir, struct dentry *dentry)
194 } 194 }
195 de->ino = 0; 195 de->ino = 0;
196 mark_buffer_dirty_inode(bh, dir); 196 mark_buffer_dirty_inode(bh, dir);
197 dir->i_ctime = dir->i_mtime = CURRENT_TIME_SEC; 197 dir->i_ctime = dir->i_mtime = current_time(dir);
198 mark_inode_dirty(dir); 198 mark_inode_dirty(dir);
199 inode->i_ctime = dir->i_ctime; 199 inode->i_ctime = dir->i_ctime;
200 inode_dec_link_count(inode); 200 inode_dec_link_count(inode);
@@ -249,10 +249,10 @@ static int bfs_rename(struct inode *old_dir, struct dentry *old_dentry,
249 goto end_rename; 249 goto end_rename;
250 } 250 }
251 old_de->ino = 0; 251 old_de->ino = 0;
252 old_dir->i_ctime = old_dir->i_mtime = CURRENT_TIME_SEC; 252 old_dir->i_ctime = old_dir->i_mtime = current_time(old_dir);
253 mark_inode_dirty(old_dir); 253 mark_inode_dirty(old_dir);
254 if (new_inode) { 254 if (new_inode) {
255 new_inode->i_ctime = CURRENT_TIME_SEC; 255 new_inode->i_ctime = current_time(new_inode);
256 inode_dec_link_count(new_inode); 256 inode_dec_link_count(new_inode);
257 } 257 }
258 mark_buffer_dirty_inode(old_bh, old_dir); 258 mark_buffer_dirty_inode(old_bh, old_dir);
@@ -300,9 +300,9 @@ static int bfs_add_entry(struct inode *dir, const unsigned char *name,
300 pos = (block - sblock) * BFS_BSIZE + off; 300 pos = (block - sblock) * BFS_BSIZE + off;
301 if (pos >= dir->i_size) { 301 if (pos >= dir->i_size) {
302 dir->i_size += BFS_DIRENT_SIZE; 302 dir->i_size += BFS_DIRENT_SIZE;
303 dir->i_ctime = CURRENT_TIME_SEC; 303 dir->i_ctime = current_time(dir);
304 } 304 }
305 dir->i_mtime = CURRENT_TIME_SEC; 305 dir->i_mtime = current_time(dir);
306 mark_inode_dirty(dir); 306 mark_inode_dirty(dir);
307 de->ino = cpu_to_le16((u16)ino); 307 de->ino = cpu_to_le16((u16)ino);
308 for (i = 0; i < BFS_NAMELEN; i++) 308 for (i = 0; i < BFS_NAMELEN; i++)
diff --git a/fs/coda/dir.c b/fs/coda/dir.c
index 6fb8672c0892..b10a74bac58b 100644
--- a/fs/coda/dir.c
+++ b/fs/coda/dir.c
@@ -109,7 +109,7 @@ static inline void coda_dir_update_mtime(struct inode *dir)
109 /* optimistically we can also act as if our nose bleeds. The 109 /* optimistically we can also act as if our nose bleeds. The
110 * granularity of the mtime is coarse anyways so we might actually be 110 * granularity of the mtime is coarse anyways so we might actually be
111 * right most of the time. Note: we only do this for directories. */ 111 * right most of the time. Note: we only do this for directories. */
112 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 112 dir->i_mtime = dir->i_ctime = current_time(dir);
113#endif 113#endif
114} 114}
115 115
diff --git a/fs/coda/file.c b/fs/coda/file.c
index f47c7483863b..42be8a6f1105 100644
--- a/fs/coda/file.c
+++ b/fs/coda/file.c
@@ -75,7 +75,7 @@ coda_file_write_iter(struct kiocb *iocb, struct iov_iter *to)
75 ret = vfs_iter_write(cfi->cfi_container, to, &iocb->ki_pos); 75 ret = vfs_iter_write(cfi->cfi_container, to, &iocb->ki_pos);
76 coda_inode->i_size = file_inode(host_file)->i_size; 76 coda_inode->i_size = file_inode(host_file)->i_size;
77 coda_inode->i_blocks = (coda_inode->i_size + 511) >> 9; 77 coda_inode->i_blocks = (coda_inode->i_size + 511) >> 9;
78 coda_inode->i_mtime = coda_inode->i_ctime = CURRENT_TIME_SEC; 78 coda_inode->i_mtime = coda_inode->i_ctime = current_time(coda_inode);
79 inode_unlock(coda_inode); 79 inode_unlock(coda_inode);
80 file_end_write(host_file); 80 file_end_write(host_file);
81 return ret; 81 return ret;
diff --git a/fs/coda/inode.c b/fs/coda/inode.c
index 57e81cbba0fa..71dbe7e287ce 100644
--- a/fs/coda/inode.c
+++ b/fs/coda/inode.c
@@ -271,7 +271,7 @@ int coda_setattr(struct dentry *de, struct iattr *iattr)
271 271
272 memset(&vattr, 0, sizeof(vattr)); 272 memset(&vattr, 0, sizeof(vattr));
273 273
274 inode->i_ctime = CURRENT_TIME_SEC; 274 inode->i_ctime = current_time(inode);
275 coda_iattr_to_vattr(iattr, &vattr); 275 coda_iattr_to_vattr(iattr, &vattr);
276 vattr.va_type = C_VNON; /* cannot set type */ 276 vattr.va_type = C_VNON; /* cannot set type */
277 277
diff --git a/fs/ext2/acl.c b/fs/ext2/acl.c
index 42f1d1814083..80c1e579428a 100644
--- a/fs/ext2/acl.c
+++ b/fs/ext2/acl.c
@@ -194,7 +194,7 @@ ext2_set_acl(struct inode *inode, struct posix_acl *acl, int type)
194 if (error < 0) 194 if (error < 0)
195 return error; 195 return error;
196 else { 196 else {
197 inode->i_ctime = CURRENT_TIME_SEC; 197 inode->i_ctime = current_time(inode);
198 mark_inode_dirty(inode); 198 mark_inode_dirty(inode);
199 if (error == 0) 199 if (error == 0)
200 acl = NULL; 200 acl = NULL;
diff --git a/fs/ext2/dir.c b/fs/ext2/dir.c
index 61ad490ed67b..d9650c9508e4 100644
--- a/fs/ext2/dir.c
+++ b/fs/ext2/dir.c
@@ -471,7 +471,7 @@ void ext2_set_link(struct inode *dir, struct ext2_dir_entry_2 *de,
471 err = ext2_commit_chunk(page, pos, len); 471 err = ext2_commit_chunk(page, pos, len);
472 ext2_put_page(page); 472 ext2_put_page(page);
473 if (update_times) 473 if (update_times)
474 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 474 dir->i_mtime = dir->i_ctime = current_time(dir);
475 EXT2_I(dir)->i_flags &= ~EXT2_BTREE_FL; 475 EXT2_I(dir)->i_flags &= ~EXT2_BTREE_FL;
476 mark_inode_dirty(dir); 476 mark_inode_dirty(dir);
477} 477}
@@ -561,7 +561,7 @@ got_it:
561 de->inode = cpu_to_le32(inode->i_ino); 561 de->inode = cpu_to_le32(inode->i_ino);
562 ext2_set_de_type (de, inode); 562 ext2_set_de_type (de, inode);
563 err = ext2_commit_chunk(page, pos, rec_len); 563 err = ext2_commit_chunk(page, pos, rec_len);
564 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 564 dir->i_mtime = dir->i_ctime = current_time(dir);
565 EXT2_I(dir)->i_flags &= ~EXT2_BTREE_FL; 565 EXT2_I(dir)->i_flags &= ~EXT2_BTREE_FL;
566 mark_inode_dirty(dir); 566 mark_inode_dirty(dir);
567 /* OFFSET_CACHE */ 567 /* OFFSET_CACHE */
@@ -610,7 +610,7 @@ int ext2_delete_entry (struct ext2_dir_entry_2 * dir, struct page * page )
610 pde->rec_len = ext2_rec_len_to_disk(to - from); 610 pde->rec_len = ext2_rec_len_to_disk(to - from);
611 dir->inode = 0; 611 dir->inode = 0;
612 err = ext2_commit_chunk(page, pos, to - from); 612 err = ext2_commit_chunk(page, pos, to - from);
613 inode->i_ctime = inode->i_mtime = CURRENT_TIME_SEC; 613 inode->i_ctime = inode->i_mtime = current_time(inode);
614 EXT2_I(inode)->i_flags &= ~EXT2_BTREE_FL; 614 EXT2_I(inode)->i_flags &= ~EXT2_BTREE_FL;
615 mark_inode_dirty(inode); 615 mark_inode_dirty(inode);
616out: 616out:
diff --git a/fs/ext2/ialloc.c b/fs/ext2/ialloc.c
index efe5fb21c533..43dc9c54335c 100644
--- a/fs/ext2/ialloc.c
+++ b/fs/ext2/ialloc.c
@@ -551,7 +551,7 @@ got:
551 551
552 inode->i_ino = ino; 552 inode->i_ino = ino;
553 inode->i_blocks = 0; 553 inode->i_blocks = 0;
554 inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME_SEC; 554 inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
555 memset(ei->i_data, 0, sizeof(ei->i_data)); 555 memset(ei->i_data, 0, sizeof(ei->i_data));
556 ei->i_flags = 556 ei->i_flags =
557 ext2_mask_flags(mode, EXT2_I(dir)->i_flags & EXT2_FL_INHERITED); 557 ext2_mask_flags(mode, EXT2_I(dir)->i_flags & EXT2_FL_INHERITED);
diff --git a/fs/ext2/inode.c b/fs/ext2/inode.c
index d5c7d09919f3..b66a6585a521 100644
--- a/fs/ext2/inode.c
+++ b/fs/ext2/inode.c
@@ -594,7 +594,7 @@ static void ext2_splice_branch(struct inode *inode,
594 if (where->bh) 594 if (where->bh)
595 mark_buffer_dirty_inode(where->bh, inode); 595 mark_buffer_dirty_inode(where->bh, inode);
596 596
597 inode->i_ctime = CURRENT_TIME_SEC; 597 inode->i_ctime = current_time(inode);
598 mark_inode_dirty(inode); 598 mark_inode_dirty(inode);
599} 599}
600 600
@@ -1236,7 +1236,7 @@ static int ext2_setsize(struct inode *inode, loff_t newsize)
1236 __ext2_truncate_blocks(inode, newsize); 1236 __ext2_truncate_blocks(inode, newsize);
1237 dax_sem_up_write(EXT2_I(inode)); 1237 dax_sem_up_write(EXT2_I(inode));
1238 1238
1239 inode->i_mtime = inode->i_ctime = CURRENT_TIME_SEC; 1239 inode->i_mtime = inode->i_ctime = current_time(inode);
1240 if (inode_needs_sync(inode)) { 1240 if (inode_needs_sync(inode)) {
1241 sync_mapping_buffers(inode->i_mapping); 1241 sync_mapping_buffers(inode->i_mapping);
1242 sync_inode_metadata(inode, 1); 1242 sync_inode_metadata(inode, 1);
diff --git a/fs/ext2/ioctl.c b/fs/ext2/ioctl.c
index b386af2e45f4..9d617423e936 100644
--- a/fs/ext2/ioctl.c
+++ b/fs/ext2/ioctl.c
@@ -79,7 +79,7 @@ long ext2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
79 ei->i_flags = flags; 79 ei->i_flags = flags;
80 80
81 ext2_set_inode_flags(inode); 81 ext2_set_inode_flags(inode);
82 inode->i_ctime = CURRENT_TIME_SEC; 82 inode->i_ctime = current_time(inode);
83 inode_unlock(inode); 83 inode_unlock(inode);
84 84
85 mark_inode_dirty(inode); 85 mark_inode_dirty(inode);
@@ -103,7 +103,7 @@ setflags_out:
103 } 103 }
104 104
105 inode_lock(inode); 105 inode_lock(inode);
106 inode->i_ctime = CURRENT_TIME_SEC; 106 inode->i_ctime = current_time(inode);
107 inode->i_generation = generation; 107 inode->i_generation = generation;
108 inode_unlock(inode); 108 inode_unlock(inode);
109 109
diff --git a/fs/ext2/namei.c b/fs/ext2/namei.c
index d446203127fc..edb7b8c116eb 100644
--- a/fs/ext2/namei.c
+++ b/fs/ext2/namei.c
@@ -221,7 +221,7 @@ static int ext2_link (struct dentry * old_dentry, struct inode * dir,
221 if (err) 221 if (err)
222 return err; 222 return err;
223 223
224 inode->i_ctime = CURRENT_TIME_SEC; 224 inode->i_ctime = current_time(inode);
225 inode_inc_link_count(inode); 225 inode_inc_link_count(inode);
226 ihold(inode); 226 ihold(inode);
227 227
@@ -372,7 +372,7 @@ static int ext2_rename (struct inode * old_dir, struct dentry * old_dentry,
372 if (!new_de) 372 if (!new_de)
373 goto out_dir; 373 goto out_dir;
374 ext2_set_link(new_dir, new_de, new_page, old_inode, 1); 374 ext2_set_link(new_dir, new_de, new_page, old_inode, 1);
375 new_inode->i_ctime = CURRENT_TIME_SEC; 375 new_inode->i_ctime = current_time(new_inode);
376 if (dir_de) 376 if (dir_de)
377 drop_nlink(new_inode); 377 drop_nlink(new_inode);
378 inode_dec_link_count(new_inode); 378 inode_dec_link_count(new_inode);
@@ -388,7 +388,7 @@ static int ext2_rename (struct inode * old_dir, struct dentry * old_dentry,
388 * Like most other Unix systems, set the ctime for inodes on a 388 * Like most other Unix systems, set the ctime for inodes on a
389 * rename. 389 * rename.
390 */ 390 */
391 old_inode->i_ctime = CURRENT_TIME_SEC; 391 old_inode->i_ctime = current_time(old_inode);
392 mark_inode_dirty(old_inode); 392 mark_inode_dirty(old_inode);
393 393
394 ext2_delete_entry (old_de, old_page); 394 ext2_delete_entry (old_de, old_page);
diff --git a/fs/ext2/xattr.c b/fs/ext2/xattr.c
index b7f896f3f7a7..fbdb8f171893 100644
--- a/fs/ext2/xattr.c
+++ b/fs/ext2/xattr.c
@@ -691,7 +691,7 @@ ext2_xattr_set2(struct inode *inode, struct buffer_head *old_bh,
691 691
692 /* Update the inode. */ 692 /* Update the inode. */
693 EXT2_I(inode)->i_file_acl = new_bh ? new_bh->b_blocknr : 0; 693 EXT2_I(inode)->i_file_acl = new_bh ? new_bh->b_blocknr : 0;
694 inode->i_ctime = CURRENT_TIME_SEC; 694 inode->i_ctime = current_time(inode);
695 if (IS_SYNC(inode)) { 695 if (IS_SYNC(inode)) {
696 error = sync_inode_metadata(inode, 1); 696 error = sync_inode_metadata(inode, 1);
697 /* In case sync failed due to ENOSPC the inode was actually 697 /* In case sync failed due to ENOSPC the inode was actually
diff --git a/fs/fat/dir.c b/fs/fat/dir.c
index 663e428596c6..81cecbe6d7cf 100644
--- a/fs/fat/dir.c
+++ b/fs/fat/dir.c
@@ -1071,7 +1071,7 @@ int fat_remove_entries(struct inode *dir, struct fat_slot_info *sinfo)
1071 } 1071 }
1072 } 1072 }
1073 1073
1074 dir->i_mtime = dir->i_atime = CURRENT_TIME_SEC; 1074 dir->i_mtime = dir->i_atime = current_time(dir);
1075 if (IS_DIRSYNC(dir)) 1075 if (IS_DIRSYNC(dir))
1076 (void)fat_sync_inode(dir); 1076 (void)fat_sync_inode(dir);
1077 else 1077 else
diff --git a/fs/fat/file.c b/fs/fat/file.c
index f70185668832..811bbe0ab7a3 100644
--- a/fs/fat/file.c
+++ b/fs/fat/file.c
@@ -194,7 +194,7 @@ static int fat_cont_expand(struct inode *inode, loff_t size)
194 if (err) 194 if (err)
195 goto out; 195 goto out;
196 196
197 inode->i_ctime = inode->i_mtime = CURRENT_TIME_SEC; 197 inode->i_ctime = inode->i_mtime = current_time(inode);
198 mark_inode_dirty(inode); 198 mark_inode_dirty(inode);
199 if (IS_SYNC(inode)) { 199 if (IS_SYNC(inode)) {
200 int err2; 200 int err2;
@@ -297,7 +297,7 @@ static int fat_free(struct inode *inode, int skip)
297 MSDOS_I(inode)->i_logstart = 0; 297 MSDOS_I(inode)->i_logstart = 0;
298 } 298 }
299 MSDOS_I(inode)->i_attrs |= ATTR_ARCH; 299 MSDOS_I(inode)->i_attrs |= ATTR_ARCH;
300 inode->i_ctime = inode->i_mtime = CURRENT_TIME_SEC; 300 inode->i_ctime = inode->i_mtime = current_time(inode);
301 if (wait) { 301 if (wait) {
302 err = fat_sync_inode(inode); 302 err = fat_sync_inode(inode);
303 if (err) { 303 if (err) {
diff --git a/fs/fat/inode.c b/fs/fat/inode.c
index da04c0298fab..338d2f73eb29 100644
--- a/fs/fat/inode.c
+++ b/fs/fat/inode.c
@@ -237,7 +237,7 @@ static int fat_write_end(struct file *file, struct address_space *mapping,
237 if (err < len) 237 if (err < len)
238 fat_write_failed(mapping, pos + len); 238 fat_write_failed(mapping, pos + len);
239 if (!(err < 0) && !(MSDOS_I(inode)->i_attrs & ATTR_ARCH)) { 239 if (!(err < 0) && !(MSDOS_I(inode)->i_attrs & ATTR_ARCH)) {
240 inode->i_mtime = inode->i_ctime = CURRENT_TIME_SEC; 240 inode->i_mtime = inode->i_ctime = current_time(inode);
241 MSDOS_I(inode)->i_attrs |= ATTR_ARCH; 241 MSDOS_I(inode)->i_attrs |= ATTR_ARCH;
242 mark_inode_dirty(inode); 242 mark_inode_dirty(inode);
243 } 243 }
diff --git a/fs/fat/namei_msdos.c b/fs/fat/namei_msdos.c
index 664655b2c55f..ccd9f83f9bb6 100644
--- a/fs/fat/namei_msdos.c
+++ b/fs/fat/namei_msdos.c
@@ -283,7 +283,7 @@ static int msdos_create(struct inode *dir, struct dentry *dentry, umode_t mode,
283 goto out; 283 goto out;
284 } 284 }
285 285
286 ts = CURRENT_TIME_SEC; 286 ts = current_time(dir);
287 err = msdos_add_entry(dir, msdos_name, 0, is_hid, 0, &ts, &sinfo); 287 err = msdos_add_entry(dir, msdos_name, 0, is_hid, 0, &ts, &sinfo);
288 if (err) 288 if (err)
289 goto out; 289 goto out;
@@ -330,7 +330,7 @@ static int msdos_rmdir(struct inode *dir, struct dentry *dentry)
330 drop_nlink(dir); 330 drop_nlink(dir);
331 331
332 clear_nlink(inode); 332 clear_nlink(inode);
333 inode->i_ctime = CURRENT_TIME_SEC; 333 inode->i_ctime = current_time(inode);
334 fat_detach(inode); 334 fat_detach(inode);
335out: 335out:
336 mutex_unlock(&MSDOS_SB(sb)->s_lock); 336 mutex_unlock(&MSDOS_SB(sb)->s_lock);
@@ -364,7 +364,7 @@ static int msdos_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode)
364 goto out; 364 goto out;
365 } 365 }
366 366
367 ts = CURRENT_TIME_SEC; 367 ts = current_time(dir);
368 cluster = fat_alloc_new_dir(dir, &ts); 368 cluster = fat_alloc_new_dir(dir, &ts);
369 if (cluster < 0) { 369 if (cluster < 0) {
370 err = cluster; 370 err = cluster;
@@ -416,7 +416,7 @@ static int msdos_unlink(struct inode *dir, struct dentry *dentry)
416 if (err) 416 if (err)
417 goto out; 417 goto out;
418 clear_nlink(inode); 418 clear_nlink(inode);
419 inode->i_ctime = CURRENT_TIME_SEC; 419 inode->i_ctime = current_time(inode);
420 fat_detach(inode); 420 fat_detach(inode);
421out: 421out:
422 mutex_unlock(&MSDOS_SB(sb)->s_lock); 422 mutex_unlock(&MSDOS_SB(sb)->s_lock);
@@ -481,7 +481,7 @@ static int do_msdos_rename(struct inode *old_dir, unsigned char *old_name,
481 mark_inode_dirty(old_inode); 481 mark_inode_dirty(old_inode);
482 482
483 old_dir->i_version++; 483 old_dir->i_version++;
484 old_dir->i_ctime = old_dir->i_mtime = CURRENT_TIME_SEC; 484 old_dir->i_ctime = old_dir->i_mtime = current_time(old_dir);
485 if (IS_DIRSYNC(old_dir)) 485 if (IS_DIRSYNC(old_dir))
486 (void)fat_sync_inode(old_dir); 486 (void)fat_sync_inode(old_dir);
487 else 487 else
@@ -490,7 +490,7 @@ static int do_msdos_rename(struct inode *old_dir, unsigned char *old_name,
490 } 490 }
491 } 491 }
492 492
493 ts = CURRENT_TIME_SEC; 493 ts = current_time(old_inode);
494 if (new_inode) { 494 if (new_inode) {
495 if (err) 495 if (err)
496 goto out; 496 goto out;
diff --git a/fs/fat/namei_vfat.c b/fs/fat/namei_vfat.c
index 92b7363dafa9..d4a1b2bfda64 100644
--- a/fs/fat/namei_vfat.c
+++ b/fs/fat/namei_vfat.c
@@ -777,7 +777,7 @@ static int vfat_create(struct inode *dir, struct dentry *dentry, umode_t mode,
777 777
778 mutex_lock(&MSDOS_SB(sb)->s_lock); 778 mutex_lock(&MSDOS_SB(sb)->s_lock);
779 779
780 ts = CURRENT_TIME_SEC; 780 ts = current_time(dir);
781 err = vfat_add_entry(dir, &dentry->d_name, 0, 0, &ts, &sinfo); 781 err = vfat_add_entry(dir, &dentry->d_name, 0, 0, &ts, &sinfo);
782 if (err) 782 if (err)
783 goto out; 783 goto out;
@@ -821,7 +821,7 @@ static int vfat_rmdir(struct inode *dir, struct dentry *dentry)
821 drop_nlink(dir); 821 drop_nlink(dir);
822 822
823 clear_nlink(inode); 823 clear_nlink(inode);
824 inode->i_mtime = inode->i_atime = CURRENT_TIME_SEC; 824 inode->i_mtime = inode->i_atime = current_time(inode);
825 fat_detach(inode); 825 fat_detach(inode);
826 dentry->d_time = dir->i_version; 826 dentry->d_time = dir->i_version;
827out: 827out:
@@ -847,7 +847,7 @@ static int vfat_unlink(struct inode *dir, struct dentry *dentry)
847 if (err) 847 if (err)
848 goto out; 848 goto out;
849 clear_nlink(inode); 849 clear_nlink(inode);
850 inode->i_mtime = inode->i_atime = CURRENT_TIME_SEC; 850 inode->i_mtime = inode->i_atime = current_time(inode);
851 fat_detach(inode); 851 fat_detach(inode);
852 dentry->d_time = dir->i_version; 852 dentry->d_time = dir->i_version;
853out: 853out:
@@ -866,7 +866,7 @@ static int vfat_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode)
866 866
867 mutex_lock(&MSDOS_SB(sb)->s_lock); 867 mutex_lock(&MSDOS_SB(sb)->s_lock);
868 868
869 ts = CURRENT_TIME_SEC; 869 ts = current_time(dir);
870 cluster = fat_alloc_new_dir(dir, &ts); 870 cluster = fat_alloc_new_dir(dir, &ts);
871 if (cluster < 0) { 871 if (cluster < 0) {
872 err = cluster; 872 err = cluster;
@@ -931,7 +931,7 @@ static int vfat_rename(struct inode *old_dir, struct dentry *old_dentry,
931 } 931 }
932 } 932 }
933 933
934 ts = CURRENT_TIME_SEC; 934 ts = current_time(old_dir);
935 if (new_inode) { 935 if (new_inode) {
936 if (is_dir) { 936 if (is_dir) {
937 err = fat_dir_empty(new_inode); 937 err = fat_dir_empty(new_inode);
diff --git a/fs/hfs/catalog.c b/fs/hfs/catalog.c
index 8f4afd3f5108..8a66405b0f8b 100644
--- a/fs/hfs/catalog.c
+++ b/fs/hfs/catalog.c
@@ -125,7 +125,7 @@ int hfs_cat_create(u32 cnid, struct inode *dir, const struct qstr *str, struct i
125 goto err1; 125 goto err1;
126 126
127 dir->i_size++; 127 dir->i_size++;
128 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 128 dir->i_mtime = dir->i_ctime = current_time(dir);
129 mark_inode_dirty(dir); 129 mark_inode_dirty(dir);
130 hfs_find_exit(&fd); 130 hfs_find_exit(&fd);
131 return 0; 131 return 0;
@@ -261,7 +261,7 @@ int hfs_cat_delete(u32 cnid, struct inode *dir, const struct qstr *str)
261 } 261 }
262 262
263 dir->i_size--; 263 dir->i_size--;
264 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 264 dir->i_mtime = dir->i_ctime = current_time(dir);
265 mark_inode_dirty(dir); 265 mark_inode_dirty(dir);
266 res = 0; 266 res = 0;
267out: 267out:
@@ -321,7 +321,7 @@ int hfs_cat_move(u32 cnid, struct inode *src_dir, const struct qstr *src_name,
321 if (err) 321 if (err)
322 goto out; 322 goto out;
323 dst_dir->i_size++; 323 dst_dir->i_size++;
324 dst_dir->i_mtime = dst_dir->i_ctime = CURRENT_TIME_SEC; 324 dst_dir->i_mtime = dst_dir->i_ctime = current_time(dst_dir);
325 mark_inode_dirty(dst_dir); 325 mark_inode_dirty(dst_dir);
326 326
327 /* finally remove the old entry */ 327 /* finally remove the old entry */
@@ -333,7 +333,7 @@ int hfs_cat_move(u32 cnid, struct inode *src_dir, const struct qstr *src_name,
333 if (err) 333 if (err)
334 goto out; 334 goto out;
335 src_dir->i_size--; 335 src_dir->i_size--;
336 src_dir->i_mtime = src_dir->i_ctime = CURRENT_TIME_SEC; 336 src_dir->i_mtime = src_dir->i_ctime = current_time(src_dir);
337 mark_inode_dirty(src_dir); 337 mark_inode_dirty(src_dir);
338 338
339 type = entry.type; 339 type = entry.type;
diff --git a/fs/hfs/dir.c b/fs/hfs/dir.c
index 163190ecc0d2..4f379fb91691 100644
--- a/fs/hfs/dir.c
+++ b/fs/hfs/dir.c
@@ -268,7 +268,7 @@ static int hfs_remove(struct inode *dir, struct dentry *dentry)
268 if (res) 268 if (res)
269 return res; 269 return res;
270 clear_nlink(inode); 270 clear_nlink(inode);
271 inode->i_ctime = CURRENT_TIME_SEC; 271 inode->i_ctime = current_time(inode);
272 hfs_delete_inode(inode); 272 hfs_delete_inode(inode);
273 mark_inode_dirty(inode); 273 mark_inode_dirty(inode);
274 return 0; 274 return 0;
diff --git a/fs/hfs/inode.c b/fs/hfs/inode.c
index c6a32415735b..b8b57ecbe1ab 100644
--- a/fs/hfs/inode.c
+++ b/fs/hfs/inode.c
@@ -193,7 +193,7 @@ struct inode *hfs_new_inode(struct inode *dir, const struct qstr *name, umode_t
193 inode->i_uid = current_fsuid(); 193 inode->i_uid = current_fsuid();
194 inode->i_gid = current_fsgid(); 194 inode->i_gid = current_fsgid();
195 set_nlink(inode, 1); 195 set_nlink(inode, 1);
196 inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME_SEC; 196 inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
197 HFS_I(inode)->flags = 0; 197 HFS_I(inode)->flags = 0;
198 HFS_I(inode)->rsrc_inode = NULL; 198 HFS_I(inode)->rsrc_inode = NULL;
199 HFS_I(inode)->fs_blocks = 0; 199 HFS_I(inode)->fs_blocks = 0;
diff --git a/fs/hfsplus/catalog.c b/fs/hfsplus/catalog.c
index 142534d3c2d5..a5e00f7a4c14 100644
--- a/fs/hfsplus/catalog.c
+++ b/fs/hfsplus/catalog.c
@@ -303,7 +303,7 @@ int hfsplus_create_cat(u32 cnid, struct inode *dir,
303 dir->i_size++; 303 dir->i_size++;
304 if (S_ISDIR(inode->i_mode)) 304 if (S_ISDIR(inode->i_mode))
305 hfsplus_subfolders_inc(dir); 305 hfsplus_subfolders_inc(dir);
306 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 306 dir->i_mtime = dir->i_ctime = current_time(dir);
307 hfsplus_mark_inode_dirty(dir, HFSPLUS_I_CAT_DIRTY); 307 hfsplus_mark_inode_dirty(dir, HFSPLUS_I_CAT_DIRTY);
308 308
309 hfs_find_exit(&fd); 309 hfs_find_exit(&fd);
@@ -400,7 +400,7 @@ int hfsplus_delete_cat(u32 cnid, struct inode *dir, const struct qstr *str)
400 dir->i_size--; 400 dir->i_size--;
401 if (type == HFSPLUS_FOLDER) 401 if (type == HFSPLUS_FOLDER)
402 hfsplus_subfolders_dec(dir); 402 hfsplus_subfolders_dec(dir);
403 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 403 dir->i_mtime = dir->i_ctime = current_time(dir);
404 hfsplus_mark_inode_dirty(dir, HFSPLUS_I_CAT_DIRTY); 404 hfsplus_mark_inode_dirty(dir, HFSPLUS_I_CAT_DIRTY);
405 405
406 if (type == HFSPLUS_FILE || type == HFSPLUS_FOLDER) { 406 if (type == HFSPLUS_FILE || type == HFSPLUS_FOLDER) {
@@ -469,7 +469,7 @@ int hfsplus_rename_cat(u32 cnid,
469 dst_dir->i_size++; 469 dst_dir->i_size++;
470 if (type == HFSPLUS_FOLDER) 470 if (type == HFSPLUS_FOLDER)
471 hfsplus_subfolders_inc(dst_dir); 471 hfsplus_subfolders_inc(dst_dir);
472 dst_dir->i_mtime = dst_dir->i_ctime = CURRENT_TIME_SEC; 472 dst_dir->i_mtime = dst_dir->i_ctime = current_time(dst_dir);
473 473
474 /* finally remove the old entry */ 474 /* finally remove the old entry */
475 err = hfsplus_cat_build_key(sb, src_fd.search_key, 475 err = hfsplus_cat_build_key(sb, src_fd.search_key,
@@ -486,7 +486,7 @@ int hfsplus_rename_cat(u32 cnid,
486 src_dir->i_size--; 486 src_dir->i_size--;
487 if (type == HFSPLUS_FOLDER) 487 if (type == HFSPLUS_FOLDER)
488 hfsplus_subfolders_dec(src_dir); 488 hfsplus_subfolders_dec(src_dir);
489 src_dir->i_mtime = src_dir->i_ctime = CURRENT_TIME_SEC; 489 src_dir->i_mtime = src_dir->i_ctime = current_time(src_dir);
490 490
491 /* remove old thread entry */ 491 /* remove old thread entry */
492 hfsplus_cat_build_key_with_cnid(sb, src_fd.search_key, cnid); 492 hfsplus_cat_build_key_with_cnid(sb, src_fd.search_key, cnid);
diff --git a/fs/hfsplus/dir.c b/fs/hfsplus/dir.c
index 42e128661dc1..69c66c21113b 100644
--- a/fs/hfsplus/dir.c
+++ b/fs/hfsplus/dir.c
@@ -347,7 +347,7 @@ static int hfsplus_link(struct dentry *src_dentry, struct inode *dst_dir,
347 inc_nlink(inode); 347 inc_nlink(inode);
348 hfsplus_instantiate(dst_dentry, inode, cnid); 348 hfsplus_instantiate(dst_dentry, inode, cnid);
349 ihold(inode); 349 ihold(inode);
350 inode->i_ctime = CURRENT_TIME_SEC; 350 inode->i_ctime = current_time(inode);
351 mark_inode_dirty(inode); 351 mark_inode_dirty(inode);
352 sbi->file_count++; 352 sbi->file_count++;
353 hfsplus_mark_mdb_dirty(dst_dir->i_sb); 353 hfsplus_mark_mdb_dirty(dst_dir->i_sb);
@@ -406,7 +406,7 @@ static int hfsplus_unlink(struct inode *dir, struct dentry *dentry)
406 hfsplus_delete_inode(inode); 406 hfsplus_delete_inode(inode);
407 } else 407 } else
408 sbi->file_count--; 408 sbi->file_count--;
409 inode->i_ctime = CURRENT_TIME_SEC; 409 inode->i_ctime = current_time(inode);
410 mark_inode_dirty(inode); 410 mark_inode_dirty(inode);
411out: 411out:
412 mutex_unlock(&sbi->vh_mutex); 412 mutex_unlock(&sbi->vh_mutex);
@@ -427,7 +427,7 @@ static int hfsplus_rmdir(struct inode *dir, struct dentry *dentry)
427 if (res) 427 if (res)
428 goto out; 428 goto out;
429 clear_nlink(inode); 429 clear_nlink(inode);
430 inode->i_ctime = CURRENT_TIME_SEC; 430 inode->i_ctime = current_time(inode);
431 hfsplus_delete_inode(inode); 431 hfsplus_delete_inode(inode);
432 mark_inode_dirty(inode); 432 mark_inode_dirty(inode);
433out: 433out:
diff --git a/fs/hfsplus/inode.c b/fs/hfsplus/inode.c
index 19462d773fe2..c350cfb6898c 100644
--- a/fs/hfsplus/inode.c
+++ b/fs/hfsplus/inode.c
@@ -369,7 +369,7 @@ struct inode *hfsplus_new_inode(struct super_block *sb, umode_t mode)
369 inode->i_uid = current_fsuid(); 369 inode->i_uid = current_fsuid();
370 inode->i_gid = current_fsgid(); 370 inode->i_gid = current_fsgid();
371 set_nlink(inode, 1); 371 set_nlink(inode, 1);
372 inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME_SEC; 372 inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
373 373
374 hip = HFSPLUS_I(inode); 374 hip = HFSPLUS_I(inode);
375 INIT_LIST_HEAD(&hip->open_dir_list); 375 INIT_LIST_HEAD(&hip->open_dir_list);
diff --git a/fs/hfsplus/ioctl.c b/fs/hfsplus/ioctl.c
index 32a49e292b6a..99627f8a0a18 100644
--- a/fs/hfsplus/ioctl.c
+++ b/fs/hfsplus/ioctl.c
@@ -122,7 +122,7 @@ static int hfsplus_ioctl_setflags(struct file *file, int __user *user_flags)
122 else 122 else
123 hip->userflags &= ~HFSPLUS_FLG_NODUMP; 123 hip->userflags &= ~HFSPLUS_FLG_NODUMP;
124 124
125 inode->i_ctime = CURRENT_TIME_SEC; 125 inode->i_ctime = current_time(inode);
126 mark_inode_dirty(inode); 126 mark_inode_dirty(inode);
127 127
128out_unlock_inode: 128out_unlock_inode:
diff --git a/fs/jffs2/acl.c b/fs/jffs2/acl.c
index bc2693d56298..8fd0a7845d88 100644
--- a/fs/jffs2/acl.c
+++ b/fs/jffs2/acl.c
@@ -242,7 +242,7 @@ int jffs2_set_acl(struct inode *inode, struct posix_acl *acl, int type)
242 242
243 attr.ia_valid = ATTR_MODE | ATTR_CTIME; 243 attr.ia_valid = ATTR_MODE | ATTR_CTIME;
244 attr.ia_mode = mode; 244 attr.ia_mode = mode;
245 attr.ia_ctime = CURRENT_TIME_SEC; 245 attr.ia_ctime = current_time(inode);
246 rc = jffs2_do_setattr(inode, &attr); 246 rc = jffs2_do_setattr(inode, &attr);
247 if (rc < 0) 247 if (rc < 0)
248 return rc; 248 return rc;
diff --git a/fs/jffs2/fs.c b/fs/jffs2/fs.c
index ae2ebb26b446..2478e0b98441 100644
--- a/fs/jffs2/fs.c
+++ b/fs/jffs2/fs.c
@@ -472,7 +472,7 @@ struct inode *jffs2_new_inode (struct inode *dir_i, umode_t mode, struct jffs2_r
472 inode->i_mode = jemode_to_cpu(ri->mode); 472 inode->i_mode = jemode_to_cpu(ri->mode);
473 i_gid_write(inode, je16_to_cpu(ri->gid)); 473 i_gid_write(inode, je16_to_cpu(ri->gid));
474 i_uid_write(inode, je16_to_cpu(ri->uid)); 474 i_uid_write(inode, je16_to_cpu(ri->uid));
475 inode->i_atime = inode->i_ctime = inode->i_mtime = CURRENT_TIME_SEC; 475 inode->i_atime = inode->i_ctime = inode->i_mtime = current_time(inode);
476 ri->atime = ri->mtime = ri->ctime = cpu_to_je32(I_SEC(inode->i_mtime)); 476 ri->atime = ri->mtime = ri->ctime = cpu_to_je32(I_SEC(inode->i_mtime));
477 477
478 inode->i_blocks = 0; 478 inode->i_blocks = 0;
diff --git a/fs/minix/bitmap.c b/fs/minix/bitmap.c
index 742942a983be..c2c3fd3277b5 100644
--- a/fs/minix/bitmap.c
+++ b/fs/minix/bitmap.c
@@ -253,7 +253,7 @@ struct inode *minix_new_inode(const struct inode *dir, umode_t mode, int *error)
253 } 253 }
254 inode_init_owner(inode, dir, mode); 254 inode_init_owner(inode, dir, mode);
255 inode->i_ino = j; 255 inode->i_ino = j;
256 inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME_SEC; 256 inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
257 inode->i_blocks = 0; 257 inode->i_blocks = 0;
258 memset(&minix_i(inode)->u, 0, sizeof(minix_i(inode)->u)); 258 memset(&minix_i(inode)->u, 0, sizeof(minix_i(inode)->u));
259 insert_inode_hash(inode); 259 insert_inode_hash(inode);
diff --git a/fs/minix/dir.c b/fs/minix/dir.c
index 31dcd515b9d5..7edc9b395700 100644
--- a/fs/minix/dir.c
+++ b/fs/minix/dir.c
@@ -274,7 +274,7 @@ got_it:
274 de->inode = inode->i_ino; 274 de->inode = inode->i_ino;
275 } 275 }
276 err = dir_commit_chunk(page, pos, sbi->s_dirsize); 276 err = dir_commit_chunk(page, pos, sbi->s_dirsize);
277 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 277 dir->i_mtime = dir->i_ctime = current_time(dir);
278 mark_inode_dirty(dir); 278 mark_inode_dirty(dir);
279out_put: 279out_put:
280 dir_put_page(page); 280 dir_put_page(page);
@@ -306,7 +306,7 @@ int minix_delete_entry(struct minix_dir_entry *de, struct page *page)
306 unlock_page(page); 306 unlock_page(page);
307 } 307 }
308 dir_put_page(page); 308 dir_put_page(page);
309 inode->i_ctime = inode->i_mtime = CURRENT_TIME_SEC; 309 inode->i_ctime = inode->i_mtime = current_time(inode);
310 mark_inode_dirty(inode); 310 mark_inode_dirty(inode);
311 return err; 311 return err;
312} 312}
@@ -430,7 +430,7 @@ void minix_set_link(struct minix_dir_entry *de, struct page *page,
430 unlock_page(page); 430 unlock_page(page);
431 } 431 }
432 dir_put_page(page); 432 dir_put_page(page);
433 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 433 dir->i_mtime = dir->i_ctime = current_time(dir);
434 mark_inode_dirty(dir); 434 mark_inode_dirty(dir);
435} 435}
436 436
diff --git a/fs/minix/itree_common.c b/fs/minix/itree_common.c
index a731cabf1540..4c57c9af6946 100644
--- a/fs/minix/itree_common.c
+++ b/fs/minix/itree_common.c
@@ -124,7 +124,7 @@ static inline int splice_branch(struct inode *inode,
124 124
125 /* We are done with atomic stuff, now do the rest of housekeeping */ 125 /* We are done with atomic stuff, now do the rest of housekeeping */
126 126
127 inode->i_ctime = CURRENT_TIME_SEC; 127 inode->i_ctime = current_time(inode);
128 128
129 /* had we spliced it onto indirect block? */ 129 /* had we spliced it onto indirect block? */
130 if (where->bh) 130 if (where->bh)
@@ -343,7 +343,7 @@ do_indirects:
343 } 343 }
344 first_whole++; 344 first_whole++;
345 } 345 }
346 inode->i_mtime = inode->i_ctime = CURRENT_TIME_SEC; 346 inode->i_mtime = inode->i_ctime = current_time(inode);
347 mark_inode_dirty(inode); 347 mark_inode_dirty(inode);
348} 348}
349 349
diff --git a/fs/minix/namei.c b/fs/minix/namei.c
index 2887d1d95ce2..66ca51530278 100644
--- a/fs/minix/namei.c
+++ b/fs/minix/namei.c
@@ -106,7 +106,7 @@ static int minix_link(struct dentry * old_dentry, struct inode * dir,
106{ 106{
107 struct inode *inode = d_inode(old_dentry); 107 struct inode *inode = d_inode(old_dentry);
108 108
109 inode->i_ctime = CURRENT_TIME_SEC; 109 inode->i_ctime = current_time(inode);
110 inode_inc_link_count(inode); 110 inode_inc_link_count(inode);
111 ihold(inode); 111 ihold(inode);
112 return add_nondir(dentry, inode); 112 return add_nondir(dentry, inode);
@@ -219,7 +219,7 @@ static int minix_rename(struct inode * old_dir, struct dentry *old_dentry,
219 if (!new_de) 219 if (!new_de)
220 goto out_dir; 220 goto out_dir;
221 minix_set_link(new_de, new_page, old_inode); 221 minix_set_link(new_de, new_page, old_inode);
222 new_inode->i_ctime = CURRENT_TIME_SEC; 222 new_inode->i_ctime = current_time(new_inode);
223 if (dir_de) 223 if (dir_de)
224 drop_nlink(new_inode); 224 drop_nlink(new_inode);
225 inode_dec_link_count(new_inode); 225 inode_dec_link_count(new_inode);
diff --git a/fs/omfs/dir.c b/fs/omfs/dir.c
index c8cbf3b60645..9a89164de1cc 100644
--- a/fs/omfs/dir.c
+++ b/fs/omfs/dir.c
@@ -143,7 +143,7 @@ static int omfs_add_link(struct dentry *dentry, struct inode *inode)
143 mark_buffer_dirty(bh); 143 mark_buffer_dirty(bh);
144 brelse(bh); 144 brelse(bh);
145 145
146 dir->i_ctime = CURRENT_TIME_SEC; 146 dir->i_ctime = current_time(dir);
147 147
148 /* mark affected inodes dirty to rebuild checksums */ 148 /* mark affected inodes dirty to rebuild checksums */
149 mark_inode_dirty(dir); 149 mark_inode_dirty(dir);
@@ -395,7 +395,7 @@ static int omfs_rename(struct inode *old_dir, struct dentry *old_dentry,
395 if (err) 395 if (err)
396 goto out; 396 goto out;
397 397
398 old_inode->i_ctime = CURRENT_TIME_SEC; 398 old_inode->i_ctime = current_time(old_inode);
399 mark_inode_dirty(old_inode); 399 mark_inode_dirty(old_inode);
400out: 400out:
401 return err; 401 return err;
diff --git a/fs/reiserfs/inode.c b/fs/reiserfs/inode.c
index c2c59f9ff04b..f0609c849510 100644
--- a/fs/reiserfs/inode.c
+++ b/fs/reiserfs/inode.c
@@ -2005,7 +2005,7 @@ int reiserfs_new_inode(struct reiserfs_transaction_handle *th,
2005 if (S_ISLNK(inode->i_mode)) 2005 if (S_ISLNK(inode->i_mode))
2006 inode->i_flags &= ~(S_IMMUTABLE | S_APPEND); 2006 inode->i_flags &= ~(S_IMMUTABLE | S_APPEND);
2007 2007
2008 inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME_SEC; 2008 inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
2009 inode->i_size = i_size; 2009 inode->i_size = i_size;
2010 inode->i_blocks = 0; 2010 inode->i_blocks = 0;
2011 inode->i_bytes = 0; 2011 inode->i_bytes = 0;
diff --git a/fs/reiserfs/ioctl.c b/fs/reiserfs/ioctl.c
index 2f1ddc908013..1f4692a505a0 100644
--- a/fs/reiserfs/ioctl.c
+++ b/fs/reiserfs/ioctl.c
@@ -94,7 +94,7 @@ long reiserfs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
94 } 94 }
95 sd_attrs_to_i_attrs(flags, inode); 95 sd_attrs_to_i_attrs(flags, inode);
96 REISERFS_I(inode)->i_attrs = flags; 96 REISERFS_I(inode)->i_attrs = flags;
97 inode->i_ctime = CURRENT_TIME_SEC; 97 inode->i_ctime = current_time(inode);
98 mark_inode_dirty(inode); 98 mark_inode_dirty(inode);
99setflags_out: 99setflags_out:
100 mnt_drop_write_file(filp); 100 mnt_drop_write_file(filp);
@@ -115,7 +115,7 @@ setflags_out:
115 err = -EFAULT; 115 err = -EFAULT;
116 goto setversion_out; 116 goto setversion_out;
117 } 117 }
118 inode->i_ctime = CURRENT_TIME_SEC; 118 inode->i_ctime = current_time(inode);
119 mark_inode_dirty(inode); 119 mark_inode_dirty(inode);
120setversion_out: 120setversion_out:
121 mnt_drop_write_file(filp); 121 mnt_drop_write_file(filp);
diff --git a/fs/reiserfs/namei.c b/fs/reiserfs/namei.c
index 8a36696d6df9..968411930bd5 100644
--- a/fs/reiserfs/namei.c
+++ b/fs/reiserfs/namei.c
@@ -570,7 +570,7 @@ static int reiserfs_add_entry(struct reiserfs_transaction_handle *th,
570 } 570 }
571 571
572 dir->i_size += paste_size; 572 dir->i_size += paste_size;
573 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 573 dir->i_mtime = dir->i_ctime = current_time(dir);
574 if (!S_ISDIR(inode->i_mode) && visible) 574 if (!S_ISDIR(inode->i_mode) && visible)
575 /* reiserfs_mkdir or reiserfs_rename will do that by itself */ 575 /* reiserfs_mkdir or reiserfs_rename will do that by itself */
576 reiserfs_update_sd(th, dir); 576 reiserfs_update_sd(th, dir);
@@ -963,7 +963,7 @@ static int reiserfs_rmdir(struct inode *dir, struct dentry *dentry)
963 inode->i_nlink); 963 inode->i_nlink);
964 964
965 clear_nlink(inode); 965 clear_nlink(inode);
966 inode->i_ctime = dir->i_ctime = dir->i_mtime = CURRENT_TIME_SEC; 966 inode->i_ctime = dir->i_ctime = dir->i_mtime = current_time(dir);
967 reiserfs_update_sd(&th, inode); 967 reiserfs_update_sd(&th, inode);
968 968
969 DEC_DIR_INODE_NLINK(dir) 969 DEC_DIR_INODE_NLINK(dir)
@@ -1067,11 +1067,11 @@ static int reiserfs_unlink(struct inode *dir, struct dentry *dentry)
1067 inc_nlink(inode); 1067 inc_nlink(inode);
1068 goto end_unlink; 1068 goto end_unlink;
1069 } 1069 }
1070 inode->i_ctime = CURRENT_TIME_SEC; 1070 inode->i_ctime = current_time(inode);
1071 reiserfs_update_sd(&th, inode); 1071 reiserfs_update_sd(&th, inode);
1072 1072
1073 dir->i_size -= (de.de_entrylen + DEH_SIZE); 1073 dir->i_size -= (de.de_entrylen + DEH_SIZE);
1074 dir->i_ctime = dir->i_mtime = CURRENT_TIME_SEC; 1074 dir->i_ctime = dir->i_mtime = current_time(dir);
1075 reiserfs_update_sd(&th, dir); 1075 reiserfs_update_sd(&th, dir);
1076 1076
1077 if (!savelink) 1077 if (!savelink)
@@ -1246,7 +1246,7 @@ static int reiserfs_link(struct dentry *old_dentry, struct inode *dir,
1246 return err ? err : retval; 1246 return err ? err : retval;
1247 } 1247 }
1248 1248
1249 inode->i_ctime = CURRENT_TIME_SEC; 1249 inode->i_ctime = current_time(inode);
1250 reiserfs_update_sd(&th, inode); 1250 reiserfs_update_sd(&th, inode);
1251 1251
1252 ihold(inode); 1252 ihold(inode);
@@ -1567,7 +1567,7 @@ static int reiserfs_rename(struct inode *old_dir, struct dentry *old_dentry,
1567 1567
1568 mark_de_hidden(old_de.de_deh + old_de.de_entry_num); 1568 mark_de_hidden(old_de.de_deh + old_de.de_entry_num);
1569 journal_mark_dirty(&th, old_de.de_bh); 1569 journal_mark_dirty(&th, old_de.de_bh);
1570 ctime = CURRENT_TIME_SEC; 1570 ctime = current_time(old_dir);
1571 old_dir->i_ctime = old_dir->i_mtime = ctime; 1571 old_dir->i_ctime = old_dir->i_mtime = ctime;
1572 new_dir->i_ctime = new_dir->i_mtime = ctime; 1572 new_dir->i_ctime = new_dir->i_mtime = ctime;
1573 /* 1573 /*
diff --git a/fs/reiserfs/stree.c b/fs/reiserfs/stree.c
index 4032d1e87c8f..a97e352d05d3 100644
--- a/fs/reiserfs/stree.c
+++ b/fs/reiserfs/stree.c
@@ -1987,8 +1987,8 @@ int reiserfs_do_truncate(struct reiserfs_transaction_handle *th,
1987 pathrelse(&s_search_path); 1987 pathrelse(&s_search_path);
1988 1988
1989 if (update_timestamps) { 1989 if (update_timestamps) {
1990 inode->i_mtime = CURRENT_TIME_SEC; 1990 inode->i_mtime = current_time(inode);
1991 inode->i_ctime = CURRENT_TIME_SEC; 1991 inode->i_ctime = current_time(inode);
1992 } 1992 }
1993 reiserfs_update_sd(th, inode); 1993 reiserfs_update_sd(th, inode);
1994 1994
@@ -2012,8 +2012,8 @@ int reiserfs_do_truncate(struct reiserfs_transaction_handle *th,
2012update_and_out: 2012update_and_out:
2013 if (update_timestamps) { 2013 if (update_timestamps) {
2014 /* this is truncate, not file closing */ 2014 /* this is truncate, not file closing */
2015 inode->i_mtime = CURRENT_TIME_SEC; 2015 inode->i_mtime = current_time(inode);
2016 inode->i_ctime = CURRENT_TIME_SEC; 2016 inode->i_ctime = current_time(inode);
2017 } 2017 }
2018 reiserfs_update_sd(th, inode); 2018 reiserfs_update_sd(th, inode);
2019 2019
diff --git a/fs/reiserfs/super.c b/fs/reiserfs/super.c
index 7a4a85a6821e..44edbf4d92aa 100644
--- a/fs/reiserfs/super.c
+++ b/fs/reiserfs/super.c
@@ -2512,7 +2512,7 @@ out:
2512 if (inode->i_size < off + len - towrite) 2512 if (inode->i_size < off + len - towrite)
2513 i_size_write(inode, off + len - towrite); 2513 i_size_write(inode, off + len - towrite);
2514 inode->i_version++; 2514 inode->i_version++;
2515 inode->i_mtime = inode->i_ctime = CURRENT_TIME; 2515 inode->i_mtime = inode->i_ctime = current_time(inode);
2516 mark_inode_dirty(inode); 2516 mark_inode_dirty(inode);
2517 return len - towrite; 2517 return len - towrite;
2518} 2518}
diff --git a/fs/reiserfs/xattr.c b/fs/reiserfs/xattr.c
index a33812ae9fad..e87aa21c30de 100644
--- a/fs/reiserfs/xattr.c
+++ b/fs/reiserfs/xattr.c
@@ -450,13 +450,13 @@ int reiserfs_commit_write(struct file *f, struct page *page,
450 450
451static void update_ctime(struct inode *inode) 451static void update_ctime(struct inode *inode)
452{ 452{
453 struct timespec now = current_fs_time(inode->i_sb); 453 struct timespec now = current_time(inode);
454 454
455 if (inode_unhashed(inode) || !inode->i_nlink || 455 if (inode_unhashed(inode) || !inode->i_nlink ||
456 timespec_equal(&inode->i_ctime, &now)) 456 timespec_equal(&inode->i_ctime, &now))
457 return; 457 return;
458 458
459 inode->i_ctime = CURRENT_TIME_SEC; 459 inode->i_ctime = current_time(inode);
460 mark_inode_dirty(inode); 460 mark_inode_dirty(inode);
461} 461}
462 462
@@ -575,7 +575,7 @@ reiserfs_xattr_set_handle(struct reiserfs_transaction_handle *th,
575 new_size = buffer_size + sizeof(struct reiserfs_xattr_header); 575 new_size = buffer_size + sizeof(struct reiserfs_xattr_header);
576 if (!err && new_size < i_size_read(d_inode(dentry))) { 576 if (!err && new_size < i_size_read(d_inode(dentry))) {
577 struct iattr newattrs = { 577 struct iattr newattrs = {
578 .ia_ctime = current_fs_time(inode->i_sb), 578 .ia_ctime = current_time(inode),
579 .ia_size = new_size, 579 .ia_size = new_size,
580 .ia_valid = ATTR_SIZE | ATTR_CTIME, 580 .ia_valid = ATTR_SIZE | ATTR_CTIME,
581 }; 581 };
diff --git a/fs/reiserfs/xattr_acl.c b/fs/reiserfs/xattr_acl.c
index dbed42f755e0..c6eaab0481d3 100644
--- a/fs/reiserfs/xattr_acl.c
+++ b/fs/reiserfs/xattr_acl.c
@@ -277,7 +277,7 @@ __reiserfs_set_acl(struct reiserfs_transaction_handle *th, struct inode *inode,
277 if (error == -ENODATA) { 277 if (error == -ENODATA) {
278 error = 0; 278 error = 0;
279 if (type == ACL_TYPE_ACCESS) { 279 if (type == ACL_TYPE_ACCESS) {
280 inode->i_ctime = CURRENT_TIME_SEC; 280 inode->i_ctime = current_time(inode);
281 mark_inode_dirty(inode); 281 mark_inode_dirty(inode);
282 } 282 }
283 } 283 }
diff --git a/fs/sysv/dir.c b/fs/sysv/dir.c
index 2661b77fc8a7..5bdae85ceef7 100644
--- a/fs/sysv/dir.c
+++ b/fs/sysv/dir.c
@@ -215,7 +215,7 @@ got_it:
215 memset (de->name + namelen, 0, SYSV_DIRSIZE - namelen - 2); 215 memset (de->name + namelen, 0, SYSV_DIRSIZE - namelen - 2);
216 de->inode = cpu_to_fs16(SYSV_SB(inode->i_sb), inode->i_ino); 216 de->inode = cpu_to_fs16(SYSV_SB(inode->i_sb), inode->i_ino);
217 err = dir_commit_chunk(page, pos, SYSV_DIRSIZE); 217 err = dir_commit_chunk(page, pos, SYSV_DIRSIZE);
218 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 218 dir->i_mtime = dir->i_ctime = current_time(dir);
219 mark_inode_dirty(dir); 219 mark_inode_dirty(dir);
220out_page: 220out_page:
221 dir_put_page(page); 221 dir_put_page(page);
@@ -239,7 +239,7 @@ int sysv_delete_entry(struct sysv_dir_entry *de, struct page *page)
239 de->inode = 0; 239 de->inode = 0;
240 err = dir_commit_chunk(page, pos, SYSV_DIRSIZE); 240 err = dir_commit_chunk(page, pos, SYSV_DIRSIZE);
241 dir_put_page(page); 241 dir_put_page(page);
242 inode->i_ctime = inode->i_mtime = CURRENT_TIME_SEC; 242 inode->i_ctime = inode->i_mtime = current_time(inode);
243 mark_inode_dirty(inode); 243 mark_inode_dirty(inode);
244 return err; 244 return err;
245} 245}
@@ -337,7 +337,7 @@ void sysv_set_link(struct sysv_dir_entry *de, struct page *page,
337 de->inode = cpu_to_fs16(SYSV_SB(inode->i_sb), inode->i_ino); 337 de->inode = cpu_to_fs16(SYSV_SB(inode->i_sb), inode->i_ino);
338 err = dir_commit_chunk(page, pos, SYSV_DIRSIZE); 338 err = dir_commit_chunk(page, pos, SYSV_DIRSIZE);
339 dir_put_page(page); 339 dir_put_page(page);
340 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 340 dir->i_mtime = dir->i_ctime = current_time(dir);
341 mark_inode_dirty(dir); 341 mark_inode_dirty(dir);
342} 342}
343 343
diff --git a/fs/sysv/ialloc.c b/fs/sysv/ialloc.c
index f9db4eb31db4..53f1b78996dd 100644
--- a/fs/sysv/ialloc.c
+++ b/fs/sysv/ialloc.c
@@ -164,7 +164,7 @@ struct inode * sysv_new_inode(const struct inode * dir, umode_t mode)
164 dirty_sb(sb); 164 dirty_sb(sb);
165 inode_init_owner(inode, dir, mode); 165 inode_init_owner(inode, dir, mode);
166 inode->i_ino = fs16_to_cpu(sbi, ino); 166 inode->i_ino = fs16_to_cpu(sbi, ino);
167 inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME_SEC; 167 inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
168 inode->i_blocks = 0; 168 inode->i_blocks = 0;
169 memset(SYSV_I(inode)->i_data, 0, sizeof(SYSV_I(inode)->i_data)); 169 memset(SYSV_I(inode)->i_data, 0, sizeof(SYSV_I(inode)->i_data));
170 SYSV_I(inode)->i_dir_start_lookup = 0; 170 SYSV_I(inode)->i_dir_start_lookup = 0;
diff --git a/fs/sysv/itree.c b/fs/sysv/itree.c
index 2fde40acf024..08d3e630b49c 100644
--- a/fs/sysv/itree.c
+++ b/fs/sysv/itree.c
@@ -178,7 +178,7 @@ static inline int splice_branch(struct inode *inode,
178 *where->p = where->key; 178 *where->p = where->key;
179 write_unlock(&pointers_lock); 179 write_unlock(&pointers_lock);
180 180
181 inode->i_ctime = CURRENT_TIME_SEC; 181 inode->i_ctime = current_time(inode);
182 182
183 /* had we spliced it onto indirect block? */ 183 /* had we spliced it onto indirect block? */
184 if (where->bh) 184 if (where->bh)
@@ -418,7 +418,7 @@ do_indirects:
418 } 418 }
419 n++; 419 n++;
420 } 420 }
421 inode->i_mtime = inode->i_ctime = CURRENT_TIME_SEC; 421 inode->i_mtime = inode->i_ctime = current_time(inode);
422 if (IS_SYNC(inode)) 422 if (IS_SYNC(inode))
423 sysv_sync_inode (inode); 423 sysv_sync_inode (inode);
424 else 424 else
diff --git a/fs/sysv/namei.c b/fs/sysv/namei.c
index a42de45ce40d..ce66618721b2 100644
--- a/fs/sysv/namei.c
+++ b/fs/sysv/namei.c
@@ -120,7 +120,7 @@ static int sysv_link(struct dentry * old_dentry, struct inode * dir,
120{ 120{
121 struct inode *inode = d_inode(old_dentry); 121 struct inode *inode = d_inode(old_dentry);
122 122
123 inode->i_ctime = CURRENT_TIME_SEC; 123 inode->i_ctime = current_time(inode);
124 inode_inc_link_count(inode); 124 inode_inc_link_count(inode);
125 ihold(inode); 125 ihold(inode);
126 126
@@ -240,7 +240,7 @@ static int sysv_rename(struct inode * old_dir, struct dentry * old_dentry,
240 if (!new_de) 240 if (!new_de)
241 goto out_dir; 241 goto out_dir;
242 sysv_set_link(new_de, new_page, old_inode); 242 sysv_set_link(new_de, new_page, old_inode);
243 new_inode->i_ctime = CURRENT_TIME_SEC; 243 new_inode->i_ctime = current_time(new_inode);
244 if (dir_de) 244 if (dir_de)
245 drop_nlink(new_inode); 245 drop_nlink(new_inode);
246 inode_dec_link_count(new_inode); 246 inode_dec_link_count(new_inode);
diff --git a/fs/ufs/dir.c b/fs/ufs/dir.c
index fa3bda1a860f..de01b8f2aa78 100644
--- a/fs/ufs/dir.c
+++ b/fs/ufs/dir.c
@@ -100,7 +100,7 @@ void ufs_set_link(struct inode *dir, struct ufs_dir_entry *de,
100 err = ufs_commit_chunk(page, pos, len); 100 err = ufs_commit_chunk(page, pos, len);
101 ufs_put_page(page); 101 ufs_put_page(page);
102 if (update_times) 102 if (update_times)
103 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 103 dir->i_mtime = dir->i_ctime = current_time(dir);
104 mark_inode_dirty(dir); 104 mark_inode_dirty(dir);
105} 105}
106 106
@@ -389,7 +389,7 @@ got_it:
389 ufs_set_de_type(sb, de, inode->i_mode); 389 ufs_set_de_type(sb, de, inode->i_mode);
390 390
391 err = ufs_commit_chunk(page, pos, rec_len); 391 err = ufs_commit_chunk(page, pos, rec_len);
392 dir->i_mtime = dir->i_ctime = CURRENT_TIME_SEC; 392 dir->i_mtime = dir->i_ctime = current_time(dir);
393 393
394 mark_inode_dirty(dir); 394 mark_inode_dirty(dir);
395 /* OFFSET_CACHE */ 395 /* OFFSET_CACHE */
@@ -530,7 +530,7 @@ int ufs_delete_entry(struct inode *inode, struct ufs_dir_entry *dir,
530 pde->d_reclen = cpu_to_fs16(sb, to - from); 530 pde->d_reclen = cpu_to_fs16(sb, to - from);
531 dir->d_ino = 0; 531 dir->d_ino = 0;
532 err = ufs_commit_chunk(page, pos, to - from); 532 err = ufs_commit_chunk(page, pos, to - from);
533 inode->i_ctime = inode->i_mtime = CURRENT_TIME_SEC; 533 inode->i_ctime = inode->i_mtime = current_time(inode);
534 mark_inode_dirty(inode); 534 mark_inode_dirty(inode);
535out: 535out:
536 ufs_put_page(page); 536 ufs_put_page(page);
diff --git a/fs/ufs/ialloc.c b/fs/ufs/ialloc.c
index fd0203ce1f7f..9774555b3721 100644
--- a/fs/ufs/ialloc.c
+++ b/fs/ufs/ialloc.c
@@ -290,7 +290,7 @@ cg_found:
290 inode_init_owner(inode, dir, mode); 290 inode_init_owner(inode, dir, mode);
291 inode->i_blocks = 0; 291 inode->i_blocks = 0;
292 inode->i_generation = 0; 292 inode->i_generation = 0;
293 inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME_SEC; 293 inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
294 ufsi->i_flags = UFS_I(dir)->i_flags; 294 ufsi->i_flags = UFS_I(dir)->i_flags;
295 ufsi->i_lastfrag = 0; 295 ufsi->i_lastfrag = 0;
296 ufsi->i_shadow = 0; 296 ufsi->i_shadow = 0;
diff --git a/fs/ufs/inode.c b/fs/ufs/inode.c
index 9f49431e798d..edd3c0a58ed4 100644
--- a/fs/ufs/inode.c
+++ b/fs/ufs/inode.c
@@ -293,7 +293,7 @@ ufs_inode_getfrag(struct inode *inode, unsigned index,
293 293
294 if (new) 294 if (new)
295 *new = 1; 295 *new = 1;
296 inode->i_ctime = CURRENT_TIME_SEC; 296 inode->i_ctime = current_time(inode);
297 if (IS_SYNC(inode)) 297 if (IS_SYNC(inode))
298 ufs_sync_inode (inode); 298 ufs_sync_inode (inode);
299 mark_inode_dirty(inode); 299 mark_inode_dirty(inode);
@@ -375,7 +375,7 @@ ufs_inode_getblock(struct inode *inode, u64 ind_block,
375 mark_buffer_dirty(bh); 375 mark_buffer_dirty(bh);
376 if (IS_SYNC(inode)) 376 if (IS_SYNC(inode))
377 sync_dirty_buffer(bh); 377 sync_dirty_buffer(bh);
378 inode->i_ctime = CURRENT_TIME_SEC; 378 inode->i_ctime = current_time(inode);
379 mark_inode_dirty(inode); 379 mark_inode_dirty(inode);
380out: 380out:
381 brelse (bh); 381 brelse (bh);
@@ -1185,7 +1185,7 @@ static int ufs_truncate(struct inode *inode, loff_t size)
1185 truncate_setsize(inode, size); 1185 truncate_setsize(inode, size);
1186 1186
1187 __ufs_truncate_blocks(inode); 1187 __ufs_truncate_blocks(inode);
1188 inode->i_mtime = inode->i_ctime = CURRENT_TIME_SEC; 1188 inode->i_mtime = inode->i_ctime = current_time(inode);
1189 mark_inode_dirty(inode); 1189 mark_inode_dirty(inode);
1190out: 1190out:
1191 UFSD("EXIT: err %d\n", err); 1191 UFSD("EXIT: err %d\n", err);
diff --git a/fs/ufs/namei.c b/fs/ufs/namei.c
index a1559f762805..e3b263998130 100644
--- a/fs/ufs/namei.c
+++ b/fs/ufs/namei.c
@@ -153,7 +153,7 @@ static int ufs_link (struct dentry * old_dentry, struct inode * dir,
153 struct inode *inode = d_inode(old_dentry); 153 struct inode *inode = d_inode(old_dentry);
154 int error; 154 int error;
155 155
156 inode->i_ctime = CURRENT_TIME_SEC; 156 inode->i_ctime = current_time(inode);
157 inode_inc_link_count(inode); 157 inode_inc_link_count(inode);
158 ihold(inode); 158 ihold(inode);
159 159
@@ -279,7 +279,7 @@ static int ufs_rename(struct inode *old_dir, struct dentry *old_dentry,
279 if (!new_de) 279 if (!new_de)
280 goto out_dir; 280 goto out_dir;
281 ufs_set_link(new_dir, new_de, new_page, old_inode, 1); 281 ufs_set_link(new_dir, new_de, new_page, old_inode, 1);
282 new_inode->i_ctime = CURRENT_TIME_SEC; 282 new_inode->i_ctime = current_time(new_inode);
283 if (dir_de) 283 if (dir_de)
284 drop_nlink(new_inode); 284 drop_nlink(new_inode);
285 inode_dec_link_count(new_inode); 285 inode_dec_link_count(new_inode);
@@ -295,7 +295,7 @@ static int ufs_rename(struct inode *old_dir, struct dentry *old_dentry,
295 * Like most other Unix systems, set the ctime for inodes on a 295 * Like most other Unix systems, set the ctime for inodes on a
296 * rename. 296 * rename.
297 */ 297 */
298 old_inode->i_ctime = CURRENT_TIME_SEC; 298 old_inode->i_ctime = current_time(old_inode);
299 299
300 ufs_delete_entry(old_dir, old_de, old_page); 300 ufs_delete_entry(old_dir, old_de, old_page);
301 mark_inode_dirty(old_inode); 301 mark_inode_dirty(old_inode);