Re: Generic Netlink

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Edouard, 

I've tried your example using  the HEAD kernel (2.6.23.8) on a ppc
machine. 
As you said, it is crashing the operating system, and as I am using
xmon, it shows the backtrace and the register states during the failure.
IMHO there is something wrong with the message, which could be
dereferencing the genl header, causing the following  message "Unable to
handle kernel paging request for data at address 0x00000008"
I hope this helps.

...
error on genlmsg_multicast -3
Failure
Unable to handle kernel paging request for data at address 0x00000008
Faulting instruction address: 0xc0000000002ebe0c
cpu 0x1: Vector: 300 (Data Access) at [c000000053f53500]
    pc: c0000000002ebe0c: .skb_dequeue+0x5c/0x94
    lr: c0000000002ebdd8: .skb_dequeue+0x28/0x94
    sp: c000000053f53780
   msr: 8000000000009032
   dar: 8
 dsisr: 42000000
  current = 0xc000000053a72570
  paca    = 0xc00000000050d480
    pid   = 1643, comm = syslogd
enter ? for help
[c000000053f53810] c0000000002efc3c .skb_recv_datagram+0xe8/0x2b8
[c000000053f538f0] c00000000037d8d4 .unix_dgram_recvmsg+0x84/0x348
[c000000053f539f0] c0000000002e443c .sock_recvmsg+0x114/0x160
[c000000053f53c00] c0000000002e5c1c .sys_recvfrom+0xec/0x170
[c000000053f53d90] c000000000309934 .compat_sys_socketcall+0x178/0x214
[c000000053f53e30] c000000000008534 syscall_exit+0x0/0x40
--- Exception: c01 (System Call) at 000000001ff500d0
SP (fff4f600) is in userspace
1:mon> t
[c000000053f53810] c0000000002efc3c .skb_recv_datagram+0xe8/0x2b8
[c000000053f538f0] c00000000037d8d4 .unix_dgram_recvmsg+0x84/0x348
[c000000053f539f0] c0000000002e443c .sock_recvmsg+0x114/0x160
[c000000053f53c00] c0000000002e5c1c .sys_recvfrom+0xec/0x170
[c000000053f53d90] c000000000309934 .compat_sys_socketcall+0x178/0x214
[c000000053f53e30] c000000000008534 syscall_exit+0x0/0x40
--- Exception: c01 (System Call) at 000000001ff500d0
SP (fff4f600) is in userspace
1:mon> r
R00 = 0000000000000000   R16 = 0000000020008ac8
R01 = c000000053f53780   R17 = 0000000020008ac0
R02 = c0000000005e3a60   R18 = 0000000020008aa8
R03 = 0000000000000001   R19 = 0000000020008a80
R04 = 0000000000000001   R20 = 0000000020008a7c
R05 = 0000000000000000   R21 = 0000000020019dfc
R06 = c000000053f53960   R22 = 0000000020019a84
R07 = 0000000000000000   R23 = c000000002df8880
R08 = 0000000000000000   R24 = 0000000000000000
R09 = 0000000000000000   R25 = c000000053f53960
R10 = c0000000481e3508   R26 = 7fffffffffffffff
R11 = 0000000000000000   R27 = c000000053f53c88
R12 = 000003fe00000000   R28 = c00000005aa15c44
R13 = c00000000050d480   R29 = c00000005aa15c30
R14 = 0000000020008b1c   R30 = c0000000005aabf8
R15 = 0000000020008ae0   R31 = c000000051fbe280
pc  = c0000000002ebe0c .skb_dequeue+0x5c/0x94
lr  = c0000000002ebdd8 .skb_dequeue+0x28/0x94
msr = 8000000000009032   cr  = 24000488
ctr = c00000000037d850   xer = 0000000020000009   trap =  300
dar = 0000000000000008   dsisr = 42000000

Regards,
Breno
---
Breno Leitão
+55 (16) 8115-3915
IBM Linux Technology Center

On Mon, 2007-11-12 at 17:47 +0100, Edouard Thuleau wrote:
> Hi,
> 
> I try to use the generic netlink functionalities in a kernel module.
> 
> I looked the doc
> http://www.linux-foundation.org/en/Net:Generic_Netlink_HOWTO and the
> source code of kernel/taskstats.c in the kernel.
> I tried to reproduce the example of the doc (look in the attached
> file) but it doesn't work.
> 
> I work on a 2.6.23 kernel and on two different architectures, a
> classic x86 pc and a armv5b board.
> On the PC the genlmsg_multicast function return an error (-3) and the
> system crash totally in the next 5 sec (hard reboot).
> On the arm board, the genlmsg_put function return the NULL value, but
> the module is unload and the system stay stable.
> 
> Can you help me ?
> Doude.
> -
> To unsubscribe from this list: send the line "unsubscribe linux-net" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux