An error occurred fetching the project authors.
- 30 May, 2011 5 commits
-
-
Sven Eckelmann authored
The debug output of update_route has tests for "route deleted" and "route added". All other situations are handled as "route changed". This is not true because neigh_node and curr_router could be both NULL. The function is not called in this situation, but the code might be interpreted wrong when reading it without this test. Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
Antonio Quartulli authored
Instead of comparing mac addresses with the broadcast address by means of compare_eth(), the is_broadcast_ether_addr() kernel function has to be used. Signed-off-by:
Antonio Quartulli <ordex@autistici.org> Acked-by:
Sven Eckelmann <sven@narfation.org> Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
Sven Eckelmann authored
Documentation/CodingStyle recommends to use the form p = kmalloc(sizeof(*p), ...); to calculate the size of a struct and not the version where the struct name is spelled out to prevent bugs when the type of p changes. This also seems appropriate for manipulation of buffers when they are directly associated with p. Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
Sven Eckelmann authored
batman-adv uses pointers which are marked as const and should not violate that type qualifier by passing it to functions which force a cast to the non-const version. Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
Antonio Quartulli authored
Every time that find_router() is invoked, if_status has to be compared with IF_ACTIVE. Moving this comparison inside find_router() will avoid to write it each time. Signed-off-by:
Antonio Quartulli <ordex@autistici.org> Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
- 08 May, 2011 3 commits
-
-
Daniele Furlan authored
In function is_bidirectional_neigh the code that find out the one hop neighbor is duplicated. Signed-off-by:
Daniele Furlan <daniele.furlan@gmail.com> Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
Antonio Quartulli authored
To be coherent, all the functions/variables/constants have been renamed to the TranslationTable style Signed-off-by:
Antonio Quartulli <ordex@autistici.org> Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
Marek Lindner authored
Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de> Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
- 01 May, 2011 2 commits
-
-
Marek Lindner authored
The rcu protected macros rcu_dereference() and rcu_assign_pointer() for the bat_priv->primary_if need to be used, as well as spin/rcu locking. Otherwise we might end up using a primary_if pointer pointing to already freed memory. Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de> Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
Antonio Quartulli authored
orig_hash_find() manages rcu_lock/unlock internally and doesn't need to be surrounded by rcu_read_lock() / rcu_read_unlock() anymore Signed-off-by:
Antonio Quartulli <ordex@autistici.org> Acked-by:
Marek Lindner <lindner_marek@yahoo.de> Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
- 17 Apr, 2011 3 commits
-
-
Linus Lüssing authored
Signed-off-by:
Linus Lüssing <linus.luessing@web.de> Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de> Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
Linus Lüssing authored
The rcu protected macros rcu_dereference() and rcu_assign_pointer() for the orig_node->router need to be used, as well as spin/rcu locking. Otherwise we might end up using a router pointer pointing to already freed memory. Therefore this commit introduces the safe getter method orig_node_get_router(). Signed-off-by:
Linus Lüssing <linus.luessing@web.de> Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de> Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
Linus Lüssing authored
This decreases the size of find_router() by outsourcing the router search for the bonding and interface alternating modes to their own sub functions. This shall make it easier to keep track of the correct refcounting later. Signed-off-by:
Linus Lüssing <linus.luessing@web.de> Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de> Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
- 05 Mar, 2011 19 commits
-
-
Linus Lüssing authored
Signed-off-by:
Linus Lüssing <linus.luessing@ascom.ch> Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Batman-adv works with "hard interfaces" as well as "soft interfaces". The new name should better make clear which kind of interfaces this list stores. Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
It might be possible that 2 threads access the same data in the same rcu grace period. The first thread calls call_rcu() to decrement the refcount and free the data while the second thread increases the refcount to use the data. To avoid this race condition all refcount operations have to be atomic. Reported-by:
Sven Eckelmann <sven@narfation.org> Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Note: The function compare_ether_addr() provided by the Linux kernel requires aligned memory. Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Batman-adv could receive several payload broadcasts at the same time that would trigger access to the broadcast seqno sliding window to determine whether this is a new broadcast or not. If these incoming broadcasts are accessing the sliding window simultaneously it could be left in an inconsistent state. Therefore it is necessary to make sure this access is atomic. Reported-by:
Linus Lüssing <linus.luessing@web.de> Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Reported-by:
Linus Lüssing <linus.luessing@saxnet.de> Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
It might be possible that 2 threads access the same data in the same rcu grace period. The first thread calls call_rcu() to decrement the refcount and free the data while the second thread increases the refcount to use the data. To avoid this race condition all refcount operations have to be atomic. Reported-by:
Sven Eckelmann <sven@narfation.org> Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Simon Wunderlich authored
bonding / alternating candidates need to be secured by rcu locks as well. This patch therefore converts the bonding list from a plain pointer list to a rcu securable lists and references the bonding candidates. Signed-off-by:
Simon Wunderlich <siwu@hrz.tu-chemnitz.de> Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
Marek Lindner authored
Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de>
-
- 11 Feb, 2011 1 commit
-
-
Linus Lüssing authored
types.h is included by main.h, which is included at the beginning of any other c-file anyway. Therefore this commit removes those duplicate inclussions. Signed-off-by:
Linus Lüssing <linus.luessing@ascom.ch> Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
- 31 Jan, 2011 4 commits
-
-
Sven Eckelmann authored
Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
Sven Eckelmann authored
Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
Simon Wunderlich authored
Some function parameters are obsolete now and can be removed. Reported-by:
Sven Eckelmann <sven@narfation.org> Signed-off-by:
Simon Wunderlich <siwu@hrz.tu-chemnitz.de> Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
Sven Eckelmann authored
The routing algorithm must be able to decide if a fragment can be merged with the missing part and still be passed to a forwarding interface. The fragments can only differ by one byte in case that the original payload had an uneven length. In that situation the sender has to inform all possible receivers that the tail is one byte longer using the flag UNI_FRAG_LARGETAIL. The combination of UNI_FRAG_LARGETAIL and UNI_FRAG_HEAD flag makes it possible to calculate the correct length for even and uneven sized payloads. The original formula missed to add the unicast header at all and forgot to remove the fragment header of the second fragment. This made the results highly unreliable and only useful for machines with large differences between the configured MTUs. Reported-by:
Russell Senior <russell@personaltelco.net> Reported-by:
Marek Lindner <lindner_marek@yahoo.de> Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
- 16 Dec, 2010 1 commit
-
-
Sven Eckelmann authored
B.A.T.M.A.N. (better approach to mobile ad-hoc networking) is a routing protocol for multi-hop ad-hoc mesh networks. The networks may be wired or wireless. See http://www.open-mesh.org/ for more information and user space tools. Signed-off-by:
Sven Eckelmann <sven@narfation.org> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
- 29 Nov, 2010 2 commits
-
-
Sven Eckelmann authored
linux/etherdevice.h already provides functions to classify different ethernet addresses. These inlineable functions should be used instead of custom functions. The check for multicast together with multicast can also be replaced with a single test for multicast because for every ethernet address x following is always true: is_broadcast_ether_addr(x) => is_multicast_ether_addr(x) or when looking more at the implementation: (FF:FF:FF:FF:FF:FF == x) => [(01:00:00:00:00:00 & x) != 00:00:00:00:00:00] Reported-by:
Tobias Klauser <tklauser@distanz.ch> Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Marek Lindner authored
Via the /sys filesystem you can change the gateway mode of a node using gw_mode. Adjustments to it can be done using gw_bandwidth for server mode and gw_sel_class for client mode. Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de> [sven.eckelmann@gmx.de: Rework on top of current version] Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-