Vitaly V. Ch wrote:
> on my PC:
> Fri 15 May 00:02:37|root@cvv:xfs# xfs_repair -V
> xfs_repair version 3.0.1
> Fri 15 May 00:03:26|root@cvv:xfs# xfs_mdrestore xfs.dump xfs.metaimg
> Fri 15 May 00:03:37|root@cvv:xfs# xfs_repair -v xfs.metaimg
> Phase 1 - find and verify superblock...
> - block cache size set to 133976 entries
> Phase 2 - using internal log
> - zero log...
> zero_log: head block 2 tail block 2
> - scan filesystem freespace and inode maps...
> - found root inode chunk
> Phase 3 - for each AG...
> - scan and clear agi unlinked lists...
> - process known inodes and perform inode discovery...
> - agno = 0
> entry "" in shortform directory 128 references invalid inode 0
> zero length entry in shortform dir 128, junking 3 entries
> corrected entry count in directory 128, was 3, now 0
> corrected directory 128 size, was 69, now 6
> bogus .. inode number (0) in directory inode 128, clearing inode number
> xfs_repair: dir2.c:2115: process_dir2: Assertion `(ino !=
> mp->m_sb.sb_rootino && ino != *parent) || (ino == mp->m_sb.sb_rootino
> && (ino == *p
> arent || need_root_dotdot == 1))' failed.
odd, not sure offhand what to make of it since it works ok for me...
perhaps you can narrow down which of the asserts tripped, for starters?
And then maybe I can try it on x86 to see if it might possibly matter
if the host checking it is 32 or 64 bits...