Unverified Commit 75d1e312 authored by Jeff Layton's avatar Jeff Layton Committed by Christian Brauner
Browse files

xfs: convert to new timestamp accessors



Convert to using the new inode timestamp accessor functions.

Signed-off-by: default avatarJeff Layton <jlayton@kernel.org>
Link: https://lore.kernel.org/r/20231004185347.80880-75-jlayton@kernel.org


Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
parent 9caef040
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -220,8 +220,10 @@ xfs_inode_from_disk(
	 * a time before epoch is converted to a time long after epoch
	 * on 64 bit systems.
	 */
	inode->i_atime = xfs_inode_from_disk_ts(from, from->di_atime);
	inode->i_mtime = xfs_inode_from_disk_ts(from, from->di_mtime);
	inode_set_atime_to_ts(inode,
			      xfs_inode_from_disk_ts(from, from->di_atime));
	inode_set_mtime_to_ts(inode,
			      xfs_inode_from_disk_ts(from, from->di_mtime));
	inode_set_ctime_to_ts(inode,
			      xfs_inode_from_disk_ts(from, from->di_ctime));

@@ -315,8 +317,8 @@ xfs_inode_to_disk(
	to->di_projid_lo = cpu_to_be16(ip->i_projid & 0xffff);
	to->di_projid_hi = cpu_to_be16(ip->i_projid >> 16);

	to->di_atime = xfs_inode_to_disk_ts(ip, inode->i_atime);
	to->di_mtime = xfs_inode_to_disk_ts(ip, inode->i_mtime);
	to->di_atime = xfs_inode_to_disk_ts(ip, inode_get_atime(inode));
	to->di_mtime = xfs_inode_to_disk_ts(ip, inode_get_mtime(inode));
	to->di_ctime = xfs_inode_to_disk_ts(ip, inode_get_ctime(inode));
	to->di_nlink = cpu_to_be32(inode->i_nlink);
	to->di_gen = cpu_to_be32(inode->i_generation);
+5 −1
Original line number Diff line number Diff line
@@ -970,6 +970,7 @@ xfs_rtfree_extent(
	xfs_mount_t	*mp;		/* file system mount structure */
	xfs_fsblock_t	sb;		/* summary file block number */
	struct xfs_buf	*sumbp = NULL;	/* summary file block buffer */
	struct timespec64 atime;

	mp = tp->t_mountp;

@@ -999,7 +1000,10 @@ xfs_rtfree_extent(
	    mp->m_sb.sb_rextents) {
		if (!(mp->m_rbmip->i_diflags & XFS_DIFLAG_NEWRTBM))
			mp->m_rbmip->i_diflags |= XFS_DIFLAG_NEWRTBM;
		*(uint64_t *)&VFS_I(mp->m_rbmip)->i_atime = 0;

		atime = inode_get_atime(VFS_I(mp->m_rbmip));
		*((uint64_t *)&atime) = 0;
		inode_set_atime_to_ts(VFS_I(mp->m_rbmip), atime);
		xfs_trans_log_inode(tp, mp->m_rbmip, XFS_ILOG_CORE);
	}
	return 0;
+1 −1
Original line number Diff line number Diff line
@@ -65,7 +65,7 @@ xfs_trans_ichgtime(
	tv = current_time(inode);

	if (flags & XFS_ICHGTIME_MOD)
		inode->i_mtime = tv;
		inode_set_mtime_to_ts(inode, tv);
	if (flags & XFS_ICHGTIME_CHG)
		inode_set_ctime_to_ts(inode, tv);
	if (flags & XFS_ICHGTIME_CREATE)
+4 −3
Original line number Diff line number Diff line
@@ -1644,7 +1644,7 @@ xfs_swap_extents(
	uint64_t		f;
	int			resblks = 0;
	unsigned int		flags = 0;
	struct timespec64	ctime;
	struct timespec64	ctime, mtime;

	/*
	 * Lock the inodes against other IO, page faults and truncate to
@@ -1758,10 +1758,11 @@ xfs_swap_extents(
	 * under it.
	 */
	ctime = inode_get_ctime(VFS_I(ip));
	mtime = inode_get_mtime(VFS_I(ip));
	if ((sbp->bs_ctime.tv_sec != ctime.tv_sec) ||
	    (sbp->bs_ctime.tv_nsec != ctime.tv_nsec) ||
	    (sbp->bs_mtime.tv_sec != VFS_I(ip)->i_mtime.tv_sec) ||
	    (sbp->bs_mtime.tv_nsec != VFS_I(ip)->i_mtime.tv_nsec)) {
	    (sbp->bs_mtime.tv_sec != mtime.tv_sec) ||
	    (sbp->bs_mtime.tv_nsec != mtime.tv_nsec)) {
		error = -EBUSY;
		goto out_trans_cancel;
	}
+2 −2
Original line number Diff line number Diff line
@@ -844,8 +844,8 @@ xfs_init_new_inode(
	ASSERT(ip->i_nblocks == 0);

	tv = inode_set_ctime_current(inode);
	inode->i_mtime = tv;
	inode->i_atime = tv;
	inode_set_mtime_to_ts(inode, tv);
	inode_set_atime_to_ts(inode, tv);

	ip->i_extsize = 0;
	ip->i_diflags = 0;
Loading