2.2.13 + ppp + 4 serial ports => [OOPS]

Andreas Bombe (andreas.bombe@munich.netsurf.de)
Mon, 13 Dec 1999 01:20:52 +0100


First: I am running standard Kernel 2.2.13 with user space pppd version
2.3.10. The modem on which ppp is used on is always connected to
ttyS1, a serial console runs on ttyS0. No modules are used. Hardware
is AMD K6/233, 96MB RAM, SCSI.

I recently bought an ISA serial port card with 2 16C550 on it
(recognized as 16550A by setserial) with configurable I/O and IRQ.
First I had them running on 3e8/4 and 2e8/3. Everything was fine, but
I couldn't use the mainboard serial ports and the addon ports at the
same time.

Changing the IRQs to 15 (ttyS2) and 9 (ttyS3)[0] however made ppp on
ttyS1 oopsing at random times when something was transmitted. Ports 2
and 3 weren't even in use at these times. The oopses were of varying
nastiness, sometimes they just killed pppd, sometimes a waterfall of
oopses came down the screen until it stopped killing an interrupt
handler[1].

Two of the just-pppd-killed oopses are included below. Apparantly the
ppp code in kernel jumped into somewhere after end of code. Now I'm
running 2.3.31 and was online for about an hour and had no problems at
all.

[0] These interrupts were properly masked out of PCI usage in BIOS.

[1] Did anyone ever have an oops which caused vesafb to scroll
backwards a few lines in second intervals? Funny.

ksymoops 0.7c on i586 2.2.13. Options used
-V (default)
-k /proc/ksyms (default)
-l /proc/modules (default)
-o /lib/modules/2.2.13/ (default)
-m /boot/System.map-2.2.13 (specified)

No modules in ksyms, skipping objects
Warning (read_lsmod): no symbols in lsmod, is /proc/modules a valid lsmod file?
Dec 9 23:38:25 storm kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000001
Dec 9 23:38:25 storm kernel: current->tss.cr3 = 00ac0000, %cr3 = 00ac0000
Dec 9 23:38:25 storm kernel: *pde = 00000000
Dec 9 23:38:25 storm kernel: Oops: 0000
Dec 9 23:38:25 storm kernel: CPU: 0
Dec 9 23:38:25 storm kernel: EIP: 0010:[<c589f000>]
Using defaults from ksymoops -t elf32-i386 -a i386
Dec 9 23:38:25 storm kernel: EFLAGS: 00010246
Dec 9 23:38:25 storm kernel: eax: 00000001 ebx: c1018b60 ecx: c2760000 edx: 000002f9
Dec 9 23:38:25 storm kernel: esi: c1018b60 edi: c589f000 ebp: c019bd17 esp: c07a9f14
Dec 9 23:38:25 storm kernel: ds: 0018 es: 0018 ss: 0018
Dec 9 23:38:25 storm kernel: Process pppd (pid: 3668, process nr: 73, stackpage=c07a9000)
Dec 9 23:38:25 storm kernel: Stack: c019df8b c589f000 c1018b60 c589f000 00000246 00000000 c03afd60 0000000c
Dec 9 23:38:25 storm kernel: c019e29f c589f000 c1018b60 c1018b60 0000000c c589f000 c019b61f c589f000
Dec 9 23:38:25 storm kernel: c1018b60 00000000 0000000c 08063fd0 00000000 c01878d1 c2760000 c4221d20
Dec 9 23:38:25 storm kernel: Call Trace: [<c019df8b>] [<c019e29f>] [<c019b61f>] [<c01878d1>] [<c0187724>] [<c019b51c>] [<c0123387>]
Dec 9 23:38:25 storm kernel: [<c0107a6c>]
Dec 9 23:38:25 storm kernel: Code: 02 50 00 00 00 00 00 00 01 00 00 00 00 00 00 00 07 00 00 0f

