Sparc32 oops in chmod (2.2.20 SMP)
Hi,
I'm having some problems with my dual SparcServer 20. While doing a chmod() in /dev (while booting), it gives the following oops. The strange thing is : if I boot with console=/dev/ttyS1 , with /dev/console being a symlink to /dev/ttyS0, the oops doesn't happen (but I don't get kernel messages, not even on ttyS1) The kernel was compiled with 2.95.2 (debian potato).
This oops is 100% reproducible.
I also get semi-random lockups (probably) during disk-io.
I had (probably) the same problem with 2.2.14.
Frank
ksymoops 2.3.4 on sparc 2.2.20. Options used
-V (default)
-k /proc/ksyms (default)
-l /proc/modules (default)
-o /lib/modules/2.2.20/ (default)
-m /boot/System.map-2.2.20 (default)
Warning: You did not tell me where to find symbol information. I will assume that the log matches the kernel and modules that are running right now and I'll use the default options above for symbol resolution. If the current kernel and/or modules do not match the log, you can get more accurate output by telling me the kernel version and where to find map, modules, ksyms etc. ksymoops -h explains the options.
No modules in ksyms, skipping objects
Warning (read_lsmod): no symbols in lsmod, is /proc/modules a valid lsmod file?
Warning (compare_maps): ksyms_base symbol module_list_R__ver_module_list not found in System.map. Ignoring ksyms_base entry
Unable to handle kernel NULL pointer dereference<1>tsk->mm->context = 00000059
tsk->mm->pgd = f7bb3000
"@'/ ,. \`@"
/_| \__/ |_\
\__U_/chmod(97): Oops
PSR: 401000c4 PC: f005d51c NPC: f005d520 Y: 1b000000
Using defaults from ksymoops -t elf32-sparc -a sparc
g0: f007a4f8 g1: f03c49b0 g2: 00000000 g3: 000000a0 g4: f004de20 g5: f01b8265 g6: f798a000 g7: 00000014
o0: 00000000 o1: 00000900 o2: 00001000 o3: 000000c9 o4: f7e25600 o5: 00000014 sp: f798bc18 o7: f0079c94
l0: 00000000 l1: f7e25600 l2: 00000000 l3: f0409b3c l4: 00000008 l5: f01b8265 l6: f798a000 l7: f0052a84
i0: 00000000 i1: 000242ab i2: f01f3cd8 i3: 00000000 i4: 00000000 i5: 0000b700 fp: f798bc80 i7: f005d974 Caller[f005d974]
Caller[f005d9d8]
Caller[f007bb38]
Caller[f0055230]
Caller[f0055638]
Caller[f0055744]
Caller[f0052ab8]
Caller[f00154bc]
Caller[f00c36b4]
Instruction DUMP: 02800017 b0102000 b0100010 <d0062068> 80a20011 32bffffa e0040000 d0062018 80a20019
Quoted 3 lines
Quoted 3 lines
PC; f005d51c <find_inode+20/78> <===== O7; f0079c94 <inode_getblk+68/294> I7; f005d974 <iget4+50/a4>
Trace; f005d974 <iget4+50/a4>
Trace; f005d9d8 <iget+10/20>
Trace; f007bb38 <ext2_lookup+78/ac>
Trace; f0055230 <real_lookup+6c/100>
Trace; f0055638 <lookup_dentry+2ac/398>
Trace; f0055744 <__namei+20/68>
Trace; f0052ab8 <sys_newlstat+34/c8>
Trace; f00154bc <syscall_is_too_hard+34/40>
Trace; f00c36b4 <nlm_lookup_file+18c/248>
Code; f005d510 <find_inode+14/78>
0000000000000000 <_PC>:
Code; f005d510 <find_inode+14/78>
0: 02 80 00 17 be 5c <_PC+0x5c> f005d56c <find_inode+70/78>
Code; f005d514 <find_inode+18/78>
4: b0 10 20 00 clr %i0
Code; f005d518 <find_inode+1c/78>
8: b0 10 00 10 mov %l0, %i0
Code; f005d51c <find_inode+20/78> <=====
c: d0 06 20 68 ld [ %i0 + 0x68 ], %o0 <=====
Code; f005d520 <find_inode+24/78>
10: 80 a2 00 11 cmp %o0, %l1
Code; f005d524 <find_inode+28/78>
14: 32 bf ff fa bne,a fffffffffffffffc <_PC+0xfffffffffffffffc> f005d50c <find_inode+10/78>
Code; f005d528 <find_inode+2c/78>
18: e0 04 00 00 ld [ %l0 ], %l0
Code; f005d52c <find_inode+30/78>
1c: d0 06 20 18 ld [ %i0 + 0x18 ], %o0
Code; f005d530 <find_inode+34/78>
20: 80 a2 00 19 cmp %o0, %i1
3 warnings issued. Results may not be reliable.
Quoted 8 lines
Quoted 3 lines
Quoted 2 lines
OK. If I can get my cpio file down to reasonable size, and still crash the system, I'll put it online and send you an URL.
Oook.
http://www.xs4all.be/~gevaerts/ca.cpio.gz
(+- 1.5 MB, 26 MB uncompressed)
(contains one postscript file of some calvin & hobbes strips) cat ca.cpio.gz|gunzip|cpio -ivmd
hangs my system reliably.
kala@louise:/ap/tmp/t$ wget -q http://www.xs4all.be/~gevaerts/ca.cpio.gz kala@louise:/ap/tmp/t$ ls -l total 1476 -rw-r--r-- 1 kala users 1503405 Apr 29 22:27 ca.cpio.gz kala@louise:/ap/tmp/t$ time cat ca.cpio.gz| gunzip| cpio -ivmd cpio: warning: archive header has reverse byte-order ch.ps 50867 blocks
real 0m18.468s user 0m8.330s sys 0m17.060s kala@louise:/ap/tmp/t$ ls -la total 26952 drwxr-xr-x 2 kala users 4096 Apr 29 23:10 ./ drwxrwxrwt 3 root root 4096 Apr 29 23:08 ../ -rw-r--r-- 1 kala users 1503405 Apr 29 22:27 ca.cpio.gz -rw-rw-r-- 1 kala users 26043638 Jan 29 22:05 ch.ps
hmmmmm.
what now?
T.
Signature · 2 lines
"hello it's not like i read my mail so that you have where to offer to sell me a giant turnip or anything else thankyou." -tomas szepe <[email protected]>
Quoted 11 lines · On Mon, Apr 29, 2002 at 08:14:45PM +0200, [email protected] wrote:
Hi,
I'm having some problems with my dual SparcServer 20. While doing a
chmod()in /dev (while booting), it gives the following oops. The strange thing is : if I boot with console=/dev/ttyS1 , with/dev/consolebeing a symlink to/dev/ttyS0, the oops doesn't happen (but I don't get kernel messages, not even on ttyS1) The kernel was compiled with 2.95.2 (debian potato).
This oops is 100% reproducible.
I also get semi-random lockups (probably) during disk-io.
Quoted 1 line
I had (probably) the same problem with 2.2.14.
I took out one of the CPU modules, and everything seems to work fine now. Since the machine won't even run SILO correctly with only the CPU I removed, it seems clear to me that this is a hardware problem.
Frank
Quoted 84 lines
Frank
ksymoops 2.3.4 on sparc 2.2.20. Options used
-V (default)
-k/proc/ksyms(default)
-l/proc/modules(default)
-o/lib/modules/2.2.20/(default)
-m/boot/System.map-2.2.20(default)Warning: You did not tell me where to find symbol information. I will assume that the log matches the kernel and modules that are running right now and I'll use the default options above for symbol resolution. If the current kernel and/or modules do not match the log, you can get more accurate output by telling me the kernel version and where to find map, modules, ksyms etc. ksymoops -h explains the options.
No modules in ksyms, skipping objects
Warning (read_lsmod): no symbols in lsmod, is/proc/modulesa valid lsmod file?
Warning (compare_maps):ksyms_basesymbolmodule_list_R__ver_module_listnot found in System.map. Ignoringksyms_baseentryUnable to handle kernel NULL pointer dereference<1>tsk->mm->context = 00000059 tsk->mm->pgd = f7bb3000 "@'/ ,. \`@" /_| \__/ |_\ \__U_/chmod(97): Oops
PSR:401000c4PC:f005d51cNPC:f005d520Y:1b000000
Using defaults from ksymoops -t elf32-sparc -a sparc
g0:f007a4f8g1:f03c49b0g2: 00000000 g3:000000a0g4:f004de20g5:f01b8265g6:f798a000g7: 00000014
o0: 00000000 o1: 00000900 o2: 00001000 o3:000000c9o4:f7e25600o5: 00000014 sp:f798bc18o7:f0079c94
l0: 00000000 l1:f7e25600l2: 00000000 l3:f0409b3cl4: 00000008 l5:f01b8265l6:f798a000l7:f0052a84
i0: 00000000 i1:000242abi2:f01f3cd8i3: 00000000 i4: 00000000 i5:0000b700fp:f798bc80i7:f005d974Caller[f005d974]
Caller[f005d9d8]
Caller[f007bb38]
Caller[f0055230]
Caller[f0055638]
Caller[f0055744]
Caller[f0052ab8]
Caller[f00154bc]
Caller[f00c36b4]
Instruction DUMP: 02800017b0102000b0100010<d0062068>80a2001132bffffae0040000d006201880a20019Quoted 3 lines
Quoted 3 lines
PC; f005d51c <find_inode+20/78> <===== O7; f0079c94 <inode_getblk+68/294> I7; f005d974 <iget4+50/a4>Trace;
f005d974<iget4+50/a4>
Trace;f005d9d8<iget+10/20>
Trace;f007bb38<ext2_lookup+78/ac>
Trace;f0055230<real_lookup+6c/100>
Trace;f0055638<lookup_dentry+2ac/398>
Trace;f0055744<__namei+20/68>
Trace;f0052ab8<sys_newlstat+34/c8>
Trace;f00154bc<syscall_is_too_hard+34/40>
Trace;f00c36b4<nlm_lookup_file+18c/248>
Code;f005d510<find_inode+14/78>
0000000000000000 <_PC>:
Code;f005d510<find_inode+14/78>
0: 02 80 00 17 be 5c <_PC+0x5c>f005d56c<find_inode+70/78>
Code;f005d514<find_inode+18/78>
4: b0 10 20 00 clr %i0
Code;f005d518<find_inode+1c/78>
8: b0 10 00 10 mov %l0, %i0
Code;f005d51c<find_inode+20/78> <=====
c: d0 06 20 68 ld [ %i0 +0x68], %o0 <=====
Code;f005d520<find_inode+24/78>
10: 80 a2 00 11 cmp %o0, %l1
Code;f005d524<find_inode+28/78>
14: 32 bf ff fa bne,a fffffffffffffffc <_PC+0xfffffffffffffffc>f005d50c<find_inode+10/78>
Code;f005d528<find_inode+2c/78>
18: e0 04 00 00 ld [ %l0 ], %l0
Code;f005d52c<find_inode+30/78>
1c: d0 06 20 18 ld [ %i0 +0x18], %o0
Code;f005d530<find_inode+34/78>
20: 80 a2 00 19 cmp %o0, %i13 warnings issued. Results may not be reliable.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/