lkml.org 
[lkml]   [2023]   [Jul]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v2 85/92] mqueue: convert to ctime accessor functions
    On Wed 05-07-23 15:01:50, Jeff Layton wrote:
    > 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>

    Looks good. Feel free to add:

    Reviewed-by: Jan Kara <jack@suse.cz>

    Honza

    > ---
    > ipc/mqueue.c | 23 +++++++++++------------
    > 1 file changed, 11 insertions(+), 12 deletions(-)
    >
    > diff --git a/ipc/mqueue.c b/ipc/mqueue.c
    > index 71881bddad25..ba8215ed663a 100644
    > --- a/ipc/mqueue.c
    > +++ b/ipc/mqueue.c
    > @@ -302,7 +302,7 @@ static struct inode *mqueue_get_inode(struct super_block *sb,
    > inode->i_mode = mode;
    > inode->i_uid = current_fsuid();
    > 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)) {
    > 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);
    > 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);
    > dget(dentry);
    > @@ -618,7 +618,7 @@ static int mqueue_unlink(struct inode *dir, struct dentry *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;
    > drop_nlink(inode);
    > 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,
    > 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];
    > ssize_t ret;
    >
    > @@ -656,7 +657,7 @@ static ssize_t mqueue_read_file(struct file *filp, char __user *u_data,
    > if (ret <= 0)
    > 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;
    > }
    >
    > @@ -1162,8 +1163,7 @@ static int do_mq_timedsend(mqd_t mqdes, const char __user *u_msg_ptr,
    > goto out_unlock;
    > __do_notify(info);
    > }
    > - inode->i_atime = inode->i_mtime = inode->i_ctime =
    > - current_time(inode);
    > + inode->i_atime = inode->i_mtime = inode_set_ctime_current(inode);
    > }
    > out_unlock:
    > 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);
    >
    > - inode->i_atime = inode->i_mtime = inode->i_ctime =
    > - current_time(inode);
    > + inode->i_atime = inode->i_mtime = inode_set_ctime_current(inode);
    >
    > /* There is now free space in queue. */
    > 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 (info->notify_owner == task_tgid(current)) {
    > 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) {
    > 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_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);
    > 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;
    > 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);
    > --
    > 2.41.0
    >
    --
    Jan Kara <jack@suse.com>
    SUSE Labs, CR

    \
     
     \ /
      Last update: 2023-07-06 16:56    [W:4.934 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site