aboutsummaryrefslogtreecommitdiffstats
path: root/net/batman-adv/bat_v_ogm.h
diff options
context:
space:
mode:
authorLinus Lüssing <linus.luessing@c0d3.blue>2019-08-04 20:54:53 +0200
committerSimon Wunderlich <sw@simonwunderlich.de>2019-08-04 22:22:00 +0200
commitf89255a02f1d75d8e1b9d1c31435fcb64840cb2a (patch)
tree8d31f7696cde50b76d5710e2c90b75339a57305e /net/batman-adv/bat_v_ogm.h
parentbatman-adv: Replace usage of strlcpy with strscpy (diff)
downloadlinux-dev-f89255a02f1d75d8e1b9d1c31435fcb64840cb2a.tar.xz
linux-dev-f89255a02f1d75d8e1b9d1c31435fcb64840cb2a.zip
batman-adv: BATMAN_V: introduce per hard-iface OGMv2 queues
In preparation for the OGMv2 packet aggregation, hold OGMv2 packets for up to BATADV_MAX_AGGREGATION_MS milliseconds (100ms) on per hard-interface queues, before transmitting. This allows us to later squash multiple OGMs into a single frame and transmission for reduced overhead. Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue> Signed-off-by: Sven Eckelmann <sven@narfation.org> Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
Diffstat (limited to 'net/batman-adv/bat_v_ogm.h')
-rw-r--r--net/batman-adv/bat_v_ogm.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/batman-adv/bat_v_ogm.h b/net/batman-adv/bat_v_ogm.h
index 2a50df7fc2bf..bf16d040461d 100644
--- a/net/batman-adv/bat_v_ogm.h
+++ b/net/batman-adv/bat_v_ogm.h
@@ -11,10 +11,13 @@
#include <linux/skbuff.h>
#include <linux/types.h>
+#include <linux/workqueue.h>
int batadv_v_ogm_init(struct batadv_priv *bat_priv);
void batadv_v_ogm_free(struct batadv_priv *bat_priv);
+void batadv_v_ogm_aggr_work(struct work_struct *work);
int batadv_v_ogm_iface_enable(struct batadv_hard_iface *hard_iface);
+void batadv_v_ogm_iface_disable(struct batadv_hard_iface *hard_iface);
struct batadv_orig_node *batadv_v_ogm_orig_get(struct batadv_priv *bat_priv,
const u8 *addr);
void batadv_v_ogm_primary_iface_set(struct batadv_hard_iface *primary_iface);