Re: [B.A.T.M.A.N.] [PATCHv3] batman-adv: Limit queue lengths for batman and broadcast packets

2010-04-12 Thread Simon Wunderlich
Hey Linus, just a wild guess, but might it be possible that the run_workqueue() function never runs empty of work queued up because packets are added all the time? I'm not yet sure how where the problem might be, but reading your analysis it does not seem like send_outstanding_packet() would

Re: [B.A.T.M.A.N.] [PATCHv3] batman-adv: Limit queue lengths for batman and broadcast packets

2010-04-11 Thread Linus Lüssing
Okay, this third version seems to get rid of the nasty OOMs very well and after stopping the ping-broadcast on Node A in a setup of A - B - C, the broadcast storm stops nearly immediately. However, in my VM setup (no matter if qemu or kvm) I'm getting a soft-lockup on B. After about 10 seconds

Re: [B.A.T.M.A.N.] [PATCHv3] batman-adv: Limit queue lengths for batman and broadcast packets

2010-04-11 Thread Linus Lüssing
And, hmm, yeah, seems to be the dev_queue_xmit() in send_skb_packet() that needs those 80ms on congestion. (though I'm still not sure if those 80ms lags are the cause of the soft-lockups anyway) Cheers, Linus signature.asc Description: Digital signature

[B.A.T.M.A.N.] [PATCHv3] batman-adv: Limit queue lengths for batman and broadcast packets

2010-04-07 Thread Simon Wunderlich
This patch limits the queue lengths of batman and broadcast packets. BATMAN packets are held back for aggregation and jittered to avoid interferences. Broadcast packets are stored to be sent out multiple times to increase the probability to be received by other nodes in lossy environments.