From: Jeff Layton Date: Tue, 27 Feb 2018 04:43:18 +0000 (-0600) Subject: xfs: convert to new i_version API X-Git-Tag: v4.16.0-rc1~70 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d5105a897ca973d43e82d54bda4ea40692a94769;p=thirdparty%2Fxfsprogs-dev.git xfs: convert to new i_version API Source kernel commit: f0e28280629e0ec7921f3179409a179b1ea41f24 Signed-off-by: Jeff Layton Acked-by: Darrick J. Wong Acked-by: Dave Chinner Signed-off-by: Eric Sandeen --- diff --git a/libxfs/libxfs_priv.h b/libxfs/libxfs_priv.h index bc1ce226a..82627668f 100644 --- a/libxfs/libxfs_priv.h +++ b/libxfs/libxfs_priv.h @@ -219,6 +219,11 @@ static inline bool WARN_ON_ONCE(bool expr) { #define PAGE_SIZE getpagesize() +#define inode_peek_iversion(inode) (inode)->i_version +#define inode_set_iversion_queried(inode, version) do { \ + (inode)->i_version = (version); \ +} while (0) + static inline int __do_div(unsigned long long *n, unsigned base) { int __res; diff --git a/libxfs/xfs_inode_buf.c b/libxfs/xfs_inode_buf.c index 4e0af8dfc..ecbd51785 100644 --- a/libxfs/xfs_inode_buf.c +++ b/libxfs/xfs_inode_buf.c @@ -261,7 +261,8 @@ xfs_inode_from_disk( to->di_flags = be16_to_cpu(from->di_flags); if (to->di_version == 3) { - inode->i_version = be64_to_cpu(from->di_changecount); + inode_set_iversion_queried(inode, + be64_to_cpu(from->di_changecount)); to->di_crtime.t_sec = be32_to_cpu(from->di_crtime.t_sec); to->di_crtime.t_nsec = be32_to_cpu(from->di_crtime.t_nsec); to->di_flags2 = be64_to_cpu(from->di_flags2); @@ -311,7 +312,7 @@ xfs_inode_to_disk( to->di_flags = cpu_to_be16(from->di_flags); if (from->di_version == 3) { - to->di_changecount = cpu_to_be64(inode->i_version); + to->di_changecount = cpu_to_be64(inode_peek_iversion(inode)); to->di_crtime.t_sec = cpu_to_be32(from->di_crtime.t_sec); to->di_crtime.t_nsec = cpu_to_be32(from->di_crtime.t_nsec); to->di_flags2 = cpu_to_be64(from->di_flags2);