Opened 12 years ago
Last modified 4 years ago
#8884 assigned bug
bfs-tools/recover crashes — at Initial Version
Reported by: | Anarchos | Owned by: | axeld |
---|---|---|---|
Priority: | low | Milestone: | R1 |
Component: | Applications/Command Line Tools | Version: | |
Keywords: | bfs-tools recover | Cc: | |
Blocked By: | Blocking: | ||
Platform: | x86 |
Description
When running recover with recover -dv /dev/disks/scsi/0/0/0/3_4 /Data2/recovered It crashes after displaying "Checking disk structure integrity" (or something like that) and "1050 nodes". Below is the gdb session i could do, extracting some informations. Crash is reproducible.
GNU gdb 6.3 Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i586-pc-haiku"... [tcsetpgrp failed in terminal_inferior: Invalid Argument] Thread 7006 caused an exception: Segment violation Reading symbols from /boot/system/runtime_loader...done. Loaded symbols for /boot/system/runtime_loader Reading symbols from /boot/system/lib/libbe.so...done. Loaded symbols for /boot/system/lib/libbe.so Reading symbols from /boot/system/lib/libstdc++.hrev4.so...done. Loaded symbols for /boot/system/lib/libstdc++.hrev4.so Reading symbols from /boot/system/lib/libroot.so...done. Loaded symbols for /boot/system/lib/libroot.so Reading symbols from /boot/system/lib/libicudata.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicudata.so.48.1.1 Reading symbols from /boot/system/lib/libicui18n.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicui18n.so.48.1.1 Reading symbols from /boot/system/lib/libicuio.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicuio.so.48.1.1 Reading symbols from /boot/system/lib/libicule.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicule.so.48.1.1 Reading symbols from /boot/system/lib/libiculx.so.48.1.1...done. Loaded symbols for /boot/system/lib/libiculx.so.48.1.1 Reading symbols from /boot/system/lib/libicutu.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicutu.so.48.1.1 Reading symbols from /boot/system/lib/libicuuc.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicuuc.so.48.1.1 Reading symbols from /boot/system/lib/libroot-addon-icu.so...done. Loaded symbols for /boot/system/lib/libroot-addon-icu.so [tcsetpgrp failed in terminal_inferior: Invalid Argument] [Switching to team /Data2/haiku/generated/generated.gcc2/objects/haiku/x86/debug_1 (7006) thread recover (7006)] 0x00000000 in ?? ()
(gdb) bt #0 0x00000000 in ?? () #1 0x0020a16a in checkDirectoryContents (disk=@0x7ffeedc0, dir=0x187b3178)
at /Data2/haiku/src/bin/bfs_tools/recover.cpp:313
#2 0x0020a738 in checkStructure (disk=@0x7ffeedc0)
at /Data2/haiku/src/bin/bfs_tools/recover.cpp:396
#3 0x0020c2ff in main (argc=4, argv=0x7ffef544)
at /Data2/haiku/src/bin/bfs_tools/recover.cpp:802
(gdb) f 1 #1 0x0020a16a in checkDirectoryContents (disk=@0x7ffeedc0, dir=0x187b3178)
at /Data2/haiku/src/bin/bfs_tools/recover.cpp:313
313 dir->Rewind(); (gdb) display dir 1: dir = (Directory *) 0x187b3178 (gdb) display *dir 2: *dir = {<DataStream> = {<Inode> = {fDisk = 0x7ffeedc0, fInode = 0x1f5bc5c8,
fOwnBuffer = true, fPath = 0x0, fBlockRun = {allocation_group = 0,
start = 2782, length = 1}, fRefCount = 1, fCurrentSmallData = 0x0,
fAttributes = 0x0, fAttributeBuffer = 0x0, _vptr.Inode = 0x2254a0 <File virtual table>}, <BPositionIO> = {<BDataIO> = {_reserved = {0, 0},
_vptr.BDataIO = 0x225380 <File::BPositionIO virtual table>},
_reserved = {0, 0}}, fCurrent = -1, fLevel = 0, fRun = { allocation_group = 0, start = 0, length = 0}, fRunFileOffset = 0,
fRunBlockEnd = 0, fPosition = 0}, fTree = 0x0}