xfs: get rid of open-coded S_ISREG(), etc.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
c46c887744
commit
abbede1b3a
10 changed files with 33 additions and 34 deletions
|
@ -850,14 +850,14 @@ xfs_set_diflags(
|
||||||
di_flags |= XFS_DIFLAG_NODEFRAG;
|
di_flags |= XFS_DIFLAG_NODEFRAG;
|
||||||
if (xflags & XFS_XFLAG_FILESTREAM)
|
if (xflags & XFS_XFLAG_FILESTREAM)
|
||||||
di_flags |= XFS_DIFLAG_FILESTREAM;
|
di_flags |= XFS_DIFLAG_FILESTREAM;
|
||||||
if ((ip->i_d.di_mode & S_IFMT) == S_IFDIR) {
|
if (S_ISDIR(ip->i_d.di_mode)) {
|
||||||
if (xflags & XFS_XFLAG_RTINHERIT)
|
if (xflags & XFS_XFLAG_RTINHERIT)
|
||||||
di_flags |= XFS_DIFLAG_RTINHERIT;
|
di_flags |= XFS_DIFLAG_RTINHERIT;
|
||||||
if (xflags & XFS_XFLAG_NOSYMLINKS)
|
if (xflags & XFS_XFLAG_NOSYMLINKS)
|
||||||
di_flags |= XFS_DIFLAG_NOSYMLINKS;
|
di_flags |= XFS_DIFLAG_NOSYMLINKS;
|
||||||
if (xflags & XFS_XFLAG_EXTSZINHERIT)
|
if (xflags & XFS_XFLAG_EXTSZINHERIT)
|
||||||
di_flags |= XFS_DIFLAG_EXTSZINHERIT;
|
di_flags |= XFS_DIFLAG_EXTSZINHERIT;
|
||||||
} else if ((ip->i_d.di_mode & S_IFMT) == S_IFREG) {
|
} else if (S_ISREG(ip->i_d.di_mode)) {
|
||||||
if (xflags & XFS_XFLAG_REALTIME)
|
if (xflags & XFS_XFLAG_REALTIME)
|
||||||
di_flags |= XFS_DIFLAG_REALTIME;
|
di_flags |= XFS_DIFLAG_REALTIME;
|
||||||
if (xflags & XFS_XFLAG_EXTSIZE)
|
if (xflags & XFS_XFLAG_EXTSIZE)
|
||||||
|
|
|
@ -414,7 +414,7 @@ xfs_bmap_add_attrfork_local(
|
||||||
|
|
||||||
if (ip->i_df.if_bytes <= XFS_IFORK_DSIZE(ip))
|
if (ip->i_df.if_bytes <= XFS_IFORK_DSIZE(ip))
|
||||||
return 0;
|
return 0;
|
||||||
if ((ip->i_d.di_mode & S_IFMT) == S_IFDIR) {
|
if (S_ISDIR(ip->i_d.di_mode)) {
|
||||||
mp = ip->i_mount;
|
mp = ip->i_mount;
|
||||||
memset(&dargs, 0, sizeof(dargs));
|
memset(&dargs, 0, sizeof(dargs));
|
||||||
dargs.dp = ip;
|
dargs.dp = ip;
|
||||||
|
@ -3344,8 +3344,7 @@ xfs_bmap_local_to_extents(
|
||||||
* We don't want to deal with the case of keeping inode data inline yet.
|
* We don't want to deal with the case of keeping inode data inline yet.
|
||||||
* So sending the data fork of a regular inode is invalid.
|
* So sending the data fork of a regular inode is invalid.
|
||||||
*/
|
*/
|
||||||
ASSERT(!((ip->i_d.di_mode & S_IFMT) == S_IFREG &&
|
ASSERT(!(S_ISREG(ip->i_d.di_mode) && whichfork == XFS_DATA_FORK));
|
||||||
whichfork == XFS_DATA_FORK));
|
|
||||||
ifp = XFS_IFORK_PTR(ip, whichfork);
|
ifp = XFS_IFORK_PTR(ip, whichfork);
|
||||||
ASSERT(XFS_IFORK_FORMAT(ip, whichfork) == XFS_DINODE_FMT_LOCAL);
|
ASSERT(XFS_IFORK_FORMAT(ip, whichfork) == XFS_DINODE_FMT_LOCAL);
|
||||||
flags = 0;
|
flags = 0;
|
||||||
|
@ -4052,7 +4051,7 @@ xfs_bmap_one_block(
|
||||||
|
|
||||||
#ifndef DEBUG
|
#ifndef DEBUG
|
||||||
if (whichfork == XFS_DATA_FORK) {
|
if (whichfork == XFS_DATA_FORK) {
|
||||||
return ((ip->i_d.di_mode & S_IFMT) == S_IFREG) ?
|
return S_ISREG(ip->i_d.di_mode) ?
|
||||||
(ip->i_size == ip->i_mount->m_sb.sb_blocksize) :
|
(ip->i_size == ip->i_mount->m_sb.sb_blocksize) :
|
||||||
(ip->i_d.di_size == ip->i_mount->m_sb.sb_blocksize);
|
(ip->i_d.di_size == ip->i_mount->m_sb.sb_blocksize);
|
||||||
}
|
}
|
||||||
|
|
|
@ -121,7 +121,7 @@ xfs_dir_isempty(
|
||||||
{
|
{
|
||||||
xfs_dir2_sf_hdr_t *sfp;
|
xfs_dir2_sf_hdr_t *sfp;
|
||||||
|
|
||||||
ASSERT((dp->i_d.di_mode & S_IFMT) == S_IFDIR);
|
ASSERT(S_ISDIR(dp->i_d.di_mode));
|
||||||
if (dp->i_d.di_size == 0) /* might happen during shutdown. */
|
if (dp->i_d.di_size == 0) /* might happen during shutdown. */
|
||||||
return 1;
|
return 1;
|
||||||
if (dp->i_d.di_size > XFS_IFORK_DSIZE(dp))
|
if (dp->i_d.di_size > XFS_IFORK_DSIZE(dp))
|
||||||
|
@ -179,7 +179,7 @@ xfs_dir_init(
|
||||||
memset((char *)&args, 0, sizeof(args));
|
memset((char *)&args, 0, sizeof(args));
|
||||||
args.dp = dp;
|
args.dp = dp;
|
||||||
args.trans = tp;
|
args.trans = tp;
|
||||||
ASSERT((dp->i_d.di_mode & S_IFMT) == S_IFDIR);
|
ASSERT(S_ISDIR(dp->i_d.di_mode));
|
||||||
if ((error = xfs_dir_ino_validate(tp->t_mountp, pdp->i_ino)))
|
if ((error = xfs_dir_ino_validate(tp->t_mountp, pdp->i_ino)))
|
||||||
return error;
|
return error;
|
||||||
return xfs_dir2_sf_create(&args, pdp->i_ino);
|
return xfs_dir2_sf_create(&args, pdp->i_ino);
|
||||||
|
@ -202,7 +202,7 @@ xfs_dir_createname(
|
||||||
int rval;
|
int rval;
|
||||||
int v; /* type-checking value */
|
int v; /* type-checking value */
|
||||||
|
|
||||||
ASSERT((dp->i_d.di_mode & S_IFMT) == S_IFDIR);
|
ASSERT(S_ISDIR(dp->i_d.di_mode));
|
||||||
if ((rval = xfs_dir_ino_validate(tp->t_mountp, inum)))
|
if ((rval = xfs_dir_ino_validate(tp->t_mountp, inum)))
|
||||||
return rval;
|
return rval;
|
||||||
XFS_STATS_INC(xs_dir_create);
|
XFS_STATS_INC(xs_dir_create);
|
||||||
|
@ -278,7 +278,7 @@ xfs_dir_lookup(
|
||||||
int rval;
|
int rval;
|
||||||
int v; /* type-checking value */
|
int v; /* type-checking value */
|
||||||
|
|
||||||
ASSERT((dp->i_d.di_mode & S_IFMT) == S_IFDIR);
|
ASSERT(S_ISDIR(dp->i_d.di_mode));
|
||||||
XFS_STATS_INC(xs_dir_lookup);
|
XFS_STATS_INC(xs_dir_lookup);
|
||||||
|
|
||||||
memset(&args, 0, sizeof(xfs_da_args_t));
|
memset(&args, 0, sizeof(xfs_da_args_t));
|
||||||
|
@ -333,7 +333,7 @@ xfs_dir_removename(
|
||||||
int rval;
|
int rval;
|
||||||
int v; /* type-checking value */
|
int v; /* type-checking value */
|
||||||
|
|
||||||
ASSERT((dp->i_d.di_mode & S_IFMT) == S_IFDIR);
|
ASSERT(S_ISDIR(dp->i_d.di_mode));
|
||||||
XFS_STATS_INC(xs_dir_remove);
|
XFS_STATS_INC(xs_dir_remove);
|
||||||
|
|
||||||
memset(&args, 0, sizeof(xfs_da_args_t));
|
memset(&args, 0, sizeof(xfs_da_args_t));
|
||||||
|
@ -382,7 +382,7 @@ xfs_readdir(
|
||||||
if (XFS_FORCED_SHUTDOWN(dp->i_mount))
|
if (XFS_FORCED_SHUTDOWN(dp->i_mount))
|
||||||
return XFS_ERROR(EIO);
|
return XFS_ERROR(EIO);
|
||||||
|
|
||||||
ASSERT((dp->i_d.di_mode & S_IFMT) == S_IFDIR);
|
ASSERT(S_ISDIR(dp->i_d.di_mode));
|
||||||
XFS_STATS_INC(xs_dir_getdents);
|
XFS_STATS_INC(xs_dir_getdents);
|
||||||
|
|
||||||
if (dp->i_d.di_format == XFS_DINODE_FMT_LOCAL)
|
if (dp->i_d.di_format == XFS_DINODE_FMT_LOCAL)
|
||||||
|
@ -414,7 +414,7 @@ xfs_dir_replace(
|
||||||
int rval;
|
int rval;
|
||||||
int v; /* type-checking value */
|
int v; /* type-checking value */
|
||||||
|
|
||||||
ASSERT((dp->i_d.di_mode & S_IFMT) == S_IFDIR);
|
ASSERT(S_ISDIR(dp->i_d.di_mode));
|
||||||
|
|
||||||
if ((rval = xfs_dir_ino_validate(tp->t_mountp, inum)))
|
if ((rval = xfs_dir_ino_validate(tp->t_mountp, inum)))
|
||||||
return rval;
|
return rval;
|
||||||
|
@ -464,7 +464,7 @@ xfs_dir_canenter(
|
||||||
if (resblks)
|
if (resblks)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
ASSERT((dp->i_d.di_mode & S_IFMT) == S_IFDIR);
|
ASSERT(S_ISDIR(dp->i_d.di_mode));
|
||||||
|
|
||||||
memset(&args, 0, sizeof(xfs_da_args_t));
|
memset(&args, 0, sizeof(xfs_da_args_t));
|
||||||
args.name = name->name;
|
args.name = name->name;
|
||||||
|
|
|
@ -344,7 +344,7 @@ _xfs_filestream_update_ag(
|
||||||
* Either ip is a regular file and pip is a directory, or ip is a
|
* Either ip is a regular file and pip is a directory, or ip is a
|
||||||
* directory and pip is NULL.
|
* directory and pip is NULL.
|
||||||
*/
|
*/
|
||||||
ASSERT(ip && (((ip->i_d.di_mode & S_IFREG) && pip &&
|
ASSERT(ip && ((S_ISREG(ip->i_d.di_mode) && pip &&
|
||||||
(pip->i_d.di_mode & S_IFDIR)) ||
|
(pip->i_d.di_mode & S_IFDIR)) ||
|
||||||
((ip->i_d.di_mode & S_IFDIR) && !pip)));
|
((ip->i_d.di_mode & S_IFDIR) && !pip)));
|
||||||
|
|
||||||
|
|
|
@ -368,7 +368,7 @@ xfs_iformat(
|
||||||
/*
|
/*
|
||||||
* no local regular files yet
|
* no local regular files yet
|
||||||
*/
|
*/
|
||||||
if (unlikely((be16_to_cpu(dip->di_mode) & S_IFMT) == S_IFREG)) {
|
if (unlikely(S_ISREG(be16_to_cpu(dip->di_mode)))) {
|
||||||
xfs_warn(ip->i_mount,
|
xfs_warn(ip->i_mount,
|
||||||
"corrupt inode %Lu (local format for regular file).",
|
"corrupt inode %Lu (local format for regular file).",
|
||||||
(unsigned long long) ip->i_ino);
|
(unsigned long long) ip->i_ino);
|
||||||
|
@ -1040,7 +1040,7 @@ xfs_ialloc(
|
||||||
|
|
||||||
if (pip && XFS_INHERIT_GID(pip)) {
|
if (pip && XFS_INHERIT_GID(pip)) {
|
||||||
ip->i_d.di_gid = pip->i_d.di_gid;
|
ip->i_d.di_gid = pip->i_d.di_gid;
|
||||||
if ((pip->i_d.di_mode & S_ISGID) && (mode & S_IFMT) == S_IFDIR) {
|
if ((pip->i_d.di_mode & S_ISGID) && S_ISDIR(mode)) {
|
||||||
ip->i_d.di_mode |= S_ISGID;
|
ip->i_d.di_mode |= S_ISGID;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1097,14 +1097,14 @@ xfs_ialloc(
|
||||||
if (pip && (pip->i_d.di_flags & XFS_DIFLAG_ANY)) {
|
if (pip && (pip->i_d.di_flags & XFS_DIFLAG_ANY)) {
|
||||||
uint di_flags = 0;
|
uint di_flags = 0;
|
||||||
|
|
||||||
if ((mode & S_IFMT) == S_IFDIR) {
|
if (S_ISDIR(mode)) {
|
||||||
if (pip->i_d.di_flags & XFS_DIFLAG_RTINHERIT)
|
if (pip->i_d.di_flags & XFS_DIFLAG_RTINHERIT)
|
||||||
di_flags |= XFS_DIFLAG_RTINHERIT;
|
di_flags |= XFS_DIFLAG_RTINHERIT;
|
||||||
if (pip->i_d.di_flags & XFS_DIFLAG_EXTSZINHERIT) {
|
if (pip->i_d.di_flags & XFS_DIFLAG_EXTSZINHERIT) {
|
||||||
di_flags |= XFS_DIFLAG_EXTSZINHERIT;
|
di_flags |= XFS_DIFLAG_EXTSZINHERIT;
|
||||||
ip->i_d.di_extsize = pip->i_d.di_extsize;
|
ip->i_d.di_extsize = pip->i_d.di_extsize;
|
||||||
}
|
}
|
||||||
} else if ((mode & S_IFMT) == S_IFREG) {
|
} else if (S_ISREG(mode)) {
|
||||||
if (pip->i_d.di_flags & XFS_DIFLAG_RTINHERIT)
|
if (pip->i_d.di_flags & XFS_DIFLAG_RTINHERIT)
|
||||||
di_flags |= XFS_DIFLAG_REALTIME;
|
di_flags |= XFS_DIFLAG_REALTIME;
|
||||||
if (pip->i_d.di_flags & XFS_DIFLAG_EXTSZINHERIT) {
|
if (pip->i_d.di_flags & XFS_DIFLAG_EXTSZINHERIT) {
|
||||||
|
@ -1188,7 +1188,7 @@ xfs_isize_check(
|
||||||
int nimaps;
|
int nimaps;
|
||||||
xfs_bmbt_irec_t imaps[2];
|
xfs_bmbt_irec_t imaps[2];
|
||||||
|
|
||||||
if ((ip->i_d.di_mode & S_IFMT) != S_IFREG)
|
if (!S_ISREG(ip->i_d.di_mode))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (XFS_IS_REALTIME_INODE(ip))
|
if (XFS_IS_REALTIME_INODE(ip))
|
||||||
|
@ -1828,7 +1828,7 @@ xfs_ifree(
|
||||||
ASSERT(ip->i_d.di_nextents == 0);
|
ASSERT(ip->i_d.di_nextents == 0);
|
||||||
ASSERT(ip->i_d.di_anextents == 0);
|
ASSERT(ip->i_d.di_anextents == 0);
|
||||||
ASSERT((ip->i_d.di_size == 0 && ip->i_size == 0) ||
|
ASSERT((ip->i_d.di_size == 0 && ip->i_size == 0) ||
|
||||||
((ip->i_d.di_mode & S_IFMT) != S_IFREG));
|
(!S_ISREG(ip->i_d.di_mode)));
|
||||||
ASSERT(ip->i_d.di_nblocks == 0);
|
ASSERT(ip->i_d.di_nblocks == 0);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -2671,7 +2671,7 @@ xfs_iflush_int(
|
||||||
__func__, ip->i_ino, ip, ip->i_d.di_magic);
|
__func__, ip->i_ino, ip, ip->i_d.di_magic);
|
||||||
goto corrupt_out;
|
goto corrupt_out;
|
||||||
}
|
}
|
||||||
if ((ip->i_d.di_mode & S_IFMT) == S_IFREG) {
|
if (S_ISREG(ip->i_d.di_mode)) {
|
||||||
if (XFS_TEST_ERROR(
|
if (XFS_TEST_ERROR(
|
||||||
(ip->i_d.di_format != XFS_DINODE_FMT_EXTENTS) &&
|
(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_BTREE),
|
||||||
|
@ -2681,7 +2681,7 @@ xfs_iflush_int(
|
||||||
__func__, ip->i_ino, ip);
|
__func__, ip->i_ino, ip);
|
||||||
goto corrupt_out;
|
goto corrupt_out;
|
||||||
}
|
}
|
||||||
} else if ((ip->i_d.di_mode & S_IFMT) == S_IFDIR) {
|
} else if (S_ISDIR(ip->i_d.di_mode)) {
|
||||||
if (XFS_TEST_ERROR(
|
if (XFS_TEST_ERROR(
|
||||||
(ip->i_d.di_format != XFS_DINODE_FMT_EXTENTS) &&
|
(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_BTREE) &&
|
||||||
|
|
|
@ -263,7 +263,7 @@ typedef struct xfs_inode {
|
||||||
struct inode i_vnode; /* embedded VFS inode */
|
struct inode i_vnode; /* embedded VFS inode */
|
||||||
} xfs_inode_t;
|
} xfs_inode_t;
|
||||||
|
|
||||||
#define XFS_ISIZE(ip) (((ip)->i_d.di_mode & S_IFMT) == S_IFREG) ? \
|
#define XFS_ISIZE(ip) S_ISREG((ip)->i_d.di_mode) ? \
|
||||||
(ip)->i_size : (ip)->i_d.di_size;
|
(ip)->i_size : (ip)->i_d.di_size;
|
||||||
|
|
||||||
/* Convert from vfs inode to xfs inode */
|
/* Convert from vfs inode to xfs inode */
|
||||||
|
|
|
@ -2283,7 +2283,7 @@ xlog_recover_inode_pass2(
|
||||||
/* Take the opportunity to reset the flush iteration count */
|
/* Take the opportunity to reset the flush iteration count */
|
||||||
dicp->di_flushiter = 0;
|
dicp->di_flushiter = 0;
|
||||||
|
|
||||||
if (unlikely((dicp->di_mode & S_IFMT) == S_IFREG)) {
|
if (unlikely(S_ISREG(dicp->di_mode))) {
|
||||||
if ((dicp->di_format != XFS_DINODE_FMT_EXTENTS) &&
|
if ((dicp->di_format != XFS_DINODE_FMT_EXTENTS) &&
|
||||||
(dicp->di_format != XFS_DINODE_FMT_BTREE)) {
|
(dicp->di_format != XFS_DINODE_FMT_BTREE)) {
|
||||||
XFS_CORRUPTION_ERROR("xlog_recover_inode_pass2(3)",
|
XFS_CORRUPTION_ERROR("xlog_recover_inode_pass2(3)",
|
||||||
|
@ -2296,7 +2296,7 @@ xlog_recover_inode_pass2(
|
||||||
error = EFSCORRUPTED;
|
error = EFSCORRUPTED;
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
} else if (unlikely((dicp->di_mode & S_IFMT) == S_IFDIR)) {
|
} else if (unlikely(S_ISDIR(dicp->di_mode))) {
|
||||||
if ((dicp->di_format != XFS_DINODE_FMT_EXTENTS) &&
|
if ((dicp->di_format != XFS_DINODE_FMT_EXTENTS) &&
|
||||||
(dicp->di_format != XFS_DINODE_FMT_BTREE) &&
|
(dicp->di_format != XFS_DINODE_FMT_BTREE) &&
|
||||||
(dicp->di_format != XFS_DINODE_FMT_LOCAL)) {
|
(dicp->di_format != XFS_DINODE_FMT_LOCAL)) {
|
||||||
|
|
|
@ -1331,7 +1331,7 @@ xfs_mountfs(
|
||||||
|
|
||||||
ASSERT(rip != NULL);
|
ASSERT(rip != NULL);
|
||||||
|
|
||||||
if (unlikely((rip->i_d.di_mode & S_IFMT) != S_IFDIR)) {
|
if (unlikely(!S_ISDIR(rip->i_d.di_mode))) {
|
||||||
xfs_warn(mp, "corrupted root inode %llu: not a directory",
|
xfs_warn(mp, "corrupted root inode %llu: not a directory",
|
||||||
(unsigned long long)rip->i_ino);
|
(unsigned long long)rip->i_ino);
|
||||||
xfs_iunlock(rip, XFS_ILOCK_EXCL);
|
xfs_iunlock(rip, XFS_ILOCK_EXCL);
|
||||||
|
|
|
@ -116,7 +116,7 @@ xfs_rename(
|
||||||
trace_xfs_rename(src_dp, target_dp, src_name, target_name);
|
trace_xfs_rename(src_dp, target_dp, src_name, target_name);
|
||||||
|
|
||||||
new_parent = (src_dp != target_dp);
|
new_parent = (src_dp != target_dp);
|
||||||
src_is_directory = ((src_ip->i_d.di_mode & S_IFMT) == S_IFDIR);
|
src_is_directory = S_ISDIR(src_ip->i_d.di_mode);
|
||||||
|
|
||||||
if (src_is_directory) {
|
if (src_is_directory) {
|
||||||
/*
|
/*
|
||||||
|
@ -226,7 +226,7 @@ xfs_rename(
|
||||||
* target and source are directories and that target can be
|
* target and source are directories and that target can be
|
||||||
* destroyed, or that neither is a directory.
|
* destroyed, or that neither is a directory.
|
||||||
*/
|
*/
|
||||||
if ((target_ip->i_d.di_mode & S_IFMT) == S_IFDIR) {
|
if (S_ISDIR(target_ip->i_d.di_mode)) {
|
||||||
/*
|
/*
|
||||||
* Make sure target dir is empty.
|
* Make sure target dir is empty.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -121,7 +121,7 @@ xfs_readlink(
|
||||||
|
|
||||||
xfs_ilock(ip, XFS_ILOCK_SHARED);
|
xfs_ilock(ip, XFS_ILOCK_SHARED);
|
||||||
|
|
||||||
ASSERT((ip->i_d.di_mode & S_IFMT) == S_IFLNK);
|
ASSERT(S_ISLNK(ip->i_d.di_mode));
|
||||||
ASSERT(ip->i_d.di_size <= MAXPATHLEN);
|
ASSERT(ip->i_d.di_size <= MAXPATHLEN);
|
||||||
|
|
||||||
pathlen = ip->i_d.di_size;
|
pathlen = ip->i_d.di_size;
|
||||||
|
@ -529,7 +529,7 @@ xfs_release(
|
||||||
if (ip->i_d.di_nlink == 0)
|
if (ip->i_d.di_nlink == 0)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if ((((ip->i_d.di_mode & S_IFMT) == S_IFREG) &&
|
if ((S_ISREG(ip->i_d.di_mode) &&
|
||||||
((ip->i_size > 0) || (VN_CACHED(VFS_I(ip)) > 0 ||
|
((ip->i_size > 0) || (VN_CACHED(VFS_I(ip)) > 0 ||
|
||||||
ip->i_delayed_blks > 0)) &&
|
ip->i_delayed_blks > 0)) &&
|
||||||
(ip->i_df.if_flags & XFS_IFEXTENTS)) &&
|
(ip->i_df.if_flags & XFS_IFEXTENTS)) &&
|
||||||
|
@ -610,7 +610,7 @@ xfs_inactive(
|
||||||
truncate = ((ip->i_d.di_nlink == 0) &&
|
truncate = ((ip->i_d.di_nlink == 0) &&
|
||||||
((ip->i_d.di_size != 0) || (ip->i_size != 0) ||
|
((ip->i_d.di_size != 0) || (ip->i_size != 0) ||
|
||||||
(ip->i_d.di_nextents > 0) || (ip->i_delayed_blks > 0)) &&
|
(ip->i_d.di_nextents > 0) || (ip->i_delayed_blks > 0)) &&
|
||||||
((ip->i_d.di_mode & S_IFMT) == S_IFREG));
|
S_ISREG(ip->i_d.di_mode));
|
||||||
|
|
||||||
mp = ip->i_mount;
|
mp = ip->i_mount;
|
||||||
|
|
||||||
|
@ -621,7 +621,7 @@ xfs_inactive(
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
if (ip->i_d.di_nlink != 0) {
|
if (ip->i_d.di_nlink != 0) {
|
||||||
if ((((ip->i_d.di_mode & S_IFMT) == S_IFREG) &&
|
if ((S_ISREG(ip->i_d.di_mode) &&
|
||||||
((ip->i_size > 0) || (VN_CACHED(VFS_I(ip)) > 0 ||
|
((ip->i_size > 0) || (VN_CACHED(VFS_I(ip)) > 0 ||
|
||||||
ip->i_delayed_blks > 0)) &&
|
ip->i_delayed_blks > 0)) &&
|
||||||
(ip->i_df.if_flags & XFS_IFEXTENTS) &&
|
(ip->i_df.if_flags & XFS_IFEXTENTS) &&
|
||||||
|
@ -669,7 +669,7 @@ xfs_inactive(
|
||||||
xfs_iunlock(ip, XFS_IOLOCK_EXCL | XFS_ILOCK_EXCL);
|
xfs_iunlock(ip, XFS_IOLOCK_EXCL | XFS_ILOCK_EXCL);
|
||||||
return VN_INACTIVE_CACHE;
|
return VN_INACTIVE_CACHE;
|
||||||
}
|
}
|
||||||
} else if ((ip->i_d.di_mode & S_IFMT) == S_IFLNK) {
|
} else if (S_ISLNK(ip->i_d.di_mode)) {
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If we get an error while cleaning up a
|
* If we get an error while cleaning up a
|
||||||
|
|
Loading…
Reference in a new issue