[PATCH] libxfs: fix up mismerge in libxfs_iflush_int

Eric Sandeen sandeen at redhat.com
Thu Feb 18 14:55:29 CST 2016


XFS_ISDIR is a bool, don't compare it to S_IFDIR

e37bf5 xfs: mode di_mode to vfs inode had a small mis-merge
from kernelspace, when moving from

	if ((ip->i_d.di_mode & S_IFMT) == S_IFDIR) 
to
	if (XFS_ISDIR(ip) == S_IFDIR

that "==" should have been dropped.

Signed-off-by: ERic Sandeen <sandeen at redhat.com>
---

diff --git a/libxfs/util.c b/libxfs/util.c
index 576f954..f3b9895 100644
--- a/libxfs/util.c
+++ b/libxfs/util.c
@@ -420,7 +420,7 @@ libxfs_iflush_int(xfs_inode_t *ip, xfs_buf_t *bp)
 	if (XFS_ISREG(ip)) {
 		ASSERT( (ip->i_d.di_format == XFS_DINODE_FMT_EXTENTS) ||
 			(ip->i_d.di_format == XFS_DINODE_FMT_BTREE) );
-	} else if (XFS_ISDIR(ip) == S_IFDIR) {
+	} else if (XFS_ISDIR(ip)) {
 		ASSERT( (ip->i_d.di_format == XFS_DINODE_FMT_EXTENTS) ||
 			(ip->i_d.di_format == XFS_DINODE_FMT_BTREE)   ||
 			(ip->i_d.di_format == XFS_DINODE_FMT_LOCAL) );



More information about the xfs mailing list