Hi all,
I'm running batman-adv-kernelland r1102 on linux-2.6.21.5. I've found
I can fairly reliably deadlock the kernel by disabling and re-enabling
batman a few times, e.g.
$ echo ath0 > /proc/net/batman-adv/interfaces
wait a while...
$ echo > /proc/net/batman-adv/interfaces
wait a while and repeat.
It appears that this is deadlocking the kernel somehow, as syscalls
never return, e.g. 'ps' prints the header and then freezes.
Our interface configuration system brings interfaces up and down on re-
configure, so we'd like the batman interface to be able to withstand
this use case. I will try to start looking through the code, but I
thought I'd throw the problem out there to see what others more
experienced with it think.
Thanks all,
--
Scott Raynel
WAND Network Research Group
Department of Computer Science
University of Waikato
New Zealand
Hi,
Is it possible to use BATMAN with two backbone network cards?
I am hoping to make nodes with three radio cards - two at 5Ghz and one
2Ghz card for customer access.
I have been playing around with openwrt on gateworks boards (4 miniPCI
slots) and three radio cards. In my testing I've only been using typical
AP / STA setups on the "backbone" radio cards and I'm using OSPF to handle
dynamic routing. I'm handing my MESH "intelligence" (making one node's
STA card associate to a close-by strong signal node's AP card) with Perl
scripts.
I've got problems with my test system not avoiding circular loops and
ignoring the bandwidth supply node(s). I think I've gone on the wrong
path trying to re-invent the MESH wheel so I'm now looking into BATMAN as
a possibility.
thanks for any information!
Derek
--
Derek C
Hello,
I had batman 0.2 + freifunk working.
Each router was 10.0.0.* and had the same wlan address. Something
happened and then batman just started silently dying on the gateway
router 10.0.0.1 (with the address 10.0.2.146 from the router connected
to the internet). I erased nvram and reinstalled with separate 10.0.5.*
addresses for the wlan and that seemed to work (with no http access to
the routers and ssh via the 10.0.5.* addresses).
I had wanted to stay with batman 0.2 because of the web interface.
That's no longer practical. 0.3 is the preferred batman, so I should
use it. I've taken a look at the docs:
https://dev.open-mesh.net/svn/batman/trunk/batman/INSTALL
and
"RoutingVoodoo."
assuming a fresh install of freifunk with *no OLSR* running what
parameters would I want to set:
adsl
|
10.0.2.1 [home router ppoe]
|
freifunk 1 [gateway]
does subnet matter?
lan 10.0.0.1
wlan do I want 10.0.0.1 or 10.0.5.1?
wan via dhcp?
essid, bssid, channel all the same for ff routers
myessid, 02:CA:FF:EE:BA:BE, 12, ad-hoc
what batman parameters will I want to pass?
shall I create an init script or is there one? 0.2 had the init and
the minutely 'watchout4batman'
|
|
|
freifunk n non-gateway nodes
lan 10.0.0.n?
wlan?
wan via dhcp?
batman -p 10.0.0.1 -r 3 (or 10.0.2.146 freifunk 1's wan address)
eth1 br0 vlan1?
Anything else I should be aware of? Any other recommendations? (e.g.
"Scrap that this is exactly how you do it: 1. 2. 3. "
__copy_from_user returns the number of bytes it could not read when it
fails. It makes no sense to process the data further if we don't have it
in a complete form.
access_ok will only check if it may be valid but not if it is definitly valid.
Signed-off-by: Sven Eckelmann <sven.eckelmann(a)gmx.de>
---
batman-adv-kernelland/batman-core/device.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/batman-adv-kernelland/batman-core/device.c b/batman-adv-kernelland/batman-core/device.c
index 6608f13..c401634 100644
--- a/batman-adv-kernelland/batman-core/device.c
+++ b/batman-adv-kernelland/batman-core/device.c
@@ -229,7 +229,9 @@ ssize_t bat_device_write(struct file *file, const char __user *buff, size_t len,
if (!access_ok(VERIFY_READ, buff, sizeof(struct icmp_packet)))
return -EFAULT;
- __copy_from_user(&icmp_packet, buff, sizeof(icmp_packet));
+ if (__copy_from_user(&icmp_packet, buff, sizeof(icmp_packet))) {
+ return -EFAULT;
+ }
if ((icmp_packet.packet_type == BAT_ICMP) && (icmp_packet.msg_type == ECHO_REQUEST)) {
--
1.5.6.3
Hi there,
Not sure how you guys want patches submitted, so point me in the right
direction if this is not it. Here's a simple patch that enables
compilation on linux-2.6.21 (and possibly earlier, though I've tested
2.6.16 and it doesn't work).
Cheers,
--
Scott Raynel
WAND Network Research Group
Department of Computer Science
University of Waikato
New Zealand
Hello,
I try to research some possibilities to implement multipath-routing (MPR) to BATMAN Advanced. There are two different ways:
1. one-channel-MPR and 2. multi-channel-MPR.
To the first:
The idea is to use two paths through the mesh and to avoid crossed. I have build a simple model to show that it make sense. The model shows that it can take 67% of the time that needs BATMAN with a single path. I still implemented it into userspace of revision 1060. The next step is to proof, that it works...or that it doesn't work...!
To the second:
The idea is the use of multi paths with multi interfaces. Packets can be transmitted over two different ways without any interference problems. At the moment I'm analyzing the problems and the requirements for this.
The better way is of course the second one. The advantage of using one channel is that there is just one wireless interface needed.
Daniel
--
Psssst! Schon vom neuen GMX MultiMessenger gehört?
Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger
Hi,
I'm testing BATMAN Advanced Kernel Land and I've found a problem.
I'm using BATMAN-adv over OpenWRT.
My test is:
3 virtual machine
2 Ethernet card for each virtual machine
3 Vlan
So we have a loop and I hoped that BATMAN solve this but...
What's happen is that each virtual machine can send message to itself
using the 2 interface.
It passes because the BATMAN message are re-broadcasted and at a
certain point 1 of machine start to communicate only with itself,
disappearing from the network.
I need helppp!!!
Paolo Cipollone