netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Antonio Quartulli <antonio@meshcoding.com>
To: davem@davemloft.net
Cc: netdev@vger.kernel.org, b.a.t.m.a.n@lists.open-mesh.org,
	Sven Eckelmann <sven@narfation.org>,
	Marek Lindner <mareklindner@neomailbox.ch>,
	Antonio Quartulli <antonio@meshcoding.com>
Subject: [PATCH 11/16] batman-adv: Use safer default config for optional features
Date: Fri, 29 May 2015 11:05:23 +0200	[thread overview]
Message-ID: <1432890328-8247-12-git-send-email-antonio@meshcoding.com> (raw)
In-Reply-To: <1432890328-8247-1-git-send-email-antonio@meshcoding.com>

From: Sven Eckelmann <sven@narfation.org>

The current default settings for optional features in batman-adv seems to
be based around the idea that the user only compiles what he requires. They
will automatically enabled when they are compiled in. For example the
network coding part of batman-adv is by default disabled in the out-of-tree
module but will be enabled when the code is compiled during the module
build.

But distributions like Debian just enable all features of the batman-adv
kernel module and hope that more experimental features or features with
possible negative effects have to be enabled using some runtime
configuration interface.

The network_coding feature can help in specific setups but also has
drawbacks and is not disabled by default in the out-of-tree module.
Disabling by default in the runtime config seems to be also quite sane.

The bridge_loop_avoidance is the only feature which is disabled by default
but may be necessary even in simple setups. Packet loops may even be
created during the initial node setup when this is not enabled. This is
different than STP on bridges because mesh is usually used on Adhoc WiFi.
Having two nodes (by accident) in the same LAN segment and in the same mesh
network is rather common in this situation.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
Acked-by: Martin Hundebøll <martin@hundeboll.net>
Signed-off-by: Marek Lindner <mareklindner@neomailbox.ch>
Signed-off-by: Antonio Quartulli <antonio@meshcoding.com>
---
 net/batman-adv/network-coding.c | 2 +-
 net/batman-adv/soft-interface.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/net/batman-adv/network-coding.c b/net/batman-adv/network-coding.c
index 89e1d47..4cb70bb 100644
--- a/net/batman-adv/network-coding.c
+++ b/net/batman-adv/network-coding.c
@@ -155,7 +155,7 @@ err:
  */
 void batadv_nc_init_bat_priv(struct batadv_priv *bat_priv)
 {
-	atomic_set(&bat_priv->network_coding, 1);
+	atomic_set(&bat_priv->network_coding, 0);
 	bat_priv->nc.min_tq = 200;
 	bat_priv->nc.max_fwd_delay = 10;
 	bat_priv->nc.max_buffer_time = 200;
diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c
index d85a45c..9426b83 100644
--- a/net/batman-adv/soft-interface.c
+++ b/net/batman-adv/soft-interface.c
@@ -732,7 +732,7 @@ static int batadv_softif_init_late(struct net_device *dev)
 	atomic_set(&bat_priv->aggregated_ogms, 1);
 	atomic_set(&bat_priv->bonding, 0);
 #ifdef CONFIG_BATMAN_ADV_BLA
-	atomic_set(&bat_priv->bridge_loop_avoidance, 0);
+	atomic_set(&bat_priv->bridge_loop_avoidance, 1);
 #endif
 #ifdef CONFIG_BATMAN_ADV_DAT
 	atomic_set(&bat_priv->distributed_arp_table, 1);
-- 
2.4.2

  parent reply	other threads:[~2015-05-29  9:21 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-29  9:05 pull request: batman-adv 2015-05-29 Antonio Quartulli
2015-05-29  9:05 ` [PATCH 01/16] batman-adv: Start new development cycle Antonio Quartulli
2015-05-29  9:05 ` [PATCH 02/16] batman-adv: update copyright years for 2015 Antonio Quartulli
2015-05-29  9:05 ` [PATCH 03/16] batman-adv: Check total_size when queueing fragments Antonio Quartulli
2015-05-29  9:05 ` [PATCH 04/16] batman-adv: Use only queued fragments when merging Antonio Quartulli
2015-05-29  9:05 ` [PATCH 05/16] batman-adv: debugfs, avoid compiling for !DEBUG_FS Antonio Quartulli
2015-05-29  9:05 ` [PATCH 06/16] batman-adv: tvlv realloc, move error handling into if block Antonio Quartulli
2015-05-29  9:05 ` [PATCH 07/16] batman-adv: Makefile, Sort alphabetically Antonio Quartulli
2015-05-29  9:05 ` [PATCH 08/16] batman-adv: iv_ogm_iface_enable, direct return values Antonio Quartulli
2015-05-29  9:05 ` [PATCH 09/16] batman-adv: iv_ogm_aggr_packet, bool return value Antonio Quartulli
2015-05-29  9:05 ` [PATCH 10/16] batman-adv: iv_ogm_send_to_if, declare char* as const Antonio Quartulli
2015-05-29  9:05 ` Antonio Quartulli [this message]
2015-05-29  9:05 ` [PATCH 12/16] batman-adv: checkpatch - comparison to NULL could be rewritten Antonio Quartulli
2015-05-29  9:05 ` [PATCH 13/16] batman-adv: checkpatch - spaces preferred around that '*' Antonio Quartulli
2015-05-29  9:05 ` [PATCH 14/16] batman-adv: iv_ogm_can_aggregate, code readability Antonio Quartulli
2015-05-29  9:05 ` [PATCH 15/16] batman-adv: iv_ogm_orig_update, remove unnecessary brackets Antonio Quartulli
2015-05-29  9:05 ` [PATCH 16/16] batman-adv: Use common declaration order in *_send_skb_(packet|unicast) Antonio Quartulli
2015-05-31  8:08 ` pull request: batman-adv 2015-05-29 David Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1432890328-8247-12-git-send-email-antonio@meshcoding.com \
    --to=antonio@meshcoding.com \
    --cc=b.a.t.m.a.n@lists.open-mesh.org \
    --cc=davem@davemloft.net \
    --cc=mareklindner@neomailbox.ch \
    --cc=netdev@vger.kernel.org \
    --cc=sven@narfation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).