Hi,
i tried to prevent the race condition [1] that I mentioned yesterday. The patchset was also slightly extended to use a refcnt a little bit more.
Best regards, Sven
[1] 201009170317.28338.sven.eckelmann@gmx.de
Sven Eckelmann (9): batman-adv: Introduce if_list_lock to protect if_list batman-adv: Protect update side of gw_list batman-adv: Always protect list_for_each_entry_rcu with RCU batman-adv: Remove unneeded rcu_read_lock batman-adv: Use synchronize_rcu instead of call_rcu batman-adv: Use refcnt to track usage count of gw_node batman-adv: Use refcnt to track usage count of batman_if batman-adv: count election of gateway as reference batman-adv: count batman_if list queries as reference
batman-adv/bat_sysfs.c | 37 ++++++++++++++++++------- batman-adv/gateway_client.c | 64 ++++++++++++++++++++++++++++++------------- batman-adv/hard-interface.c | 59 +++++++++++++++++++++++++++++----------- batman-adv/hard-interface.h | 13 +++++++++ batman-adv/originator.c | 2 - batman-adv/routing.c | 2 + batman-adv/types.h | 4 +- 7 files changed, 132 insertions(+), 49 deletions(-)