Kernel oops in DecIPTTL

Brecht Vermeulen brecht.vermeulen at rug.ac.be
Thu Nov 29 02:21:20 EST 2001


Hi guys,
I've got a kernel oops in the DecIPTTL element I think or am I doing
something wrong ?

Nov 29 01:59:29 helios103 kernel: Unable to handle kernel NULL pointer
dereference at virtual address 00000008
Nov 29 01:59:29 helios103 kernel: current->tss.cr3 = 00101000, %%cr3 =
00101000
Nov 29 01:59:29 helios103 kernel: *pde = 00000000
Nov 29 01:59:29 helios103 kernel: Oops: 0000
Nov 29 01:59:29 helios103 kernel: CPU:    0
Nov 29 01:59:29 helios103 kernel: EIP:   
0010:[click:simple_action__8DecIPTTLP6Packet+13/232]
Nov 29 01:59:29 helios103 kernel: EFLAGS: 00010286
Nov 29 01:59:29 helios103 kernel: eax: 00000000   ebx: c739cd40   ecx:
c7878520   edx: c7878520
Nov 29 01:59:29 helios103 kernel: esi: 0e05000a   edi: c7878520   ebp:
c6711dfc   esp: c6711dec
Nov 29 01:59:29 helios103 kernel: ds: 0018   es: 0018   ss: 0018
Nov 29 01:59:29 helios103 kernel: Process kclick (pid: 211, process nr:
26, stackpage=c6711000)
Nov 29 01:59:29 helios103 kernel: Stack: c78785c0 c0173099 c788f680
c6711e30 c6711e2c c8039b2d c739cd40 c7878520
Nov 29 01:59:29 helios103 kernel:        c78785c0 00000001 c75d4320
00000001 00000006 c6711e30 c6711e2c c6711e68
Nov 29 01:59:29 helios103 kernel:        c6711e6c c806a7f5 c739cd40
00000000 c7878520 c805d95c c739cb60 c7878520
Nov 29 01:59:29 helios103 kernel: Call Trace: [arp_rcv+993/1008]
[click:push__7ElementiP6Packet+25/64]
[click:push__14StaticIPLookupiP6Packet+169/228]
[click:simple_action__12GetIPAddressP6Packet+32/52]
[update_wall_time+18/72] [click:push__7ElementiP6Packet+56/64]
[click:push__7ElementiP6Packet+56/64]
Nov 29 01:59:29 helios103 kernel:       
[click:push__10ClassifieriP6Packet+159/212]
[click:run_scheduled__10PollDevice+130/592]
[click:run_scheduled__10PollDevice+385/592]
[click:run_scheduled__8ToDevice+108/528]
[click:wait__12RouterThreadi+45/56]
[click:driver__12RouterThread+107/456]
[click:_11HandlerCall.READ_MARKER+46082/49248] [printk+289/360]
Nov 29 01:59:29 helios103 kernel:       
[click:_11HandlerCall.READ_MARKER+46082/49248]
[click:click_remove_element_type+1580/1712]
[click:click_remove_element_type+1571/1712]
[click:_11HandlerCall.READ_MARKER+46112/49248]
[click:click_remove_element_type+1523/1712] [kernel_thread+40/56]
Nov 29 01:59:29 helios103 kernel: Code: 80 78 08 01 77 10 83 c4 f8 52 ff
75 08 e8 89 ff ff ff 31 c0

I've attached the configuration, both as a screenshot of the GUI as in
config language.

If I remove the three elements DecIPTTL, it doesn't crash, otherwise it
crashes almost immediately from the first packet.

Kernel is 2.2.19, click is from 24th October from CVS.

If I use the full router configuration (as in the make-ip_conf script),
then it doesn't crash. Have I done something illegal ? If I connect a
discard element to the second DecIPTTL output port, it also crashes.

best regards,
Brecht
-------------- next part --------------
A non-text attachment was scrubbed...
Name: democlick_simple.jpg
Type: image/jpeg
Size: 124057 bytes
Desc: not available
Url : https://amsterdam.lcs.mit.edu/pipermail/click/attachments/20011129/a29a56a4/democlick_simple.jpg
-------------- next part --------------
// Installed on Thu 29-11-2001 00:38:15 by Click CORBA Interfaces server
tol :: ToLinux();
t :: Tee(4);
c0 :: Classifier(12/0806 20/0001,
                  12/0806 20/0002,
                  12/0800,
                  -);
