NULL derefrence in 2.1.89 + new 2.0.33 bug

Mike Perry (mikepery@mikepery.linuxos.org)
Wed, 11 Mar 1998 22:22:34 -0600 (CST)


Not a good day, not a good day at all. My system sure is taking a
beating..
Lets start with the reproducable bug first:

I get an accursed NULL pointer defrefrence in 2.1.89 under the
following conditions:
Network sucks, using SLIP over modem, and bind 4.9.6 from RedHat 5.0.

named seems to cause a NULL derefrence in the kernel. I'm suspecting it
has something to do with SLIP/CSLIP code, because when I switched to PPP,
I'm fine. Now this could also be because my ISP is having problems with
SLIP on their end (many dropped packets), and the gerneral poor state of
the network could be causing problems, and therefore, my switch to PPP may
have only fixed the problem because the network connection now runs
smoothly.

I tried killing named, but the kernel still seems to crash on any network
event now.

Here's a quick rundown of of my error message (since Kernel DIED, I had
no gpm, and I'm far too lazy to write this whole thing down, then type it
all back. If you need more, please get back, and I will type more)

"
Unable to handle kernel NULL pointer derefrence at virtual adress 0000000a
current->tss.cr3=03b04000, %cr3 = 03b04000
*pde = 0
Oops = 0
cpu = 0
EIP: 0010 [<c48282fb]>
E Flags: 00010286

<Register status follows, respond if needed>

Process named (pid 193, processN:14 stackpage c3at5000)

<More follows>
"

