]> www.infradead.org Git - users/hch/xfsprogs.git/commitdiff
FOLD: xfs: pass a file mode instead of file type to xfs_imeta_iget
authorChristoph Hellwig <hch@lst.de>
Fri, 12 Apr 2024 05:07:35 +0000 (07:07 +0200)
committerChristoph Hellwig <hch@lst.de>
Fri, 12 Apr 2024 06:00:43 +0000 (08:00 +0200)
db/fsmap.c
libxfs/init.c
libxfs/inode.c
repair/bmap_repair.c
repair/phase2.c
repair/phase6.c
repair/rmap.c
repair/xfs_repair.c

index 465f9c6774d94a4e41d35095f338ced90bc724cb..50daa19ed9194fe790c2517d9c847dd8d7f5c3d6 100644 (file)
@@ -161,7 +161,7 @@ fsmap_rtgroup(
                goto out_trans;
        }
 
-       error = -libxfs_imeta_iget(tp, ino, XFS_DIR3_FT_REG_FILE, &ip);
+       error = -libxfs_imeta_iget(tp, ino, S_IFREG, &ip);
        if (error) {
                dbprintf(_("Cannot load rtgroup %u rmap inode\n"),
                                rtg->rtg_rgno);
index ce22a2aa7fd8209112dd801c75389f928ba2556b..b07418c83f1b2cedf3e93805cff6cad2c59ccad3 100644 (file)
@@ -642,7 +642,7 @@ libxfs_mountfs_imeta(
 
        if (xfs_has_metadir(mp)) {
                error = -libxfs_imeta_iget(tp, mp->m_sb.sb_metadirino,
-                               XFS_DIR3_FT_DIR, &mp->m_metadirip);
+                               S_IFDIR, &mp->m_metadirip);
                if (error) {
                        fprintf(stderr,
  _("%s: Failed to load metadir root directory, error %d\n"),
index 87b5df84f2a4107f155c34990f2fc3f0f564bdda..feba8026eb521944af29b65d874f2e9a57ff5336 100644 (file)
@@ -233,7 +233,7 @@ int
 libxfs_imeta_iget(
        struct xfs_trans        *tp,
        xfs_ino_t               ino,
-       unsigned char           ftype,
+       umode_t                 mode,
        struct xfs_inode        **ipp)
 {
        struct xfs_mount        *mp = tp->t_mountp;
@@ -245,8 +245,7 @@ libxfs_imeta_iget(
                return error;
 
        if ((xfs_has_metadir(mp) && !xfs_is_metadir_inode(ip)) ||
-           ftype == XFS_DIR3_FT_UNKNOWN ||
-           xfs_mode_to_ftype(VFS_I(ip)->i_mode) != ftype) {
+           ((VFS_I(ip)->i_mode) & S_IFMT) != mode) {
                libxfs_irele(ip);
                return -EFSCORRUPTED;
        }
index 170b5e9f6a45005b0c75f7ce2d99b0bdc73dcdde..cff65c8171517aaaf1861aebe86921977e01ef6a 100644 (file)
@@ -311,7 +311,7 @@ xrep_bmap_scan_rt(
                goto out_path;
        }
 
-       error = -libxfs_imeta_iget(sc->tp, ino, XFS_DIR3_FT_REG_FILE, &ip);
+       error = -libxfs_imeta_iget(sc->tp, ino, S_IFREG, &ip);
        if (error)
                goto out_path;
 
index d1b2824caace9733f213bd62c266e1a3cbe90180..bf45a1ff51ab142f2a48595e8ae912339d9c5071 100644 (file)
@@ -530,8 +530,7 @@ reserve_rtrmap_inode(
                goto out_trans;
        }
 
-       error = -libxfs_imeta_iget(tp, ino, XFS_DIR3_FT_REG_FILE,
-                       &rtg->rtg_rmapip);
+       error = -libxfs_imeta_iget(tp, ino, S_IFREG, &rtg->rtg_rmapip);
        if (error)
                goto out_trans;
 
@@ -587,8 +586,7 @@ reserve_rtrefcount_inode(
                goto out_trans;
        }
 
-       error = -libxfs_imeta_iget(tp, ino, XFS_DIR3_FT_REG_FILE,
-                       &rtg->rtg_refcountip);
+       error = -libxfs_imeta_iget(tp, ino, S_IFREG, &rtg->rtg_refcountip);
        if (error)
                goto out_trans;
 
index 8c1182ad16c32da0ca48966a9d98be6ae1ac9f18..0698a96f1508bb6886573e24a1d64a8e6aec1481 100644 (file)
@@ -701,7 +701,7 @@ ensure_rtino_metadir(
                do_error(
  _("failed to allocate trans to iget rt metadata inode 0x%llx, error %d\n"),
                                (unsigned long long)ino, error);
-       error = -libxfs_imeta_iget(tp, ino, XFS_DIR3_FT_REG_FILE, ipp);
+       error = -libxfs_imeta_iget(tp, ino, S_IFREG, ipp);
        libxfs_trans_cancel(tp);
        if (error)
                do_error(
@@ -1071,7 +1071,7 @@ ensure_rtgroup_rmapbt(
  _("Couldn't allocate transaction to iget rtgroup %u rmap inode 0x%llx, error %d\n"),
                                        rtg->rtg_rgno, (unsigned long long)ino,
                                        error);
-               error = -libxfs_imeta_iget(tp, ino, XFS_DIR3_FT_REG_FILE, &ip);
+               error = -libxfs_imeta_iget(tp, ino, S_IFREG, &ip);
                libxfs_trans_cancel(tp);
                if (error) {
                        do_warn(
@@ -1201,7 +1201,7 @@ ensure_rtgroup_refcountbt(
  _("Couldn't allocate transaction to iget rtgroup %u refcountbt inode 0x%llx, error %d\n"),
                                        rtg->rtg_rgno, (unsigned long long)ino,
                                        error);
-               error = -libxfs_imeta_iget(tp, ino, XFS_DIR3_FT_REG_FILE, &ip);
+               error = -libxfs_imeta_iget(tp, ino, S_IFREG, &ip);
                libxfs_trans_cancel(tp);
                if (error) {
                        do_warn(
@@ -3934,7 +3934,7 @@ reattach_quota_inode(
                do_error(
  _("failed to allocate trans to grab quota inode 0x%llx, error %d\n"),
                                (unsigned long long)ino, error);
-       error = -libxfs_imeta_iget(tp, ino, XFS_DIR3_FT_REG_FILE, &ip);
+       error = -libxfs_imeta_iget(tp, ino, S_IFREG, &ip);
        libxfs_trans_cancel(tp);
        if (error) {
                do_warn(
index 222021fc73b7f26033d53a6f58fc1dd35f4a0794..725c45d151622f1bc7512172a759d356de487556 100644 (file)
@@ -1611,10 +1611,10 @@ threadsafe_imeta_iget(
                return error;
 
        if (do_prefetch) {
-               error = -libxfs_imeta_iget(tp, ino, XFS_DIR3_FT_REG_FILE, ipp);
+               error = -libxfs_imeta_iget(tp, ino, S_IFREG, ipp);
        } else {
                pthread_mutex_lock(&lock);
-               error = -libxfs_imeta_iget(tp, ino, XFS_DIR3_FT_REG_FILE, ipp);
+               error = -libxfs_imeta_iget(tp, ino, S_IFREG, ipp);
                pthread_mutex_unlock(&lock);
        }
        libxfs_trans_cancel(tp);
index 7d5cbaaf8b46796d4f8aacaa62362be1b27cb464..7f1f38b73b94ff7b7b5f9f5f18e2f44ae1c9cf0f 100644 (file)
@@ -706,8 +706,8 @@ check_metadir_inode(
                        do_error(
  _("could not allocate transaction to load metadir inode"));
 
-               error = -libxfs_imeta_iget(tp, mp->m_sb.sb_metadirino,
-                               XFS_DIR3_FT_DIR, &mp->m_metadirip);
+               error = -libxfs_imeta_iget(tp, mp->m_sb.sb_metadirino, S_IFDIR,
+                               &mp->m_metadirip);
                if (error) {
                        libxfs_trans_cancel(tp);
                        need_metadir_inode = true;