Oops in 2.0.21/2.0.20

Uwe Ohse (uwe@tirka.gun.de)
Tue, 1 Oct 1996 01:43:18 +0200 (MET DST)


i got the following oops in 2.0.20 and 2.0.21:

Unable to handle kernel paging request at virtual address 4010f000
current->tss.cr3 = 01184000, %cr3 = 01184000
*pde = 00cf6067
*pte = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<0014ca41>]
EFLAGS: 00010216
eax: 0037f94c ebx: 00000400 ecx: 00000100 edx: 00dd6000
esi: 4010f000 edi: 00dd6000 ebp: 00000400 esp: 017a0c08
ds: 0018 es: 0018 fs: 002b gs: 002b ss: 0018
Process TOM (pid: 10371, process nr: 54, stackpage=017a0000)
Stack: 00001000 4010f000 4010f000 0007d000 00000000 00000000 001c6580 00000000
00000000 000001e0 00078000 00000000 0037f94c ffffffe4 0000010c 010881b4
010880f8 0000000c 010881b0 010880f8 010880f8 00000000 00000000 017a0d4c
Call Trace: [<0011fcda>] [<0011fcee>] [<00129aa0>] [<0012ebb0>] [<0012ece7>] [<0012ebb0>] [<0012f6c0>]
[<001789ac>] [<001193d1>] [<0010fb24>] [<0010a30b>] [<0010a552>]
Code: 64 f3 a5 83 e3 03 89 d9 64 f3 a4 55 8b 54 24 34 8b 52 24 03

ksymoops told:
>>EIP: 14ca41 <ext2_file_write+221/45c>
Trace: 11fcda <do_truncate+46/78>
Trace: 11fcee <do_truncate+5a/78>
Trace: 129aa0 <getname+b4/140>
Trace: 12ebb0 <load_elf_library+2b0/2c8>
Trace: 12ece7 <writenote+73/c8>
Trace: 12ebb0 <load_elf_library+2b0/2c8>
Trace: 12f6c0 <elf_core_dump+984/a50>
Trace: 1789ac <check_sense+10/bc>
Trace: 1193d1 <do_mmap+2cd/314>
Trace: 10fb24 <si_meminfo+74/78>
Trace: 10a30b <do_signal+1ef/284>
Trace: 10a552 <signal_return+12/40>

Code: 14ca41 <ext2_file_write+221/45c> repz movsl %ds:(%esi),%es:(%edi)
Code: 14ca44 <ext2_file_write+224/45c> andl $0x3,%ebx
Code: 14ca47 <ext2_file_write+227/45c> movl %ebx,%ecx
Code: 14ca49 <ext2_file_write+229/45c> repz movsb %ds:(%esi),%es:(%edi)
Code: 14ca4c <ext2_file_write+22c/45c> pushl %ebp
Code: 14ca4d <ext2_file_write+22d/45c> movl 0x34(%esp,1),%edx
Code: 14ca51 <ext2_file_write+231/45c> movl 0x24(%edx),%edx
Code: 14ca54 <ext2_file_write+234/45c> addl (%eax),%eax
Code: 14ca56 <ext2_file_write+236/45c> nop
Code: 14ca57 <ext2_file_write+237/45c> nop
Code: 14ca58 <ext2_file_write+238/45c> nop

This happened while a program dumped core.
open("infile.txt", O_RDONLY) = 7
open("/var/tmp//tom.4643/user/infile.txt", O_RDWR|O_CREAT|O_TRUNC, 0644) = 8
fstat(7, {st_dev=makedev(8, 34), st_ino=30208, st_mode=S_IFREG|0644, st_nlink=1, st_uid=410, st_gid=5, st_blksize=4096, st_blocks=2, st_size=315, st_atime=96/09/30-21:37:33, st_mtime=96/09/30-21:36:59, st_ctime=96/09/30-21:36:59}) = 0
mmap(0, 315, PROT_READ, MAP_SHARED, 7, 0) = 0x40122000
close(7) = 0
lseek(8, 314, SEEK_SET) = 314
write(8, "\0", 1) = 1
mmap(0, 315, PROT_WRITE, MAP_SHARED, 8, 0) = 0x40123000
--- SIGSEGV (Segmentation Fehler) ---
+++ killed by SIGSEGV +++
(that was because of a buggy memcpy)

Uwe