OLPC boards in promiscuous mode

Marcelo Tosatti mtosatti at redhat.com
Wed Oct 18 12:55:22 EDT 2006


On Wed, Oct 11, 2006 at 11:51:56AM -0400, Polychronis Ypodimatopoulos wrote:
> Hello,
> 
> We are using 7 OLPC boards in promiscuous mode to capture all frames being sent by other nodes, using pcapy in Python. Nodes are in the same ad-hoc cloud with each other. Our application sends about up to 50 frames/sec. 
> 
> Initially, everything works fine, but after running for about 1 min, the wifi driver stops being as responsive (takes a long time to send a single frame) and frames captured by pcapy are garbled (they fail some digest check). At the moment that things start getting wrong, the following messages appears repeatedly in /var/log/messages:
> 
> Sep 30 20:00:02 dhcp-9-196 kernel: NETDEV WATCHDOG: eth0: transmit timed out
> 
> Finally, I also get the following in /var/log/messages:
> 
> BUG: rwlock bad magic on CPU#0, ifconfig/5882, c023eba0 (Not tainted)
>  <c05c99e2> ip_check_mc+0x1c/0x7c  <c05a65b4> ip_route_input+0xdc/0xbf1
>  <c82bae08> __ip_ct_refresh_acct+0xec/0x106 [ip_conntrack]  <c82bc191>
> ip_conntrack_in+0x2f7/0x3bc [ip_conntrack]
>  <c05ce914> fib_create_info+0x11e/0x97e  <c05a3d44> nf_iterate+0x38/0x6a
>  <c05a885c> ip_rcv_finish+0x0/0x1fd  <c05a3e77> nf_hook_slow+0x4d/0xb5
>  <c05a885c> ip_rcv_finish+0x0/0x1fd  <c05a8e85> ip_rcv+0x1f9/0x3d7
>  <c05a885c> ip_rcv_finish+0x0/0x1fd  <c041e726> __mod_timer+0x8a/0x94
>  <c058fad9> netif_receive_skb+0x20a/0x265  <c05911c2>
> process_backlog+0x6e/0xec
>  <c05912b8> net_rx_action+0x78/0x11b  <c041b313> __do_softirq+0x35/0x7f
>  <c0404bb1> do_softirq+0x38/0x3f
>  =======================
>  <c0404b6e> do_IRQ+0x75/0x80  <c041cf8d> register_proc_table+0xc8/0xdc
>  <c0402f3a> common_interrupt+0x1a/0x20  <c0428a7c> mutex_trylock+0x15c/0x169
>  <c041cf8d> register_proc_table+0xc8/0xdc  <c041cfbe>
> register_sysctl_table+0x1d/0xa2
>  <c05cb866> ip_mc_init_dev+0xc/0xbb  <c041d03b>
> register_sysctl_table+0x9a/0xa2
>  <c05c77de> devinet_sysctl_register+0xf8/0x11f  <c05c79b8>
> inetdev_init+0x101/0x127
>  <c05c850f> devinet_ioctl+0x3a8/0x56c  <c04635ca> open_namei+0x7b/0x5d3
>  <c0586dc0> sock_ioctl+0x1ae/0x1cd  <c0586c12> sock_ioctl+0x0/0x1cd
>  <c0464629> do_ioctl+0x19/0x4c  <c046485b> vfs_ioctl+0x1ff/0x216
>  <c04648be> sys_ioctl+0x4c/0x66  <c0402cc7> syscall_call+0x7/0xb
> 
> 
> Running the same exact application (with the same data) on PCs with atheros chipsets yields absolutely no similar problems and the application behaves normally. The following is my OLPC board configuration:
> 
> Kernel: 2.6.16-1.2221_FC6 (rawhide)
> Firmware: usb8388_A1_W8015FP14_FW2.bin

Hi Polychnoris,

Did you compile your own kernel version? 
Are you using PS mode?



More information about the libertas-dev mailing list