An error occurred fetching the project authors.
- 05 Mar, 2011 1 commit
-
-
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 1 commit
-
-
Sven Eckelmann authored
Signed-off-by:
Sven Eckelmann <sven@narfation.org>
-
- 20 Dec, 2010 1 commit
-
-
Sven Eckelmann authored
hna_local_fill_buffer must return the number of added hna entries and not the last checked hash bucket. Signed-off-by:
Sven Eckelmann <sven@narfation.org> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
- 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 5 commits
-
-
Sven Eckelmann authored
spin_lock_irqsave disables the IRQs and stores them inside the flags provided by the caller. This is needed to protect a bottom half handler or a user context critical section from being interrupted by an interrupt handler which also tries to acquire the spinlock and locks forever. The linux device drivers will receive the packets inside an interrupt handler and the network infrastructure will process them inside bottom half. Thus batman-adv will only run in user context and bottom half handlers. We can conclude that batman-adv doesn't share its own spinlocks with real interrupt handlers. This makes it possible to exchange the quite complex spin_lock_irqsave with spin_lock_bh which only stops bottom halves from running on the current cpu, but allows interrupt handlers to take over to keep the interrupt latency low. Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Sven Eckelmann authored
The hash implementation is a complete implementation of a hash using buckets as hash entries and overflow buckets attached to them. The kernel already provides datastructures hlist_head and hlist_node which can be used to implement an hash using lists as hash buckets. So it is better to implement heavily used functionality on top of those instead of providing a full hash implementation. The rewrite changes the behavior of some functions slightly: * hash_add add elements to the front instead of the tail * hash_iterate doesn't provide pointer to access bucket->data directly, but it can be accessed using hlist_entry Reported-by:
David S. Miller <davem@davemloft.net> Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Sven Eckelmann authored
Function pointers cannot be inlined by a compiler and thus always has the overhead of an call. hashdata_choose_cb's are one of the most often called function pointers and its overhead must kept relative low. As first step, every function which uses this function pointer takes it as parameter instead of storing it inside the hash abstraction structure. This not generate any performance gain right now. The called functions must also be able to be inlined by the calling functions to enable inlining of the function pointer. Reported-by:
David S. Miller <davem@davemloft.net> Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Sven Eckelmann authored
Function pointers cannot be inlined by a compiler and thus always has the overhead of an call. hashdata_compare_cb's are one of the most often called function pointers and its overhead must kept relative low. As first step, every function which uses this function pointer takes it as parameter instead of storing it inside the hash abstraction structure. This not generate any performance gain right now. The called functions must also be able to be inlined by the calling functions to enable inlining of the function pointer. Reported-by:
David S. Miller <davem@davemloft.net> Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Linus Lüssing authored
Both sysfs entries and variable names shall be as descriptive as possible while not exceeding a certain length. This patch renames bat_priv atomics to be equally descriptive with their according sysfs entries. Unifying sysfs and bat_priv atomic names also makes it easier to find each others pendant. The reduced ("type"-)information which was previously indicated with a _enabled for booleans got substituted by a comment in bat_priv. This patch has also been done in regards for the future BAT_ATTR_* macros (they only need one name argument instead of a file and variable name). 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.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
- 19 Oct, 2010 1 commit
-
-
Marek Lindner authored
Reported-by:
Sam Yeung <sam.cwyeung@gmail.com> Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de> Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
- 05 Sep, 2010 2 commits
-
-
Marek Lindner authored
This patch removes all remaining global variables and includes the necessary bits into the bat_priv structure. It is the last remaining piece to allow multiple concurrent mesh clouds on the same device. A few global variables have been rendered obsolete during the process and have been removed entirely. 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>
-
Marek Lindner authored
This patch replaces the static bat0 interface with a dynamic/abstracted approach. It is now possible to create multiple batX interfaces by assigning hard interfaces to them. Each batX interface acts as an independent mesh network. A soft interface is removed once no hard interface references it any longer. 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>
-
- 08 Jul, 2010 4 commits
-
-
Sven Eckelmann authored
Each general printk which is not informative by itself for a specific batX device were moved to pr_(info|warning|err) as it provides an easy interface which for example resolves the problem to add the prefix "batman-adv: " before each line. All information which is specific to a batX device will be printed using a bat_(info|err|warning) macro to prefix it also with "batman-adv: batX:" in each line. Reported-by:
Joe Perches <joe@perches.com> Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Marek Lindner authored
All routing debug messages are saved in a ring buffer that can be read via the debugfs file "log". Note that CONFIG_BATMAN_ADV_DEBUG must be activated to have the debug logs compiled in. Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de> Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Simon Wunderlich authored
It is enough for our timeouts to keep them in seconds instead of miliseconds. With a too high resolution, we might even risk an integer overflow, so this patch should make things more safe. Signed-off-by:
Simon Wunderlich <siwu@hrz.tu-chemnitz.de> Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Linus Lüssing authored
With the current default values, this patch is not critical, as LOCAL_HNA_TIMEOUT is a multiple of 1000 anyway. However, if someone would like to change this #define, the person could have some unexpected rounding issues. Therefore doing the multiplication before the division now. Signed-off-by:
Linus Lüssing <linus.luessing@web.de> Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
- 22 Jun, 2010 4 commits
-
-
Sven Eckelmann authored
Functions and variables which are used only inside one object file can be declared as static. This helped to find unused functions/variables * mainIfAddr_default * main_if_was_up and functions with declarations but missing definitions * hash_debug * orig_find * send_own_packet_work Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Joe Perches authored
Remove the last uses of MAC_FMT Signed-off-by:
Joe Perches <joe@perches.com> [sven.eckelmann@gmx.de: Adapted for current batman-adv version] Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Marek Lindner authored
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>
-
Sven Eckelmann authored
Files which represent more than a single attribute aren't allowed in sysfs. As we have some files which aren't essential and are lists or tables aggregated from data from different places inside batman-adv, we must place them in a filesystem without such a restriction. Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
- 11 May, 2010 6 commits
-
-
Sven Eckelmann authored
Documentation/CodingStyle sets a strongly prefered limit of 80 characters per line in "Chapter 2: Breaking long lines and strings". Strings must be broken into smaller parts and long statements must be rewritten. Reported-by:
Mikal Sande <mikal.sande@gmail.com> Reported-by:
Mark Rankilor <reodge@gmail.com> Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de> Signed-off-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Marek Lindner authored
Instead of having a single /proc file "interfaces" in which you have to echo the wanted interface batman-adv will create a subfolder in each suitable /sys/class/net folder. This subfolder contains files for the interface specific settings. For example, mesh_iface to add/remove an interface from a virtual mesh network (at the moment only bat0 is supported). Example: echo bat0 > /sys/class/net/eth0/batman-adv/mesh_iface to deactivate: echo none > /sys/class/net/eth0/batman-adv/mesh_iface Interfaces which are not compatible with batman-adv won't contain the batman-adv folder, therefore can't be activated. Not supported are: loopback, non-ethernet, non-ARP and virtual mesh network interfaces Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de> Signed-off-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Marek Lindner authored
converted files: vis_mode, vis_data Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de> Signed-off-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Marek Lindner authored
This is the first patch in a series of patches which aim to convert all batman-adv /proc files to sysfs. To keep the changes in a digestable size it has been split up into smaller chunks. During the transition period batman-adv will use /proc as well as sysfs. As a first step the following files have been converted: aggregate_ogm, originators, transtable_global, transtable_local Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de> Signed-off-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Luis de Bethencourt authored
This patch fixes the 31 unnecessary whitespaces before a quoted newline that the batman-adv files had. Signed-off-by:
Luis de Bethencourt <luisbg@ubuntu.com> [sven.eckelmann@gmx.de: Redone to apply against current version] Signed-off-by:
Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by:
Marek Lindner <lindner_marek@yahoo.de> Signed-off-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Simon Wunderlich authored
Signed-off-by:
Simon Wunderlich <siwu@hrz.tu-chemnitz.de> Signed-off-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
- 04 Mar, 2010 6 commits
-
-
Simon Wunderlich authored
Since we are now part of mainline, we don't need compat.h to allow building of the module with old versions of the kernel. Signed-off-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Andrew Lunn authored
printk() since kernel version 2.6.29 has supported printing MAC addresses directly, as an extension to the %p processing. This patch makes use of this for printk() and bat_dbg(). This will remove the overhead of using addr_to_string() which is normally never actually output. Fixed a typo found by Gus Wirth. Signed-off-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Simon Wunderlich <siwu@hrz.tu-chemnitz.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Andrew Lunn authored
Some embedded devices have very limited sources of entropy for the random number generator. It has been observed that the random MAC address on the interface bat0 is not always random. When testing with a collection of identical hardware, sometimes the bat0 device the same MAC address on multiple devices, causing mayhem. This patch allows the MAC address to be set by the user. Signed-off-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Simon Wunderlich <siwu@hrz.tu-chemnitz.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Simon Wunderlich authored
there are some kmallocs left which are not checked whether they succeeds or not, which might lead to corrupted data structures if the system memory is full. This patch should clean up the remaining unchecked kmalloc()s. Signed-off-by:
Simon Wunderlich <siwu@hrz.tu-chemnitz.de> Signed-off-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Simon Wunderlich authored
instead of dynamically registering hash iterators, calling functions are changed to register the iterator objects statically. The two advantages are: * no memory leaks when aborting from hash_iterate() * no calls to kmalloc/kfree, therefore a little faster/safer Tested with 9 QEMU instances, no obvious regression found. Signed-off-by:
Simon Wunderlich <siwu@hrz.tu-chemnitz.de> Signed-off-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Andrew Lunn authored
batman-adv used its own logging infrastructure. Replace this with standard kernel logging, printk(), with compile time and runtime options to enable/disable different debug levels. Signed-off-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
- 11 Dec, 2009 1 commit
-
-
Andrew Lunn 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. This is the first submission for inclusion in staging. Signed-off-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-