>>EIP; c589f000 <END_OF_CODE+5641d58/????> <=====
Trace; c019df8b <ppp_send_frame+267/29c>
Trace; c019e29f <ppp_send_ctrl+af/e4>
Trace; c019b61f <ppp_tty_write+103/110>
Trace; c01878d1 <tty_write+1ad/224>
Trace; c0187724 <tty_write+0/224>
Trace; c019b51c <ppp_tty_write+0/110>
Trace; c0123387 <sys_write+c3/ec>
Trace; c0107a6c <system_call+34/38>
Code; c589f000 <END_OF_CODE+5641d58/????>
00000000 <_EIP>:
Code; c589f000 <END_OF_CODE+5641d58/????> <=====
0: 02 50 00 addb 0x0(%eax),%dl <=====
Code; c589f003 <END_OF_CODE+5641d5b/????>
3: 00 00 addb %al,(%eax)
Code; c589f005 <END_OF_CODE+5641d5d/????>
5: 00 00 addb %al,(%eax)
Code; c589f007 <END_OF_CODE+5641d5f/????>
7: 00 01 addb %al,(%ecx)
Code; c589f009 <END_OF_CODE+5641d61/????>
9: 00 00 addb %al,(%eax)
Code; c589f00b <END_OF_CODE+5641d63/????>
b: 00 00 addb %al,(%eax)
Code; c589f00d <END_OF_CODE+5641d65/????>
d: 00 00 addb %al,(%eax)
Code; c589f00f <END_OF_CODE+5641d67/????>
f: 00 07 addb %al,(%edi)
Code; c589f011 <END_OF_CODE+5641d69/????>
11: 00 00 addb %al,(%eax)
Code; c589f013 <END_OF_CODE+5641d6b/????>
13: 0f 00 00 sldt (%eax)

Dec 11 16:18:13 storm kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000001
Dec 11 16:18:13 storm kernel: current->tss.cr3 = 00bcc000, %cr3 = 00bcc000
Dec 11 16:18:13 storm kernel: *pde = 00000000
Dec 11 16:18:13 storm kernel: Oops: 0000
Dec 11 16:18:13 storm kernel: CPU: 0
Dec 11 16:18:13 storm kernel: EIP: 0010:[<c04ffc00>]
Dec 11 16:18:13 storm kernel: EFLAGS: 00010246
Dec 11 16:18:13 storm kernel: eax: 00000001 ebx: c1996160 ecx: c14ff000 edx: 000002f9
Dec 11 16:18:13 storm kernel: esi: c1996160 edi: c04ffc00 ebp: c019bd17 esp: c0bcbf14
Dec 11 16:18:13 storm kernel: ds: 0018 es: 0018 ss: 0018
Dec 11 16:18:13 storm kernel: Process pppd (pid: 288, process nr: 37, stackpage=c0bcb000)
Dec 11 16:18:13 storm kernel: Stack: c019df8b c04ffc00 c1996160 c04ffc00 00000246 00000000 c03758a0 00000018
Dec 11 16:18:13 storm kernel: c019e29f c04ffc00 c1996160 c1996160 00000018 c04ffc00 c019b61f c04ffc00
Dec 11 16:18:13 storm kernel: c1996160 00000000 00000018 0807a8c0 00000000 c01878d1 c14ff000 c1605840
Dec 11 16:18:13 storm kernel: Call Trace: [<c019df8b>] [<c019e29f>] [<c019b61f>] [<c01878d1>] [<c0187724>] [<c019b51c>] [<c0123387>]
Dec 11 16:18:13 storm kernel: [<c0107a6c>]
Dec 11 16:18:13 storm kernel: Code: 02 50 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00

>>EIP; c04ffc00 <END_OF_CODE+2a2958/????> <=====
Trace; c019df8b <ppp_send_frame+267/29c>
Trace; c019e29f <ppp_send_ctrl+af/e4>
Trace; c019b61f <ppp_tty_write+103/110>
Trace; c01878d1 <tty_write+1ad/224>
Trace; c0187724 <tty_write+0/224>
Trace; c019b51c <ppp_tty_write+0/110>
Trace; c0123387 <sys_write+c3/ec>
Trace; c0107a6c <system_call+34/38>
Code; c04ffc00 <END_OF_CODE+2a2958/????>
00000000 <_EIP>:
Code; c04ffc00 <END_OF_CODE+2a2958/????> <=====
0: 02 50 00 addb 0x0(%eax),%dl <=====
Code; c04ffc03 <END_OF_CODE+2a295b/????>
3: 00 00 addb %al,(%eax)
Code; c04ffc05 <END_OF_CODE+2a295d/????>
5: 00 00 addb %al,(%eax)
Code; c04ffc07 <END_OF_CODE+2a295f/????>
7: 00 01 addb %al,(%ecx)

1 warning issued. Results may not be reliable.

-- 
     Andreas E. Bombe <andreas.bombe@munich.netsurf.de>
http://home.pages.de/~andreas.bombe/      DSA key 0x04880A44

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/