1.3.99: ARP code BROKEN ? (at least in ppp...)

Cristian Gafton (gafton@sorosis.ro)
Fri, 10 May 1996 22:53:30 +0300 (EET DST)


Hi,

kernel 1.3.92, pppd-2.2.0f. I'm making a PPP connection with 'proxyarp
mtu 294 mru 294' options, the connection is okay, but at the close stage
(kill <pppd-pid> from another shell I get OOPSes. It seems that ARP code
is really broken in 1.3.99: (without proxyarp the connection is fine).

Here are the logs:

May 10 21:29:20 sysadm pppd[265]: local IP address 193.226.30.7
May 10 21:29:20 sysadm pppd[265]: remote IP address 193.226.30.14
May 10 21:29:20 sysadm pppd[265]: found interface eth0 for proxy arp

[session okay, now kill -HUP 265 and ...]

May 10 21:31:19 sysadm kernel: general protection: 0000
May 10 21:31:19 sysadm kernel: CPU: 0
May 10 21:31:19 sysadm kernel: EIP: 0010:[arp_rcv+328/876]
May 10 21:31:19 sysadm kernel: EFLAGS: 00010206
May 10 21:31:19 sysadm kernel: eax: 0d000000 ebx: 031ee2c1 ecx: 001e7b40 edx: 73000000
May 10 21:31:19 sysadm kernel: esi: 00019f04 edi: 001e7b40 ebp: 041ee2c1 esp: 001db680
May 10 21:31:19 sysadm kernel: ds: 0018 es: 0018 fs: 002b gs: 0018 ss: 0018
May 10 21:31:19 sysadm kernel: Process swapper (pid: 0, process nr: 0, stackpage=001d9788)
May 10 21:31:19 sysadm kernel: Stack: 00000000 001df4a0 00019f2c 00200608 031ee2c1 00019f04 ffffffc0 00000040
May 10 21:31:19 sysadm kernel: 031ee2c1 041ee2c1 001365fc 00019f2c 001e7b40 001df4a0 00000040 ffffffc0
May 10 21:31:19 sysadm kernel: 00000040 00202cc0 0011547f 001db6e0 001db768 00000000 00009000 0010a31b
May 10 21:31:19 sysadm kernel: Call Trace: [net_bh+236/268] [do_bottom_half+59/96] [handle_bottom_half+11/32] [sys_idle+92/112] [system_call+89/160] [init+0/548] [start_kernel+370/380]
May 10 21:31:19 sysadm kernel: [it_real_fn+0/72]
May 10 21:31:19 sysadm kernel: Code: 39 4a 20 75 0a 8b 42 10 31 d8 85 42 14 74 06 8b 12 85 d2 75
May 10 21:31:19 sysadm kernel: Aiee, killing interrupt handler
May 10 21:31:19 sysadm kernel: kfree of non-kmalloced memory: 001db7c8, next= 00000000, order=0
May 10 21:31:19 sysadm kernel: kfree of non-kmalloced memory: 001db7b8, next= 00000000, order=0
May 10 21:31:19 sysadm kernel: kfree of non-kmalloced memory: 001dbbec, next= 00000000, order=0
May 10 21:31:19 sysadm kernel: idle task may not sleep
May 10 21:31:19 sysadm last message repeated 4 times

[PPP Link going down.......]

May 10 21:32:24 sysadm kernel: general protection: 0000
May 10 21:32:24 sysadm kernel: CPU: 0
May 10 21:32:24 sysadm kernel: EIP: 0010:[arp_req_delete+91/196]
May 10 21:32:24 sysadm kernel: EFLAGS: 00010206
May 10 21:32:24 sysadm kernel: eax: 0e1ee2c1 ebx: 00000001 ecx: 00000000 edx: 73000000
May 10 21:32:24 sysadm kernel: esi: 0096df2c edi: 0096df2c ebp: 00000000 esp: 0096deec
May 10 21:32:24 sysadm kernel: ds: 0018 es: 0018 fs: 002b gs: 002b ss: 0018
May 10 21:32:24 sysadm kernel: Process pppd (pid: 265, process nr: 33, stackpage=0096d000)
May 10 21:32:24 sysadm kernel: Stack: 00000000 00000000 0096df2c 00008953 ffffffff 00000000 0096df2c 00148dd7
May 10 21:32:24 sysadm kernel: 0096df2c 00000000 bffffb34 0078f214 071ee2c1 bffffb00 0096df2c 00000000
May 10 21:32:24 sysadm kernel: 00000002 0e1ee2c1 00000000 00000000 00000000 00000000 00000000 00000000
May 10 21:32:24 sysadm kernel: Call Trace: [arp_ioctl+459/820] [inet_ioctl+699/804] [sock_ioctl+33/40] [sys_ioctl+255/272] [system_call+89/160]
May 10 21:32:24 sysadm kernel: Code: 39 42 10 75 34 85 c9 74 05 39 4a 20 75 2b f6 46 20 20 74 09
May 10 21:32:24 sysadm kernel: general protection: 0000
May 10 21:32:24 sysadm kernel: CPU: 0
May 10 21:32:25 sysadm kernel: EIP: 0010:[arp_device_event+52/120]
May 10 21:32:25 sysadm kernel: EFLAGS: 00010206
May 10 21:32:25 sysadm kernel: eax: 00000040 ebx: 00000001 ecx: 000002f8 edx: 73000000
May 10 21:32:25 sysadm kernel: esi: 00000010 edi: 00c4d0f4 ebp: 00000000 esp: 0096ddb8
May 10 21:32:25 sysadm kernel: ds: 0018 es: 0018 fs: 002b gs: 002b ss: 0018
May 10 21:32:25 sysadm kernel: Process pppd (pid: 265, process nr: 33, stackpage=0096d000)
May 10 21:32:25 sysadm kernel: Stack: 001df4b4 00000000 00c4d0f4 00136194 001df4b4 00000002 00c4d0f4 00c4d024
May 10 21:32:25 sysadm kernel: 00662000 00c4d0f4 00194fc2 00c4d0f4 00c4d024 00000001 00000000 001950cd
May 10 21:32:25 sysadm kernel: 00c4d024 00662000 001950e0 00662000 00000000 0017ca40 00662000 00926740
May 10 21:32:25 sysadm kernel: Call Trace: [dev_close+56/184] [ppp_release+78/232] [ppp_tty_close_local+113/120] [ppp_tty_close+12/16] [release_dev+912/1184] [tty_release+10/16] [close_fp+94/132]
May 10 21:32:25 sysadm kernel: [do_exit+250/464] [die_if_kernel+694/704] [<02000000>] [<01800000>] [do_general_protection+40/84] [do_general_protection+0/84] [error_code+75/96] [arp_req_delete+91/196]
May 10 21:32:25 sysadm kernel: [arp_ioctl+459/820] [inet_ioctl+699/804] [sock_ioctl+33/40] [sys_ioctl+255/272] [system_call+89/160]
May 10 21:32:25 sysadm kernel: Code: 39 7a 20 75 0f 8b 02 89 03 52 e8 fd f9 ff ff 83 c4 04 eb 02
May 10 21:32:25 sysadm kernel: Attempt to open closing tty cua1.
May 10 21:32:26 sysadm kernel: Ack!!!! This should never happen!!
May 10 21:32:26 sysadm kernel: Attempt to open closing tty cua1.
May 10 21:32:26 sysadm kernel: Ack!!!! This should never happen!!
May 10 21:32:27 sysadm kernel: Attempt to open closing tty cua1.
May 10 21:32:27 sysadm kernel: Ack!!!! This should never happen!!
May 10 21:32:28 sysadm kernel: Attempt to open closing tty cua1.
May 10 21:32:28 sysadm kernel: Ack!!!! This should never happen!!
May 10 21:32:30 sysadm kernel: Attempt to open closing tty cua1.
May 10 21:32:30 sysadm kernel: Ack!!!! This should never happen!!
May 10 21:32:31 sysadm kernel: Attempt to open closing tty cua1.
May 10 21:32:31 sysadm kernel: Ack!!!! This should never happen!!
May 10 21:32:32 sysadm kernel: Attempt to open closing tty cua1.
May 10 21:32:32 sysadm kernel: Ack!!!! This should never happen!!
May 10 21:32:32 sysadm uugetty[296]: open failed on "/dev/ttyS1": Invalid argument
May 10 21:32:32 sysadm kernel: Attempt to open closing tty cua1.
May 10 21:32:32 sysadm kernel: Ack!!!! This should never happen!!
May 10 21:32:33 sysadm uugetty[297]: open failed on "/dev/ttyS1": Invalid argument
May 10 21:32:33 sysadm kernel: Attempt to open closing tty cua1.
May 10 21:32:33 sysadm kernel: Ack!!!! This should never happen!!
May 10 21:32:33 sysadm uugetty[298]: open failed on "/dev/ttyS1": Invalid argument
May 10 21:32:33 sysadm kernel: Attempt to open closing tty cua1.
May 10 21:32:33 sysadm kernel: Ack!!!! This should never happen!!
May 10 21:32:33 sysadm uugetty[299]: open failed on "/dev/ttyS1": Invalid argument
May 10 21:32:33 sysadm init: Id "s1" respawning too fast: disabled for 5 minutes
May 10 21:33:55 sysadm init: Switching to runlevel: 6

[ And shutdown....]

-------------Another session------------------------------------

May 10 22:07:58 sysadm pppd[317]: local IP address 193.226.30.7
May 10 22:07:58 sysadm pppd[317]: remote IP address 193.226.30.14
May 10 22:07:58 sysadm pppd[317]: found interface eth0 for proxy arp

[ kill 317 and...]

May 10 22:08:23 sysadm kernel: general protection: 0000
May 10 22:08:23 sysadm kernel: CPU: 0
May 10 22:08:23 sysadm kernel: EIP: 0010:[arp_req_delete+91/196]
May 10 22:08:23 sysadm kernel: EFLAGS: 00010206
May 10 22:08:23 sysadm kernel: eax: 0e1ee2c1 ebx: 00000001 ecx: 00000000 edx: 73000000
May 10 22:08:23 sysadm kernel: esi: 0068af2c edi: 0068af2c ebp: 00000000 esp: 0068aeec
May 10 22:08:23 sysadm kernel: ds: 0018 es: 0018 fs: 002b gs: 002b ss: 0018
May 10 22:08:23 sysadm kernel: Process pppd (pid: 317, process nr: 33, stackpage=0068a000)
May 10 22:08:23 sysadm kernel: Stack: 00000000 00000000 0068af2c 00008953 ffffffff 00000000 0068af2c 00148dd7
May 10 22:08:23 sysadm kernel: 0068af2c 00000000 bffffb34 006ec214 071ee2c1 bffffb00 0068af2c 00000000
May 10 22:08:23 sysadm kernel: 00000002 0e1ee2c1 00000000 00000000 00000000 00000000 00000000 00000000
May 10 22:08:23 sysadm kernel: Call Trace: [arp_ioctl+459/820] [inet_ioctl+699/804] [sock_ioctl+33/40] [sys_ioctl+255/272] [system_call+89/160]
May 10 22:08:23 sysadm pppd[317]: Terminating on signal 2.
May 10 22:08:23 sysadm kernel: Code: 39 42 10 75 34 85 c9 74 05 39 4a 20 75 2b f6 46 20 20 74 09
May 10 22:08:23 sysadm kernel: general protection: 0000
May 10 22:08:23 sysadm kernel: CPU: 0
May 10 22:08:23 sysadm kernel: EIP: 0010:[arp_device_event+52/120]
May 10 22:08:23 sysadm kernel: EFLAGS: 00010206
May 10 22:08:23 sysadm kernel: eax: 00000040 ebx: 00000001 ecx: 000002f8 edx: 73000000
May 10 22:08:23 sysadm kernel: esi: 00000010 edi: 009868e4 ebp: 00000000 esp: 0068adb8
May 10 22:08:23 sysadm kernel: ds: 0018 es: 0018 fs: 002b gs: 002b ss: 0018
May 10 22:08:23 sysadm kernel: Process pppd (pid: 317, process nr: 33, stackpage=0068a000)
May 10 22:08:23 sysadm kernel: Stack: 001df4b4 00000000 009868e4 00136194 001df4b4 00000002 009868e4 00986814
May 10 22:08:23 sysadm kernel: 006f5000 009868e4 00194fc2 009868e4 00986814 00000001 00000000 001950cd
May 10 22:08:23 sysadm kernel: 00986814 006f5000 001950e0 006f5000 00000000 0017ca40 006f5000 00925c80
May 10 22:08:23 sysadm kernel: Call Trace: [dev_close+56/184] [ppp_release+78/232] [ppp_tty_close_local+113/120] [ppp_tty_close+12/16] [release_dev+912/1184] [tty_release+10/16] [close_fp+94/132]
May 10 22:08:23 sysadm kernel: [do_exit+250/464] [die_if_kernel+694/704] [<02000000>] [<01800000>] [do_general_protection+40/84] [do_general_protection+0/84] [error_code+75/96] [arp_req_delete+91/196]
May 10 22:08:23 sysadm kernel: [arp_ioctl+459/820] [inet_ioctl+699/804] [sock_ioctl+33/40] [sys_ioctl+255/272] [system_call+89/160]
May 10 22:08:23 sysadm kernel: Code: 39 7a 20 75 0f 8b 02 89 03 52 e8 fd f9 ff ff 83 c4 04 eb 02
May 10 22:08:52 sysadm kernel: Attempt to open closing tty cua1.
May 10 22:08:52 sysadm kernel: Ack!!!! This should never happen!!
May 10 22:08:52 sysadm kernel: Attempt to open closing tty cua1.
May 10 22:08:52 sysadm kernel: Ack!!!! This should never happen!!
May 10 22:08:52 sysadm uugetty[326]: open failed on "/dev/ttyS1": Invalid argument
May 10 22:08:52 sysadm kernel: Attempt to open closing tty cua1.
May 10 22:08:52 sysadm kernel: Ack!!!! This should never happen!!
May 10 22:08:52 sysadm uugetty[327]: open failed on "/dev/ttyS1": Invalid argument
May 10 22:08:53 sysadm kernel: Attempt to open closing tty cua1.
May 10 22:08:53 sysadm kernel: Ack!!!! This should never happen!!
May 10 22:08:53 sysadm uugetty[328]: open failed on "/dev/ttyS1": Invalid argument
May 10 22:08:53 sysadm kernel: Attempt to open closing tty cua1.
May 10 22:08:53 sysadm kernel: Ack!!!! This should never happen!!
May 10 22:08:53 sysadm uugetty[329]: open failed on "/dev/ttyS1": Invalid argument
May 10 22:08:53 sysadm kernel: Attempt to open closing tty cua1.
May 10 22:08:53 sysadm kernel: Ack!!!! This should never happen!!
May 10 22:08:53 sysadm uugetty[330]: open failed on "/dev/ttyS1": Invalid argument
May 10 22:08:54 sysadm kernel: Attempt to open closing tty cua1.
May 10 22:08:54 sysadm kernel: Ack!!!! This should never happen!!
May 10 22:08:54 sysadm uugetty[331]: open failed on "/dev/ttyS1": Invalid argument
May 10 22:08:54 sysadm kernel: Attempt to open closing tty cua1.
May 10 22:08:54 sysadm kernel: Ack!!!! This should never happen!!
May 10 22:08:54 sysadm uugetty[332]: open failed on "/dev/ttyS1": Invalid argument
May 10 22:08:54 sysadm kernel: Attempt to open closing tty cua1.
May 10 22:08:54 sysadm kernel: Ack!!!! This should never happen!!
May 10 22:08:54 sysadm uugetty[333]: open failed on "/dev/ttyS1": Invalid argument
May 10 22:08:55 sysadm kernel: Attempt to open closing tty cua1.
May 10 22:08:55 sysadm kernel: Ack!!!! This should never happen!!
May 10 22:08:55 sysadm uugetty[334]: open failed on "/dev/ttyS1": Invalid argument
May 10 22:08:55 sysadm init: Id "s1" respawning too fast: disabled for 5 minutes
May 10 22:09:35 sysadm kernel: Attempt to open closing tty cua1.
May 10 22:09:35 sysadm kernel: Ack!!!! This should never happen!!
May 10 22:09:35 sysadm pppd[340]: pppd 2.2.0 started by root, uid 0
May 10 22:09:35 sysadm pppd[340]: Failed to open /dev/cua1: Invalid argument
May 10 22:09:35 sysadm pppd[340]: Exit.

Hope this helps,

Cristian Gafton

Cristian Gafton, SysAdm gafton@cccis.sfos.ro
-------------------------------------------------------------------
Computers & Communications Center str. Moara de Foc nr. 35
Phone: 40-32-252936, 252938 PO-BOX 2-549
Fax: 40-32-252933 IASI 6600, ROMANIA
===================================================================
Good code is hard to write, so it must be hard to understand.