Now for the FUN stuff. Out of nowhere, 2.0.33 JUST flipped out on me while
writing this message. (Maybe it saw all the attention 2.1.89 was
getting :) But thankfully it is still ticking. I have no explaination for
this... I am using PPP now, and this is a supposed stable kernel. The only
thing I can think of is maybe the new modutils (2.1.85 + RH's patches) are
causing problems in 2.0.33 now...

Check this out (from /var/log/messages):

Mar 11 22:08:38 mikepery pppd[404]: pppd 2.3.3 started by root, uid 0
Mar 11 22:09:03 mikepery pppd[404]: Serial connection established.
Mar 11 22:09:04 mikepery pppd[404]: Using interface ppp0
Mar 11 22:09:04 mikepery pppd[404]: Connect: ppp0 <--> /dev/cua3
Mar 11 22:09:06 mikepery pppd[404]: local IP address 204.95.35.57
Mar 11 22:09:06 mikepery pppd[404]: remote IP address 205.164.53.106
Mar 11 22:09:33 mikepery kernel: Unable to handle kernel paging request at virtual address c480d4b0
Mar 11 22:09:33 mikepery kernel: current->tss.cr3 = 00101000,
Mar 11 22:09:33 mikepery kernel: *pde = 00001067
Mar 11 22:09:33 mikepery kernel: *pte = 00000000
Mar 11 22:09:33 mikepery kernel: Oops: 0000
Mar 11 22:09:33 mikepery kernel: CPU: 0
Mar 11 22:09:33 mikepery kernel: EIP: 0010:[<0480d4b0>]
Mar 11 22:09:33 mikepery kernel: EFLAGS: 00010246
Mar 11 22:09:33 mikepery kernel: eax: 00c584f8 ebx: 00000000 ecx: 00c584f8 edx: 0480d4b0
Mar 11 22:09:33 mikepery kernel: esi: 00c584f8 edi: 00972528 ebp: 0097249c esp: 00189024
Mar 11 22:09:33 mikepery kernel: ds: 0018 es: 0018 fs: 002b gs: 0018 ss: 0018
Mar 11 22:09:33 mikepery kernel: Process swapper (pid: 0, process nr: 0, stackpage=00187264)
Mar 11 22:09:33 mikepery kernel: Stack: 0013801b 00c584f8 0097249c 00c584f8 00c58038 00bee018 0097249c 00000000
Mar 11 22:09:33 mikepery kernel: 00000202 00138066 00c584f8 0097249c 00000000 00140709 00c584f8 0097249c
Mar 11 22:09:33 mikepery kernel: 00000000 00c584f8 00bee018 00000015 00c5804c 00000014 00000029 001465e7
Mar 11 22:09:33 mikepery kernel: Call Trace: [<0013801b>] [<00138066>] [<00140709>] [<001465e7>] [<00144e84>] [<04810001>] [<0014e79b>]
Mar 11 22:09:33 mikepery kernel: [<00145ea3>] [<0013df04>] [<04810a96>] [<0013823c>] [<00117b33>] [<0010a5a3>] [<00109668>] [<0010a611>]
Mar 11 22:09:33 mikepery kernel: [<00109360>] [<001091ed>] [<001171ec>] [<00111550>]
Mar 11 22:09:33 mikepery kernel: Code: <1>Unable to handle kernel paging request at virtual address c480d4b0
Mar 11 22:09:33 mikepery kernel: current->tss.cr3 = 00101000,
Mar 11 22:09:33 mikepery kernel: *pde = 00001067
Mar 11 22:09:33 mikepery kernel: *pte = 00000000
Mar 11 22:09:33 mikepery kernel: Oops: 0000
Mar 11 22:09:33 mikepery kernel: CPU: 0
Mar 11 22:09:33 mikepery kernel: EIP: 0010:[<0010ab0c>]
Mar 11 22:09:33 mikepery kernel: EFLAGS: 00010216
Mar 11 22:09:33 mikepery kernel: eax: 00000010 ebx: 00000000 ecx: 0480d4b0 edx: 00529018
Mar 11 22:09:33 mikepery kernel: esi: 00000000 edi: 0018a000 ebp: 00188fe8 esp: 00188f8c
Mar 11 22:09:33 mikepery kernel: ds: 0018 es: 0018 fs: 0010 gs: 0018 ss: 0018
Mar 11 22:09:33 mikepery kernel: Process swapper (pid: 0, process nr: 0, stackpage=00187264)
Mar 11 22:09:33 mikepery kernel: Stack: 0000002b 00000000 0000d000 00188fe8 00189a18 04800000 05000000 04800000
Mar 11 22:09:33 mikepery kernel: 00180018 0011120e 00179bf9 00188fe8 00000000 00110f40 00c584f8 00972528
Mar 11 22:09:33 mikepery kernel: 0097249c ffffffff 001899b4 00000002 0010a774 00188fe8 00000000 00000000
Mar 11 22:09:33 mikepery kernel: Call Trace: [<04800000>] [<05000000>] [<04800000>] [<0011120e>] [<00110f40>] [<0010a774>] [<0480d4b0>]
Mar 11 22:09:33 mikepery kernel: Code: 64 8a 04 0e 0f a1 88 c2 81 e2 ff 00 00 00 89 54 24 10 52 68
Mar 11 22:09:33 mikepery kernel: Aiee, killing interrupt handler
Mar 11 22:09:33 mikepery kernel: kfree of non-kmalloced memory: 001892ac, next= 00c584f8, order=24
Mar 11 22:09:33 mikepery kernel: kfree of non-kmalloced memory: 0018929c, next= 00c584f8, order=24
Mar 11 22:09:33 mikepery kerneld: error: exit: Identifier removed
Mar 11 22:09:33 mikepery kernel: kfree of non-kmalloced memory: 001897b0, next= 00c584f8, order=24
Mar 11 22:09:33 mikepery kernel: idle task may not sleep
Mar 11 22:09:33 mikepery last message repeated 4 times
Mar 11 22:11:07 mikepery sendmail[341]: WAA00341: lost input channel from root@homebase.citilink.com [209.98.8.3]
Mar 11 22:11:07 mikepery sendmail[341]: WAA00341: from=<lKIabdl31@cecil33.met228.com>, size=2214, class=0, pri=0, nrcpts=0, proto=ESMTP, relay=root@homebase.citilink.com [209.98.8.3]

I appologize if this isn't the proper format for submitting bug reports
and such, and I also appologize for not trying to find the problem in the
kernel code myself. But alas, I am but a poor lowly high school
C programmer who has very little time and energy to sift through anything
I'm not familiar with, let alone a kernel.

Lastly, how do I subscirbe to this list, now that I plan on running
2.1.x's, I hear it is recommended to subscribe. Can I just send a
"Subscribe" message here? or what?

---
Mike Perry
Maintainer of www.linuxos.org and subpages.

"Make your Hardware work harder: Windows NT" -Microsoft ad for Windows NT

---

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu