http://oss.sgi.com/bugzilla/show_bug.cgi?id=924
Summary: xfs_btree_lookup error stat = 0
Product: XFS
Version: unspecified
Platform: Other
OS/Version: Linux
Status: NEW
Severity: major
Priority: P5
Component: XFS kernel code
AssignedTo: xfs-masters@xxxxxxxxxxx
ReportedBy: amethyst623@xxxxxxx
Estimated Hours: 0.0
Classification: Unclassified
kernel version 2.6.32.16
my usb hard disk is damaged. so i use xfs_repire to repaire the filesystem.
i got these massage:
Starting XFS recovery on filesystem: sda1 (logdev: internal)
--->file fs/xfs/xfs_btree.c line 1661
--->file fs/xfs/xfs_btree.c line 1663
Assertion failed: fs_is_ok, file: fs/xfs/xfs_alloc.c, line: 1733
------------[ cut here ]------------
kernel BUG at fs/xfs/support/debug.c:109!
Kernel BUG: 003e [#1]
last sysfs file: /sys/devices/platform/stm-usb.1/stm-ehci.1/usb3/idVendor
Modules linked in: stgfb_core(P) fusion stapi_ioctl(P) stapi_core(P) mme_user
mme embxmailbox sata_stm embx libata ics_user ics isp51 CandDdvr [last
unloaded: sttbx_early_core]
Pid : 1565, Comm: mount
CPU : 0 Tainted: P
(2.6.32.16stlinux_205_stapi_V.1.2-HDK7108_7108-STSDK #9)
PC is at assfail+0x12/0x40
PR is at assfail+0x12/0x40
PC : 823868f2 SP : 88dc7ca4 SR : 40008000 TEA : c11e7790
R0 : 00000044 R1 : 00000001 R2 : 88dc6000 R3 : 000000f0
R4 : 00000001 R5 : 00005a35 R6 : ffffffff R7 : 0000000a
R8 : 88e38930 R9 : 88e3889c R10 : 000006c5 R11 : 8231bfe0
R12 : 88dc7cac R13 : 82334900 R14 : 00000000
MACH: 410c7f51 MACL: 00000000 GBR : 29560448 PR : 823868f2
Call trace:
[<82318d4e>] xfs_free_ag_extent+0x8e/0x6c0
[<8225e420>] congestion_wait+0x0/0x80
[<82272d66>] cache_alloc_refill+0x4a6/0x580
[<8231af28>] xfs_free_extent+0xe8/0x160
[<82371320>] xfs_trans_log_efd_extent+0x0/0xa0
[<82366bd6>] xlog_recover_process_efi+0x316/0x420
[<8231ae40>] xfs_free_extent+0x0/0x160
[<82366d58>] xlog_recover_process_efis+0x78/0x140
[<8236f280>] xfs_trans_ail_cursor_next+0x0/0x40
[<82210d60>] sub_preempt_count+0x0/0x80
[<8236f280>] xfs_trans_ail_cursor_next+0x0/0x40
[<82210de0>] add_preempt_count+0x0/0xa0
[<82368076>] xlog_recover_finish+0x16/0xc0
[<82384d66>] xfs_fs_fill_super+0x1c6/0x318
[<8236b04c>] xfs_mountfs+0x44c/0x6c0
[<82377760>] kmem_zalloc+0x0/0x40
[<8234b560>] xfs_fstrm_free_func+0x0/0xe0
[<8236b7bc>] xfs_mru_cache_create+0x7c/0x100
[<82384d66>] xfs_fs_fill_super+0x1c6/0x318
[<82278b74>] get_sb_bdev+0x114/0x180
[<8228e4a4>] alloc_vfsmnt+0x84/0x140
[<82210d60>] sub_preempt_count+0x0/0x80
[<823827f0>] xfs_fs_get_sb+0x10/0x20
[<82281f40>] kern_path+0x0/0x34
[<82384ba0>] xfs_fs_fill_super+0x0/0x318
[<82277d96>] vfs_kern_mount+0x36/0xb4
[<82277e6e>] do_kern_mount+0x2e/0xe0
[<8228fbf4>] do_mount+0x254/0x780
[<82513ddc>] __kprobes_text_end+0xcfc/0x1dd0
[<8228f8b0>] copy_mount_options+0x30/0xe0
[<82290424>] sys_mount+0x64/0xe0
[<82208920>] syscall_call+0xa/0xe
[<822903c0>] sys_mount+0x0/0xe0
checking the codes i found in function
xfs_btree_lookup
...
/* Return if we succeeded or not. */
if (keyno == 0 || keyno > xfs_btree_get_numrecs(block))
{*stat = 0;printk("--->file %s line %d\n", __FILE__, __LINE__);}
else if (dir != XFS_LOOKUP_EQ || diff == 0)
{*stat = 1;printk("--->file %s line %d\n", __FILE__, __LINE__);}
else
{*stat = 0;printk("--->file %s line %d\n", __FILE__,
__LINE__);}------------------------------------------------------------> stat =
0 causes the problem.
XFS_BTREE_TRACE_CURSOR(cur, XBT_EXIT);
return 0;
what should i do to repaire this disk?
--
Configure bugmail: http://oss.sgi.com/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
|