[B.A.T.M.A.N.] [PATCH 2/2] batman-adv: Avoid deadlock between rtnl_lock and s_active

2011-05-03 Thread Linus Lüssing
From: Sven Eckelmann s...@narfation.org The hard_if_event is called by the notifier with rtnl_lock and tries to remove sysfs entries when a NETDEV_UNREGISTER event is received. This will automatically take the s_active lock. The s_active lock is also used when a new interface is added to a

[B.A.T.M.A.N.] [RFC/PATCH] atomic: add *_dec_not_zero

2011-05-03 Thread Sven Eckelmann
Introduce an *_dec_not_zero operation. Make this a special case of *_add_unless because batman-adv uses atomic_dec_not_zero in different places like re-broadcast queue or aggregation queue management. There are other non-final patches which may also want to use this macro. Reported-by: David S.

[B.A.T.M.A.N.] [PATCH 1/2] batman-adv: Remove unnecessary hardif_list_lock

2011-05-03 Thread Linus Lüssing
From: Sven Eckelmann s...@narfation.org hardif_list_lock is unneccessary because we already ensure that no multiple admin operations can take place through rtnl_lock. hardif_list_lock only adds additional overhead and complexity. Critical functions now check whether they are called with

[B.A.T.M.A.N.] (no subject)

2011-05-03 Thread Linus Lüssing
With that tiny change, it now all works as expected and the patch 1/2 can also be used and verified without having to add patch 2/2 as well. Hope I'm not getting too picky :D. Thanks for your effort again, Sven! Cheers, Linus

Re: [B.A.T.M.A.N.] (no subject)

2011-05-03 Thread Sven Eckelmann
On Tuesday 03 May 2011 11:51:37 Linus Lüssing wrote: With that tiny change, it now all works as expected and the patch 1/2 can also be used and verified without having to add patch 2/2 as well. Hope I'm not getting too picky :D. Thanks for your effort again, Sven! No, I am very happy with

[B.A.T.M.A.N.] [PATCH 2/2] batman-adv: Avoid deadlock between rtnl_lock and s_active

2011-05-03 Thread Linus Lüssing
From: Sven Eckelmann s...@narfation.org The hard_if_event is called by the notifier with rtnl_lock and tries to remove sysfs entries when a NETDEV_UNREGISTER event is received. This will automatically take the s_active lock. The s_active lock is also used when a new interface is added to a

[B.A.T.M.A.N.] New translation table announcement mechanism patchset v2

2011-05-03 Thread Antonio Quartulli
In this new patchset, patch 2/4 has been revised following Andrew's suggestions. In particular all the changes are new comments, except one: send_tt_response() has been slightly modified to avoid it to return NET_RX_SUCCESS/NET_RX_DROP so avoiding to create confusion. Regards, Antonio

[B.A.T.M.A.N.] [PATCHv2 1/4] batman-adv: rename everything from *hna* into *tt* (translation table)

2011-05-03 Thread Antonio Quartulli
To be coherent, all the functions/variables/constats have been renamed to the TranslationTable style Signed-off-by: Antonio Quartulli or...@autistici.org --- README |8 +- aggregation.c | 16 +- aggregation.h |4 +- bat_debugfs.c |4 +-

[B.A.T.M.A.N.] [PATCHv2 3/4] batman-adv: improved roaming mechanism

2011-05-03 Thread Antonio Quartulli
Exploting the new announcement implementation, it has been possible to improve the roaming mechanism and reduce the number of packet drops. For details, please visit: http://www.open-mesh.org/wiki/batman-adv/Roaming-improvements Signed-off-by: Antonio Quartulli or...@autistici.org ---

[B.A.T.M.A.N.] [PATCHv2 4/4] batman-adv: protect the local and the global trans-tables with rcu

2011-05-03 Thread Antonio Quartulli
The local and the global translation-tables are now lock free and rcu protected. Signed-off-by: Antonio Quartulli or...@autistici.org --- main.c |2 - translation-table.c | 266 +-- types.h |6 +- vis.c

Re: [B.A.T.M.A.N.] [PATCH 2/4] batman-adv: improved client announcement mechanismy

2011-05-03 Thread Marek Lindner
On Tuesday 03 May 2011 17:50:07 Antonio Quartulli wrote: I think this is the information bisect uses to look for routing loops etc. Do you plan to extend bisect to look for TT problems? Does it make sense to add a new DBG_TT which dumps the adds and removes in the OGM? I don't

Re: [B.A.T.M.A.N.] [PATCH 2/4] batman-adv: improved client announcement mechanismy

2011-05-03 Thread Antonio Quartulli
On Tue, May 03, 2011 at 05:56:45PM +0200, Marek Lindner wrote: On Tuesday 03 May 2011 17:50:07 Antonio Quartulli wrote: I think this is the information bisect uses to look for routing loops etc. Do you plan to extend bisect to look for TT problems? Does it make sense to add a new DBG_TT

[B.A.T.M.A.N.] [RFC/PATCH] batman-adv: Add compatibility code for kfree_rcu

2011-05-03 Thread Sven Eckelmann
Signed-off-by: Sven Eckelmann s...@narfation.org --- This is pure speculation and only to show how ugly it is... It is currently not used in Linus' tree DONT APPLY THIS PATCH Makefile.kbuild |1 + compat.c| 41