[OpenAFS-devel] kernel BUG at /scratch/openafs/src/libafs/MODLOAD-2.6.13-MP/rx_kcommon.c:131!
Martin MOKREJŠ
mmokrejs@ribosome.natur.cuni.cz
Sun, 04 Sep 2005 15:34:12 +0200
Here are the crash details with some printk patch from Chas.
I've rebuilt from cvs sources synced few minutes ago and am using
the patch from try to get better cache statistics.
Starting AFS cache scan...found 0 non-empty cache files (0%).
afs_dentry_iput("phylo.natur.cuni.cz", e7d1e260)
afs_dentry_iput(".phylo.natur.cuni.cz", e7d1e260)
afs_dentry_iput("phylo.natur.cuni.cz", e7d1e260)
AFS isn't unmounted yet! Call aborted
AFS isn't unmounted yet! Call aborted
afs_dentry_iput("afsws", e764d02c)
afs_dentry_iput("home", e764d260)
afs_dentry_iput("usr", e7d1e8fc)
afs_dentry_iput("i386_linux26", e764dd64)
afs_dentry_iput(".phylo.natur.cuni.cz", e7d1e260)
afs_dentry_iput("/", e7d1ed64)
inode freed while on LRU------------[ cut here ]------------
kernel BUG at /scratch/openafs/src/libafs/MODLOAD-2.6.13-MP/rx_kcommon.c:131!
invalid operand: 0000 [#1]
CPU: 0
EIP: 0060:[<fa026f02>] Tainted: P VLI
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010296 (2.6.13)
eax: 0000001b ebx: e7d1ed64 ecx: 00000001 edx: 00000282
esi: e7d1eea4 edi: e82340e8 ebp: f60a1e88 esp: f60a1e74
ds: 007b es: 007b ss: 0068
Stack: fa04be14 fa03402b 00000000 e7d1ed64 e7d1ed64 f60a1e94 fa03404f e7d1ed64
f60a1ea8 c0173efe e7d1e260 e7d1ed64 f6e0402c f60a1eb8 c0174dd4 e7d1ed64
e7d1ed64 f60a1ec0 c0174e06 f60a1ecc c0174e5e f60a0000 f60a1eec fa035ec6
Call Trace:
[<c01039d1>] show_stack+0x7a/0x90
[<c0103b52>] show_registers+0x152/0x1ca
[<c0103d60>] die+0xf4/0x183
[<c0103e70>] do_trap+0x81/0xb8
[<c010414a>] do_invalid_op+0xa3/0xad
[<c010363b>] error_code+0x4f/0x54
[<fa03404f>] afs_clear_inode+0x24/0x3e [libafs]
[<c0173efe>] clear_inode+0xc7/0xc9
[<c0174dd4>] generic_forget_inode+0x113/0x12f
[<c0174e06>] generic_drop_inode+0x16/0x18
[<c0174e5e>] iput+0x56/0x69
[<fa035ec6>] afs_dentry_iput+0xa3/0xca [libafs]
[<c01720b9>] dput+0x157/0x1dd
[<c01624a3>] generic_shutdown_super+0x39/0x140
[<c0162d8d>] kill_anon_super+0xc/0x35
[<c01623ab>] deactivate_super+0x58/0x71
[<c017639d>] __mntput+0x28/0x33
[<c0168da2>] path_release_on_umount+0x29/0x2c
[<c0176901>] sys_umount+0x37/0x76
[<c0176959>] sys_oldumount+0x19/0x1b
[<c0102acb>] sysenter_past_esp+0x54/0x75
Code: ff 5d c3 55 89 e5 53 bb 44 b3 04 fa 83 ec 10 85 c0 0f 44 c3 8b 5d 08 89 4c 24 08 89 5c 24 0c 89 54 24 04 89 04 24 e8 02 96 0f c6 <0f> 0b 83 00 c8 86 04 fa 83 c4 10 5b 5d c3 55 83 fa 01 89 e5 57
>>EIP; fa026f02 <pg0+39a0bf02/3f9e3400> <=====
>>ebx; e7d1ed64 <pg0+27703d64/3f9e3400>
>>esi; e7d1eea4 <pg0+27703ea4/3f9e3400>
>>edi; e82340e8 <pg0+27c190e8/3f9e3400>
>>ebp; f60a1e88 <pg0+35a86e88/3f9e3400>
>>esp; f60a1e74 <pg0+35a86e74/3f9e3400>
Trace; c01039d1 <show_stack+7a/90>
Trace; c0103b52 <show_registers+152/1ca>
Trace; c0103d60 <die+f4/183>
Trace; c0103e70 <do_trap+81/b8>
Trace; c010414a <do_invalid_op+a3/ad>
Trace; c010363b <error_code+4f/54>
Trace; fa03404f <pg0+39a1904f/3f9e3400>
Trace; c0173efe <clear_inode+c7/c9>
Trace; c0174dd4 <generic_forget_inode+113/12f>
Trace; c0174e06 <generic_drop_inode+16/18>
Trace; c0174e5e <iput+56/69>
Trace; fa035ec6 <pg0+39a1aec6/3f9e3400>
Trace; c01720b9 <dput+157/1dd>
Trace; c01624a3 <generic_shutdown_super+39/140>
Trace; c0162d8d <kill_anon_super+c/35>
Trace; c01623ab <deactivate_super+58/71>
Trace; c017639d <__mntput+28/33>
Trace; c0168da2 <path_release_on_umount+29/2c>
Trace; c0176901 <sys_umount+37/76>
Trace; c0176959 <sys_oldumount+19/1b>
Trace; c0102acb <sysenter_past_esp+54/75>
This architecture has variable length instructions, decoding before eip
is unreliable, take these instructions with a pinch of salt.
Code; fa026ed7 <pg0+39a0bed7/3f9e3400>
00000000 <_EIP>:
Code; fa026ed7 <pg0+39a0bed7/3f9e3400>
0: ff 5d c3 lcall *0xffffffc3(%ebp)
Code; fa026eda <pg0+39a0beda/3f9e3400>
3: 55 push %ebp
Code; fa026edb <pg0+39a0bedb/3f9e3400>
4: 89 e5 mov %esp,%ebp
Code; fa026edd <pg0+39a0bedd/3f9e3400>
6: 53 push %ebx
Code; fa026ede <pg0+39a0bede/3f9e3400>
7: bb 44 b3 04 fa mov $0xfa04b344,%ebx
Code; fa026ee3 <pg0+39a0bee3/3f9e3400>
c: 83 ec 10 sub $0x10,%esp
Code; fa026ee6 <pg0+39a0bee6/3f9e3400>
f: 85 c0 test %eax,%eax
Code; fa026ee8 <pg0+39a0bee8/3f9e3400>
11: 0f 44 c3 cmove %ebx,%eax
Code; fa026eeb <pg0+39a0beeb/3f9e3400>
14: 8b 5d 08 mov 0x8(%ebp),%ebx
Code; fa026eee <pg0+39a0beee/3f9e3400>
17: 89 4c 24 08 mov %ecx,0x8(%esp)
Code; fa026ef2 <pg0+39a0bef2/3f9e3400>
1b: 89 5c 24 0c mov %ebx,0xc(%esp)
Code; fa026ef6 <pg0+39a0bef6/3f9e3400>
1f: 89 54 24 04 mov %edx,0x4(%esp)
Code; fa026efa <pg0+39a0befa/3f9e3400>
23: 89 04 24 mov %eax,(%esp)
Code; fa026efd <pg0+39a0befd/3f9e3400>
26: e8 02 96 0f c6 call c60f962d <_EIP+0xc60f962d>
This decode from eip onwards should be reliable
Code; fa026f02 <pg0+39a0bf02/3f9e3400>
00000000 <_EIP>:
Code; fa026f02 <pg0+39a0bf02/3f9e3400> <=====
0: 0f 0b ud2a <=====
Code; fa026f04 <pg0+39a0bf04/3f9e3400>
2: 83 00 c8 addl $0xffffffc8,(%eax)
Code; fa026f07 <pg0+39a0bf07/3f9e3400>
5: 86 04 fa xchg %al,(%edx,%edi,8)
Code; fa026f0a <pg0+39a0bf0a/3f9e3400>
8: 83 c4 10 add $0x10,%esp
Code; fa026f0d <pg0+39a0bf0d/3f9e3400>
b: 5b pop %ebx
Code; fa026f0e <pg0+39a0bf0e/3f9e3400>
c: 5d pop %ebp
Code; fa026f0f <pg0+39a0bf0f/3f9e3400>
d: c3 ret
Code; fa026f10 <pg0+39a0bf10/3f9e3400>
e: 55 push %ebp
Code; fa026f11 <pg0+39a0bf11/3f9e3400>
f: 83 fa 01 cmp $0x1,%edx
Code; fa026f14 <pg0+39a0bf14/3f9e3400>
12: 89 e5 mov %esp,%ebp
Code; fa026f16 <pg0+39a0bf16/3f9e3400>
14: 57 push %edi