From 184cb918fd6aa6e6af30f790226133b32a76ac88 Mon Sep 17 00:00:00 2001 From: Eric Sandeen Date: Mon, 24 Mar 2003 18:06:38 +0000 Subject: [PATCH] Correct size check for realtime summary inode (not the same as the realtime bitmap inode). --- repair/dinode.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/repair/dinode.c b/repair/dinode.c index e3a483c01..47abc3b6d 100644 --- a/repair/dinode.c +++ b/repair/dinode.c @@ -2085,8 +2085,13 @@ process_dinode_int(xfs_mount_t *mp, * are extent format files. If anything's wrong, clear * the inode -- we'll recreate it in phase 6. */ - if (do_rt && INT_GET(dinoc->di_size, ARCH_CONVERT) - != mp->m_sb.sb_rbmblocks * mp->m_sb.sb_blocksize) { + if (do_rt && + ((lino == mp->m_sb.sb_rbmino && + INT_GET(dinoc->di_size, ARCH_CONVERT) + != mp->m_sb.sb_rbmblocks * mp->m_sb.sb_blocksize) || + (lino == mp->m_sb.sb_rsumino && + INT_GET(dinoc->di_size, ARCH_CONVERT) != mp->m_rsumsize))) { + do_warn(_("bad size %llu for realtime %s inode %llu\n"), INT_GET(dinoc->di_size, ARCH_CONVERT), rstring, lino); -- 2.47.2