Skip to content

Commit 6528733

Browse files
jtlaytonbrauner
authored andcommitted
shmem: convert to ctime accessor functions
In later patches, we're going to change how the inode's ctime field is used. Switch to using accessor functions instead of raw accesses of inode->i_ctime. Signed-off-by: Jeff Layton <[email protected]> Reviewed-by: Jan Kara <[email protected]> Message-Id: <[email protected]> Signed-off-by: Christian Brauner <[email protected]>
1 parent 417d2b6 commit 6528733

File tree

1 file changed

+12
-10
lines changed

1 file changed

+12
-10
lines changed

mm/shmem.c

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1047,7 +1047,7 @@ static void shmem_undo_range(struct inode *inode, loff_t lstart, loff_t lend,
10471047
void shmem_truncate_range(struct inode *inode, loff_t lstart, loff_t lend)
10481048
{
10491049
shmem_undo_range(inode, lstart, lend, false);
1050-
inode->i_ctime = inode->i_mtime = current_time(inode);
1050+
inode->i_mtime = inode_set_ctime_current(inode);
10511051
inode_inc_iversion(inode);
10521052
}
10531053
EXPORT_SYMBOL_GPL(shmem_truncate_range);
@@ -1144,9 +1144,9 @@ static int shmem_setattr(struct mnt_idmap *idmap,
11441144
if (attr->ia_valid & ATTR_MODE)
11451145
error = posix_acl_chmod(idmap, dentry, inode->i_mode);
11461146
if (!error && update_ctime) {
1147-
inode->i_ctime = current_time(inode);
1147+
inode_set_ctime_current(inode);
11481148
if (update_mtime)
1149-
inode->i_mtime = inode->i_ctime;
1149+
inode->i_mtime = inode_get_ctime(inode);
11501150
inode_inc_iversion(inode);
11511151
}
11521152
return error;
@@ -2372,7 +2372,7 @@ static struct inode *shmem_get_inode(struct mnt_idmap *idmap, struct super_block
23722372
inode->i_ino = ino;
23732373
inode_init_owner(idmap, inode, dir, mode);
23742374
inode->i_blocks = 0;
2375-
inode->i_atime = inode->i_mtime = inode->i_ctime = current_time(inode);
2375+
inode->i_atime = inode->i_mtime = inode_set_ctime_current(inode);
23762376
inode->i_generation = get_random_u32();
23772377
info = SHMEM_I(inode);
23782378
memset(info, 0, (char *)inode - (char *)info);
@@ -3084,7 +3084,7 @@ shmem_mknod(struct mnt_idmap *idmap, struct inode *dir,
30843084

30853085
error = 0;
30863086
dir->i_size += BOGO_DIRENT_SIZE;
3087-
dir->i_ctime = dir->i_mtime = current_time(dir);
3087+
dir->i_mtime = inode_set_ctime_current(dir);
30883088
inode_inc_iversion(dir);
30893089
d_instantiate(dentry, inode);
30903090
dget(dentry); /* Extra count - pin the dentry in core */
@@ -3160,7 +3160,8 @@ static int shmem_link(struct dentry *old_dentry, struct inode *dir, struct dentr
31603160
}
31613161

31623162
dir->i_size += BOGO_DIRENT_SIZE;
3163-
inode->i_ctime = dir->i_ctime = dir->i_mtime = current_time(inode);
3163+
dir->i_mtime = inode_set_ctime_to_ts(dir,
3164+
inode_set_ctime_current(inode));
31643165
inode_inc_iversion(dir);
31653166
inc_nlink(inode);
31663167
ihold(inode); /* New dentry reference */
@@ -3178,7 +3179,8 @@ static int shmem_unlink(struct inode *dir, struct dentry *dentry)
31783179
shmem_free_inode(inode->i_sb);
31793180

31803181
dir->i_size -= BOGO_DIRENT_SIZE;
3181-
inode->i_ctime = dir->i_ctime = dir->i_mtime = current_time(inode);
3182+
dir->i_mtime = inode_set_ctime_to_ts(dir,
3183+
inode_set_ctime_current(inode));
31823184
inode_inc_iversion(dir);
31833185
drop_nlink(inode);
31843186
dput(dentry); /* Undo the count from "create" - this does all the work */
@@ -3320,7 +3322,7 @@ static int shmem_symlink(struct mnt_idmap *idmap, struct inode *dir,
33203322
folio_put(folio);
33213323
}
33223324
dir->i_size += BOGO_DIRENT_SIZE;
3323-
dir->i_ctime = dir->i_mtime = current_time(dir);
3325+
dir->i_mtime = inode_set_ctime_current(dir);
33243326
inode_inc_iversion(dir);
33253327
d_instantiate(dentry, inode);
33263328
dget(dentry);
@@ -3392,7 +3394,7 @@ static int shmem_fileattr_set(struct mnt_idmap *idmap,
33923394
(fa->flags & SHMEM_FL_USER_MODIFIABLE);
33933395

33943396
shmem_set_inode_flags(inode, info->fsflags);
3395-
inode->i_ctime = current_time(inode);
3397+
inode_set_ctime_current(inode);
33963398
inode_inc_iversion(inode);
33973399
return 0;
33983400
}
@@ -3462,7 +3464,7 @@ static int shmem_xattr_handler_set(const struct xattr_handler *handler,
34623464
name = xattr_full_name(handler, name);
34633465
err = simple_xattr_set(&info->xattrs, name, value, size, flags, NULL);
34643466
if (!err) {
3465-
inode->i_ctime = current_time(inode);
3467+
inode_set_ctime_current(inode);
34663468
inode_inc_iversion(inode);
34673469
}
34683470
return err;

0 commit comments

Comments
 (0)