1.3.68 is unstable with bzImage+initrd-1.3.66c patch

Matthias Sattler (m_sattle@informatik.uni-kl.de)
Mon, 26 Feb 1996 18:54:31 +0100 (MET)


Hiho

I've encountered a strange phenomenon. When I use the rootramdisk patches
(bzImage+initrd-1.3.66c) with the 1.3.68 kernel my machine is significantly
less stable. The errors occur in areas that were not changed by the patch?!
Here in one example that I can easily reproduce:
nohup xpilots -noQuit &
xpilot
Now play a bit (a few seconds seem enough) and quit xpilot. As a result I get
the following Oops that I do not get with plain 1.3.68.

Unable to handle kernel paging request at virtual address c10110ac
current->tss.cr3 = 00ab7000,
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<0015772b>]
EFLAGS: 00010286
eax: e6e6ffff ebx: 00313d08 ecx: 0000e6e6 edx: e6e61919
esi: 00310024 edi: 010110ac ebp: 00313d44 esp: 00f89f00
ds: 0018 es: 0018 fs: 002b gs: 002b ss: 0018
Process xpilots (pid: 2035, process nr: 39, stackpage=00f89000)
Stack: 00313d08 00000024 00000000 001a28bc 00313cf4 00313d44 00000000 00000024
00147757 00313d44 001ab0bc 00000000 010110ac 00000024 010110ac 00000000
001a28bc 00000000 001a2e40 00313d44 00000008 001a28bc 00313d44 bfffd6e0
Call Trace: [<00147757>] [<0013fb8c>] [<00117bbe>] [<0010a71d>]
Code: 83 37 01 10 00 89 4c 24 1c 89 c2 83 c4 0c 66 85 d2 74 32 ff
Aiee, killing interrupt handler

ksymoops says:
Using /usr/src/linux/System.map' to map addresses to symbols.

>>EIP: 15772b <icmp_rcv+3b/120>
Trace: 147757 <ip_rcv+4f7/680>
Trace: 13fb8c <net_bh+12c/170>
Trace: 117bbe <do_bottom_half+3e/80>
Trace: 10a71d <handle_bottom_half+d/20>

Code: 15772b <icmp_rcv+3b/120> xorl $0x1,(%edi)
Code: 15772e <icmp_rcv+3e/120> adcb %al,(%eax)
Code: 157730 <icmp_rcv+40/120> movl %ecx,0x1c(%esp,1)
Code: 157734 <icmp_rcv+44/120> movl %eax,%edx
Code: 157736 <icmp_rcv+46/120> addl $0xc,%esp
Code: 157739 <icmp_rcv+49/120> testw %dx,%dx
Code: 15773c <icmp_rcv+4c/120> je 157770 <icmp_rcv+80/120>
Code: 15773e <icmp_rcv+4e/120> incl (%eax)
Code: 157740 <icmp_rcv+50/120> nop
Code: 157741 <icmp_rcv+51/120> nop

My setup is:
-1.3.68 kernel for 486
-all modules (even the rootdevice are loaded by kerneld (modules-1.3.57))
/linuxrc looks like:
#!/bin/sh
PATH=/bin:/sbin
export PATH
echo "Starting bootstrap kerneld."
/sbin/kerneld &
/bin/sleep 2
with a handpatched modules.dep to find the scsi-modules.
-the 'bootstrap kerneld' is killed early at system bootup and the normal
system kerneld is started.
-/initrd is still mounted (by the way... how do I get rid of it after bootup?
unmountig works, but the memory is not freed).

Matthias

O .---------------. .___________. O
/\/ . `. m_sattle@ ,' / \ +FAX . \/\
__..--- ' /\/ | `._________,' | (___)/ * * \(___) \/ \ ` ---..__
""---__ \/`. | informatik. | / | \ +49 (0)6333 ,'\/ __---""
`.. / | .uni-kl.de | | `...' | -65079 \ ...'
`---------------' `._____.'

--> Don't take life too seriously -- you'll never get out of it alive. <--