mqueue: 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 <jlayton@kernel.org>
Reviewed-by: Jan Kara <jack@suse.cz>
Message-Id: <20230705190309.579783-83-jlayton@kernel.org>
Signed-off-by: Christian Brauner <brauner@kernel.org>
This commit is contained in:
Jeff Layton 2023-07-05 15:01:50 -04:00 committed by Christian Brauner
parent e359147f01
commit 783904f50a

View file

@ -302,7 +302,7 @@ static struct inode *mqueue_get_inode(struct super_block *sb,
inode->i_mode = mode; inode->i_mode = mode;
inode->i_uid = current_fsuid(); inode->i_uid = current_fsuid();
inode->i_gid = current_fsgid(); inode->i_gid = current_fsgid();
inode->i_mtime = inode->i_ctime = inode->i_atime = current_time(inode); inode->i_mtime = inode->i_atime = inode_set_ctime_current(inode);
if (S_ISREG(mode)) { if (S_ISREG(mode)) {
struct mqueue_inode_info *info; struct mqueue_inode_info *info;
@ -596,7 +596,7 @@ static int mqueue_create_attr(struct dentry *dentry, umode_t mode, void *arg)
put_ipc_ns(ipc_ns); put_ipc_ns(ipc_ns);
dir->i_size += DIRENT_SIZE; dir->i_size += DIRENT_SIZE;
dir->i_ctime = dir->i_mtime = dir->i_atime = current_time(dir); dir->i_mtime = dir->i_atime = inode_set_ctime_current(dir);
d_instantiate(dentry, inode); d_instantiate(dentry, inode);
dget(dentry); dget(dentry);
@ -618,7 +618,7 @@ static int mqueue_unlink(struct inode *dir, struct dentry *dentry)
{ {
struct inode *inode = d_inode(dentry); struct inode *inode = d_inode(dentry);
dir->i_ctime = dir->i_mtime = dir->i_atime = current_time(dir); dir->i_mtime = dir->i_atime = inode_set_ctime_current(dir);
dir->i_size -= DIRENT_SIZE; dir->i_size -= DIRENT_SIZE;
drop_nlink(inode); drop_nlink(inode);
dput(dentry); dput(dentry);
@ -635,7 +635,8 @@ static int mqueue_unlink(struct inode *dir, struct dentry *dentry)
static ssize_t mqueue_read_file(struct file *filp, char __user *u_data, static ssize_t mqueue_read_file(struct file *filp, char __user *u_data,
size_t count, loff_t *off) size_t count, loff_t *off)
{ {
struct mqueue_inode_info *info = MQUEUE_I(file_inode(filp)); struct inode *inode = file_inode(filp);
struct mqueue_inode_info *info = MQUEUE_I(inode);
char buffer[FILENT_SIZE]; char buffer[FILENT_SIZE];
ssize_t ret; ssize_t ret;
@ -656,7 +657,7 @@ static ssize_t mqueue_read_file(struct file *filp, char __user *u_data,
if (ret <= 0) if (ret <= 0)
return ret; return ret;
file_inode(filp)->i_atime = file_inode(filp)->i_ctime = current_time(file_inode(filp)); inode->i_atime = inode_set_ctime_current(inode);
return ret; return ret;
} }
@ -1162,8 +1163,7 @@ static int do_mq_timedsend(mqd_t mqdes, const char __user *u_msg_ptr,
goto out_unlock; goto out_unlock;
__do_notify(info); __do_notify(info);
} }
inode->i_atime = inode->i_mtime = inode->i_ctime = inode->i_atime = inode->i_mtime = inode_set_ctime_current(inode);
current_time(inode);
} }
out_unlock: out_unlock:
spin_unlock(&info->lock); spin_unlock(&info->lock);
@ -1257,8 +1257,7 @@ static int do_mq_timedreceive(mqd_t mqdes, char __user *u_msg_ptr,
msg_ptr = msg_get(info); msg_ptr = msg_get(info);
inode->i_atime = inode->i_mtime = inode->i_ctime = inode->i_atime = inode->i_mtime = inode_set_ctime_current(inode);
current_time(inode);
/* There is now free space in queue. */ /* There is now free space in queue. */
pipelined_receive(&wake_q, info); pipelined_receive(&wake_q, info);
@ -1396,7 +1395,7 @@ static int do_mq_notify(mqd_t mqdes, const struct sigevent *notification)
if (notification == NULL) { if (notification == NULL) {
if (info->notify_owner == task_tgid(current)) { if (info->notify_owner == task_tgid(current)) {
remove_notification(info); remove_notification(info);
inode->i_atime = inode->i_ctime = current_time(inode); inode->i_atime = inode_set_ctime_current(inode);
} }
} else if (info->notify_owner != NULL) { } else if (info->notify_owner != NULL) {
ret = -EBUSY; ret = -EBUSY;
@ -1422,7 +1421,7 @@ static int do_mq_notify(mqd_t mqdes, const struct sigevent *notification)
info->notify_owner = get_pid(task_tgid(current)); info->notify_owner = get_pid(task_tgid(current));
info->notify_user_ns = get_user_ns(current_user_ns()); info->notify_user_ns = get_user_ns(current_user_ns());
inode->i_atime = inode->i_ctime = current_time(inode); inode->i_atime = inode_set_ctime_current(inode);
} }
spin_unlock(&info->lock); spin_unlock(&info->lock);
out_fput: out_fput:
@ -1485,7 +1484,7 @@ static int do_mq_getsetattr(int mqdes, struct mq_attr *new, struct mq_attr *old)
f.file->f_flags &= ~O_NONBLOCK; f.file->f_flags &= ~O_NONBLOCK;
spin_unlock(&f.file->f_lock); spin_unlock(&f.file->f_lock);
inode->i_atime = inode->i_ctime = current_time(inode); inode->i_atime = inode_set_ctime_current(inode);
} }
spin_unlock(&info->lock); spin_unlock(&info->lock);