On Tue, Feb 19, 2013 at 09:08:44AM +0800, Marek Lindner wrote:
Hi Simon,
I've tested this (just test, no code review) in my 2.6.32 qemu (Debian squeeze, iproute from wheezy). It generally loads and batctl if add/del seems to work, but there is something weird going on with bridge interaction. After calling the following 3 commands:
brctl addbr br0 batctl if add eth0 ip link set dev eth0 master br0
I would expect that eth0 moved from bat0 to br0 (or some error is reported).
I feel some confusion here. It could very well be that 2.6.32 did not yet support this kind of "interface transfer". You could repeat your test without any of the later patches (just go back to the last stable release) to see what happens. It is very likely that our patches have nothing to do with that.
you are right - I've checked 2013.0.0, same behaviour - and now that you mention it, this is all completely independent from batman-adv/netlink. Sorry for reporting stuff like that ... :)
Also it seems that batctl (2010.0.0, from debian stable) reports all devices, even if they are not added to batman-adv. It reports them as "not in use". This confused me, haven't seen that on other systems (unused devices are just skipped ...). After upding to the wheezy version of batctl (2012.1.0), this effect was gone.
Anyway, I've tested a little more and still I see some issues:
These are the tests we should do in order to confirm the compat patch in question:
- batctl if add $iface && some OGMS here && batctl if del $iface
This works fine, I see OGMs, and the interface is removed cleanly.
- ip link add dev bat0 type batadv
This works fine.
ip link set dev $iface master bat0
This doesn't work. eth0 is not added to batman. To further test, I've added it via batctl.
some OGMS here
yes (bat0 created with ip, eth0 added using batctl)
ip link set dev $iface nomaster
has no effect
ip link del dev bat0
works.
Even more interesting are combinations of those:
- batctl if add $iface && some OGMS here && ip link set dev $iface nomaster &&
ip link del dev bat0
- ip link add dev bat0 type batadv && ip link set dev $iface master bat0 &&
some OGMS here && batctl if del $iface
Some of these combinations are tested above, but I'd suggest we should fix the general case first. :)
Cheers, Simon