On Wed, Oct 11, 2017 at 06:43:19PM -0700, Darrick J. Wong wrote: > From: Darrick J. Wong <darrick.wong@xxxxxxxxxx> > > Scrub the hash tree and all the entries in a directory. ..... > +/* Check that an inode's mode matches a given DT_ type. */ > +STATIC int > +xfs_scrub_dir_check_ftype( > + struct xfs_scrub_dir_ctx *sdc, > + xfs_fileoff_t offset, > + xfs_ino_t inum, > + int dtype) > +{ > + struct xfs_mount *mp = sdc->sc->mp; > + struct xfs_inode *ip; > + int ino_dtype; > + int error = 0; > + > + if (!xfs_sb_version_hasftype(&mp->m_sb)) { > + if (dtype != DT_UNKNOWN && dtype != DT_DIR) > + xfs_scrub_fblock_set_corrupt(sdc->sc, XFS_DATA_FORK, > + offset); > + goto out; > + } > + > + error = xfs_iget(mp, sdc->sc->tp, inum, XFS_IGET_DONTCACHE, 0, &ip); > + if (!xfs_scrub_fblock_process_error(sdc->sc, XFS_DATA_FORK, offset, > + &error)) > + goto out; > + > + /* Convert mode to the DT_* values that dir_emit uses. */ > + ino_dtype = (VFS_I(ip)->i_mode & S_IFMT) >> 12; xfs_mode_to_ftype() ? Otherwise it looks ok. Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> -- Dave Chinner david@xxxxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-xfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html