netlink module (linux)

Roman Hoog Antink rhoogant at ee.ethz.ch
Wed Dec 18 06:04:28 EST 2002


I solved it: netlink.cc line 118 and 121, using p->skb_steal() instead 
of p->data()

Roman

>  Hi,
>
>I'm writing a netlink module for click (linux kernel environment). I'm 
>not quiet experienced in kernel hacking. Whenever I try to handle a 
>packet (skbuf) from click to a netlink socket (netlink_broadcast), I get a kernel oops.
>
>Can anyone help me? Has anyone ever worked on the subject netlink & click?
>
>ksymoops output: see below
>source code: http://129.132.57.73/~roman/click/
>
>Kernel: linux-2.4.18
>
>Roman
>
>Unable to handle kernel paging request at virtual address 9ae36a54
>c01f93b3
>*pde = 00000000
>Oops: 0002
>CPU:    0
>EIP:    0010:[]    Not tainted
>Using defaults from ksymoops -t elf32-i386 -a i386
>EFLAGS: 00010286
>eax: 9ae36a54   ebx: df1dc1e0   ecx: 00000000   edx: df1dc218
>esi: d702d072   edi: d702d072   ebp: d836da40   esp: d7091eac
>ds: 0018   es: 0018   ss: 0018
>Process kclick (pid: 786, stackpage=d7091000)
>Stack: d7fef5c0 00000000 c02098a9 d702d072 00000020 00000000 00000020 00000001 
>       00000000 d705e360 df7224e0 00000001 d7091f1c e3397e95 d836da40 d702d072 
>       00000000 00000001 00000020 c02b95d0 fffffffb 00000046 c011d399 00000000 
>Call Trace: [] [] [] [] [] 
>   [] [] [] [] [] 
>Code: ff 00 8b 86 98 00 00 00 c6 46 19 01 85 c0 74 04 8b 00 ff 00 
>
>
>  
>
>>>EIP; c01f93b3    <=====
>>>      
>>>
>
>  
>
>>>eax; 9ae36a54 Before first symbol
>>>ebx; df1dc1e0 <_end+1eeee7fc/215ce67c>
>>>edx; df1dc218 <_end+1eeee834/215ce67c>
>>>esi; d702d072 <_end+16d3f68e/215ce67c>
>>>edi; d702d072 <_end+16d3f68e/215ce67c>
>>>ebp; d836da40 <_end+1808005c/215ce67c>
>>>esp; d7091eac <_end+16da44c8/215ce67c>
>>>      
>>>
>
>Trace; c02098a9 
>Trace; e3397e95 <[click]_ZN8IPFilter9Primitive8set_maskEjiP12ErrorHandler+355/440>
>Trace; c011d399 
>Trace; e3324ef0 <[snd].bss.end+1e91/2001>
>Trace; e335c47d <[click]_ZN12IPAddressSet9list_copyEv+4d/60>
>Trace; e3375b65 <[click]_ZN5Lexer23expand_compound_elementEiRK19VariableEnvironment+2a5/6e0>
>Trace; e3338f54 <[snd-timer]snd_timer_proc_read+b4/1c0>
>Trace; e3398b37 <[click]_ZN8IPFilter9Primitive5checkERKS0_P12ErrorHandler+5f7/600>
>Trace; c01057a6 
>Trace; e3398ab0 <[click]_ZN8IPFilter9Primitive5checkERKS0_P12ErrorHandler+570/600>
>
>Code;  c01f93b3 
>00000000 <_EIP>:
>Code;  c01f93b3    <=====
>   0:   ff 00                     incl   (%eax)   <=====
>Code;  c01f93b5 
>   2:   8b 86 98 00 00 00         mov    0x98(%esi),%eax
>Code;  c01f93bb 
>   8:   c6 46 19 01               movb   $0x1,0x19(%esi)
>Code;  c01f93bf 
>   c:   85 c0                     test   %eax,%eax
>Code;  c01f93c1 
>   e:   74 04                     je     14 <_EIP+0x14> c01f93c7 
>Code;  c01f93c3 
>  10:   8b 00                     mov    (%eax),%eax
>Code;  c01f93c5 
>  12:   ff 00                     incl   (%eax)
>
>
>
>
>
>
>
>
>------- End of Forwarded Message
>  
>





More information about the click mailing list