mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-09 15:29:16 +00:00
gfs2: convert to new timestamp accessors
Convert to using the new inode timestamp accessor functions. Signed-off-by: Jeff Layton <jlayton@kernel.org> Link: https://lore.kernel.org/r/20231004185347.80880-38-jlayton@kernel.org Signed-off-by: Christian Brauner <brauner@kernel.org>
This commit is contained in:
parent
3c0d5df2d0
commit
580f721b6f
@ -1386,7 +1386,7 @@ static int trunc_start(struct inode *inode, u64 newsize)
|
||||
ip->i_diskflags |= GFS2_DIF_TRUNC_IN_PROG;
|
||||
|
||||
i_size_write(inode, newsize);
|
||||
ip->i_inode.i_mtime = inode_set_ctime_current(&ip->i_inode);
|
||||
inode_set_mtime_to_ts(&ip->i_inode, inode_set_ctime_current(&ip->i_inode));
|
||||
gfs2_dinode_out(ip, dibh->b_data);
|
||||
|
||||
if (journaled)
|
||||
@ -1583,7 +1583,7 @@ out_unlock:
|
||||
|
||||
/* Every transaction boundary, we rewrite the dinode
|
||||
to keep its di_blocks current in case of failure. */
|
||||
ip->i_inode.i_mtime = inode_set_ctime_current(&ip->i_inode);
|
||||
inode_set_mtime_to_ts(&ip->i_inode, inode_set_ctime_current(&ip->i_inode));
|
||||
gfs2_trans_add_meta(ip->i_gl, dibh);
|
||||
gfs2_dinode_out(ip, dibh->b_data);
|
||||
brelse(dibh);
|
||||
@ -1949,7 +1949,7 @@ static int punch_hole(struct gfs2_inode *ip, u64 offset, u64 length)
|
||||
gfs2_statfs_change(sdp, 0, +btotal, 0);
|
||||
gfs2_quota_change(ip, -(s64)btotal, ip->i_inode.i_uid,
|
||||
ip->i_inode.i_gid);
|
||||
ip->i_inode.i_mtime = inode_set_ctime_current(&ip->i_inode);
|
||||
inode_set_mtime_to_ts(&ip->i_inode, inode_set_ctime_current(&ip->i_inode));
|
||||
gfs2_trans_add_meta(ip->i_gl, dibh);
|
||||
gfs2_dinode_out(ip, dibh->b_data);
|
||||
up_write(&ip->i_rw_mutex);
|
||||
@ -1992,7 +1992,7 @@ static int trunc_end(struct gfs2_inode *ip)
|
||||
gfs2_buffer_clear_tail(dibh, sizeof(struct gfs2_dinode));
|
||||
gfs2_ordered_del_inode(ip);
|
||||
}
|
||||
ip->i_inode.i_mtime = inode_set_ctime_current(&ip->i_inode);
|
||||
inode_set_mtime_to_ts(&ip->i_inode, inode_set_ctime_current(&ip->i_inode));
|
||||
ip->i_diskflags &= ~GFS2_DIF_TRUNC_IN_PROG;
|
||||
|
||||
gfs2_trans_add_meta(ip->i_gl, dibh);
|
||||
@ -2093,7 +2093,7 @@ static int do_grow(struct inode *inode, u64 size)
|
||||
goto do_end_trans;
|
||||
|
||||
truncate_setsize(inode, size);
|
||||
ip->i_inode.i_mtime = inode_set_ctime_current(&ip->i_inode);
|
||||
inode_set_mtime_to_ts(&ip->i_inode, inode_set_ctime_current(&ip->i_inode));
|
||||
gfs2_trans_add_meta(ip->i_gl, dibh);
|
||||
gfs2_dinode_out(ip, dibh->b_data);
|
||||
brelse(dibh);
|
||||
|
@ -130,7 +130,7 @@ static int gfs2_dir_write_stuffed(struct gfs2_inode *ip, const char *buf,
|
||||
memcpy(dibh->b_data + offset + sizeof(struct gfs2_dinode), buf, size);
|
||||
if (ip->i_inode.i_size < offset + size)
|
||||
i_size_write(&ip->i_inode, offset + size);
|
||||
ip->i_inode.i_mtime = inode_set_ctime_current(&ip->i_inode);
|
||||
inode_set_mtime_to_ts(&ip->i_inode, inode_set_ctime_current(&ip->i_inode));
|
||||
gfs2_dinode_out(ip, dibh->b_data);
|
||||
|
||||
brelse(dibh);
|
||||
@ -227,7 +227,7 @@ out:
|
||||
|
||||
if (ip->i_inode.i_size < offset + copied)
|
||||
i_size_write(&ip->i_inode, offset + copied);
|
||||
ip->i_inode.i_mtime = inode_set_ctime_current(&ip->i_inode);
|
||||
inode_set_mtime_to_ts(&ip->i_inode, inode_set_ctime_current(&ip->i_inode));
|
||||
|
||||
gfs2_trans_add_meta(ip->i_gl, dibh);
|
||||
gfs2_dinode_out(ip, dibh->b_data);
|
||||
@ -1825,7 +1825,7 @@ int gfs2_dir_add(struct inode *inode, const struct qstr *name,
|
||||
da->bh = NULL;
|
||||
brelse(bh);
|
||||
ip->i_entries++;
|
||||
ip->i_inode.i_mtime = tv;
|
||||
inode_set_mtime_to_ts(&ip->i_inode, tv);
|
||||
if (S_ISDIR(nip->i_inode.i_mode))
|
||||
inc_nlink(&ip->i_inode);
|
||||
mark_inode_dirty(inode);
|
||||
@ -1911,7 +1911,7 @@ int gfs2_dir_del(struct gfs2_inode *dip, const struct dentry *dentry)
|
||||
if (!dip->i_entries)
|
||||
gfs2_consist_inode(dip);
|
||||
dip->i_entries--;
|
||||
dip->i_inode.i_mtime = tv;
|
||||
inode_set_mtime_to_ts(&dip->i_inode, tv);
|
||||
if (d_is_dir(dentry))
|
||||
drop_nlink(&dip->i_inode);
|
||||
mark_inode_dirty(&dip->i_inode);
|
||||
@ -1952,7 +1952,7 @@ int gfs2_dir_mvino(struct gfs2_inode *dip, const struct qstr *filename,
|
||||
dent->de_type = cpu_to_be16(new_type);
|
||||
brelse(bh);
|
||||
|
||||
dip->i_inode.i_mtime = inode_set_ctime_current(&dip->i_inode);
|
||||
inode_set_mtime_to_ts(&dip->i_inode, inode_set_ctime_current(&dip->i_inode));
|
||||
mark_inode_dirty_sync(&dip->i_inode);
|
||||
return 0;
|
||||
}
|
||||
|
@ -403,7 +403,7 @@ static int gfs2_dinode_in(struct gfs2_inode *ip, const void *buf)
|
||||
{
|
||||
struct gfs2_sbd *sdp = GFS2_SB(&ip->i_inode);
|
||||
const struct gfs2_dinode *str = buf;
|
||||
struct timespec64 atime;
|
||||
struct timespec64 atime, iatime;
|
||||
u16 height, depth;
|
||||
umode_t mode = be32_to_cpu(str->di_mode);
|
||||
struct inode *inode = &ip->i_inode;
|
||||
@ -433,10 +433,11 @@ static int gfs2_dinode_in(struct gfs2_inode *ip, const void *buf)
|
||||
gfs2_set_inode_blocks(inode, be64_to_cpu(str->di_blocks));
|
||||
atime.tv_sec = be64_to_cpu(str->di_atime);
|
||||
atime.tv_nsec = be32_to_cpu(str->di_atime_nsec);
|
||||
if (timespec64_compare(&inode->i_atime, &atime) < 0)
|
||||
inode->i_atime = atime;
|
||||
inode->i_mtime.tv_sec = be64_to_cpu(str->di_mtime);
|
||||
inode->i_mtime.tv_nsec = be32_to_cpu(str->di_mtime_nsec);
|
||||
iatime = inode_get_atime(inode);
|
||||
if (timespec64_compare(&iatime, &atime) < 0)
|
||||
inode_set_atime_to_ts(inode, atime);
|
||||
inode_set_mtime(inode, be64_to_cpu(str->di_mtime),
|
||||
be32_to_cpu(str->di_mtime_nsec));
|
||||
inode_set_ctime(inode, be64_to_cpu(str->di_ctime),
|
||||
be32_to_cpu(str->di_ctime_nsec));
|
||||
|
||||
|
@ -185,8 +185,9 @@ struct inode *gfs2_inode_lookup(struct super_block *sb, unsigned int type,
|
||||
set_bit(GLF_INSTANTIATE_NEEDED, &ip->i_gl->gl_flags);
|
||||
|
||||
/* Lowest possible timestamp; will be overwritten in gfs2_dinode_in. */
|
||||
inode->i_atime.tv_sec = 1LL << (8 * sizeof(inode->i_atime.tv_sec) - 1);
|
||||
inode->i_atime.tv_nsec = 0;
|
||||
inode_set_atime(inode,
|
||||
1LL << (8 * sizeof(inode_get_atime_sec(inode)) - 1),
|
||||
0);
|
||||
|
||||
glock_set_object(ip->i_gl, ip);
|
||||
|
||||
@ -696,7 +697,7 @@ static int gfs2_create_inode(struct inode *dir, struct dentry *dentry,
|
||||
set_nlink(inode, S_ISDIR(mode) ? 2 : 1);
|
||||
inode->i_rdev = dev;
|
||||
inode->i_size = size;
|
||||
inode->i_atime = inode->i_mtime = inode_set_ctime_current(inode);
|
||||
simple_inode_init_ts(inode);
|
||||
munge_mode_uid_gid(dip, inode);
|
||||
check_and_update_goal(dip);
|
||||
ip->i_goal = dip->i_goal;
|
||||
|
@ -886,7 +886,7 @@ static int gfs2_adjust_quota(struct gfs2_sbd *sdp, loff_t loc,
|
||||
size = loc + sizeof(struct gfs2_quota);
|
||||
if (size > inode->i_size)
|
||||
i_size_write(inode, size);
|
||||
inode->i_mtime = inode_set_ctime_current(inode);
|
||||
inode_set_mtime_to_ts(inode, inode_set_ctime_current(inode));
|
||||
mark_inode_dirty(inode);
|
||||
set_bit(QDF_REFRESH, &qd->qd_flags);
|
||||
}
|
||||
|
@ -410,9 +410,9 @@ void gfs2_dinode_out(const struct gfs2_inode *ip, void *buf)
|
||||
str->di_nlink = cpu_to_be32(inode->i_nlink);
|
||||
str->di_size = cpu_to_be64(i_size_read(inode));
|
||||
str->di_blocks = cpu_to_be64(gfs2_get_inode_blocks(inode));
|
||||
str->di_atime = cpu_to_be64(inode->i_atime.tv_sec);
|
||||
str->di_mtime = cpu_to_be64(inode->i_mtime.tv_sec);
|
||||
str->di_ctime = cpu_to_be64(inode_get_ctime(inode).tv_sec);
|
||||
str->di_atime = cpu_to_be64(inode_get_atime_sec(inode));
|
||||
str->di_mtime = cpu_to_be64(inode_get_mtime_sec(inode));
|
||||
str->di_ctime = cpu_to_be64(inode_get_ctime_sec(inode));
|
||||
|
||||
str->di_goal_meta = cpu_to_be64(ip->i_goal);
|
||||
str->di_goal_data = cpu_to_be64(ip->i_goal);
|
||||
@ -427,9 +427,9 @@ void gfs2_dinode_out(const struct gfs2_inode *ip, void *buf)
|
||||
str->di_entries = cpu_to_be32(ip->i_entries);
|
||||
|
||||
str->di_eattr = cpu_to_be64(ip->i_eattr);
|
||||
str->di_atime_nsec = cpu_to_be32(inode->i_atime.tv_nsec);
|
||||
str->di_mtime_nsec = cpu_to_be32(inode->i_mtime.tv_nsec);
|
||||
str->di_ctime_nsec = cpu_to_be32(inode_get_ctime(inode).tv_nsec);
|
||||
str->di_atime_nsec = cpu_to_be32(inode_get_atime_nsec(inode));
|
||||
str->di_mtime_nsec = cpu_to_be32(inode_get_mtime_nsec(inode));
|
||||
str->di_ctime_nsec = cpu_to_be32(inode_get_ctime_nsec(inode));
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user