xfs
[Top] [All Lists]

xfs_repair segfault while repairing corrupt directory

To: linux-xfs@xxxxxxxxxxx
Subject: xfs_repair segfault while repairing corrupt directory
From: Thomas Kirk <thomas@xxxxxxxxx>
Date: Tue, 15 Jul 2003 11:53:43 +0200
Mail-followup-to: linux-xfs@xxxxxxxxxxx
Sender: linux-xfs-bounce@xxxxxxxxxxx
User-agent: Mutt/1.5.3i
System    : Debian sarge (testing)
Kernel    : 2.4.20 debian kernel
xfs       : Patched kernel via debian
            (http://packages.debian.org/testing/devel/kernel-patch-xfs.html)
xfsprogs  : xfs_repair (2.5.3) same error with xfsprogs from testing
            and unstable
fssize    : 70GB

Dmesg     :

thomas@wintherstill:~$ grep XFS /var/log/dmesg 
SGI XFS snapshot 2.4.20-2002-11-29_01:21_UTC with ACLs, quota, no
debug enabled
XFS mounting filesystem ide1(22,1)
Starting XFS recovery on filesystem: ide1(22,1) (dev: 22/1)
Ending XFS recovery on filesystem: ide1(22,1) (dev: 22/1)
XFS mounting filesystem ide0(3,5)
Starting XFS recovery on filesystem: ide0(3,5) (dev: 3/5)
Ending XFS recovery on filesystem: ide0(3,5) (dev: 3/5)

xfs_repair:

xfs_repair /dev/hda5 

Phase 5 - rebuild AG headers and trees...
        - reset superblock...
Phase 6 - check inode connectivity...
        - resetting contents of realtime bitmap and summary inodes
        - ensuring existence of lost+found directory
        - traversing filesystem starting at / ... 
bad hash table for directory inode 200647659 (bad stale count):
rebuilding
rebuilding directory inode 200647659
Lagersegmentfejl

gdb output :

Phase 5 - rebuild AG headers and trees...
        - reset superblock...
Phase 6 - check inode connectivity...
        - resetting contents of realtime bitmap and summary inodes
        - ensuring existence of lost+found directory
        - traversing filesystem starting at / ... 
bad hash table for directory inode 200647659 (bad stale count):
rebuilding
rebuilding directory inode 200647659

Program received signal SIGSEGV, Segmentation fault.
0x080a1c8f in libxfs_dir2_data_make_free (tp=0x81d1fc0, bp=0x81bd328,
offset=528312, len=4294443080, 
    needlogp=0xbffff8a8, needscanp=0xbffff8ac) at xfs_dir2_data.c:552
552                     tagp = (xfs_dir2_data_off_t *)((char *)d +
offset) - 1;

bt output :

(gdb) bt
#0  0x080a1c8f in libxfs_dir2_data_make_free (tp=0x81d1fc0,
bp=0x81bd328, offset=528312, len=4294443080, 
    needlogp=0xbffff8a8, needscanp=0xbffff8ac) at xfs_dir2_data.c:552
#1  0x080709f9 in longform_dir2_rebuild_setup (mp=0xbffffb14,
ino=200647659, ip=0x8117c60, freetab=0x81c8048)
    at phase6.c:2357
#2  0x080719d9 in longform_dir2_rebuild (mp=0xbffffb14, ino=200647659,
ip=0x8117c60, num_illegal=0xbffffa60, 
    freetab=0x81c8048, isblock=1) at phase6.c:2648
#3  0x08071e24 in longform_dir2_entry_check (mp=0xbffffb14,
ino=200647659, ip=0x8117c60, 
    num_illegal=0xbffffa60, need_dot=0xbffffa64, stack=0xbffffad0,
    irec=0x8105b68, ino_offset=43)
    at phase6.c:2752
#4  0x0807379c in process_dirstack (mp=0xbffffb14, stack=0xbffffad0)
at phase6.c:3569
#5  0x080746b0 in phase6 (mp=0xbffffb14) at phase6.c:3976
#6  0x0807b7ee in main (argc=2, argv=0xbffffd74) at xfs_repair.c:522

xfs_db output :

wintherstill:/home/xfsprogs-2.5.3/db# ./xfs_db /dev/hda5
xfs_db> inode 200647659
xfs_db> print
core.magic = 0x494e
core.mode = 040755
core.version = 1
core.format = 2 (extents)
core.nlinkv1 = 2
core.uid = 1000
core.gid = 1000
core.atime.sec = Tue Jul 15 08:47:42 2003
core.atime.nsec = 979143000
core.mtime.sec = Mon Jul 14 21:07:45 2003
core.mtime.nsec = 428690000
core.ctime.sec = Mon Jul 14 21:07:45 2003
core.ctime.nsec = 428690000
core.size = 4096
core.nblocks = 1
core.extsize = 0
core.nextents = 1
core.naextents = 0
core.forkoff = 0
core.aformat = 2 (extents)
core.dmevmask = 0
core.dmstate = 0
core.newrtbm = 0
core.prealloc = 0
core.realtime = 0
core.gen = 1
next_unlinked = null
u.bmx[0] = [startoff,startblock,blockcount,extentflag]
0:[0,13206447,1,0]


The fs got corrupted due to a powerfailure while copying files from
one disk to another.

-- 
Venlig hilsen/Kind regards
Thomas Kirk
ARKENA
tlf/phone +4570233456
thomas(at)arkena(dot)com
Http://www.arkena.com


"Don't you ever, EVER talk that way about television." -- Homer
Simpson


<Prev in Thread] Current Thread [Next in Thread>
  • xfs_repair segfault while repairing corrupt directory, Thomas Kirk <=