Re: And in today's snapshot...

David Woodhouse (D.W.Woodhouse@nortel.co.uk)
Fri, 19 Sep 1997 15:51:44 +0100


davem@jenolan.rutgers.edu said:
>

> Date: Thu, 18 Sep 1997 10:47:17 +0100
From: David Woodhouse <D.W.Woodhouse@nortel.co.uk>

> What's the correct way to submit patches to the CVS tree?

> Send them to me, CC: linux-kernel and also CC: netdev@roxanne.nuclecu.
> unam.mx if the fix is networking related.

On second thoughts, given that my first impression of the CVS snapshot was the oops caused by receiving an IPIP packet, followed by

socket(PF_INET, SOCK_PACKET, 0x300 /* IPPROTO_??? */) = -94 ESOCKTNOSUPPORT

when I started tcpdump in an attempt to debug the IPIP stuff, I think I'll leave it until term starts in three weeks time and I can spend as much time as I like on it without people expecting me to be productive.

In the meantime, you can consider the above to be a bug report.
Also, tunnel.c ought to have MOD_INC_USE_COUNT and MOD_DEC_USE_COUNT somewhere, to stop you removing the module while the device is active.

(Oh, that's _after_ some fixes just to get it to compile as a module, but they're so obvious I won't bother to look them up)

The packet that caused the oops was a ping packet from 10.254.254.254 to 10.1.253.1 encapsulated in a packet from 47.101.178.2 to 47.131.132.117.

Looks like it's the "iif = dev->ifindex" when dev is NULL.
This is probably because the IPIP receive code isn't setting it properly like it should. I'll be more helpful when I'm on my own time, sorry.

Unable to handle kernel NULL pointer dereference at virtual address 00000030
current->tss.cr3 = 03273000, %cr3 = 03273000
*pde = 00000000
Oops: 0002
CPU: 0
EIP: 0010:[<c0159d37>]
EFLAGS: 00010286
eax: 01fd010a ebx: c2cf8a90 ecx: 00000000 edx: 00000054
esi: 01fd010a edi: 00000054 ebp: fefefe0a esp: c316bf34
ds: 0018 es: 0018 ss: 0018
Process nxterm (pid: 657, process nr: 44, stackpage=c316b000)
Stack: c2cf8a90 c2cf8a34 00000054 c316bf70 00000068 c015af56 c2cf8a90 01fd010a
fefefe0a 00000000 00000000 00000000 c01b5374 c2cf8a90 c4810c49 c3160008
c0154afc c2cf8a90 00000000 c01b5374 00000001 c01ccafc 00000000 c316bfbc
Call Trace: [<c015af56>] [<c4810c49>] [<c0154afc>] [<c01168f1>] [<c010a105>] [<c0109318>]
Code: 8b 79 30 8a 5c 24 24 80 e3 1e 89 f8 c1 e0 05 31 e8 89 44 24
Using `../System.map' to map addresses to symbols.

>>EIP: c0159d37 <ip_route_input+13/12c>
Trace: c015af56 <ip_rcv+c6/1d0>
Trace: c4810c49
Trace: c0154afc <net_bh+14c/1b8>
Trace: c01168f1 <do_bottom_half+45/60>
Trace: c010a105 <do_IRQ+e9/f4>
Trace: c0109318 <ret_from_intr>

Code: c0159d37 <ip_route_input+13/12c>
Code: c0159d37 <ip_route_input+13/12c> 8b 79 30 movl 0x30(%ecx),%edi
Code: c0159d3a <ip_route_input+16/12c> 8a 5c 24 24 movb 0x24(%esp,1),%bl
Code: c0159d3e <ip_route_input+1a/12c> 80 e3 1e andb $0x1e,%bl
Code: c0159d47 <ip_route_input+23/12c> 89 f8 movl %edi,%eax
Code: c0159d49 <ip_route_input+25/12c> c1 e0 05 shll $0x5,%eax
Code: c0159d4c <ip_route_input+28/12c> 31 e8 xorl %ebp,%eax
Code: c0159d4e <ip_route_input+2a/12c> 89 44 24 00 movl %eax,0x0(%esp,1)
Code: c0159d58 <ip_route_input+34/12c> 90 nop
Code: c0159d59 <ip_route_input+35/12c> 90 nop
Code: c0159d5a <ip_route_input+36/12c> 90 nop

Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 * 255.0.0.0 U 0 0 0 tunl0

tunl0 Link encap:IPIP Tunnel HWaddr
inet addr:10.1.253.1 P-t-P:47.101.178.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MTU:1480 Metric:1

-- 
David Woodhouse,	CB3 9AN		http://dwmw2.robinson.cam.ac.uk/
	dwmw2@cam.ac.uk 		 Tel: 0976 658355        
	D.W.Woodhouse@nortel.co.uk	 Tel: 01279 402332