Please don''t reply to lustre-devel. Instead, comment in Bugzilla by
using the following link:
https://bugzilla.lustre.org/show_bug.cgi?id=11504
What |Removed |Added
----------------------------------------------------------------------------
Priority|P3 |P2
Related to bug 11324 and bug 11414. Was observed when running the most
recent CFS fsck 1.39.cfs3. Running under gdb it failed as follows likely
due to not checking the extent header magic, although I thought cfs3 did
that?
---
The program is running. Exit anyway? (y or n) y
# pigs38 /var/tmp > gdb /sbin/e2fsck
GNU gdb Red Hat Linux (6.3.0.0-1.132.1llnlrh)
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 "x86_64-redhat-linux-gnu"...Using host
libthread_db
library "/lib64/tls/libthread_db .so.1".
(gdb) run -y -f -v /dev/sdb
Starting program: /sbin/e2fsck -y -f -v /dev/sdb
warning: shared library handler failed to enable breakpoint
e2fsck 1.39.cfs3 (14-Nov-2006)
Pass 1: Checking inodes, blocks, and sizes
Inode 84852775, i_size is 17592118779904, should be 17592118779904. Fix? yes
Inode 85626933 has high 16 bits of extent/index block set
Clear? yes
High 16 bits of extent/index block set
CLEARED.
Inode 85626933 has corrupt extent index at block 0 (logical 0) entry 1
Clear? yes
Program received signal SIGSEGV, Segmentation fault.
0x00000000004edb5c in ?? ()
(gdb)
(gdb)
(gdb) bt
#0 0x00000000004edb5c in ?? ()
#1 0x00000000004ed5ed in ?? ()
#2 0x000000000041f38a in ext2fs_extent_index_remove (eh=0x782f30, ix=0x79afe8)
at extents.c:187
#3 0x000000000040525f in e2fsck_ext_block_verify (p=0x7fbffff050,
block_buf=0x782f30, buflen=Variable "buflen" is not available.
)
at pass1.c:1591
#4 0x0000000000406543 in process_block (fs=0x717940, block_nr=0x7fbfffedb4,
blockcnt=-1, ref_block=Variable "r ef_block" is not available.
)
at pass1.c:1951
#5 0x000000000041f6a3 in block_iterate_extents (eh_buf=0x7911c0,
bufsize=Variable "bufsize" is not available.
) at extents.c:305
#6 0x000000000041f5f3 in block_iterate_extents (eh_buf=0x7fbfffef40,
bufsize=Variable "bufsize" is not availab le.
) at extents.c:337
#7 0x000000000041c4a2 in ext2fs_block_iterate2 (fs=0x717940, ino=85626933,
flags=0, block_buf=0x782f30 "",
func=Variable "func" is not available.
) at block.c:334
#8 0x0000000000405499 in check_blocks (ctx=0x717570, pctx=0x7fbffff0f0,
block_buf=0x782f30 "")
at pass1.c:1680
#9 0x00000000004061bc in process_inodes (ctx=0x717570, block_buf=0x782f30
"")
at pass1.c:1054
#10 0x0000000000406223 in scan_callback (fs=Variable "fs" is not
available.
) at pass1.c:1011
#11 0x0000000000421699 in ext2fs_get_next_inode_full (scan=0x785f40,
ino=0x7fbffff284, inode=0x77a5b0,
bufsize=256) at inode.c:398
#12 0x0000000000407272 in e2fsck_pass1 (ctx=0x717570) at pass1.c:545
#13 0x00000000004036c2 in e2fsck_run (ctx=0x717570) at e2fsck.c:206
#14 0x0000000000402200 in main (argc=Variable "argc" is not available.
) at unix.c:1284
#15 0x00000000004ca471 in ?? ()
#16 0x000000000040018a in ?? ()
#17 0x0000007fbffff8e8 in ?? ()
#18 0x0000000000000000 in ?? ()
(gdb)