PollDevice at 4 :: PollDevice(eth1);
out0 :: Queue(1000);
todevice0 :: ToDevice(eth1);
arpq0 :: ARPQuerier(10.0.3.103, 00:80:C8:C9:65:50);
ar0 :: ARPResponder(10.0.3.103 00:80:C8:C9:65:50);
c1 :: Classifier(12/0806 20/0001,
                  12/0806 20/0002,
                  12/0800,
                  -);
PollDevice at 10 :: PollDevice(eth2);
out1 :: Queue(1000);
todevice1 :: ToDevice(eth2);
arpq1 :: ARPQuerier(10.0.4.103, 00:80:C8:C9:65:51);
ar1 :: ARPResponder(10.0.4.103 00:80:C8:C9:65:51);
c2 :: Classifier(12/0806 20/0001,
                  12/0806 20/0002,
                  12/0800,
                  -);
PollDevice at 16 :: PollDevice(eth3);
out2 :: Queue(1000);
todevice2 :: ToDevice(eth3);
arpq2 :: ARPQuerier(10.0.5.103, 00:80:C8:C9:65:52);
ar2 :: ARPResponder(10.0.5.103 00:80:C8:C9:65:52);
rt :: StaticIPLookup(
 10.0.3.103/32 0,
 10.0.3.255/32 0,
 10.0.3.0/32 0,
 10.0.4.103/32 0,
 10.0.4.255/32 0,
 10.0.4.0/32 0,
 10.0.5.103/32 0,
 10.0.5.255/32 0,
 10.0.5.0/32 0,
 10.0.3.0/255.255.255.0 1,
 10.0.4.0/255.255.255.0 2,
 10.0.5.0/255.255.255.0 3,
 255.255.255.255/32 0.0.0.0 0,
 0.0.0.0/32 0,
 0.0.0.0/0 10.10.10.12 1);
EtherEncap at 22 :: EtherEncap(0x0800, 1:1:1:1:1:1, 2:2:2:2:2:2);
ip :: Strip(14);
GetIPAddress at 24 :: GetIPAddress(16);
dt0 :: DecIPTTL();
fr0 :: IPFragmenter(1500);
Discard at 27 :: Discard();
dt1 :: DecIPTTL();
fr1 :: IPFragmenter(1500);
Discard at 30 :: Discard();
dt2 :: DecIPTTL();
fr2 :: IPFragmenter(1500);
Discard at 33 :: Discard();
t[0] -> [1]arpq0;
t[1] -> [1]arpq1;
t[2] -> [1]arpq2;
t[3] -> [0]tol;
c0[0] -> [0]ar0;
c0[1] -> [0]t;
c0[2] -> [0]ip;
c0[3] -> [0]Discard at 27;
PollDevice at 4[0] -> [0]c0;
out0[0] -> [0]todevice0;
arpq0[0] -> [0]out0;
ar0[0] -> [0]out0;
c1[0] -> [0]ar1;
c1[1] -> [0]t;
c1[2] -> [0]ip;
c1[3] -> [0]Discard at 30;
PollDevice at 10[0] -> [0]c1;
out1[0] -> [0]todevice1;
arpq1[0] -> [0]out1;
ar1[0] -> [0]out1;
c2[0] -> [0]ar2;
c2[1] -> [0]t;
c2[2] -> [0]ip;
c2[3] -> [0]Discard at 33;
PollDevice at 16[0] -> [0]c2;
out2[0] -> [0]todevice2;
arpq2[0] -> [0]out2;
ar2[0] -> [0]out2;
rt[0] -> [0]EtherEncap at 22;
rt[1] -> [0]dt0;
rt[2] -> [0]dt1;
rt[3] -> [0]dt2;
EtherEncap at 22[0] -> [0]tol;
ip[0] -> [0]GetIPAddress at 24;
GetIPAddress at 24[0] -> [0]rt;
dt0[0] -> [0]fr0;
fr0[0] -> [0]arpq0;
dt1[0] -> [0]fr1;
fr1[0] -> [0]arpq1;
dt2[0] -> [0]fr2;
fr2[0] -> [0]arpq2;


More information about the click mailing list