Hi,

I am naive to the world of SocketCAN.
I am developing a SocketCAN framework based driver for my C_CAN IP.

My client needs this driver to be developed for 2.6.27 kernel.
I have taken some clues from the old C_CAN files in the SocketCAN SVN.
I am successfully able to perform loopback using my driver.

However, during `probe` as well as `ifconfig can0 up`, I get the following
kernel dump:

WARNING: at linux-2.6.27/net/core/rtnetlink.c:1229 rtmsg_ifinfo+0x80/0xe0()
Modules linked in:
[<c002c678>] (dump_stack+0x0/0x14) from [<c003b320>]
(warn_on_slowpath+0x4c/0x84)
[<c003b2d4>] (warn_on_slowpath+0x0/0x84) from [<c0216e5c>]
(rtmsg_ifinfo+0x80/0xe0)
 r6:c3832bc0 r5:00000000 r4:ffffffa6
[<c0216ddc>] (rtmsg_ifinfo+0x0/0xe0) from [<c0216f38>]
(rtnetlink_event+0x7c/0x84)
 r8:00000005 r7:c3878000 r6:00000000 r5:fffffffe r4:c035d6f0
[<c0216ebc>] (rtnetlink_event+0x0/0x84) from [<c0052194>]
(notifier_call_chain+0x38/0x7c)
[<c005215c>] (notifier_call_chain+0x0/0x7c) from [<c00522a0>]
(__raw_notifier_call_chain+0x1c/0x24)
 r8:c03564f8 r7:c0345040 r6:00000014 r5:00000000 r4:c3878000
[<c0052284>] (__raw_notifier_call_chain+0x0/0x24) from [<c00522c8>]
(raw_notifier_call_chain+0x20/0
x28)
[<c00522a8>] (raw_notifier_call_chain+0x0/0x28) from [<c020ca48>]
(call_netdevice_notifiers+0x1c/0x
24)
[<c020ca2c>] (call_netdevice_notifiers+0x0/0x24) from [<c020d628>]
(register_netdevice+0x2e8/0x358)
[<c020d340>] (register_netdevice+0x0/0x358) from [<c020d6dc>]
(register_netdev+0x44/0x54)
 r6:c03449f0 r5:00000001 r4:c3878000
[<c020d698>] (register_netdev+0x0/0x54) from [<c017f39c>]
(register_candev+0x18/0x20)
 r5:c03449e8 r4:c3878000
[<c017f384>] (register_candev+0x0/0x20) from [<c017ecf4>]
(register_ccandev+0x5c/0x68)
[<c017ec98>] (register_ccandev+0x0/0x68) from [<c017f1c0>]
(spr_can_drv_probe+0x178/0x218)
 r4:c3878000
[<c017f048>] (spr_can_drv_probe+0x0/0x218) from [<c0179fd4>]
(platform_drv_probe+0x20/0x24)
[<c0179fb4>] (platform_drv_probe+0x0/0x24) from [<c017922c>]
(driver_probe_device+0xd8/0x18c)
[<c0179154>] (driver_probe_device+0x0/0x18c) from [<c0179330>]
(__driver_attach+0x50/0x74)
 r7:c035672c r6:c035672c r5:c0344a9c r4:c03449f0
[<c01792e0>] (__driver_attach+0x0/0x74) from [<c0178878>]
(bus_for_each_dev+0x54/0x88)
 r6:c01792e0 r5:c381beac r4:00000000
[<c0178824>] (bus_for_each_dev+0x0/0x88) from [<c0179068>]
(driver_attach+0x20/0x28)
 r7:c39119e0 r6:00000000 r5:c035672c r4:00000000
[<c0179048>] (driver_attach+0x0/0x28) from [<c0178d18>]
(bus_add_driver+0xa8/0x218)
[<c0178c70>] (bus_add_driver+0x0/0x218) from [<c017952c>]
(driver_register+0x98/0x120)
 r8:c03622c4 r7:c00197cc r6:00000000 r5:c035672c r4:c035670c
[<c0179494>] (driver_register+0x0/0x120) from [<c017a370>]
(platform_driver_register+0x78/0x94)
[<c017a2f8>] (platform_driver_register+0x0/0x94) from [<c00197f4>]
(spr_can_init+0x28/0x34)
[<c00197cc>] (spr_can_init+0x0/0x34) from [<c002733c>]
(__exception_text_end+0x4c/0x168)
 r4:c00220b0
[<c00272f0>] (__exception_text_end+0x0/0x168) from [<c00088e4>]
(kernel_init+0x70/0xd8)
[<c0008874>] (kernel_init+0x0/0xd8) from [<c003decc>] (do_exit+0x0/0x694)
 r5:00000000 r4:00000000
---[ end trace 2a7a098f7e0c29d5 ]---


I gathered from the discussions on this mailing list that this warning has
been solved by:
1. Migrating to newer kernel version, 2.6.30
2. compile *without* the define: CONFIG_CAN_DEV_SYSFS=y 

For me, *1* is not a possible option. I have tried alternative *2* and it
works fine.
I, however, would like to know if anyone has found a clean solution to this
issue without requiring migration to newer kernel version.


Regards,
Bhupesh
-- 
View this message in context: 
http://www.nabble.com/Query-regarding-%60warn_on_slowpath%60-dump-with-2.6.27-tp25991331p25991331.html
Sent from the Socket-CAN Core mailing list archive at Nabble.com.

_______________________________________________
Socketcan-core mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/socketcan-core

Reply via email to