b.a.t.m.a.n.lists.open-mesh.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/5] Implementation of a Stateless Multicast Packet Type
@ 2022-12-26 16:15 Linus Lüssing
  2022-12-26 16:15 ` [PATCH v2 1/5] batman-adv: mcast: remove now redundant single ucast forwarding Linus Lüssing
                   ` (4 more replies)
  0 siblings, 5 replies; 11+ messages in thread
From: Linus Lüssing @ 2022-12-26 16:15 UTC (permalink / raw)
  To: b.a.t.m.a.n

Hi,

The following patchset implements a stateless, TVLV capable batman-adv
multicast packet type.

The new batman-adv multicast packet type allows to contain several
originator destination MAC addresses within a TVLV. Routers on the way will
potentially split the batman-adv multicast packet and adjust its tracker
TVLV contents.

Routing decisions are still based on the selected BATMAN IV or BATMAN V
routing algorithm. So this new batman-adv multicast packet type retains
the same loop-free properties.

The purpose of this new packet type is to allow to forward an IP
multicast packet with less transmissions / overhead than the
multicast-via-multiple-unicasts approach. Or to reach a lot more
destinations (currently up to 196, depending on the payload size, see
Wiki documentation for details) than with the default multicast fanout
for the via-unicasts approach.

This will allow using applications like mDNS again in several Freifunk
communities. And with less transmissions will also make more bulky
multicast applications, like media streaming (to an assessable amount of
receivers) a lot more feasible.

This approach is way simpler than the original multicast (tracker) packet
approach we envisioned years ago. As it involves no maintenance of an
extra, state based multicast routing table. However the TVLV capability
should allow to extend things later, to split control and data plane a bit
more for instance, to further increase the number of destinations, to
further reduce overhead.

A compact overview can be found in the Wiki here, including limitations:

https://www.open-mesh.org/projects/batman-adv/wiki/Multicast-Packet-Type

Regards, Linus

---

Changelog v2:
* Add "[PATCH v2 0/5]" prefix to title of cover letter, so that
  Patchwork can hopefully find it - no other changes


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH v2 1/5] batman-adv: mcast: remove now redundant single ucast forwarding
  2022-12-26 16:15 [PATCH v2 0/5] Implementation of a Stateless Multicast Packet Type Linus Lüssing
@ 2022-12-26 16:15 ` Linus Lüssing
  2022-12-26 17:09   ` Sven Eckelmann
  2022-12-26 16:15 ` [PATCH v2 2/5] batman-adv: tvlv: prepare for tvlv enabled multicast packet type Linus Lüssing
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 11+ messages in thread
From: Linus Lüssing @ 2022-12-26 16:15 UTC (permalink / raw)
  To: b.a.t.m.a.n; +Cc: Linus Lüssing

The multicast code to send a multicast packet via multiple batman-adv
unicast packets is not only capable of sending to multiple but also to a
single node. Therefore we can safely remove the old, specialized, now
redundant multicast-to-single-unicast code.

The only functional change of this simplification is that the edge case
of allowing a multicast packet with an unsnoopable destination address
(224.0.0.0/24 or ff02::1) where only a single node has signaled interest
in it via the batman-adv want-all-unsnoopables multicast flag is now
transmitted via a batman-adv broadcast instead of a batman-adv unicast
packet. Maintaining this edge case feature does not seem worth the extra
lines of code and people should just not expect to be able to snoop and
optimize such unsnoopable multicast addresses when bridges are involved.

While at it also renaming a few items in the batadv_forw_mode enum to
prepare for the new batman-adv multicast packet type.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
---
 net/batman-adv/multicast.c      | 248 ++------------------------------
 net/batman-adv/multicast.h      |  38 +----
 net/batman-adv/soft-interface.c |  25 ++--
 3 files changed, 33 insertions(+), 278 deletions(-)

diff --git a/net/batman-adv/multicast.c b/net/batman-adv/multicast.c
index 34897a15ad9d..dbe7fcfad512 100644
--- a/net/batman-adv/multicast.c
+++ b/net/batman-adv/multicast.c
@@ -1144,223 +1144,20 @@ static int batadv_mcast_forw_rtr_count(struct batadv_priv *bat_priv,
 	}
 }
 
-/**
- * batadv_mcast_forw_tt_node_get() - get a multicast tt node
- * @bat_priv: the bat priv with all the soft interface information
- * @ethhdr: the ether header containing the multicast destination
- *
- * Return: an orig_node matching the multicast address provided by ethhdr
- * via a translation table lookup. This increases the returned nodes refcount.
- */
-static struct batadv_orig_node *
-batadv_mcast_forw_tt_node_get(struct batadv_priv *bat_priv,
-			      struct ethhdr *ethhdr)
-{
-	return batadv_transtable_search(bat_priv, NULL, ethhdr->h_dest,
-					BATADV_NO_FLAGS);
-}
-
-/**
- * batadv_mcast_forw_ipv4_node_get() - get a node with an ipv4 flag
- * @bat_priv: the bat priv with all the soft interface information
- *
- * Return: an orig_node which has the BATADV_MCAST_WANT_ALL_IPV4 flag set and
- * increases its refcount.
- */
-static struct batadv_orig_node *
-batadv_mcast_forw_ipv4_node_get(struct batadv_priv *bat_priv)
-{
-	struct batadv_orig_node *tmp_orig_node, *orig_node = NULL;
-
-	rcu_read_lock();
-	hlist_for_each_entry_rcu(tmp_orig_node,
-				 &bat_priv->mcast.want_all_ipv4_list,
-				 mcast_want_all_ipv4_node) {
-		if (!kref_get_unless_zero(&tmp_orig_node->refcount))
-			continue;
-
-		orig_node = tmp_orig_node;
-		break;
-	}
-	rcu_read_unlock();
-
-	return orig_node;
-}
-
-/**
- * batadv_mcast_forw_ipv6_node_get() - get a node with an ipv6 flag
- * @bat_priv: the bat priv with all the soft interface information
- *
- * Return: an orig_node which has the BATADV_MCAST_WANT_ALL_IPV6 flag set
- * and increases its refcount.
- */
-static struct batadv_orig_node *
-batadv_mcast_forw_ipv6_node_get(struct batadv_priv *bat_priv)
-{
-	struct batadv_orig_node *tmp_orig_node, *orig_node = NULL;
-
-	rcu_read_lock();
-	hlist_for_each_entry_rcu(tmp_orig_node,
-				 &bat_priv->mcast.want_all_ipv6_list,
-				 mcast_want_all_ipv6_node) {
-		if (!kref_get_unless_zero(&tmp_orig_node->refcount))
-			continue;
-
-		orig_node = tmp_orig_node;
-		break;
-	}
-	rcu_read_unlock();
-
-	return orig_node;
-}
-
-/**
- * batadv_mcast_forw_ip_node_get() - get a node with an ipv4/ipv6 flag
- * @bat_priv: the bat priv with all the soft interface information
- * @ethhdr: an ethernet header to determine the protocol family from
- *
- * Return: an orig_node which has the BATADV_MCAST_WANT_ALL_IPV4 or
- * BATADV_MCAST_WANT_ALL_IPV6 flag, depending on the provided ethhdr, sets and
- * increases its refcount.
- */
-static struct batadv_orig_node *
-batadv_mcast_forw_ip_node_get(struct batadv_priv *bat_priv,
-			      struct ethhdr *ethhdr)
-{
-	switch (ntohs(ethhdr->h_proto)) {
-	case ETH_P_IP:
-		return batadv_mcast_forw_ipv4_node_get(bat_priv);
-	case ETH_P_IPV6:
-		return batadv_mcast_forw_ipv6_node_get(bat_priv);
-	default:
-		/* we shouldn't be here... */
-		return NULL;
-	}
-}
-
-/**
- * batadv_mcast_forw_unsnoop_node_get() - get a node with an unsnoopable flag
- * @bat_priv: the bat priv with all the soft interface information
- *
- * Return: an orig_node which has the BATADV_MCAST_WANT_ALL_UNSNOOPABLES flag
- * set and increases its refcount.
- */
-static struct batadv_orig_node *
-batadv_mcast_forw_unsnoop_node_get(struct batadv_priv *bat_priv)
-{
-	struct batadv_orig_node *tmp_orig_node, *orig_node = NULL;
-
-	rcu_read_lock();
-	hlist_for_each_entry_rcu(tmp_orig_node,
-				 &bat_priv->mcast.want_all_unsnoopables_list,
-				 mcast_want_all_unsnoopables_node) {
-		if (!kref_get_unless_zero(&tmp_orig_node->refcount))
-			continue;
-
-		orig_node = tmp_orig_node;
-		break;
-	}
-	rcu_read_unlock();
-
-	return orig_node;
-}
-
-/**
- * batadv_mcast_forw_rtr4_node_get() - get a node with an ipv4 mcast router flag
- * @bat_priv: the bat priv with all the soft interface information
- *
- * Return: an orig_node which has the BATADV_MCAST_WANT_NO_RTR4 flag unset and
- * increases its refcount.
- */
-static struct batadv_orig_node *
-batadv_mcast_forw_rtr4_node_get(struct batadv_priv *bat_priv)
-{
-	struct batadv_orig_node *tmp_orig_node, *orig_node = NULL;
-
-	rcu_read_lock();
-	hlist_for_each_entry_rcu(tmp_orig_node,
-				 &bat_priv->mcast.want_all_rtr4_list,
-				 mcast_want_all_rtr4_node) {
-		if (!kref_get_unless_zero(&tmp_orig_node->refcount))
-			continue;
-
-		orig_node = tmp_orig_node;
-		break;
-	}
-	rcu_read_unlock();
-
-	return orig_node;
-}
-
-/**
- * batadv_mcast_forw_rtr6_node_get() - get a node with an ipv6 mcast router flag
- * @bat_priv: the bat priv with all the soft interface information
- *
- * Return: an orig_node which has the BATADV_MCAST_WANT_NO_RTR6 flag unset
- * and increases its refcount.
- */
-static struct batadv_orig_node *
-batadv_mcast_forw_rtr6_node_get(struct batadv_priv *bat_priv)
-{
-	struct batadv_orig_node *tmp_orig_node, *orig_node = NULL;
-
-	rcu_read_lock();
-	hlist_for_each_entry_rcu(tmp_orig_node,
-				 &bat_priv->mcast.want_all_rtr6_list,
-				 mcast_want_all_rtr6_node) {
-		if (!kref_get_unless_zero(&tmp_orig_node->refcount))
-			continue;
-
-		orig_node = tmp_orig_node;
-		break;
-	}
-	rcu_read_unlock();
-
-	return orig_node;
-}
-
-/**
- * batadv_mcast_forw_rtr_node_get() - get a node with an ipv4/ipv6 router flag
- * @bat_priv: the bat priv with all the soft interface information
- * @ethhdr: an ethernet header to determine the protocol family from
- *
- * Return: an orig_node which has no BATADV_MCAST_WANT_NO_RTR4 or
- * BATADV_MCAST_WANT_NO_RTR6 flag, depending on the provided ethhdr, set and
- * increases its refcount.
- */
-static struct batadv_orig_node *
-batadv_mcast_forw_rtr_node_get(struct batadv_priv *bat_priv,
-			       struct ethhdr *ethhdr)
-{
-	switch (ntohs(ethhdr->h_proto)) {
-	case ETH_P_IP:
-		return batadv_mcast_forw_rtr4_node_get(bat_priv);
-	case ETH_P_IPV6:
-		return batadv_mcast_forw_rtr6_node_get(bat_priv);
-	default:
-		/* we shouldn't be here... */
-		return NULL;
-	}
-}
-
 /**
  * batadv_mcast_forw_mode() - check on how to forward a multicast packet
  * @bat_priv: the bat priv with all the soft interface information
- * @skb: The multicast packet to check
- * @orig: an originator to be set to forward the skb to
+ * @skb: the multicast packet to check
  * @is_routable: stores whether the destination is routable
  *
- * Return: the forwarding mode as enum batadv_forw_mode and in case of
- * BATADV_FORW_SINGLE set the orig to the single originator the skb
- * should be forwarded to.
+ * Return: The forwarding mode as enum batadv_forw_mode.
  */
 enum batadv_forw_mode
 batadv_mcast_forw_mode(struct batadv_priv *bat_priv, struct sk_buff *skb,
-		       struct batadv_orig_node **orig, int *is_routable)
+		       int *is_routable)
 {
 	int ret, tt_count, ip_count, unsnoop_count, total_count;
 	bool is_unsnoopable = false;
-	unsigned int mcast_fanout;
 	struct ethhdr *ethhdr;
 	int rtr_count = 0;
 
@@ -1369,7 +1166,7 @@ batadv_mcast_forw_mode(struct batadv_priv *bat_priv, struct sk_buff *skb,
 	if (ret == -ENOMEM)
 		return BATADV_FORW_NONE;
 	else if (ret < 0)
-		return BATADV_FORW_ALL;
+		return BATADV_FORW_BCAST;
 
 	ethhdr = eth_hdr(skb);
 
@@ -1382,32 +1179,15 @@ batadv_mcast_forw_mode(struct batadv_priv *bat_priv, struct sk_buff *skb,
 
 	total_count = tt_count + ip_count + unsnoop_count + rtr_count;
 
-	switch (total_count) {
-	case 1:
-		if (tt_count)
-			*orig = batadv_mcast_forw_tt_node_get(bat_priv, ethhdr);
-		else if (ip_count)
-			*orig = batadv_mcast_forw_ip_node_get(bat_priv, ethhdr);
-		else if (unsnoop_count)
-			*orig = batadv_mcast_forw_unsnoop_node_get(bat_priv);
-		else if (rtr_count)
-			*orig = batadv_mcast_forw_rtr_node_get(bat_priv,
-							       ethhdr);
-
-		if (*orig)
-			return BATADV_FORW_SINGLE;
-
-		fallthrough;
-	case 0:
+	if (!total_count)
 		return BATADV_FORW_NONE;
-	default:
-		mcast_fanout = atomic_read(&bat_priv->multicast_fanout);
+	else if (unsnoop_count)
+		return BATADV_FORW_BCAST;
 
-		if (!unsnoop_count && total_count <= mcast_fanout)
-			return BATADV_FORW_SOME;
-	}
+	if (total_count <= atomic_read(&bat_priv->multicast_fanout))
+		return BATADV_FORW_UCASTS;
 
-	return BATADV_FORW_ALL;
+	return BATADV_FORW_BCAST;
 }
 
 /**
@@ -1419,10 +1199,10 @@ batadv_mcast_forw_mode(struct batadv_priv *bat_priv, struct sk_buff *skb,
  *
  * Return: NET_XMIT_DROP in case of error or NET_XMIT_SUCCESS otherwise.
  */
-int batadv_mcast_forw_send_orig(struct batadv_priv *bat_priv,
-				struct sk_buff *skb,
-				unsigned short vid,
-				struct batadv_orig_node *orig_node)
+static int batadv_mcast_forw_send_orig(struct batadv_priv *bat_priv,
+				       struct sk_buff *skb,
+				       unsigned short vid,
+				       struct batadv_orig_node *orig_node)
 {
 	/* Avoid sending multicast-in-unicast packets to other BLA
 	 * gateways - they already got the frame from the LAN side
diff --git a/net/batman-adv/multicast.h b/net/batman-adv/multicast.h
index 8aec818d0bf6..a9770d8d6d36 100644
--- a/net/batman-adv/multicast.h
+++ b/net/batman-adv/multicast.h
@@ -17,23 +17,16 @@
  */
 enum batadv_forw_mode {
 	/**
-	 * @BATADV_FORW_ALL: forward the packet to all nodes (currently via
-	 *  classic flooding)
+	 * @BATADV_FORW_BCAST: forward the packet to all nodes via a batman-adv
+	 *  broadcast packet
 	 */
-	BATADV_FORW_ALL,
+	BATADV_FORW_BCAST,
 
 	/**
-	 * @BATADV_FORW_SOME: forward the packet to some nodes (currently via
-	 *  a multicast-to-unicast conversion and the BATMAN unicast routing
-	 *  protocol)
+	 * @BATADV_FORW_UCASTS: forward the packet to some nodes via one
+	 *  or more batman-adv unicast packets
 	 */
-	BATADV_FORW_SOME,
-
-	/**
-	 * @BATADV_FORW_SINGLE: forward the packet to a single node (currently
-	 *  via the BATMAN unicast routing protocol)
-	 */
-	BATADV_FORW_SINGLE,
+	BATADV_FORW_UCASTS,
 
 	/** @BATADV_FORW_NONE: don't forward, drop it */
 	BATADV_FORW_NONE,
@@ -43,14 +36,8 @@ enum batadv_forw_mode {
 
 enum batadv_forw_mode
 batadv_mcast_forw_mode(struct batadv_priv *bat_priv, struct sk_buff *skb,
-		       struct batadv_orig_node **mcast_single_orig,
 		       int *is_routable);
 
-int batadv_mcast_forw_send_orig(struct batadv_priv *bat_priv,
-				struct sk_buff *skb,
-				unsigned short vid,
-				struct batadv_orig_node *orig_node);
-
 int batadv_mcast_forw_send(struct batadv_priv *bat_priv, struct sk_buff *skb,
 			   unsigned short vid, int is_routable);
 
@@ -69,20 +56,9 @@ void batadv_mcast_purge_orig(struct batadv_orig_node *orig_node);
 
 static inline enum batadv_forw_mode
 batadv_mcast_forw_mode(struct batadv_priv *bat_priv, struct sk_buff *skb,
-		       struct batadv_orig_node **mcast_single_orig,
 		       int *is_routable)
 {
-	return BATADV_FORW_ALL;
-}
-
-static inline int
-batadv_mcast_forw_send_orig(struct batadv_priv *bat_priv,
-			    struct sk_buff *skb,
-			    unsigned short vid,
-			    struct batadv_orig_node *orig_node)
-{
-	kfree_skb(skb);
-	return NET_XMIT_DROP;
+	return BATADV_FORW_BCAST;
 }
 
 static inline int
diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c
index 0f5c0679b55a..b70d0167d2fa 100644
--- a/net/batman-adv/soft-interface.c
+++ b/net/batman-adv/soft-interface.c
@@ -196,8 +196,7 @@ static netdev_tx_t batadv_interface_tx(struct sk_buff *skb,
 	unsigned short vid;
 	u32 seqno;
 	int gw_mode;
-	enum batadv_forw_mode forw_mode = BATADV_FORW_SINGLE;
-	struct batadv_orig_node *mcast_single_orig = NULL;
+	enum batadv_forw_mode forw_mode = BATADV_FORW_BCAST;
 	int mcast_is_routable = 0;
 	int network_offset = ETH_HLEN;
 	__be16 proto;
@@ -301,14 +300,18 @@ static netdev_tx_t batadv_interface_tx(struct sk_buff *skb,
 send:
 		if (do_bcast && !is_broadcast_ether_addr(ethhdr->h_dest)) {
 			forw_mode = batadv_mcast_forw_mode(bat_priv, skb,
-							   &mcast_single_orig,
 							   &mcast_is_routable);
-			if (forw_mode == BATADV_FORW_NONE)
-				goto dropped;
-
-			if (forw_mode == BATADV_FORW_SINGLE ||
-			    forw_mode == BATADV_FORW_SOME)
+			switch (forw_mode) {
+			case BATADV_FORW_BCAST:
+				break;
+			case BATADV_FORW_UCASTS:
 				do_bcast = false;
+				break;
+			case BATADV_FORW_NONE:
+				fallthrough;
+			default:
+				goto dropped;
+			}
 		}
 	}
 
@@ -357,10 +360,7 @@ static netdev_tx_t batadv_interface_tx(struct sk_buff *skb,
 			if (ret)
 				goto dropped;
 			ret = batadv_send_skb_via_gw(bat_priv, skb, vid);
-		} else if (mcast_single_orig) {
-			ret = batadv_mcast_forw_send_orig(bat_priv, skb, vid,
-							  mcast_single_orig);
-		} else if (forw_mode == BATADV_FORW_SOME) {
+		} else if (forw_mode == BATADV_FORW_UCASTS) {
 			ret = batadv_mcast_forw_send(bat_priv, skb, vid,
 						     mcast_is_routable);
 		} else {
@@ -386,7 +386,6 @@ static netdev_tx_t batadv_interface_tx(struct sk_buff *skb,
 dropped_freed:
 	batadv_inc_counter(bat_priv, BATADV_CNT_TX_DROPPED);
 end:
-	batadv_orig_node_put(mcast_single_orig);
 	batadv_hardif_put(primary_if);
 	return NETDEV_TX_OK;
 }
-- 
2.39.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v2 2/5] batman-adv: tvlv: prepare for tvlv enabled multicast packet type
  2022-12-26 16:15 [PATCH v2 0/5] Implementation of a Stateless Multicast Packet Type Linus Lüssing
  2022-12-26 16:15 ` [PATCH v2 1/5] batman-adv: mcast: remove now redundant single ucast forwarding Linus Lüssing
@ 2022-12-26 16:15 ` Linus Lüssing
  2022-12-26 17:33   ` Sven Eckelmann
  2022-12-26 16:15 ` [PATCH v2 3/5] batman-adv: mcast: implement multicast packet reception and forwarding Linus Lüssing
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 11+ messages in thread
From: Linus Lüssing @ 2022-12-26 16:15 UTC (permalink / raw)
  To: b.a.t.m.a.n; +Cc: Linus Lüssing

Prepare TVLV infrastructure for more packet types, in particular the
upcoming batman-adv multicast packet type.

For that swap the OGM vs. unicast-tvlv packet boolean indicator to an
explicit unsigned integer packet type variable. And provide the skb
to a call to batadv_tvlv_containers_process(), as later the multicast
packet's TVLV handler will need to have access not only to the TVLV but
the full skb for forwarding. Forwarding will be invoked from the
multicast packet's TVLVs' contents later.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
---
 include/uapi/linux/batadv_packet.h     |  2 +
 net/batman-adv/bat_v_ogm.c             |  4 +-
 net/batman-adv/distributed-arp-table.c |  2 +-
 net/batman-adv/gateway_common.c        |  2 +-
 net/batman-adv/multicast.c             |  2 +-
 net/batman-adv/routing.c               |  7 ++-
 net/batman-adv/translation-table.c     |  4 +-
 net/batman-adv/tvlv.c                  | 71 ++++++++++++++++++--------
 net/batman-adv/tvlv.h                  |  8 +--
 net/batman-adv/types.h                 |  6 +++
 10 files changed, 73 insertions(+), 35 deletions(-)

diff --git a/include/uapi/linux/batadv_packet.h b/include/uapi/linux/batadv_packet.h
index ea4692c339ce..9204e4494b25 100644
--- a/include/uapi/linux/batadv_packet.h
+++ b/include/uapi/linux/batadv_packet.h
@@ -26,6 +26,7 @@
  * @BATADV_CODED: network coded packets
  * @BATADV_ELP: echo location packets for B.A.T.M.A.N. V
  * @BATADV_OGM2: originator messages for B.A.T.M.A.N. V
+ * @BATADV_MCAST: multicast packet with multiple destination addresses
  *
  * @BATADV_UNICAST: unicast packets carrying unicast payload traffic
  * @BATADV_UNICAST_FRAG: unicast packets carrying a fragment of the original
@@ -42,6 +43,7 @@ enum batadv_packettype {
 	BATADV_CODED            = 0x02,
 	BATADV_ELP		= 0x03,
 	BATADV_OGM2		= 0x04,
+	BATADV_MCAST            = 0x05,
 	/* 0x40 - 0x7f: unicast */
 #define BATADV_UNICAST_MIN     0x40
 	BATADV_UNICAST          = 0x40,
diff --git a/net/batman-adv/bat_v_ogm.c b/net/batman-adv/bat_v_ogm.c
index 033639df96d8..296fcff487bc 100644
--- a/net/batman-adv/bat_v_ogm.c
+++ b/net/batman-adv/bat_v_ogm.c
@@ -800,8 +800,8 @@ batadv_v_ogm_process_per_outif(struct batadv_priv *bat_priv,
 
 	/* only unknown & newer OGMs contain TVLVs we are interested in */
 	if (seqno_age > 0 && if_outgoing == BATADV_IF_DEFAULT)
-		batadv_tvlv_containers_process(bat_priv, true, orig_node,
-					       NULL, NULL,
+		batadv_tvlv_containers_process(bat_priv, BATADV_OGM2, orig_node,
+					       NULL,
 					       (unsigned char *)(ogm2 + 1),
 					       ntohs(ogm2->tvlv_len));
 
diff --git a/net/batman-adv/distributed-arp-table.c b/net/batman-adv/distributed-arp-table.c
index fefb51a5f606..6968e55eb971 100644
--- a/net/batman-adv/distributed-arp-table.c
+++ b/net/batman-adv/distributed-arp-table.c
@@ -822,7 +822,7 @@ int batadv_dat_init(struct batadv_priv *bat_priv)
 	batadv_dat_start_timer(bat_priv);
 
 	batadv_tvlv_handler_register(bat_priv, batadv_dat_tvlv_ogm_handler_v1,
-				     NULL, BATADV_TVLV_DAT, 1,
+				     NULL, NULL, BATADV_TVLV_DAT, 1,
 				     BATADV_TVLV_HANDLER_OGM_CIFNOTFND);
 	batadv_dat_tvlv_container_update(bat_priv);
 	return 0;
diff --git a/net/batman-adv/gateway_common.c b/net/batman-adv/gateway_common.c
index 9349c76f30c5..6a964a773f57 100644
--- a/net/batman-adv/gateway_common.c
+++ b/net/batman-adv/gateway_common.c
@@ -259,7 +259,7 @@ void batadv_gw_init(struct batadv_priv *bat_priv)
 		atomic_set(&bat_priv->gw.sel_class, 1);
 
 	batadv_tvlv_handler_register(bat_priv, batadv_gw_tvlv_ogm_handler_v1,
-				     NULL, BATADV_TVLV_GW, 1,
+				     NULL, NULL, BATADV_TVLV_GW, 1,
 				     BATADV_TVLV_HANDLER_OGM_CIFNOTFND);
 }
 
diff --git a/net/batman-adv/multicast.c b/net/batman-adv/multicast.c
index dbe7fcfad512..548ab08d96fa 100644
--- a/net/batman-adv/multicast.c
+++ b/net/batman-adv/multicast.c
@@ -1827,7 +1827,7 @@ static void batadv_mcast_tvlv_ogm_handler(struct batadv_priv *bat_priv,
 void batadv_mcast_init(struct batadv_priv *bat_priv)
 {
 	batadv_tvlv_handler_register(bat_priv, batadv_mcast_tvlv_ogm_handler,
-				     NULL, BATADV_TVLV_MCAST, 2,
+				     NULL, NULL, BATADV_TVLV_MCAST, 2,
 				     BATADV_TVLV_HANDLER_OGM_CIFNOTFND);
 
 	INIT_DELAYED_WORK(&bat_priv->mcast.work, batadv_mcast_mla_update);
diff --git a/net/batman-adv/routing.c b/net/batman-adv/routing.c
index 83f31494ea4d..163cd43c4821 100644
--- a/net/batman-adv/routing.c
+++ b/net/batman-adv/routing.c
@@ -1073,10 +1073,9 @@ int batadv_recv_unicast_tvlv(struct sk_buff *skb,
 	if (tvlv_buff_len > skb->len - hdr_size)
 		goto free_skb;
 
-	ret = batadv_tvlv_containers_process(bat_priv, false, NULL,
-					     unicast_tvlv_packet->src,
-					     unicast_tvlv_packet->dst,
-					     tvlv_buff, tvlv_buff_len);
+	ret = batadv_tvlv_containers_process(bat_priv, BATADV_UNICAST_TVLV,
+					     NULL, skb, tvlv_buff,
+					     tvlv_buff_len);
 
 	if (ret != NET_RX_SUCCESS) {
 		ret = batadv_route_unicast_packet(skb, recv_if);
diff --git a/net/batman-adv/translation-table.c b/net/batman-adv/translation-table.c
index 01d30c1e412c..36ca31252a73 100644
--- a/net/batman-adv/translation-table.c
+++ b/net/batman-adv/translation-table.c
@@ -4168,11 +4168,11 @@ int batadv_tt_init(struct batadv_priv *bat_priv)
 	}
 
 	batadv_tvlv_handler_register(bat_priv, batadv_tt_tvlv_ogm_handler_v1,
-				     batadv_tt_tvlv_unicast_handler_v1,
+				     batadv_tt_tvlv_unicast_handler_v1, NULL,
 				     BATADV_TVLV_TT, 1, BATADV_NO_FLAGS);
 
 	batadv_tvlv_handler_register(bat_priv, NULL,
-				     batadv_roam_tvlv_unicast_handler_v1,
+				     batadv_roam_tvlv_unicast_handler_v1, NULL,
 				     BATADV_TVLV_ROAM, 1, BATADV_NO_FLAGS);
 
 	INIT_DELAYED_WORK(&bat_priv->tt.work, batadv_tt_purge);
diff --git a/net/batman-adv/tvlv.c b/net/batman-adv/tvlv.c
index 7ec2e2343884..258a23e6e5a8 100644
--- a/net/batman-adv/tvlv.c
+++ b/net/batman-adv/tvlv.c
@@ -352,10 +352,9 @@ u16 batadv_tvlv_container_ogm_append(struct batadv_priv *bat_priv,
  *  appropriate handlers
  * @bat_priv: the bat priv with all the soft interface information
  * @tvlv_handler: tvlv callback function handling the tvlv content
- * @ogm_source: flag indicating whether the tvlv is an ogm or a unicast packet
+ * @packet_type: indicates for which packet type the TVLV handler is called
  * @orig_node: orig node emitting the ogm packet
- * @src: source mac address of the unicast packet
- * @dst: destination mac address of the unicast packet
+ * @skb: the skb the TVLV handler is called for
  * @tvlv_value: tvlv content
  * @tvlv_value_len: tvlv content length
  *
@@ -364,15 +363,17 @@ u16 batadv_tvlv_container_ogm_append(struct batadv_priv *bat_priv,
  */
 static int batadv_tvlv_call_handler(struct batadv_priv *bat_priv,
 				    struct batadv_tvlv_handler *tvlv_handler,
-				    bool ogm_source,
+				    u8 packet_type,
 				    struct batadv_orig_node *orig_node,
-				    u8 *src, u8 *dst,
-				    void *tvlv_value, u16 tvlv_value_len)
+				    struct sk_buff *skb, void *tvlv_value,
+				    u16 tvlv_value_len)
 {
 	if (!tvlv_handler)
 		return NET_RX_SUCCESS;
 
-	if (ogm_source) {
+	switch (packet_type) {
+	case BATADV_IV_OGM:
+	case BATADV_OGM2:
 		if (!tvlv_handler->ogm_handler)
 			return NET_RX_SUCCESS;
 
@@ -383,19 +384,37 @@ static int batadv_tvlv_call_handler(struct batadv_priv *bat_priv,
 					  BATADV_NO_FLAGS,
 					  tvlv_value, tvlv_value_len);
 		tvlv_handler->flags |= BATADV_TVLV_HANDLER_OGM_CALLED;
-	} else {
-		if (!src)
-			return NET_RX_SUCCESS;
+		break;
+	case BATADV_UNICAST_TVLV:
+		u8 *src;
+		u8 *dst;
 
-		if (!dst)
+		if (!skb)
 			return NET_RX_SUCCESS;
 
 		if (!tvlv_handler->unicast_handler)
 			return NET_RX_SUCCESS;
 
+		src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
+		dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
+
 		return tvlv_handler->unicast_handler(bat_priv, src,
 						     dst, tvlv_value,
 						     tvlv_value_len);
+	case BATADV_MCAST:
+		unsigned int tvlv_offset;
+
+		if (!skb)
+			return NET_RX_SUCCESS;
+
+		if (!tvlv_handler->mcast_handler)
+			return NET_RX_SUCCESS;
+
+		tvlv_offset = (unsigned char *)tvlv_value - skb->data;
+		skb_set_network_header(skb, tvlv_offset);
+		skb_set_transport_header(skb, tvlv_offset + tvlv_value_len);
+
+		return tvlv_handler->mcast_handler(bat_priv, skb);
 	}
 
 	return NET_RX_SUCCESS;
@@ -405,10 +424,9 @@ static int batadv_tvlv_call_handler(struct batadv_priv *bat_priv,
  * batadv_tvlv_containers_process() - parse the given tvlv buffer to call the
  *  appropriate handlers
  * @bat_priv: the bat priv with all the soft interface information
- * @ogm_source: flag indicating whether the tvlv is an ogm or a unicast packet
+ * @packet_type: indicates for which packet type the TVLV handler is called
  * @orig_node: orig node emitting the ogm packet
- * @src: source mac address of the unicast packet
- * @dst: destination mac address of the unicast packet
+ * @skb: the skb the TVLV handler is called for
  * @tvlv_value: tvlv content
  * @tvlv_value_len: tvlv content length
  *
@@ -416,10 +434,10 @@ static int batadv_tvlv_call_handler(struct batadv_priv *bat_priv,
  * handler callbacks.
  */
 int batadv_tvlv_containers_process(struct batadv_priv *bat_priv,
-				   bool ogm_source,
+				   u8 packet_type,
 				   struct batadv_orig_node *orig_node,
-				   u8 *src, u8 *dst,
-				   void *tvlv_value, u16 tvlv_value_len)
+				   struct sk_buff *skb, void *tvlv_value,
+				   u16 tvlv_value_len)
 {
 	struct batadv_tvlv_handler *tvlv_handler;
 	struct batadv_tvlv_hdr *tvlv_hdr;
@@ -441,20 +459,24 @@ int batadv_tvlv_containers_process(struct batadv_priv *bat_priv,
 						       tvlv_hdr->version);
 
 		ret |= batadv_tvlv_call_handler(bat_priv, tvlv_handler,
-						ogm_source, orig_node,
-						src, dst, tvlv_value,
+						packet_type, orig_node, skb,
+						tvlv_value,
 						tvlv_value_cont_len);
 		batadv_tvlv_handler_put(tvlv_handler);
 		tvlv_value = (u8 *)tvlv_value + tvlv_value_cont_len;
 		tvlv_value_len -= tvlv_value_cont_len;
 	}
 
-	if (!ogm_source)
+	if (packet_type != BATADV_IV_OGM &&
+	    packet_type != BATADV_OGM2)
 		return ret;
 
 	rcu_read_lock();
 	hlist_for_each_entry_rcu(tvlv_handler,
 				 &bat_priv->tvlv.handler_list, list) {
+		if (!tvlv_handler->ogm_handler)
+			continue;
+
 		if ((tvlv_handler->flags & BATADV_TVLV_HANDLER_OGM_CIFNOTFND) &&
 		    !(tvlv_handler->flags & BATADV_TVLV_HANDLER_OGM_CALLED))
 			tvlv_handler->ogm_handler(bat_priv, orig_node,
@@ -490,7 +512,7 @@ void batadv_tvlv_ogm_receive(struct batadv_priv *bat_priv,
 
 	tvlv_value = batadv_ogm_packet + 1;
 
-	batadv_tvlv_containers_process(bat_priv, true, orig_node, NULL, NULL,
+	batadv_tvlv_containers_process(bat_priv, BATADV_IV_OGM, orig_node, NULL,
 				       tvlv_value, tvlv_value_len);
 }
 
@@ -504,6 +526,10 @@ void batadv_tvlv_ogm_receive(struct batadv_priv *bat_priv,
  * @uptr: unicast tvlv handler callback function. This function receives the
  *  source & destination of the unicast packet as well as the tvlv content
  *  to process.
+ * @mptr: multicast packet tvlv handler callback function. This function
+ *  receives the full skb to process, with the skb network header pointing
+ *  to the current tvlv and the skb transport header pointing to the first
+ *  byte after the current tvlv.
  * @type: tvlv handler type to be registered
  * @version: tvlv handler version to be registered
  * @flags: flags to enable or disable TVLV API behavior
@@ -518,6 +544,8 @@ void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
 					      u8 *src, u8 *dst,
 					      void *tvlv_value,
 					      u16 tvlv_value_len),
+				  int (*mptr)(struct batadv_priv *bat_priv,
+					      struct sk_buff *skb),
 				  u8 type, u8 version, u8 flags)
 {
 	struct batadv_tvlv_handler *tvlv_handler;
@@ -539,6 +567,7 @@ void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
 
 	tvlv_handler->ogm_handler = optr;
 	tvlv_handler->unicast_handler = uptr;
+	tvlv_handler->mcast_handler = mptr;
 	tvlv_handler->type = type;
 	tvlv_handler->version = version;
 	tvlv_handler->flags = flags;
diff --git a/net/batman-adv/tvlv.h b/net/batman-adv/tvlv.h
index 4cf8af00fc11..ebf8b4037adb 100644
--- a/net/batman-adv/tvlv.h
+++ b/net/batman-adv/tvlv.h
@@ -34,14 +34,16 @@ void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
 					      u8 *src, u8 *dst,
 					      void *tvlv_value,
 					      u16 tvlv_value_len),
+				  int (*mptr)(struct batadv_priv *bat_priv,
+					      struct sk_buff *skb),
 				  u8 type, u8 version, u8 flags);
 void batadv_tvlv_handler_unregister(struct batadv_priv *bat_priv,
 				    u8 type, u8 version);
 int batadv_tvlv_containers_process(struct batadv_priv *bat_priv,
-				   bool ogm_source,
+				   u8 packet_type,
 				   struct batadv_orig_node *orig_node,
-				   u8 *src, u8 *dst,
-				   void *tvlv_buff, u16 tvlv_buff_len);
+				   struct sk_buff *skb, void *tvlv_buff,
+				   u16 tvlv_buff_len);
 void batadv_tvlv_unicast_send(struct batadv_priv *bat_priv, const u8 *src,
 			      const u8 *dst, u8 type, u8 version,
 			      void *tvlv_value, u16 tvlv_value_len);
diff --git a/net/batman-adv/types.h b/net/batman-adv/types.h
index 758cd797a063..ca9449ec9836 100644
--- a/net/batman-adv/types.h
+++ b/net/batman-adv/types.h
@@ -2335,6 +2335,12 @@ struct batadv_tvlv_handler {
 			       u8 *src, u8 *dst,
 			       void *tvlv_value, u16 tvlv_value_len);
 
+	/**
+	 * @mcast_handler: handler callback which is given the tvlv payload to
+	 *  process on incoming mcast packet
+	 */
+	int (*mcast_handler)(struct batadv_priv *bat_priv, struct sk_buff *skb);
+
 	/** @type: tvlv type this handler feels responsible for */
 	u8 type;
 
-- 
2.39.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v2 3/5] batman-adv: mcast: implement multicast packet reception and forwarding
  2022-12-26 16:15 [PATCH v2 0/5] Implementation of a Stateless Multicast Packet Type Linus Lüssing
  2022-12-26 16:15 ` [PATCH v2 1/5] batman-adv: mcast: remove now redundant single ucast forwarding Linus Lüssing
  2022-12-26 16:15 ` [PATCH v2 2/5] batman-adv: tvlv: prepare for tvlv enabled multicast packet type Linus Lüssing
@ 2022-12-26 16:15 ` Linus Lüssing
  2022-12-26 18:00   ` Sven Eckelmann
  2022-12-26 16:15 ` [PATCH v2 4/5] batman-adv: mcast: implement multicast packet generation Linus Lüssing
  2022-12-26 16:15 ` [PATCH v2 5/5] batman-adv: mcast: shrink tracker packet after scrubbing Linus Lüssing
  4 siblings, 1 reply; 11+ messages in thread
From: Linus Lüssing @ 2022-12-26 16:15 UTC (permalink / raw)
  To: b.a.t.m.a.n; +Cc: Linus Lüssing

Implement functionality to receive and forward a new TVLV capable
multicast packet type.

The new batman-adv multicast packet type allows to contain several
originator destination addresses within a TVLV. Routers on the way will
potentially split the batman-adv multicast packet and adjust its tracker
TVLV contents.

Routing decisions are still based on the selected BATMAN IV or BATMAN V
routing algorithm. So this new batman-adv multicast packet type retains
the same loop-free properties.

Also a new OGM multicast TVLV flag is introduced to signal to other
nodes that we are capable of handling a batman-adv multicast packet and
multicast tracker TVLV. And that all of our hard interfaces have an MTU
of at least 1280 bytes (IPv6 minimum MTU), as a simple solution for now
to avoid MTU issues while forwarding.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
---
 include/uapi/linux/batadv_packet.h |  48 +++++-
 net/batman-adv/Makefile            |   1 +
 net/batman-adv/main.c              |   2 +
 net/batman-adv/multicast.c         |  48 +++++-
 net/batman-adv/multicast.h         |   5 +
 net/batman-adv/multicast_forw.c    | 268 +++++++++++++++++++++++++++++
 net/batman-adv/originator.c        |   1 +
 net/batman-adv/routing.c           |  69 ++++++++
 net/batman-adv/routing.h           |  11 ++
 net/batman-adv/soft-interface.c    |  12 ++
 net/batman-adv/types.h             |  64 +++++++
 11 files changed, 518 insertions(+), 11 deletions(-)
 create mode 100644 net/batman-adv/multicast_forw.c

diff --git a/include/uapi/linux/batadv_packet.h b/include/uapi/linux/batadv_packet.h
index 9204e4494b25..77021519cd26 100644
--- a/include/uapi/linux/batadv_packet.h
+++ b/include/uapi/linux/batadv_packet.h
@@ -116,6 +116,9 @@ enum batadv_icmp_packettype {
  * only need routable IPv4 multicast packets we signed up for explicitly
  * @BATADV_MCAST_WANT_NO_RTR6: we have no IPv6 multicast router and therefore
  * only need routable IPv6 multicast packets we signed up for explicitly
+ * @BATADV_MCAST_HAVE_MC_PTYPE_CAPA: we can parse, receive and forward
+ * batman-adv multicast packets with a multicast tracker TVLV. And all our
+ * hard interfaces have an MTU of at least 1280 bytes.
  */
 enum batadv_mcast_flags {
 	BATADV_MCAST_WANT_ALL_UNSNOOPABLES	= 1UL << 0,
@@ -123,6 +126,7 @@ enum batadv_mcast_flags {
 	BATADV_MCAST_WANT_ALL_IPV6		= 1UL << 2,
 	BATADV_MCAST_WANT_NO_RTR4		= 1UL << 3,
 	BATADV_MCAST_WANT_NO_RTR6		= 1UL << 4,
+	BATADV_MCAST_HAVE_MC_PTYPE_CAPA		= 1UL << 5,
 };
 
 /* tt data subtypes */
@@ -174,14 +178,16 @@ enum batadv_bla_claimframe {
  * @BATADV_TVLV_TT: translation table tvlv
  * @BATADV_TVLV_ROAM: roaming advertisement tvlv
  * @BATADV_TVLV_MCAST: multicast capability tvlv
+ * @BATADV_TVLV_MCAST_TRACKER: multicast tracker tvlv
  */
 enum batadv_tvlv_type {
-	BATADV_TVLV_GW		= 0x01,
-	BATADV_TVLV_DAT		= 0x02,
-	BATADV_TVLV_NC		= 0x03,
-	BATADV_TVLV_TT		= 0x04,
-	BATADV_TVLV_ROAM	= 0x05,
-	BATADV_TVLV_MCAST	= 0x06,
+	BATADV_TVLV_GW			= 0x01,
+	BATADV_TVLV_DAT			= 0x02,
+	BATADV_TVLV_NC			= 0x03,
+	BATADV_TVLV_TT			= 0x04,
+	BATADV_TVLV_ROAM		= 0x05,
+	BATADV_TVLV_MCAST		= 0x06,
+	BATADV_TVLV_MCAST_TRACKER	= 0x07,
 };
 
 #pragma pack(2)
@@ -487,6 +493,25 @@ struct batadv_bcast_packet {
 	 */
 };
 
+/**
+ * struct batadv_mcast_packet - multicast packet for network payload
+ * @packet_type: batman-adv packet type, part of the general header
+ * @version: batman-adv protocol version, part of the general header
+ * @ttl: time to live for this packet, part of the general header
+ * @reserved: reserved byte for alignment
+ * @tvlv_len: length of the appended tvlv buffer (in bytes)
+ */
+struct batadv_mcast_packet {
+	__u8 packet_type;
+	__u8 version;
+	__u8 ttl;
+	__u8 reserved;
+	__be16 tvlv_len;
+	/* "4 bytes boundary + 2 bytes" long to make the payload after the
+	 * following ethernet header again 4 bytes boundary aligned
+	 */
+};
+
 /**
  * struct batadv_coded_packet - network coded packet
  * @packet_type: batman-adv packet type, part of the general header
@@ -628,6 +653,17 @@ struct batadv_tvlv_mcast_data {
 	__u8 reserved[3];
 };
 
+/**
+ * struct batadv_tvlv_mcast_tracker - payload of a multicast tracker tvlv
+ * @num_dests: number of subsequent destination originator MAC addresses
+ * @align: (optional) alignment bytes to make the tracker TVLV 4 bytes aligned,
+ * present if num_dests are even, not present if odd
+ */
+struct batadv_tvlv_mcast_tracker {
+	__be16	num_dests;
+	__u8	align[2];
+};
+
 #pragma pack()
 
 #endif /* _UAPI_LINUX_BATADV_PACKET_H_ */
diff --git a/net/batman-adv/Makefile b/net/batman-adv/Makefile
index 3bd0760c76a2..b51d8b071b56 100644
--- a/net/batman-adv/Makefile
+++ b/net/batman-adv/Makefile
@@ -20,6 +20,7 @@ batman-adv-y += hash.o
 batman-adv-$(CONFIG_BATMAN_ADV_DEBUG) += log.o
 batman-adv-y += main.o
 batman-adv-$(CONFIG_BATMAN_ADV_MCAST) += multicast.o
+batman-adv-$(CONFIG_BATMAN_ADV_MCAST) += multicast_forw.o
 batman-adv-y += netlink.o
 batman-adv-$(CONFIG_BATMAN_ADV_NC) += network-coding.o
 batman-adv-y += originator.o
diff --git a/net/batman-adv/main.c b/net/batman-adv/main.c
index e8a449915566..50b2bf2b748c 100644
--- a/net/batman-adv/main.c
+++ b/net/batman-adv/main.c
@@ -532,6 +532,8 @@ static void batadv_recv_handler_init(void)
 
 	/* broadcast packet */
 	batadv_rx_handler[BATADV_BCAST] = batadv_recv_bcast_packet;
+	/* multicast packet */
+	batadv_rx_handler[BATADV_MCAST] = batadv_recv_mcast_packet;
 
 	/* unicast packets ... */
 	/* unicast with 4 addresses packet */
diff --git a/net/batman-adv/multicast.c b/net/batman-adv/multicast.c
index 548ab08d96fa..d674e8394439 100644
--- a/net/batman-adv/multicast.c
+++ b/net/batman-adv/multicast.c
@@ -244,6 +244,37 @@ static u8 batadv_mcast_mla_rtr_flags_get(struct batadv_priv *bat_priv,
 	return flags;
 }
 
+/**
+ * batadv_mcast_mla_forw_flags_get() - get multicast forwarding flags
+ * @bat_priv: the bat priv with all the soft interface information
+ *
+ * Checks if all active hard interfaces have an MTU larger or equal to 1280
+ * bytes (IPv6 minimum MTU).
+ *
+ * Return: BATADV_MCAST_HAVE_MC_PTYPE_CAPA if yes, BATADV_NO_FLAGS otherwise.
+ */
+static u8 batadv_mcast_mla_forw_flags_get(struct batadv_priv *bat_priv)
+{
+	const struct batadv_hard_iface *hard_iface;
+
+	rcu_read_lock();
+	list_for_each_entry_rcu(hard_iface, &batadv_hardif_list, list) {
+		if (hard_iface->if_status != BATADV_IF_ACTIVE)
+			continue;
+
+		if (hard_iface->soft_iface != bat_priv->soft_iface)
+			continue;
+
+		if (hard_iface->net_dev->mtu < IPV6_MIN_MTU) {
+			rcu_read_unlock();
+			return BATADV_NO_FLAGS;
+		}
+	}
+	rcu_read_unlock();
+
+	return BATADV_MCAST_HAVE_MC_PTYPE_CAPA;
+}
+
 /**
  * batadv_mcast_mla_flags_get() - get the new multicast flags
  * @bat_priv: the bat priv with all the soft interface information
@@ -265,6 +296,7 @@ batadv_mcast_mla_flags_get(struct batadv_priv *bat_priv)
 	mla_flags.enabled = 1;
 	mla_flags.tvlv_flags |= batadv_mcast_mla_rtr_flags_get(bat_priv,
 							       bridge);
+	mla_flags.tvlv_flags |= batadv_mcast_mla_forw_flags_get(bat_priv);
 
 	if (!bridge)
 		return mla_flags;
@@ -815,23 +847,25 @@ static void batadv_mcast_flags_log(struct batadv_priv *bat_priv, u8 flags)
 {
 	bool old_enabled = bat_priv->mcast.mla_flags.enabled;
 	u8 old_flags = bat_priv->mcast.mla_flags.tvlv_flags;
-	char str_old_flags[] = "[.... . ]";
+	char str_old_flags[] = "[.... . .]";
 
-	sprintf(str_old_flags, "[%c%c%c%s%s]",
+	sprintf(str_old_flags, "[%c%c%c%s%s%c]",
 		(old_flags & BATADV_MCAST_WANT_ALL_UNSNOOPABLES) ? 'U' : '.',
 		(old_flags & BATADV_MCAST_WANT_ALL_IPV4) ? '4' : '.',
 		(old_flags & BATADV_MCAST_WANT_ALL_IPV6) ? '6' : '.',
 		!(old_flags & BATADV_MCAST_WANT_NO_RTR4) ? "R4" : ". ",
-		!(old_flags & BATADV_MCAST_WANT_NO_RTR6) ? "R6" : ". ");
+		!(old_flags & BATADV_MCAST_WANT_NO_RTR6) ? "R6" : ". ",
+		!(old_flags & BATADV_MCAST_HAVE_MC_PTYPE_CAPA) ? 'P' : '.');
 
 	batadv_dbg(BATADV_DBG_MCAST, bat_priv,
-		   "Changing multicast flags from '%s' to '[%c%c%c%s%s]'\n",
+		   "Changing multicast flags from '%s' to '[%c%c%c%s%s%c]'\n",
 		   old_enabled ? str_old_flags : "<undefined>",
 		   (flags & BATADV_MCAST_WANT_ALL_UNSNOOPABLES) ? 'U' : '.',
 		   (flags & BATADV_MCAST_WANT_ALL_IPV4) ? '4' : '.',
 		   (flags & BATADV_MCAST_WANT_ALL_IPV6) ? '6' : '.',
 		   !(flags & BATADV_MCAST_WANT_NO_RTR4) ? "R4" : ". ",
-		   !(flags & BATADV_MCAST_WANT_NO_RTR6) ? "R6" : ". ");
+		   !(flags & BATADV_MCAST_WANT_NO_RTR6) ? "R6" : ". ",
+		   !(flags & BATADV_MCAST_HAVE_MC_PTYPE_CAPA) ? 'P' : '.');
 }
 
 /**
@@ -1829,6 +1863,10 @@ void batadv_mcast_init(struct batadv_priv *bat_priv)
 	batadv_tvlv_handler_register(bat_priv, batadv_mcast_tvlv_ogm_handler,
 				     NULL, NULL, BATADV_TVLV_MCAST, 2,
 				     BATADV_TVLV_HANDLER_OGM_CIFNOTFND);
+	batadv_tvlv_handler_register(bat_priv, NULL, NULL,
+				     batadv_mcast_forw_tracker_tvlv_handler,
+				     BATADV_TVLV_MCAST_TRACKER, 1,
+				     BATADV_TVLV_HANDLER_OGM_CIFNOTFND);
 
 	INIT_DELAYED_WORK(&bat_priv->mcast.work, batadv_mcast_mla_update);
 	batadv_mcast_start_timer(bat_priv);
diff --git a/net/batman-adv/multicast.h b/net/batman-adv/multicast.h
index a9770d8d6d36..a5c0f384bb9a 100644
--- a/net/batman-adv/multicast.h
+++ b/net/batman-adv/multicast.h
@@ -52,6 +52,11 @@ void batadv_mcast_free(struct batadv_priv *bat_priv);
 
 void batadv_mcast_purge_orig(struct batadv_orig_node *orig_node);
 
+/* multicast_forw.c */
+
+int batadv_mcast_forw_tracker_tvlv_handler(struct batadv_priv *bat_priv,
+					   struct sk_buff *skb);
+
 #else
 
 static inline enum batadv_forw_mode
diff --git a/net/batman-adv/multicast_forw.c b/net/batman-adv/multicast_forw.c
new file mode 100644
index 000000000000..d378e6f2de18
--- /dev/null
+++ b/net/batman-adv/multicast_forw.c
@@ -0,0 +1,268 @@
+// SPDX-License-Identifier: GPL-2.0
+/* Copyright (C) B.A.T.M.A.N. contributors:
+ *
+ * Linus Lüssing
+ */
+
+#include "main.h"
+
+#include <linux/etherdevice.h>
+#include <linux/if_ether.h>
+#include <linux/netdevice.h>
+#include <linux/skbuff.h>
+#include <linux/types.h>
+
+#include "originator.h"
+#include "routing.h"
+#include "send.h"
+
+#define batadv_mcast_forw_tracker_for_each_dest(dest, num_dests) \
+	for (; num_dests; num_dests--, (dest) += ETH_ALEN)
+
+/**
+ * batadv_mcast_forw_tracker_hdrlen() - calculate tracker TVLV header length
+ * @num_dests: the number of destination addresses to taken into account
+ *
+ * Return: The size of the multicast tracker TVLV structure if the number of
+ * destinations is even or that size minus the 2 alignment bytes otherwise.
+ */
+static int batadv_mcast_forw_tracker_hdrlen(unsigned int num_dests)
+{
+	struct batadv_tvlv_mcast_tracker *mcast_tracker;
+	unsigned int len = sizeof(*mcast_tracker);
+
+	/* new #dests even: with 2 byte padding to TVLV */
+	if (!(num_dests % 2))
+		return len;
+	/* new #dests odd: without 2 byte padding to TVLV */
+	else
+		return len - sizeof(mcast_tracker->align);
+}
+
+/**
+ * batadv_mcast_forw_orig_to_neigh() - get next hop neighbor to an orig address
+ * @bat_priv: the bat priv with all the soft interface information
+ * @orig_addr: the originator MAC address to search the best next hop router for
+ *
+ * Return: A neighbor node which is the best router towards the given originator
+ * address.
+ */
+static struct batadv_neigh_node *
+batadv_mcast_forw_orig_to_neigh(struct batadv_priv *bat_priv, u8 *orig_addr)
+{
+	struct batadv_neigh_node *neigh_node;
+	struct batadv_orig_node *orig_node;
+
+	orig_node = batadv_orig_hash_find(bat_priv, orig_addr);
+	if (!orig_node)
+		return NULL;
+
+	neigh_node = batadv_find_router(bat_priv, orig_node, NULL);
+	batadv_orig_node_put(orig_node);
+
+	return neigh_node;
+}
+
+/**
+ * batadv_mcast_forw_scrub_dests() - scrub destinations in a tracker TVLV
+ * @bat_priv: the bat priv with all the soft interface information
+ * @comp_neigh: next hop neighbor to scrub+collect destinations for
+ * @dest: start MAC entry in original skb's tracker TVLV
+ * @next_dest: start MAC entry in to be sent skb's tracker TVLV
+ * @num_dests: number of remaining destination MAC entries to iterate over
+ *
+ * This sorts destination entries into either the original batman-adv
+ * multicast packet or the skb (copy) that is going to be sent to comp_neigh
+ * next.
+ *
+ * In preparation for the next, to be (unicast) transmitted batman-adv multicast
+ * packet skb to be sent to the given neighbor node, tries to collect all
+ * originator MAC addresses that have the given neighbor node as their next hop
+ * in the to be transmitted skb (copy), which next_dest points into. That is we
+ * zero all destination entries in next_dest which do not have comp_neigh as
+ * their next hop. And zero all destination entries in the original skb that
+ * would have comp_neigh as their next hop (to avoid redundant transmissions and
+ * duplicated payload later).
+ */
+static void
+batadv_mcast_forw_scrub_dests(struct batadv_priv *bat_priv,
+			      struct batadv_neigh_node *comp_neigh, u8 *dest,
+			      u8 *next_dest, u16 num_dests)
+{
+	struct batadv_neigh_node *next_neigh;
+
+	/* skip first entry, this is what we are comparing with */
+	eth_zero_addr(dest);
+	dest += ETH_ALEN;
+	next_dest += ETH_ALEN;
+	num_dests--;
+
+	batadv_mcast_forw_tracker_for_each_dest(next_dest, num_dests) {
+		if (is_zero_ether_addr(next_dest))
+			goto scrub_next;
+
+		if (is_multicast_ether_addr(next_dest)) {
+			eth_zero_addr(dest);
+			eth_zero_addr(next_dest);
+			goto scrub_next;
+		}
+
+		next_neigh = batadv_mcast_forw_orig_to_neigh(bat_priv,
+							     next_dest);
+		if (!next_neigh) {
+			eth_zero_addr(next_dest);
+			goto scrub_next;
+		}
+
+		/* Is this for our next packet to transmit? */
+		if (batadv_compare_eth(next_neigh->addr, comp_neigh->addr))
+			eth_zero_addr(dest);
+		else
+			eth_zero_addr(next_dest);
+
+		batadv_neigh_node_put(next_neigh);
+scrub_next:
+		dest += ETH_ALEN;
+	}
+}
+
+/**
+ * batadv_mcast_forw_packet() - forward a batman-adv multicast packet
+ * @bat_priv: the bat priv with all the soft interface information
+ * @skb: the received or locally generated batman-adv multicast packet
+ * @local_xmit: indicates that the packet was locally generated and not received
+ *
+ * Parses the tracker TVLV of a batman-adv multicast packet and forwards the
+ * packet as indicated in this TVLV.
+ *
+ * Caller needs to set the skb network header to the start of the multicast
+ * tracker TVLV (excluding the generic TVLV header) and the skb transport header
+ * to the next byte after this multicast tracker TVLV.
+ *
+ * Caller needs to free the skb.
+ *
+ * Return: NET_RX_SUCCESS or NET_RX_DROP on success or a negative error
+ * code on failure. NET_RX_SUCCESS if the received packet is supposed to be
+ * decapsulated and forwarded to the own soft interface, NET_RX_DROP otherwise.
+ */
+static int batadv_mcast_forw_packet(struct batadv_priv *bat_priv,
+				    struct sk_buff *skb, bool local_xmit)
+{
+	struct batadv_tvlv_mcast_tracker *mcast_tracker;
+	unsigned int tvlv_len, tracker_hdrlen;
+	struct batadv_neigh_node *neigh_node;
+	unsigned long offset, num_dests_off;
+	struct sk_buff *nexthop_skb;
+	unsigned char *skb_net_hdr;
+	bool local_recv = false;
+	bool xmitted = false;
+	u8 *dest, *next_dest;
+	u16 num_dests;
+	int ret;
+
+	/* check if num_dests is within skb length */
+	num_dests_off = offsetof(struct batadv_tvlv_mcast_tracker, num_dests);
+	if (num_dests_off > skb_network_header_len(skb))
+		return -EINVAL;
+
+	skb_net_hdr = skb_network_header(skb);
+	mcast_tracker = (struct batadv_tvlv_mcast_tracker *)skb_net_hdr;
+	num_dests = ntohs(mcast_tracker->num_dests);
+
+	tracker_hdrlen = batadv_mcast_forw_tracker_hdrlen(num_dests);
+	dest = (u8 *)mcast_tracker + tracker_hdrlen;
+
+	/* check if full tracker tvlv is within skb length */
+	tvlv_len = tracker_hdrlen + ETH_ALEN * num_dests;
+	if (tvlv_len > skb_network_header_len(skb))
+		return -EINVAL;
+
+	batadv_mcast_forw_tracker_for_each_dest(dest, num_dests) {
+		if (is_zero_ether_addr(dest))
+			continue;
+
+		/* only unicast originator addresses supported */
+		if (is_multicast_ether_addr(dest)) {
+			eth_zero_addr(dest);
+			continue;
+		}
+
+		if (batadv_is_my_mac(bat_priv, dest)) {
+			eth_zero_addr(dest);
+			local_recv = true;
+			continue;
+		}
+
+		neigh_node = batadv_mcast_forw_orig_to_neigh(bat_priv, dest);
+		if (!neigh_node) {
+			eth_zero_addr(dest);
+			continue;
+		}
+
+		nexthop_skb = skb_copy(skb, GFP_ATOMIC);
+		if (!nexthop_skb) {
+			batadv_neigh_node_put(neigh_node);
+			return -ENOMEM;
+		}
+
+		offset = dest - skb->data;
+		next_dest = nexthop_skb->data + offset;
+
+		batadv_mcast_forw_scrub_dests(bat_priv, neigh_node, dest,
+					      next_dest, num_dests);
+
+		batadv_inc_counter(bat_priv, BATADV_CNT_MCAST_TX);
+		batadv_add_counter(bat_priv, BATADV_CNT_MCAST_TX_BYTES,
+				   nexthop_skb->len + ETH_HLEN);
+		xmitted = true;
+		ret = batadv_send_unicast_skb(nexthop_skb, neigh_node);
+
+		batadv_neigh_node_put(neigh_node);
+
+		if (ret < 0)
+			return ret;
+	}
+
+	if (xmitted) {
+		if (local_xmit) {
+			batadv_inc_counter(bat_priv, BATADV_CNT_MCAST_TX_LOCAL);
+			batadv_add_counter(bat_priv,
+					   BATADV_CNT_MCAST_TX_LOCAL_BYTES,
+					   skb->len -
+					   skb_transport_offset(skb));
+		} else {
+			batadv_inc_counter(bat_priv, BATADV_CNT_MCAST_FWD);
+			batadv_add_counter(bat_priv, BATADV_CNT_MCAST_FWD_BYTES,
+					   skb->len + ETH_HLEN);
+		}
+	}
+
+	if (local_recv)
+		return NET_RX_SUCCESS;
+	else
+		return NET_RX_DROP;
+}
+
+/**
+ * batadv_mcast_forw_tracker_tvlv_handler() - handle an mcast tracker tvlv
+ * @bat_priv: the bat priv with all the soft interface information
+ * @skb: the received batman-adv multicast packet
+ *
+ * Parses the tracker TVLV of an incoming batman-adv multicast packet and
+ * forwards the packet as indicated in this TVLV.
+ *
+ * Caller needs to set the skb network header to the start of the multicast
+ * tracker TVLV (excluding the generic TVLV header) and the skb transport header
+ * to the next byte after this multicast tracker TVLV.
+ *
+ * Caller needs to free the skb.
+ *
+ * Return: NET_RX_SUCCESS or NET_RX_DROP on success or a negative error
+ * code on failure. NET_RX_SUCCESS if the received packet is supposed to be
+ * decapsulated and forwarded to the own soft interface, NET_RX_DROP otherwise.
+ */
+int batadv_mcast_forw_tracker_tvlv_handler(struct batadv_priv *bat_priv,
+					   struct sk_buff *skb)
+{
+	return batadv_mcast_forw_packet(bat_priv, skb, false);
+}
diff --git a/net/batman-adv/originator.c b/net/batman-adv/originator.c
index 34903df4fe93..e46ce83c516a 100644
--- a/net/batman-adv/originator.c
+++ b/net/batman-adv/originator.c
@@ -942,6 +942,7 @@ struct batadv_orig_node *batadv_orig_node_new(struct batadv_priv *bat_priv,
 #ifdef CONFIG_BATMAN_ADV_MCAST
 	orig_node->mcast_flags = BATADV_MCAST_WANT_NO_RTR4;
 	orig_node->mcast_flags |= BATADV_MCAST_WANT_NO_RTR6;
+	orig_node->mcast_flags |= BATADV_MCAST_HAVE_MC_PTYPE_CAPA;
 	INIT_HLIST_NODE(&orig_node->mcast_want_all_unsnoopables_node);
 	INIT_HLIST_NODE(&orig_node->mcast_want_all_ipv4_node);
 	INIT_HLIST_NODE(&orig_node->mcast_want_all_ipv6_node);
diff --git a/net/batman-adv/routing.c b/net/batman-adv/routing.c
index 163cd43c4821..9e1c8b50624f 100644
--- a/net/batman-adv/routing.c
+++ b/net/batman-adv/routing.c
@@ -30,6 +30,7 @@
 #include "fragmentation.h"
 #include "hard-interface.h"
 #include "log.h"
+#include "multicast.h"
 #include "network-coding.h"
 #include "originator.h"
 #include "send.h"
@@ -1270,3 +1271,71 @@ int batadv_recv_bcast_packet(struct sk_buff *skb,
 	batadv_orig_node_put(orig_node);
 	return ret;
 }
+
+#ifdef CONFIG_BATMAN_ADV_MCAST
+/**
+ * batadv_recv_mcast_packet() - process received batman-adv multicast packet
+ * @skb: the received batman-adv multicast packet
+ * @recv_if: interface that the skb is received on
+ *
+ * Parses the given, received batman-adv multicast packet. Depending on the
+ * contents of its TVLV forwards it and/or decapsulates it to hand it to the
+ * soft interface.
+ *
+ * Return: NET_RX_DROP if the skb is not consumed, NET_RX_SUCCESS otherwise.
+ */
+int batadv_recv_mcast_packet(struct sk_buff *skb,
+			     struct batadv_hard_iface *recv_if)
+{
+	struct batadv_priv *bat_priv = netdev_priv(recv_if->soft_iface);
+	struct batadv_mcast_packet *mcast_packet;
+	int hdr_size = sizeof(*mcast_packet);
+	unsigned char *tvlv_buff;
+	int ret = NET_RX_DROP;
+	u16 tvlv_buff_len;
+
+	if (batadv_check_unicast_packet(bat_priv, skb, hdr_size) < 0)
+		goto free_skb;
+
+	/* create a copy of the skb, if needed, to modify it. */
+	if (skb_cow(skb, ETH_HLEN) < 0)
+		goto free_skb;
+
+	/* packet needs to be linearized to access the tvlv content */
+	if (skb_linearize(skb) < 0)
+		goto free_skb;
+
+	mcast_packet = (struct batadv_mcast_packet *)skb->data;
+
+	tvlv_buff = (unsigned char *)(skb->data + hdr_size);
+	tvlv_buff_len = ntohs(mcast_packet->tvlv_len);
+
+	if (tvlv_buff_len > skb->len - hdr_size)
+		goto free_skb;
+
+	ret = batadv_tvlv_containers_process(bat_priv, BATADV_MCAST, NULL, skb,
+					     tvlv_buff, tvlv_buff_len);
+	if (ret >= 0) {
+		batadv_inc_counter(bat_priv, BATADV_CNT_MCAST_RX);
+		batadv_add_counter(bat_priv, BATADV_CNT_MCAST_RX_BYTES,
+				   skb->len + ETH_HLEN);
+	}
+
+	hdr_size += tvlv_buff_len;
+
+	if (ret == NET_RX_SUCCESS && (skb->len - hdr_size >= ETH_HLEN)) {
+		batadv_inc_counter(bat_priv, BATADV_CNT_MCAST_RX_LOCAL);
+		batadv_add_counter(bat_priv, BATADV_CNT_MCAST_RX_LOCAL_BYTES,
+				   skb->len - hdr_size);
+
+		batadv_interface_rx(bat_priv->soft_iface, skb, hdr_size, NULL);
+		/* skb was consumed */
+		skb = NULL;
+	}
+
+free_skb:
+	kfree_skb(skb);
+
+	return ret;
+}
+#endif /* CONFIG_BATMAN_ADV_MCAST */
diff --git a/net/batman-adv/routing.h b/net/batman-adv/routing.h
index 5f387786e9a7..d8293a83fb82 100644
--- a/net/batman-adv/routing.h
+++ b/net/batman-adv/routing.h
@@ -27,6 +27,17 @@ int batadv_recv_frag_packet(struct sk_buff *skb,
 			    struct batadv_hard_iface *iface);
 int batadv_recv_bcast_packet(struct sk_buff *skb,
 			     struct batadv_hard_iface *recv_if);
+#ifdef CONFIG_BATMAN_ADV_MCAST
+int batadv_recv_mcast_packet(struct sk_buff *skb,
+			     struct batadv_hard_iface *recv_if);
+#else
+static inline int batadv_recv_mcast_packet(struct sk_buff *skb,
+					   struct batadv_hard_iface *recv_if)
+{
+	kfree_skb(skb);
+	return NET_RX_DROP;
+}
+#endif
 int batadv_recv_tt_query(struct sk_buff *skb,
 			 struct batadv_hard_iface *recv_if);
 int batadv_recv_roam_adv(struct sk_buff *skb,
diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c
index b70d0167d2fa..d30598eb557c 100644
--- a/net/batman-adv/soft-interface.c
+++ b/net/batman-adv/soft-interface.c
@@ -923,6 +923,18 @@ static const struct {
 	{ "tt_response_rx" },
 	{ "tt_roam_adv_tx" },
 	{ "tt_roam_adv_rx" },
+#ifdef CONFIG_BATMAN_ADV_MCAST
+	{ "mcast_tx" },
+	{ "mcast_tx_bytes" },
+	{ "mcast_tx_local" },
+	{ "mcast_tx_local_bytes" },
+	{ "mcast_rx" },
+	{ "mcast_rx_bytes" },
+	{ "mcast_rx_local" },
+	{ "mcast_rx_local_bytes" },
+	{ "mcast_fwd" },
+	{ "mcast_fwd_bytes" },
+#endif
 #ifdef CONFIG_BATMAN_ADV_DAT
 	{ "dat_get_tx" },
 	{ "dat_get_rx" },
diff --git a/net/batman-adv/types.h b/net/batman-adv/types.h
index ca9449ec9836..a2fee3325b29 100644
--- a/net/batman-adv/types.h
+++ b/net/batman-adv/types.h
@@ -862,6 +862,70 @@ enum batadv_counters {
 	 */
 	BATADV_CNT_TT_ROAM_ADV_RX,
 
+#ifdef CONFIG_BATMAN_ADV_MCAST
+	/**
+	 * @BATADV_CNT_MCAST_TX: transmitted batman-adv multicast packets
+	 *  counter
+	 */
+	BATADV_CNT_MCAST_TX,
+
+	/**
+	 * @BATADV_CNT_MCAST_TX_BYTES: transmitted batman-adv multicast packets
+	 *  bytes counter
+	 */
+	BATADV_CNT_MCAST_TX_BYTES,
+
+	/**
+	 * @BATADV_CNT_MCAST_TX_LOCAL: counter for multicast packets which
+	 *  were locally encapsulated and transmitted as batman-adv multicast
+	 *  packets
+	 */
+	BATADV_CNT_MCAST_TX_LOCAL,
+
+	/**
+	 * @BATADV_CNT_MCAST_TX_LOCAL_BYTES: bytes counter for multicast packets
+	 *  which were locally encapsulated and transmitted as batman-adv
+	 *  multicast packets
+	 */
+	BATADV_CNT_MCAST_TX_LOCAL_BYTES,
+
+	/**
+	 * @BATADV_CNT_MCAST_RX: received batman-adv multicast packet counter
+	 */
+	BATADV_CNT_MCAST_RX,
+
+	/**
+	 * @BATADV_CNT_MCAST_RX_BYTES: received batman-adv multicast packet
+	 *  bytes counter
+	 */
+	BATADV_CNT_MCAST_RX_BYTES,
+
+	/**
+	 * @BATADV_CNT_MCAST_RX_LOCAL: counter for received batman-adv multicast
+	 *  packets which were forwarded to the local soft interface
+	 */
+	BATADV_CNT_MCAST_RX_LOCAL,
+
+	/**
+	 * @BATADV_CNT_MCAST_RX_LOCAL_BYTES: bytes counter for received
+	 *  batman-adv multicast packets which were forwarded to the local soft
+	 *  interface
+	 */
+	BATADV_CNT_MCAST_RX_LOCAL_BYTES,
+
+	/**
+	 * @BATADV_CNT_MCAST_FWD: counter for received batman-adv multicast
+	 *  packets which were forwarded to other, neighboring nodes
+	 */
+	BATADV_CNT_MCAST_FWD,
+
+	/**
+	 * @BATADV_CNT_MCAST_FWD_BYTES: bytes counter for received batman-adv
+	 *  multicast packets which were forwarded to other, neighboring nodes
+	 */
+	BATADV_CNT_MCAST_FWD_BYTES,
+#endif
+
 #ifdef CONFIG_BATMAN_ADV_DAT
 	/**
 	 * @BATADV_CNT_DAT_GET_TX: transmitted dht GET traffic packet counter
-- 
2.39.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v2 4/5] batman-adv: mcast: implement multicast packet generation
  2022-12-26 16:15 [PATCH v2 0/5] Implementation of a Stateless Multicast Packet Type Linus Lüssing
                   ` (2 preceding siblings ...)
  2022-12-26 16:15 ` [PATCH v2 3/5] batman-adv: mcast: implement multicast packet reception and forwarding Linus Lüssing
@ 2022-12-26 16:15 ` Linus Lüssing
  2022-12-26 18:24   ` Sven Eckelmann
  2022-12-26 16:15 ` [PATCH v2 5/5] batman-adv: mcast: shrink tracker packet after scrubbing Linus Lüssing
  4 siblings, 1 reply; 11+ messages in thread
From: Linus Lüssing @ 2022-12-26 16:15 UTC (permalink / raw)
  To: b.a.t.m.a.n; +Cc: Linus Lüssing

Implement the preparation of a batman-adv multicast packet and use this
under certain conditions.

For one thing this implements the capability to push a complete
batman-adv multicast packet header, including a tracker TVLV with all
originator destinations that have signaled interest in it, onto a given
ethernet frame with an IP multicast packet inside.

For another checks are implemented to determine if encapsulating a
multicast packet in this new batman-adv multicast packet type and using
it is feasible. Those checks are:

1) Have all nodes signaled that the are capable of handling the new
   batman-adv multicast packet type?
2) Do all active hard interfaces of all nodes, including us, have an MTU
   of at least 1280 bytes?
3) Does a complete multicast packet header with all its destination
   addresses fit onto the given multicast packet / ethernet frame and
   does not exceed 1280 bytes?

If all checks passed then the new batman-adv multicast packet type will
be used for transmission and distribution. Otherwise we fall back to one or
more batman-adv unicast packet transmissions, if possible. Or if not
possible we will fall back to classic flooding through a batman-adv
broadcast packet.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
---
 net/batman-adv/multicast.c      |  79 ++++-
 net/batman-adv/multicast.h      |  24 +-
 net/batman-adv/multicast_forw.c | 504 ++++++++++++++++++++++++++++++++
 net/batman-adv/soft-interface.c |   6 +-
 net/batman-adv/types.h          |   6 +
 5 files changed, 611 insertions(+), 8 deletions(-)

diff --git a/net/batman-adv/multicast.c b/net/batman-adv/multicast.c
index d674e8394439..fb548924be04 100644
--- a/net/batman-adv/multicast.c
+++ b/net/batman-adv/multicast.c
@@ -1178,17 +1178,62 @@ static int batadv_mcast_forw_rtr_count(struct batadv_priv *bat_priv,
 	}
 }
 
+/**
+ * batadv_mcast_forw_mode_by_count() - get forwarding mode by count
+ * @bat_priv: the bat priv with all the soft interface information
+ * @skb: the multicast packet to check
+ * @vid: the vlan identifier
+ * @is_routable: stores whether the destination is routable
+ * @count: the number of originators the multicast packet need to be sent to
+ *
+ * For a multicast packet with multiple destination originators, checks which
+ * mode to use. For BATADV_FORW_MCAST it also encapsulates the packet with a
+ * complete batman-adv multicast header.
+ *
+ * Return:
+ *	BATADV_FORW_MCAST: If all nodes have multicast packet routing
+ *	capabilities and an MTU >= 1280 on all hard interfaces (including us)
+ *	and the encapsulated multicast packet with all destination addresses
+ *	would still fit into an 1280 bytes batman-adv multicast packet
+ *	(excluding the outter ethernet frame) and we could successfully push
+ *	the full batman-adv multicast packet header.
+ *	BATADV_FORW_UCASTS: If the packet cannot be sent in a batman-adv
+ *	multicast packet and the amount of batman-adv unicast packets needed
+ *	is smaller or equal to the configured multicast fanout.
+ *	BATADV_FORW_BCAST: Otherwise.
+ */
+enum batadv_forw_mode
+batadv_mcast_forw_mode_by_count(struct batadv_priv *bat_priv,
+				struct sk_buff *skb, unsigned short vid,
+				int is_routable, int count)
+{
+	unsigned int mcast_hdrlen = batadv_mcast_forw_packet_hdrlen(count);
+	u8 own_tvlv_flags = bat_priv->mcast.mla_flags.tvlv_flags;
+
+	if (!atomic_read(&bat_priv->mcast.num_no_mc_ptype_capa) &&
+	    own_tvlv_flags & BATADV_MCAST_HAVE_MC_PTYPE_CAPA &&
+	    skb->len + mcast_hdrlen <= IPV6_MIN_MTU &&
+	    batadv_mcast_forw_push(bat_priv, skb, vid, is_routable))
+		return BATADV_FORW_MCAST;
+
+	if (count <= atomic_read(&bat_priv->multicast_fanout))
+		return BATADV_FORW_UCASTS;
+
+	return BATADV_FORW_BCAST;
+}
+
 /**
  * batadv_mcast_forw_mode() - check on how to forward a multicast packet
  * @bat_priv: the bat priv with all the soft interface information
  * @skb: the multicast packet to check
+ * @vid: the vlan identifier
  * @is_routable: stores whether the destination is routable
  *
  * Return: The forwarding mode as enum batadv_forw_mode.
  */
 enum batadv_forw_mode
 batadv_mcast_forw_mode(struct batadv_priv *bat_priv, struct sk_buff *skb,
-		       int *is_routable)
+		       unsigned short vid, int *is_routable)
 {
 	int ret, tt_count, ip_count, unsnoop_count, total_count;
 	bool is_unsnoopable = false;
@@ -1218,10 +1263,8 @@ batadv_mcast_forw_mode(struct batadv_priv *bat_priv, struct sk_buff *skb,
 	else if (unsnoop_count)
 		return BATADV_FORW_BCAST;
 
-	if (total_count <= atomic_read(&bat_priv->multicast_fanout))
-		return BATADV_FORW_UCASTS;
-
-	return BATADV_FORW_BCAST;
+	return batadv_mcast_forw_mode_by_count(bat_priv, skb, vid, *is_routable,
+					       total_count);
 }
 
 /**
@@ -1781,6 +1824,31 @@ static void batadv_mcast_want_rtr6_update(struct batadv_priv *bat_priv,
 	}
 }
 
+/**
+ * batadv_mcast_have_mc_ptype_update() - update multicast packet type counter
+ * @bat_priv: the bat priv with all the soft interface information
+ * @orig: the orig_node which multicast state might have changed of
+ * @mcast_flags: flags indicating the new multicast state
+ *
+ * If the BATADV_MCAST_HAVE_MC_PTYPE_CAPA flag of this originator, orig, has
+ * toggled then this method updates the counter accordingly.
+ */
+static void batadv_mcast_have_mc_ptype_update(struct batadv_priv *bat_priv,
+					      struct batadv_orig_node *orig,
+					      u8 mcast_flags)
+{
+	lockdep_assert_held(&orig->mcast_handler_lock);
+
+	/* switched from flag set to unset */
+	if (!(mcast_flags & BATADV_MCAST_HAVE_MC_PTYPE_CAPA) &&
+	    orig->mcast_flags & BATADV_MCAST_HAVE_MC_PTYPE_CAPA)
+		atomic_inc(&bat_priv->mcast.num_no_mc_ptype_capa);
+	/* switched from flag unset to set */
+	else if (mcast_flags & BATADV_MCAST_HAVE_MC_PTYPE_CAPA &&
+		 !(orig->mcast_flags & BATADV_MCAST_HAVE_MC_PTYPE_CAPA))
+		atomic_dec(&bat_priv->mcast.num_no_mc_ptype_capa);
+}
+
 /**
  * batadv_mcast_tvlv_flags_get() - get multicast flags from an OGM TVLV
  * @enabled: whether the originator has multicast TVLV support enabled
@@ -1849,6 +1917,7 @@ static void batadv_mcast_tvlv_ogm_handler(struct batadv_priv *bat_priv,
 	batadv_mcast_want_ipv6_update(bat_priv, orig, mcast_flags);
 	batadv_mcast_want_rtr4_update(bat_priv, orig, mcast_flags);
 	batadv_mcast_want_rtr6_update(bat_priv, orig, mcast_flags);
+	batadv_mcast_have_mc_ptype_update(bat_priv, orig, mcast_flags);
 
 	orig->mcast_flags = mcast_flags;
 	spin_unlock_bh(&orig->mcast_handler_lock);
diff --git a/net/batman-adv/multicast.h b/net/batman-adv/multicast.h
index a5c0f384bb9a..6746a919f4a0 100644
--- a/net/batman-adv/multicast.h
+++ b/net/batman-adv/multicast.h
@@ -28,6 +28,12 @@ enum batadv_forw_mode {
 	 */
 	BATADV_FORW_UCASTS,
 
+	/**
+	 * @BATADV_FORW_MCAST: forward the packet to some nodes via a
+	 *  batman-adv multicast packet
+	 */
+	BATADV_FORW_MCAST,
+
 	/** @BATADV_FORW_NONE: don't forward, drop it */
 	BATADV_FORW_NONE,
 };
@@ -36,7 +42,7 @@ enum batadv_forw_mode {
 
 enum batadv_forw_mode
 batadv_mcast_forw_mode(struct batadv_priv *bat_priv, struct sk_buff *skb,
-		       int *is_routable);
+		       unsigned short vid, int *is_routable);
 
 int batadv_mcast_forw_send(struct batadv_priv *bat_priv, struct sk_buff *skb,
 			   unsigned short vid, int is_routable);
@@ -57,11 +63,18 @@ void batadv_mcast_purge_orig(struct batadv_orig_node *orig_node);
 int batadv_mcast_forw_tracker_tvlv_handler(struct batadv_priv *bat_priv,
 					   struct sk_buff *skb);
 
+int batadv_mcast_forw_packet_hdrlen(unsigned int num_dests);
+
+int batadv_mcast_forw_push(struct batadv_priv *bat_priv, struct sk_buff *skb,
+			   unsigned short vid, int is_routable);
+
+int batadv_mcast_forw_mcsend(struct batadv_priv *bat_priv, struct sk_buff *skb);
+
 #else
 
 static inline enum batadv_forw_mode
 batadv_mcast_forw_mode(struct batadv_priv *bat_priv, struct sk_buff *skb,
-		       int *is_routable)
+		       unsigned short vid, int *is_routable)
 {
 	return BATADV_FORW_BCAST;
 }
@@ -99,6 +112,13 @@ static inline void batadv_mcast_purge_orig(struct batadv_orig_node *orig_node)
 {
 }
 
+static inline int batadv_mcast_forw_mcsend(struct batadv_priv *bat_priv,
+					   struct sk_buff *skb)
+{
+	kfree_skb(skb);
+	return NET_XMIT_DROP;
+}
+
 #endif /* CONFIG_BATMAN_ADV_MCAST */
 
 #endif /* _NET_BATMAN_ADV_MULTICAST_H_ */
diff --git a/net/batman-adv/multicast_forw.c b/net/batman-adv/multicast_forw.c
index d378e6f2de18..e2b0cd51cec4 100644
--- a/net/batman-adv/multicast_forw.c
+++ b/net/batman-adv/multicast_forw.c
@@ -8,17 +8,293 @@
 
 #include <linux/etherdevice.h>
 #include <linux/if_ether.h>
+#include <linux/if_vlan.h>
+#include <linux/ipv6.h>
 #include <linux/netdevice.h>
 #include <linux/skbuff.h>
 #include <linux/types.h>
 
+#include "bridge_loop_avoidance.h"
 #include "originator.h"
 #include "routing.h"
 #include "send.h"
+#include "soft-interface.h"
+#include "translation-table.h"
 
 #define batadv_mcast_forw_tracker_for_each_dest(dest, num_dests) \
 	for (; num_dests; num_dests--, (dest) += ETH_ALEN)
 
+/**
+ * batadv_mcast_forw_orig_entry() - get orig_node from an hlist node
+ * @node: the hlist node to get the orig_node from
+ * @entry_offset: the offset of the hlist node within the orig_node struct
+ *
+ * Return: The orig_node containing the hlist node on success, NULL on error.
+ */
+static struct batadv_orig_node *
+batadv_mcast_forw_orig_entry(struct hlist_node *node,
+			     size_t entry_offset)
+{
+	/* sanity check */
+	switch (entry_offset) {
+	case offsetof(struct batadv_orig_node, mcast_want_all_ipv4_node):
+	case offsetof(struct batadv_orig_node, mcast_want_all_ipv6_node):
+	case offsetof(struct batadv_orig_node, mcast_want_all_rtr4_node):
+	case offsetof(struct batadv_orig_node, mcast_want_all_rtr6_node):
+		break;
+	default:
+		WARN_ON(1);
+		return NULL;
+	}
+
+	return (struct batadv_orig_node *)((void *)node - entry_offset);
+}
+
+/**
+ * batadv_mcast_forw_push_dest() - push an originator MAC address onto an skb
+ * @skb: the skb to push the destination address onto
+ * @vid: the vlan identifier
+ * @orig_node: the originator node to get the MAC address from
+ * @num_dests: a pointer to store the number of pushed addresses in
+ *
+ * If the orig_node is a BLA backbone gateway, if there is not enough skb
+ * headroom available or if num_dests is already at its maximum (65535) then
+ * neither the skb nor num_dests is changed. Otherwise the originator's MAC
+ * address is pushed onto the given skb and num_dests incremented by one.
+ *
+ * Return: true if the orig_node is a backbone gateway or if an orig address
+ *  was pushed successfully.
+ */
+static bool batadv_mcast_forw_push_dest(struct batadv_priv *bat_priv,
+					struct sk_buff *skb, unsigned short vid,
+					struct batadv_orig_node *orig_node,
+					unsigned short *num_dests)
+{
+	BUILD_BUG_ON(sizeof(((struct batadv_tvlv_mcast_tracker *)0)->num_dests)
+		     != sizeof(__be16));
+
+	/* Avoid sending to other BLA gateways - they already got the frame from
+	 * the LAN side we share with them.
+	 * TODO: Refactor to take BLA into account earlier in mode check.
+	 */
+	if (batadv_bla_is_backbone_gw_orig(bat_priv, orig_node->orig, vid))
+		return true;
+
+	if (skb_headroom(skb) < ETH_ALEN || *num_dests == U16_MAX)
+		return false;
+
+	skb_push(skb, ETH_ALEN);
+	ether_addr_copy(skb->data, orig_node->orig);
+	(*num_dests)++;
+
+	return true;
+}
+
+/**
+ * batadv_mcast_forw_push_dests_list() - push originators from list onto an skb
+ * @bat_priv: the bat priv with all the soft interface information
+ * @skb: the skb to push the destination addresses onto
+ * @vid: the vlan identifier
+ * @head: the list to gather originators from
+ * @entry_offset: offset of an hlist node in an orig_node structure
+ * @num_dests: a pointer to store the number of pushed addresses in
+ *
+ * Push the MAC addresses of all originators in the given list onto the given
+ * skb.
+ *
+ * Return: true on success, false otherwise.
+ */
+static int batadv_mcast_forw_push_dests_list(struct batadv_priv *bat_priv,
+					     struct sk_buff *skb,
+					     unsigned short vid,
+					     struct hlist_head *head,
+					     size_t entry_offset,
+					     unsigned short *num_dests)
+{
+	struct hlist_node *node;
+	struct batadv_orig_node *orig_node;
+
+	rcu_read_lock();
+	__hlist_for_each_rcu(node, head) {
+		orig_node = batadv_mcast_forw_orig_entry(node, entry_offset);
+		if (!orig_node ||
+		    !batadv_mcast_forw_push_dest(bat_priv, skb, vid, orig_node,
+						 num_dests))
+			return false;
+	}
+	rcu_read_unlock();
+
+	return true;
+}
+
+/**
+ * batadv_mcast_forw_push_tt() - push originators with interest through TT
+ * @bat_priv: the bat priv with all the soft interface information
+ * @skb: the skb to push the destination addresses onto
+ * @vid: the vlan identifier
+ * @num_dests: a pointer to store the number of pushed addresses in
+ *
+ * Push the MAC addresses of all originators which have indicated interest in
+ * this multicast packet through the translation table onto the given skb.
+ *
+ * Return: true on success, false otherwise.
+ */
+static bool
+batadv_mcast_forw_push_tt(struct batadv_priv *bat_priv, struct sk_buff *skb,
+			  unsigned short vid, unsigned short *num_dests)
+{
+	struct batadv_tt_orig_list_entry *orig_entry;
+
+	struct batadv_tt_global_entry *tt_global;
+	const u8 *addr = eth_hdr(skb)->h_dest;
+
+	/* ok */
+	int ret = true;
+
+	tt_global = batadv_tt_global_hash_find(bat_priv, addr, vid);
+	if (!tt_global)
+		goto out;
+
+	rcu_read_lock();
+	hlist_for_each_entry_rcu(orig_entry, &tt_global->orig_list, list) {
+		if (!batadv_mcast_forw_push_dest(bat_priv, skb, vid,
+						 orig_entry->orig_node,
+						 num_dests)) {
+			ret = false;
+			break;
+		}
+	}
+	rcu_read_unlock();
+
+	batadv_tt_global_entry_put(tt_global);
+
+out:
+	return ret;
+}
+
+/**
+ * batadv_mcast_forw_push_want_all() - push originators with want-all flag
+ * @bat_priv: the bat priv with all the soft interface information
+ * @skb: the skb to push the destination addresses onto
+ * @vid: the vlan identifier
+ * @num_dests: a pointer to store the number of pushed addresses in
+ *
+ * Push the MAC addresses of all originators which have indicated interest in
+ * this multicast packet through the want-all flag onto the given skb.
+ *
+ * Return: true on success, false otherwise.
+ */
+static bool batadv_mcast_forw_push_want_all(struct batadv_priv *bat_priv,
+					    struct sk_buff *skb,
+					    unsigned short vid,
+					    unsigned short *num_dests)
+{
+	struct hlist_head *head = NULL;
+	size_t offset;
+	int ret;
+
+	switch (eth_hdr(skb)->h_proto) {
+	case htons(ETH_P_IP):
+		head = &bat_priv->mcast.want_all_ipv4_list;
+		offset = offsetof(struct batadv_orig_node,
+				  mcast_want_all_ipv4_node);
+		break;
+	case htons(ETH_P_IPV6):
+		head = &bat_priv->mcast.want_all_ipv6_list;
+		offset = offsetof(struct batadv_orig_node,
+				  mcast_want_all_ipv6_node);
+		break;
+	default:
+		return false;
+	}
+
+	ret = batadv_mcast_forw_push_dests_list(bat_priv, skb, vid, head,
+						offset, num_dests);
+	if (!ret)
+		return false;
+
+	return true;
+}
+
+/**
+ * batadv_mcast_forw_push_want_rtr() - push originators with want-router flag
+ * @bat_priv: the bat priv with all the soft interface information
+ * @skb: the skb to push the destination addresses onto
+ * @vid: the vlan identifier
+ * @num_dests: a pointer to store the number of pushed addresses in
+ *
+ * Push the MAC addresses of all originators which have indicated interest in
+ * this multicast packet through the want-all-rtr flag onto the given skb.
+ *
+ * Return: true on success, false otherwise.
+ */
+static bool batadv_mcast_forw_push_want_rtr(struct batadv_priv *bat_priv,
+					    struct sk_buff *skb,
+					    unsigned short vid,
+					    unsigned short *num_dests)
+{
+	struct hlist_head *head = NULL;
+	size_t offset;
+	int ret;
+
+	switch (eth_hdr(skb)->h_proto) {
+	case htons(ETH_P_IP):
+		head = &bat_priv->mcast.want_all_rtr4_list;
+		offset = offsetof(struct batadv_orig_node,
+				  mcast_want_all_rtr4_node);
+		break;
+	case htons(ETH_P_IPV6):
+		head = &bat_priv->mcast.want_all_rtr6_list;
+		offset = offsetof(struct batadv_orig_node,
+				  mcast_want_all_rtr6_node);
+		break;
+	default:
+		return false;
+	}
+
+	ret = batadv_mcast_forw_push_dests_list(bat_priv, skb, vid, head,
+						offset, num_dests);
+	if (!ret)
+		return false;
+
+	return true;
+}
+
+/**
+ * batadv_mcast_forw_push_dests() - push originator addresses onto an skb
+ * @bat_priv: the bat priv with all the soft interface information
+ * @skb: the skb to push the destination addresses onto
+ * @vid: the vlan identifier
+ * @is_routable: indicates whether the destination is routable
+ *
+ * Push the MAC addresses of all originators which have indicated interest in
+ * this multicast packet onto the given skb.
+ *
+ * Return: The number of destination originator MAC addresses that were pushed
+ * onto the given skb.
+ */
+static int
+batadv_mcast_forw_push_dests(struct batadv_priv *bat_priv, struct sk_buff *skb,
+			     unsigned short vid, int is_routable)
+{
+	unsigned short num_dests = 0;
+
+	if (!batadv_mcast_forw_push_tt(bat_priv, skb, vid, &num_dests))
+		goto err;
+
+	if (!batadv_mcast_forw_push_want_all(bat_priv, skb, vid, &num_dests))
+		goto err;
+
+	if (is_routable &&
+	    !batadv_mcast_forw_push_want_rtr(bat_priv, skb, vid, &num_dests))
+		goto err;
+
+	return num_dests;
+err:
+	skb_pull(skb, num_dests * ETH_ALEN);
+	return -ENOMEM;
+}
+
 /**
  * batadv_mcast_forw_tracker_hdrlen() - calculate tracker TVLV header length
  * @num_dests: the number of destination addresses to taken into account
@@ -39,6 +315,120 @@ static int batadv_mcast_forw_tracker_hdrlen(unsigned int num_dests)
 		return len - sizeof(mcast_tracker->align);
 }
 
+/**
+ * batadv_mcast_forw_push_tracker() - push a multicast tracker TVLV header
+ * @skb: the skb to push the tracker TVLV onto
+ * @num_dests: the number of destination addresses to set in the header
+ *
+ * Pushes a multicast tracker TVLV header onto the given skb, including the
+ * generic TVLV header but excluding the destination MAC addresses.
+ *
+ * The provided num_dests value is taken into consideration to set the
+ * num_dests field in the tracker header and to set the appropriate TVLV length
+ * value fields. But also to decide whether to add or omit the 2 alignment bytes
+ * in the multicast tracker TVLV header, to make the tracker TVLV 4 byte aligned
+ * to make the encapsulated IP packet 4 byte aligned.
+ *
+ * Return: -ENOMEM if there is not enough skb headroom available. Otherwise, on
+ * success the number of bytes that were pushed, the total TVLV length value.
+ */
+static int batadv_mcast_forw_push_tracker(struct sk_buff *skb, int num_dests)
+{
+	struct batadv_tvlv_mcast_tracker *mcast_tracker;
+	unsigned int tvlv_value_len, tracker_hdrlen;
+	struct batadv_tvlv_hdr *tvlv_hdr;
+
+	/* odd #dests: no 2 byte padding to TVLV */
+	tracker_hdrlen = batadv_mcast_forw_tracker_hdrlen(num_dests);
+
+	if (skb_headroom(skb) < tracker_hdrlen + sizeof(*tvlv_hdr))
+		return -ENOMEM;
+
+	tvlv_value_len = tracker_hdrlen + ETH_ALEN * num_dests;
+	if (tvlv_value_len + sizeof(*tvlv_hdr) > U16_MAX)
+		return -ENOMEM;
+
+	skb_push(skb, tracker_hdrlen);
+	mcast_tracker = (struct batadv_tvlv_mcast_tracker *)skb->data;
+	mcast_tracker->num_dests = htons(num_dests);
+
+	/* even #dests: with 2 byte padding to TVLV */
+	if (!(num_dests % 2))
+		memset(mcast_tracker->align, 0, sizeof(mcast_tracker->align));
+
+	skb_reset_network_header(skb);
+
+	skb_push(skb, sizeof(*tvlv_hdr));
+	tvlv_hdr = (struct batadv_tvlv_hdr *)skb->data;
+	tvlv_hdr->type = BATADV_TVLV_MCAST_TRACKER;
+	tvlv_hdr->version = 1;
+	tvlv_hdr->len = htons(tvlv_value_len);
+
+	return tvlv_value_len + sizeof(*tvlv_hdr);
+}
+
+/**
+ * batadv_mcast_forw_push_tvlvs() - push a multicast tracker TVLV onto an skb
+ * @skb: the skb to push the tracker TVLV onto
+ * @vid: the vlan identifier
+ * @is_routable: indicates whether the destination is routable
+ *
+ * Pushes a multicast tracker TVLV onto the given skb, including the collected
+ * destination MAC addresses and the generic TVLV header.
+ *
+ * Return: -ENOMEM if there is not enough skb headroom available. Otherwise, on
+ * success the number of bytes that were pushed, the total TVLV length value.
+ */
+static int
+batadv_mcast_forw_push_tvlvs(struct batadv_priv *bat_priv, struct sk_buff *skb,
+			     unsigned short vid, int is_routable)
+{
+	int num_dests, tvlv_len;
+
+	num_dests = batadv_mcast_forw_push_dests(bat_priv, skb, vid,
+						 is_routable);
+	if (num_dests <	0)
+		return num_dests;
+
+	tvlv_len = batadv_mcast_forw_push_tracker(skb, num_dests);
+	if (tvlv_len < 0)
+		skb_pull(skb, num_dests * ETH_ALEN);
+
+	return tvlv_len;
+}
+
+/**
+ * batadv_mcast_forw_push_hdr() - push a multicast packet header onto an skb
+ * @skb: the skb to push the header onto
+ * @tvlv_len: the total TVLV length value to set in the header
+ *
+ * Pushes a batman-adv multicast packet header onto the given skb and sets
+ * the provided total TVLV length value in it.
+ *
+ * Caller needs to ensure enough skb headroom is available.
+ *
+ * Return: -ENOMEM if there is not enough skb headroom available. Otherwise, on
+ * success 0.
+ */
+static int batadv_mcast_forw_push_hdr(struct sk_buff *skb, int tvlv_len)
+{
+	struct batadv_mcast_packet *mcast_packet;
+
+	if (skb_headroom(skb) < sizeof(*mcast_packet))
+		return -ENOMEM;
+
+	skb_push(skb, sizeof(*mcast_packet));
+
+	mcast_packet = (struct batadv_mcast_packet *)skb->data;
+	mcast_packet->version = BATADV_COMPAT_VERSION;
+	mcast_packet->ttl = BATADV_TTL;
+	mcast_packet->packet_type = BATADV_MCAST;
+	mcast_packet->reserved = 0;
+	mcast_packet->tvlv_len = htons(tvlv_len);
+
+	return 0;
+}
+
 /**
  * batadv_mcast_forw_orig_to_neigh() - get next hop neighbor to an orig address
  * @bat_priv: the bat priv with all the soft interface information
@@ -266,3 +656,117 @@ int batadv_mcast_forw_tracker_tvlv_handler(struct batadv_priv *bat_priv,
 {
 	return batadv_mcast_forw_packet(bat_priv, skb, false);
 }
+
+/**
+ * batadv_mcast_forw_packet_hdrlen() - multicast packet header length
+ * @num_dests: number of destination nodes
+ *
+ * Calculates the total batman-adv multicast packet header length for a given
+ * number of destination nodes (excluding the outter ethernet frame).
+ *
+ * Return: The calculated total batman-adv multicast packet header length.
+ */
+unsigned int batadv_mcast_forw_packet_hdrlen(unsigned int num_dests)
+{
+	return num_dests * ETH_ALEN +
+	       batadv_mcast_forw_tracker_hdrlen(num_dests) +
+	       sizeof(struct batadv_tvlv_hdr) +
+	       sizeof(struct batadv_mcast_packet);
+}
+
+/**
+ * batadv_mcast_forw_expand_head() - expand headroom for an mcast packet
+ * @bat_priv: the bat priv with all the soft interface information
+ * @skb: the multicast packet to send
+ *
+ * Tries to expand an skb's headroom so that its head to tail is 1298
+ * bytes (minimum IPv6 MTU + vlan ethernet header size) large.
+ *
+ * Return: -EINVAL if the given skb's length is too large or -ENOMEM on memory
+ * allocation failure. Otherwise, on success, zero is returned.
+ */
+static int batadv_mcast_forw_expand_head(struct batadv_priv *bat_priv,
+					 struct sk_buff *skb)
+{
+	int hdr_size = VLAN_ETH_HLEN + IPV6_MIN_MTU - skb->len;
+
+	 /* TODO: Could be tightened to actual number of destination nodes?
+	  * But it's tricky, number of destinations might have increased since
+	  * we last checked.
+	  */
+	if (hdr_size < 0) {
+		/* batadv_mcast_forw_mode_check_count() should ensure we do not
+		 * end up here
+		 */
+		WARN_ON(1);
+		return -EINVAL;
+	}
+
+	if (skb_headroom(skb) < hdr_size &&
+	    pskb_expand_head(skb, hdr_size, 0, GFP_ATOMIC) < 0)
+		return -ENOMEM;
+
+	return 0;
+}
+
+/**
+ * batadv_mcast_forw_push() - encapsulate skb in a batman-adv multicast packet
+ * @bat_priv: the bat priv with all the soft interface information
+ * @skb: the multicast packet to encapsulate and send
+ * @vid: the vlan identifier
+ * @is_routable: indicates whether the destination is routable
+ *
+ * Encapsulates the given multicast packet in a batman-adv multicast packet.
+ * A multicast tracker TVLV with destination originator addresses for any node
+ * that signaled interest in it, that is either via the translation table or the
+ * according want-all flags, is attached accordingly.
+ *
+ * Return: true on success, false otherwise.
+ */
+bool batadv_mcast_forw_push(struct batadv_priv *bat_priv, struct sk_buff *skb,
+			    unsigned short vid, int is_routable)
+{
+	int tvlv_len;
+
+	if (batadv_mcast_forw_expand_head(bat_priv, skb) < 0)
+		return false;
+
+	skb_reset_transport_header(skb);
+
+	tvlv_len = batadv_mcast_forw_push_tvlvs(bat_priv, skb, vid,
+						is_routable);
+	if (tvlv_len < 0)
+		return false;
+
+	if (batadv_mcast_forw_push_hdr(skb, tvlv_len) < 0) {
+		skb_pull(skb, tvlv_len);
+		return false;
+	}
+
+	return true;
+}
+
+/**
+ * batadv_mcast_forw_mcsend() - send a self prepared batman-adv multicast packet
+ * @bat_priv: the bat priv with all the soft interface information
+ * @skb: the multicast packet to encapsulate and send
+ *
+ * Transmits a batman-adv multicast packet that was locally prepared and
+ * consumes/frees it.
+ *
+ * Return: NET_XMIT_DROP on memory allocation failure. NET_XMIT_SUCCESS
+ * otherwise.
+ */
+int batadv_mcast_forw_mcsend(struct batadv_priv *bat_priv,
+			     struct sk_buff *skb)
+{
+	int ret = batadv_mcast_forw_packet(bat_priv, skb, true);
+
+	if (ret < 0) {
+		kfree_skb(skb);
+		return NET_XMIT_DROP;
+	}
+
+	consume_skb(skb);
+	return NET_XMIT_SUCCESS;
+}
diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c
index d30598eb557c..2a80fa3dd3b1 100644
--- a/net/batman-adv/soft-interface.c
+++ b/net/batman-adv/soft-interface.c
@@ -299,12 +299,13 @@ static netdev_tx_t batadv_interface_tx(struct sk_buff *skb,
 
 send:
 		if (do_bcast && !is_broadcast_ether_addr(ethhdr->h_dest)) {
-			forw_mode = batadv_mcast_forw_mode(bat_priv, skb,
+			forw_mode = batadv_mcast_forw_mode(bat_priv, skb, vid,
 							   &mcast_is_routable);
 			switch (forw_mode) {
 			case BATADV_FORW_BCAST:
 				break;
 			case BATADV_FORW_UCASTS:
+			case BATADV_FORW_MCAST:
 				do_bcast = false;
 				break;
 			case BATADV_FORW_NONE:
@@ -363,6 +364,8 @@ static netdev_tx_t batadv_interface_tx(struct sk_buff *skb,
 		} else if (forw_mode == BATADV_FORW_UCASTS) {
 			ret = batadv_mcast_forw_send(bat_priv, skb, vid,
 						     mcast_is_routable);
+		} else if (forw_mode == BATADV_FORW_MCAST) {
+			ret = batadv_mcast_forw_mcsend(bat_priv, skb);
 		} else {
 			if (batadv_dat_snoop_outgoing_arp_request(bat_priv,
 								  skb))
@@ -760,6 +763,7 @@ static int batadv_softif_init_late(struct net_device *dev)
 	atomic_set(&bat_priv->mcast.num_want_all_unsnoopables, 0);
 	atomic_set(&bat_priv->mcast.num_want_all_ipv4, 0);
 	atomic_set(&bat_priv->mcast.num_want_all_ipv6, 0);
+	atomic_set(&bat_priv->mcast.num_no_mc_ptype_capa, 0);
 #endif
 	atomic_set(&bat_priv->gw.mode, BATADV_GW_MODE_OFF);
 	atomic_set(&bat_priv->gw.bandwidth_down, 100);
diff --git a/net/batman-adv/types.h b/net/batman-adv/types.h
index a2fee3325b29..4008ae1d6c15 100644
--- a/net/batman-adv/types.h
+++ b/net/batman-adv/types.h
@@ -1342,6 +1342,12 @@ struct batadv_priv_mcast {
 	/** @num_want_all_rtr6: counter for items in want_all_rtr6_list */
 	atomic_t num_want_all_rtr6;
 
+	/**
+	 * @num_no_mc_ptype_capa: counter for number of nodes without the
+	 *  BATADV_MCAST_HAVE_MC_PTYPE_CAPA flag
+	 */
+	atomic_t num_no_mc_ptype_capa;
+
 	/**
 	 * @want_lists_lock: lock for protecting modifications to mcasts
 	 *  want_all_{unsnoopables,ipv4,ipv6}_list (traversals are rcu-locked)
-- 
2.39.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v2 5/5] batman-adv: mcast: shrink tracker packet after scrubbing
  2022-12-26 16:15 [PATCH v2 0/5] Implementation of a Stateless Multicast Packet Type Linus Lüssing
                   ` (3 preceding siblings ...)
  2022-12-26 16:15 ` [PATCH v2 4/5] batman-adv: mcast: implement multicast packet generation Linus Lüssing
@ 2022-12-26 16:15 ` Linus Lüssing
  2022-12-26 18:50   ` Sven Eckelmann
  4 siblings, 1 reply; 11+ messages in thread
From: Linus Lüssing @ 2022-12-26 16:15 UTC (permalink / raw)
  To: b.a.t.m.a.n; +Cc: Linus Lüssing

Remove all zero MAC address entries (00:00:00:00:00:00) from a multicast
packet's tracker TVLV before transmitting it and update all headers
accordingly. This way, instead of keeping the multicast packet at a
constant size throughout its journey through the mesh, it will become
more lightweight, smaller with every interested receiver on the way and
on each splitting intersection. Which can save some valuable bandwidth.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
---
 net/batman-adv/multicast_forw.c | 207 ++++++++++++++++++++++++++++++++
 1 file changed, 207 insertions(+)

diff --git a/net/batman-adv/multicast_forw.c b/net/batman-adv/multicast_forw.c
index e2b0cd51cec4..3f6fedc7a918 100644
--- a/net/batman-adv/multicast_forw.c
+++ b/net/batman-adv/multicast_forw.c
@@ -24,6 +24,9 @@
 #define batadv_mcast_forw_tracker_for_each_dest(dest, num_dests) \
 	for (; num_dests; num_dests--, (dest) += ETH_ALEN)
 
+#define batadv_mcast_forw_tracker_for_each_dest_rev(dest, num_dests) \
+	for (; num_dests; num_dests--, (dest) -= ETH_ALEN)
+
 /**
  * batadv_mcast_forw_orig_entry() - get orig_node from an hlist node
  * @node: the hlist node to get the orig_node from
@@ -516,6 +519,209 @@ batadv_mcast_forw_scrub_dests(struct batadv_priv *bat_priv,
 	}
 }
 
+/**
+ * batadv_mcast_forw_shrink_align_offset() - calculate alignment offset
+ * @num_dests_old: the number of destinations the tracker TVLV had originally
+ * @num_dests_reduce: the number of destinations that are going to be removed
+ *
+ * The multicast tracker TVLV has 2 alignment bytes if the number of destination
+ * entries are even, to make this TVLV 4 byte aligned to make the encapsulated
+ * IP packet 4 byte aligned. And no alignment bytes in the tracker TVLV if the
+ * number of destinations is odd.
+ *
+ * This calculates if the 2 alignment bytes in the multicast tracker TVLV need
+ * to be added, removed or left unchanged.
+ *
+ * Return: The number of extra offset in skb tail direction to compensate for
+ * alignment. Will be -2, 0 or +2.
+ */
+static int batadv_mcast_forw_shrink_align_offset(unsigned int num_dests_old,
+						 unsigned int num_dests_remove)
+{
+	int ret = sizeof(((struct batadv_tvlv_mcast_tracker *)0)->align);
+
+	/* no change in padding */
+	if (!(num_dests_remove % 2))
+		return 0;
+
+	/* even had padding, remove it, increase the offset */
+	if (!(num_dests_old % 2))
+		return ret;
+	/* odd had no padding, add it, decrease the offset */
+	else
+		return -ret;
+}
+
+/**
+ * batadv_mcast_forw_shrink_pack_dests() - pack destinations of a tracker TVLV
+ * @skb: the batman-adv multicast packet to compact destinations in
+ *
+ * Compacts the originator destination MAC addresses in the multicast tracker
+ * TVLV of the given multicast packet. This is done by moving all non-zero
+ * MAC addresses in direction of the skb tail and all zero MAC addresses in skb
+ * head direction, within the multicast tracker TVLV.
+ *
+ * Return: The number of consecutive zero MAC address destinations which are
+ * now at the front within the multicast tracker TVLV.
+ */
+static int batadv_mcast_forw_shrink_pack_dests(struct sk_buff *skb)
+{
+	struct batadv_tvlv_mcast_tracker *mcast_tracker;
+	u16 num_dests_slot, num_dests_filler;
+	unsigned int tracker_hdrlen;
+	u8 *slot, *filler;
+
+	mcast_tracker = (struct batadv_tvlv_mcast_tracker *)skb_network_header(skb);
+	num_dests_slot = ntohs(mcast_tracker->num_dests);
+
+	tracker_hdrlen = batadv_mcast_forw_tracker_hdrlen(num_dests_slot);
+	slot = (u8 *)mcast_tracker + tracker_hdrlen;
+	slot += ETH_ALEN * (num_dests_slot - 1);
+
+	if (!num_dests_slot)
+		return 0;
+
+	num_dests_filler = num_dests_slot - 1;
+	filler = slot - ETH_ALEN;
+
+	batadv_mcast_forw_tracker_for_each_dest_rev(slot, num_dests_slot) {
+		/* find an empty slot */
+		if (!is_zero_ether_addr(slot))
+			continue;
+
+		/* keep filler ahead of slot */
+		if (filler >= slot) {
+			num_dests_filler = num_dests_slot - 1;
+			filler = slot - ETH_ALEN;
+		}
+
+		/* find a candidate to fill the empty slot */
+		batadv_mcast_forw_tracker_for_each_dest_rev(filler, num_dests_filler) {
+			if (is_zero_ether_addr(filler))
+				continue;
+
+			ether_addr_copy(slot, filler);
+			eth_zero_addr(filler);
+			goto cont_next_slot;
+		}
+
+		/* could not find a filler, we can stop
+		 * - and must not advance the slot pointer!
+		 */
+		if (!num_dests_filler)
+			break;
+cont_next_slot:
+	}
+
+	 /* num_dests_slot is the amount of reduced destinations */
+	return num_dests_slot;
+}
+
+/**
+ * batadv_mcast_forw_shrink_update_headers() - update shrunk mc packet headers
+ * @skb: the batman-adv multicast packet to update headers of
+ * @num_dest_reduce: the number of destinations that were removed
+ *
+ * This updates any fields of a batman-adv multicast packet that are affected
+ * by the reduced number of destinations in the multicast tracket TVLV. In
+ * particular this updates:
+ *
+ * The num_dest field of the multicast tracker TVLV.
+ * The TVLV length field of the according generic TVLV header.
+ * The batman-adv multicast packet's total TVLV length field.
+ *
+ * Return: The offset in skb's tail direction at which the new batman-adv
+ * multicast packet header needs to start.
+ */
+static unsigned int
+batadv_mcast_forw_shrink_update_headers(struct sk_buff *skb,
+					unsigned int num_dests_reduce)
+{
+	struct batadv_tvlv_mcast_tracker *mcast_tracker;
+	struct batadv_mcast_packet *mcast_packet;
+	struct batadv_tvlv_hdr *tvlv_hdr;
+	unsigned char *skb_net_hdr;
+	unsigned int offset;
+	int align_offset;
+	u16 num_dests;
+
+	skb_net_hdr = skb_network_header(skb);
+	mcast_tracker = (struct batadv_tvlv_mcast_tracker *)skb_net_hdr;
+	num_dests = ntohs(mcast_tracker->num_dests);
+
+	align_offset = batadv_mcast_forw_shrink_align_offset(num_dests,
+							     num_dests_reduce);
+	num_dests -= num_dests_reduce;
+	offset = ETH_ALEN * num_dests_reduce + align_offset;
+
+	/* update tracker header */
+	mcast_tracker->num_dests = htons(num_dests);
+	/* align field is already zero'd due to previous eth_zero_addr() call */
+
+	/* update tracker's tvlv header's length field */
+	tvlv_hdr = (struct batadv_tvlv_hdr *)(skb_network_header(skb) -
+					      sizeof(*tvlv_hdr));
+	tvlv_hdr->len = htons(ntohs(tvlv_hdr->len) - offset);
+
+	/* update multicast packet header's tvlv length field */
+	mcast_packet = (struct batadv_mcast_packet *)skb->data;
+	mcast_packet->tvlv_len = htons(ntohs(mcast_packet->tvlv_len) - offset);
+
+	return offset;
+}
+
+/**
+ * batadv_mcast_forw_shrink_move_headers() - move multicast headers by offset
+ * @skb: the batman-adv multicast packet to move headers for
+ * @offset: a non-negative offset to move headers by, towards the skb tail
+ *
+ * Moves the batman-adv multicast packet header, its multicast tracker TVLV and
+ * any TVLVs in between by the given offset in direction towards the tail.
+ *
+ * It also invalidates the skb checksum.
+ */
+static void
+batadv_mcast_forw_shrink_move_headers(struct sk_buff *skb, unsigned int offset)
+{
+	struct batadv_tvlv_mcast_tracker *mcast_tracker;
+	unsigned int tracker_hdrlen, len;
+	unsigned char *skb_net_hdr;
+	u16 num_dests;
+
+	skb_net_hdr = skb_network_header(skb);
+	mcast_tracker = (struct batadv_tvlv_mcast_tracker *)skb_net_hdr;
+	num_dests = ntohs(mcast_tracker->num_dests);
+	tracker_hdrlen = batadv_mcast_forw_tracker_hdrlen(num_dests);
+	len = skb_network_offset(skb) + tracker_hdrlen;
+
+	memmove(skb->data + offset, skb->data, len);
+	skb_pull(skb, offset);
+
+	/* invalidate checksum: */
+	skb->ip_summed = CHECKSUM_NONE;
+}
+
+/**
+ * batadv_mcast_forw_shrink_tracker() - remove zero addresses in a tracker tvlv
+ * @skb: the batman-adv multicast packet to (potentially) shrink
+ *
+ * Removes all destinations with a zero MAC addresses (00:00:00:00:00:00) from
+ * the given batman-adv multicast packet's tracker TVLV and updates headers
+ * accordingly to maintain a valid batman-adv multicast packet.
+ */
+static void batadv_mcast_forw_shrink_tracker(struct sk_buff *skb)
+{
+	u16 dests_reduced;
+	unsigned int offset;
+
+	dests_reduced = batadv_mcast_forw_shrink_pack_dests(skb);
+	if (!dests_reduced)
+		return;
+
+	offset = batadv_mcast_forw_shrink_update_headers(skb, dests_reduced);
+	batadv_mcast_forw_shrink_move_headers(skb, offset);
+}
+
 /**
  * batadv_mcast_forw_packet() - forward a batman-adv multicast packet
  * @bat_priv: the bat priv with all the soft interface information
@@ -600,6 +806,7 @@ static int batadv_mcast_forw_packet(struct batadv_priv *bat_priv,
 
 		batadv_mcast_forw_scrub_dests(bat_priv, neigh_node, dest,
 					      next_dest, num_dests);
+		batadv_mcast_forw_shrink_tracker(nexthop_skb);
 
 		batadv_inc_counter(bat_priv, BATADV_CNT_MCAST_TX);
 		batadv_add_counter(bat_priv, BATADV_CNT_MCAST_TX_BYTES,
-- 
2.39.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 1/5] batman-adv: mcast: remove now redundant single ucast forwarding
  2022-12-26 16:15 ` [PATCH v2 1/5] batman-adv: mcast: remove now redundant single ucast forwarding Linus Lüssing
@ 2022-12-26 17:09   ` Sven Eckelmann
  0 siblings, 0 replies; 11+ messages in thread
From: Sven Eckelmann @ 2022-12-26 17:09 UTC (permalink / raw)
  To: b.a.t.m.a.n; +Cc: Linus Lüssing

[-- Attachment #1: Type: text/plain, Size: 2327 bytes --]

On Monday, 26 December 2022 17:15:50 CET Linus Lüssing wrote:
> The multicast code to send a multicast packet via multiple batman-adv
> unicast packets is not only capable of sending to multiple but also to a
> single node. Therefore we can safely remove the old, specialized, now
> redundant multicast-to-single-unicast code.
> 
> The only functional change of this simplification is that the edge case
> of allowing a multicast packet with an unsnoopable destination address
> (224.0.0.0/24 or ff02::1) where only a single node has signaled interest
> in it via the batman-adv want-all-unsnoopables multicast flag is now
> transmitted via a batman-adv broadcast instead of a batman-adv unicast
> packet. Maintaining this edge case feature does not seem worth the extra
> lines of code and people should just not expect to be able to snoop and
> optimize such unsnoopable multicast addresses when bridges are involved.
> 
> While at it also renaming a few items in the batadv_forw_mode enum to
> prepare for the new batman-adv multicast packet type.
> 
> Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
> ---
>  net/batman-adv/multicast.c      | 248 ++------------------------------
>  net/batman-adv/multicast.h      |  38 +----
>  net/batman-adv/soft-interface.c |  25 ++--
>  3 files changed, 33 insertions(+), 278 deletions(-)


Output of different failed tests
================================

ecsv/pu: headers
----------------

    diff --git a/net/batman-adv/multicast.c b/net/batman-adv/multicast.c
    index 89ba1093..6f387e61 100644
    --- a/net/batman-adv/multicast.c
    +++ b/net/batman-adv/multicast.c
    @@ -26,7 +26,6 @@
     #include <linux/ipv6.h>
     #include <linux/jiffies.h>
     #include <linux/kernel.h>
    -#include <linux/kref.h>
     #include <linux/list.h>
     #include <linux/lockdep.h>
     #include <linux/netdevice.h>
    diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c
    index c2fa0ef5..cd04ab27 100644
    --- a/net/batman-adv/soft-interface.c
    +++ b/net/batman-adv/soft-interface.c
    @@ -48,7 +48,6 @@
     #include "hard-interface.h"
     #include "multicast.h"
     #include "network-coding.h"
    -#include "originator.h"
     #include "send.h"
     #include "translation-table.h"

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 2/5] batman-adv: tvlv: prepare for tvlv enabled multicast packet type
  2022-12-26 16:15 ` [PATCH v2 2/5] batman-adv: tvlv: prepare for tvlv enabled multicast packet type Linus Lüssing
@ 2022-12-26 17:33   ` Sven Eckelmann
  0 siblings, 0 replies; 11+ messages in thread
From: Sven Eckelmann @ 2022-12-26 17:33 UTC (permalink / raw)
  To: b.a.t.m.a.n; +Cc: Linus Lüssing, Linus Lüssing

[-- Attachment #1: Type: text/plain, Size: 179007 bytes --]

On Monday, 26 December 2022 17:15:51 CET Linus Lüssing wrote:
> Prepare TVLV infrastructure for more packet types, in particular the
> upcoming batman-adv multicast packet type.
> 
> For that swap the OGM vs. unicast-tvlv packet boolean indicator to an
> explicit unsigned integer packet type variable. And provide the skb
> to a call to batadv_tvlv_containers_process(), as later the multicast
> packet's TVLV handler will need to have access not only to the TVLV but
> the full skb for forwarding. Forwarding will be invoked from the
> multicast packet's TVLVs' contents later.
> 
> Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
> ---
>  include/uapi/linux/batadv_packet.h     |  2 +
>  net/batman-adv/bat_v_ogm.c             |  4 +-
>  net/batman-adv/distributed-arp-table.c |  2 +-
>  net/batman-adv/gateway_common.c        |  2 +-
>  net/batman-adv/multicast.c             |  2 +-
>  net/batman-adv/routing.c               |  7 ++-
>  net/batman-adv/translation-table.c     |  4 +-
>  net/batman-adv/tvlv.c                  | 71 ++++++++++++++++++--------
>  net/batman-adv/tvlv.h                  |  8 +--
>  net/batman-adv/types.h                 |  6 +++
>  10 files changed, 73 insertions(+), 35 deletions(-)

Name of failed tests
====================

ecsv/pu
-------

 * headers
 * sparse linux-4.10 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.10 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.10 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.11 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.11 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.12 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.12 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.12 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.12 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.12 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.13 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.13 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.14 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.14 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.14 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.14 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.14.302 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.14.302 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.14.302 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.15 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.15 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.16 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.16 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.16 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.16 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.17 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.18 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.18 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.18 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.18 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.18 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.18 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.18 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.19 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.19.269 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.19.269 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.19.269 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.19.269 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.9 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.9 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.9 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.9 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.9 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.9.336 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.0 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.0 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.1 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.10 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.10 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.10 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.10 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.10.159 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.10.159 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.11 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.11 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.12 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.12 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.13 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.13 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.13 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.13 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.13 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.13 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.13 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.13 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.13 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.14 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.14 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.14 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.14 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.15.83 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.15.83 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.15.83 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.16 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.16 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.17 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.17 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.18 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.18 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.18 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.19 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.19 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.19 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.19 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.2 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.2 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.3 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.3 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.4 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.4 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.4 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.4 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.4 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.4 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.4 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.4.227 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.4.227 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.5 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.6 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.6 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.6 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.6 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.7 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.7 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.7 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.8 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.8 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.9 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.9 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.9 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.9 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-6.0 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-6.0 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-6.0 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-6.0.13 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-6.0.13 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-6.0.13 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-6.1 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-6.1 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.10 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.10 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.11 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.12 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.12 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.12 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.14 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.14 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.14 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.14.302 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.15 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.15 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.16 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.18 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.18 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.19.269 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.19.269 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.19.269 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.19.269 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.9 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.9 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.9 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.9 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.9 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.9.336 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.0 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.0 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.1 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.10 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.10 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.10.159 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.11 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.13 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.13 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.13 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.13 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.13 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.13 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.13 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.14 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.14 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.14 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.14 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.15.83 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.15.83 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.15.83 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.16 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.16 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.19 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.19 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.2 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.3 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.3 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.4 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.4 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.4 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.4.227 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.5 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.6 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.6 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.6 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.7 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.8 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.9 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-6.0 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-6.0 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-6.0.13 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-6.1 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-6.1 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n


Output of different failed tests
================================

ecsv/pu: headers
----------------

    diff --git a/net/batman-adv/multicast.c b/net/batman-adv/multicast.c
    index cbf7ac9e..d541532b 100644
    --- a/net/batman-adv/multicast.c
    +++ b/net/batman-adv/multicast.c
    @@ -26,7 +26,6 @@
     #include <linux/ipv6.h>
     #include <linux/jiffies.h>
     #include <linux/kernel.h>
    -#include <linux/kref.h>
     #include <linux/list.h>
     #include <linux/lockdep.h>
     #include <linux/netdevice.h>
    diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c
    index c2fa0ef5..cd04ab27 100644
    --- a/net/batman-adv/soft-interface.c
    +++ b/net/batman-adv/soft-interface.c
    @@ -48,7 +48,6 @@
     #include "hard-interface.h"
     #include "multicast.h"
     #include "network-coding.h"
    -#include "originator.h"
     #include "send.h"
     #include "translation-table.h"
     
    diff --git a/net/batman-adv/tvlv.h b/net/batman-adv/tvlv.h
    index d1c4e072..743688d1 100644
    --- a/net/batman-adv/tvlv.h
    +++ b/net/batman-adv/tvlv.h
    @@ -9,6 +9,7 @@
     
     #include "main.h" // IWYU pragma: keep
     
    +#include <linux/skbuff.h>
     #include <linux/types.h>
     #include <uapi/linux/batadv_packet.h>

ecsv/pu: sparse linux-4.10 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1490: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.10 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1490: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.11 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1492: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.11 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1492: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.12 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:303: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:561: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1512: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.13 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:303: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:561: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1512: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:315: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:573: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1503: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:315: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:573: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1503: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14.302 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:330: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:588: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1556: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14.302 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:330: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:588: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1556: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.15 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:317: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:575: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1508: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.16 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:323: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:581: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1556: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.16 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:323: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:581: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1556: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.17 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:313: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:559: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1571: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.18 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:318: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1500: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.18 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:318: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1500: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:306: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:546: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1517: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19.269 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:304: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:544: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1551: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.9 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:294: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:544: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1490: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.9.336 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:308: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1544: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.0 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:277: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:492: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1553: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.1 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:276: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:486: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1571: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1805: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1805: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10.159 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:286: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1837: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10.159 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:286: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1837: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.11 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1800: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.11 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1800: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.12 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:271: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:514: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1851: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.13 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:272: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:515: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1847: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.13 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:272: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:515: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1847: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.14 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:271: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:514: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1851: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:277: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:540: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1868: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15.83 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:289: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:552: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1902: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:287: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:549: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1846: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:287: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:549: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1846: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.17 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:288: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:550: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1831: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.18 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:288: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:550: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1834: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.19 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:249: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:466: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1843: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.19 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:249: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:466: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1843: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.2 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:489: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1595: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.2 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:489: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1595: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.3 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1624: _module_/home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:509: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1652: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:509: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1652: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4.227 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:262: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1739: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4.227 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:262: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1739: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.5 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1693: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.6 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:268: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:505: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1683: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.6 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:268: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:505: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1683: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.7 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:267: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:488: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1729: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.7 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:267: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:488: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1729: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.8 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1756: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.8 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1756: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.9 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:283: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1784: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.9 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:283: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1784: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.0.13 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:249: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:465: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1852: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.0.13 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:249: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:465: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1852: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.1 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:250: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.OxsOqWL6gH/net/batman-adv] Error 2
    make[1]: *** [Makefile:1992: /home/build_test/build_env/tmp.OxsOqWL6gH] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: unused_symbols linux-4.11 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_set_lock_class
    batadv_is_my_mac
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.12 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.14 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.15 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_is_my_mac
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_set_lock_class
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.15 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_is_my_mac
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.19.269 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_event_workqueue
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.9 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.13 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.13 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.13 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.13 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.13 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_is_my_mac
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hash_set_lock_class
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.15.83 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.4 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hash_set_lock_class
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get


Statistics
==========

ecsv/pu
-------

Failed tests:               198
Started build tests:        126
Tested Linux versions:       40
Tested configs:              81

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 3/5] batman-adv: mcast: implement multicast packet reception and forwarding
  2022-12-26 16:15 ` [PATCH v2 3/5] batman-adv: mcast: implement multicast packet reception and forwarding Linus Lüssing
@ 2022-12-26 18:00   ` Sven Eckelmann
  0 siblings, 0 replies; 11+ messages in thread
From: Sven Eckelmann @ 2022-12-26 18:00 UTC (permalink / raw)
  To: b.a.t.m.a.n; +Cc: Linus Lüssing

[-- Attachment #1: Type: text/plain, Size: 240711 bytes --]

On Monday, 26 December 2022 17:15:52 CET Linus Lüssing wrote:
> Implement functionality to receive and forward a new TVLV capable
> multicast packet type.
> 
> The new batman-adv multicast packet type allows to contain several
> originator destination addresses within a TVLV. Routers on the way will
> potentially split the batman-adv multicast packet and adjust its tracker
> TVLV contents.
> 
> Routing decisions are still based on the selected BATMAN IV or BATMAN V
> routing algorithm. So this new batman-adv multicast packet type retains
> the same loop-free properties.
> 
> Also a new OGM multicast TVLV flag is introduced to signal to other
> nodes that we are capable of handling a batman-adv multicast packet and
> multicast tracker TVLV. And that all of our hard interfaces have an MTU
> of at least 1280 bytes (IPv6 minimum MTU), as a simple solution for now
> to avoid MTU issues while forwarding.
> 
> Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
> ---
>  include/uapi/linux/batadv_packet.h |  48 +++++-
>  net/batman-adv/Makefile            |   1 +
>  net/batman-adv/main.c              |   2 +
>  net/batman-adv/multicast.c         |  48 +++++-
>  net/batman-adv/multicast.h         |   5 +
>  net/batman-adv/multicast_forw.c    | 268 +++++++++++++++++++++++++++++
>  net/batman-adv/originator.c        |   1 +
>  net/batman-adv/routing.c           |  69 ++++++++
>  net/batman-adv/routing.h           |  11 ++
>  net/batman-adv/soft-interface.c    |  12 ++
>  net/batman-adv/types.h             |  64 +++++++
>  11 files changed, 518 insertions(+), 11 deletions(-)
>  create mode 100644 net/batman-adv/multicast_forw.c

Name of failed tests
====================

ecsv/pu
-------

 * checkpatch ./net/batman-adv/multicast_forw.c
 * headers
 * sparse linux-4.10 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.10 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.11 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.11 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.12 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.12 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.13 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.13 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.13 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.14 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.14 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.14 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.14 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.14 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.14.302 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.14.302 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.14.302 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.15 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.15 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.15 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.17 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.18 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.19 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.19 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.19 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.19.269 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.19.269 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.19.269 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.20 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.20 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.20 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.9 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.9 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.9 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.9.336 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.0 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.0 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.0 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.1 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.1 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.10 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.10.159 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.10.159 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.10.159 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.10.159 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.11 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.12 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.12 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.12 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.13 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.13 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.13 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.13 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.13 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.13 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.14 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.15 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.15 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.15 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.15.83 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.15.83 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.15.83 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.16 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.16 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.17 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.17 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.18 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.19 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.2 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.2 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.2 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.2 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.3 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.3 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.4 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.4 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.4 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.4 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.4.227 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.4.227 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.4.227 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.4.227 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.5 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.5 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.6 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.6 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.6 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.6 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.6 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.7 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.7 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.7 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.7 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.7 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.8 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.8 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.8 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.8 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.9 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-6.0 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-6.0 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-6.0.13 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-6.0.13 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-6.0.13 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-6.1 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-6.1 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-6.1 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.10 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.11 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.11 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.12 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.13 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.13 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.14 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.14 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.14.302 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.14.302 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.15 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.15 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.19 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.19.269 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.19.269 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.19.269 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.20 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.9 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.9.336 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.0 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.0 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.1 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.1 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.10.159 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.12 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.13 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.15 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.15.83 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.16 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.16 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.17 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.2 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.2 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.2 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.3 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.3 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.4 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.4 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.4 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.4.227 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.7 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.7 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.7 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.8 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.8 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-6.0 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-6.1 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-6.1 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n


Output of different failed tests
================================

ecsv/pu: checkpatch ./net/batman-adv/multicast_forw.c
-----------------------------------------------------

    CHECK: Macro argument reuse 'num_dests' - possible side-effects?
    #19: FILE: ./net/batman-adv/multicast_forw.c:19:
    +#define batadv_mcast_forw_tracker_for_each_dest(dest, num_dests) \
    +   for (; num_dests; num_dests--, (dest) += ETH_ALEN)
    
    total: 0 errors, 0 warnings, 1 checks, 268 lines checked

ecsv/pu: headers
----------------

    diff --git a/net/batman-adv/multicast.c b/net/batman-adv/multicast.c
    index 9db1c5d0..44ad5c38 100644
    --- a/net/batman-adv/multicast.c
    +++ b/net/batman-adv/multicast.c
    @@ -26,7 +26,6 @@
     #include <linux/ipv6.h>
     #include <linux/jiffies.h>
     #include <linux/kernel.h>
    -#include <linux/kref.h>
     #include <linux/list.h>
     #include <linux/lockdep.h>
     #include <linux/netdevice.h>
    diff --git a/net/batman-adv/multicast_forw.c b/net/batman-adv/multicast_forw.c
    index 291a5217..6be33781 100644
    --- a/net/batman-adv/multicast_forw.c
    +++ b/net/batman-adv/multicast_forw.c
    @@ -6,11 +6,16 @@
     
     #include "main.h" // IWYU pragma: keep
     
    +#include <linux/byteorder/generic.h>
    +#include <linux/errno.h>
     #include <linux/etherdevice.h>
    +#include <linux/gfp.h>
     #include <linux/if_ether.h>
     #include <linux/netdevice.h>
     #include <linux/skbuff.h>
    +#include <linux/stddef.h>
     #include <linux/types.h>
    +#include <uapi/linux/batadv_packet.h>
     
     #include "originator.h"
     #include "routing.h"
    diff --git a/net/batman-adv/routing.c b/net/batman-adv/routing.c
    index 0ecb86b3..eb905740 100644
    --- a/net/batman-adv/routing.c
    +++ b/net/batman-adv/routing.c
    @@ -30,7 +30,6 @@
     #include "fragmentation.h"
     #include "hard-interface.h"
     #include "log.h"
    -#include "multicast.h"
     #include "network-coding.h"
     #include "originator.h"
     #include "send.h"
    diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c
    index e94f2e6e..262ca19e 100644
    --- a/net/batman-adv/soft-interface.c
    +++ b/net/batman-adv/soft-interface.c
    @@ -48,7 +48,6 @@
     #include "hard-interface.h"
     #include "multicast.h"
     #include "network-coding.h"
    -#include "originator.h"
     #include "send.h"
     #include "translation-table.h"
     
    diff --git a/net/batman-adv/tvlv.h b/net/batman-adv/tvlv.h
    index d1c4e072..743688d1 100644
    --- a/net/batman-adv/tvlv.h
    +++ b/net/batman-adv/tvlv.h
    @@ -9,6 +9,7 @@
     
     #include "main.h" // IWYU pragma: keep
     
    +#include <linux/skbuff.h>
     #include <linux/types.h>
     #include <uapi/linux/batadv_packet.h>

ecsv/pu: sparse linux-4.10 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1490: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.10 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1490: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.11 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1492: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.11 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1492: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.12 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:303: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:561: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1512: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.13 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:303: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:561: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1512: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.13 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:303: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:561: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1512: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:315: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:573: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1503: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:315: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:573: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1503: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:315: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:573: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1503: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14.302 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:330: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:588: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1556: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14.302 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:330: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:588: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1556: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.15 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:317: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:575: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1508: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:317: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:575: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1508: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:317: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:575: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1508: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.15 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:317: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:575: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1508: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.17 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:313: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:559: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1571: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.18 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:318: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1500: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:306: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:546: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1517: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:306: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:546: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1517: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:306: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:546: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1517: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19.269 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:304: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:544: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1551: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19.269 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:304: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:544: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1551: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.20 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:292: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:516: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1563: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.20 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:292: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:516: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1563: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.20 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:292: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:516: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1563: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.9 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:294: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:544: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1490: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.9 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:294: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:544: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1490: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.9.336 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:308: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1544: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.0 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:277: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:492: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1553: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.0 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:277: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:492: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1553: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.1 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:276: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:486: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1571: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.1 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:276: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:486: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1571: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1805: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10.159 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:286: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1837: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10.159 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:286: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1837: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.11 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1800: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.12 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:271: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:514: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1851: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.12 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:271: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:514: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1851: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.12 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:271: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:514: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1851: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.13 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:272: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:515: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1847: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.13 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:272: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:515: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1847: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.13 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:272: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:515: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1847: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:277: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:540: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1868: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:277: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:540: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1868: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:277: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:540: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1868: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15.83 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:289: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:552: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1902: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15.83 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:289: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:552: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1902: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15.83 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:289: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:552: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1902: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.16 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:287: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:549: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1846: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.16 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:287: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:549: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1846: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:287: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:549: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1846: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:287: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:549: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1846: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.17 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:288: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:550: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1831: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.17 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:288: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:550: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1831: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.18 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:288: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:550: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1834: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.19 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:249: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:466: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1843: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.2 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:489: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1595: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.2 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:489: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1595: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.3 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1624: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.3 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1624: _module_/home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:509: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1652: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:509: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1652: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4.227 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:262: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1739: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4.227 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:262: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1739: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4.227 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:262: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1739: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.5 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1693: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.6 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:268: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:505: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1683: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.6 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:268: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:505: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1683: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.7 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:267: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:488: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1729: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.7 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:267: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:488: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1729: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.7 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:267: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:488: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1729: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.8 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1756: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.8 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1756: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.8 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1756: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.9 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:283: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1784: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.0 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:249: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:465: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1852: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.0 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:249: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:465: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1852: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.0.13 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:249: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:465: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1852: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.1 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:250: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1992: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.1 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:250: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1992: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.1 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/multicast_forw.c:264:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:250: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.LI6FiYuwbR/net/batman-adv] Error 2
    make[1]: *** [Makefile:1992: /home/build_test/build_env/tmp.LI6FiYuwbR] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: unused_symbols linux-4.11 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_set_lock_class
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.13 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.13 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_set_lock_class
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hash_set_lock_class
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.19 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hash_set_lock_class
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.19.269 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.19.269 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.0 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.1 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.15.83 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.2 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_event_workqueue
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.3 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_mcast_forw_mode
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.4 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.7 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get


Statistics
==========

ecsv/pu
-------

Failed tests:               165
Started build tests:        113
Tested Linux versions:       40
Tested configs:              77

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 4/5] batman-adv: mcast: implement multicast packet generation
  2022-12-26 16:15 ` [PATCH v2 4/5] batman-adv: mcast: implement multicast packet generation Linus Lüssing
@ 2022-12-26 18:24   ` Sven Eckelmann
  0 siblings, 0 replies; 11+ messages in thread
From: Sven Eckelmann @ 2022-12-26 18:24 UTC (permalink / raw)
  To: b.a.t.m.a.n; +Cc: Linus Lüssing

[-- Attachment #1: Type: text/plain, Size: 271339 bytes --]

On Monday, 26 December 2022 17:15:53 CET Linus Lüssing wrote:
> Implement the preparation of a batman-adv multicast packet and use this
> under certain conditions.
> 
> For one thing this implements the capability to push a complete
> batman-adv multicast packet header, including a tracker TVLV with all
> originator destinations that have signaled interest in it, onto a given
> ethernet frame with an IP multicast packet inside.
> 
> For another checks are implemented to determine if encapsulating a
> multicast packet in this new batman-adv multicast packet type and using
> it is feasible. Those checks are:
> 
> 1) Have all nodes signaled that the are capable of handling the new
>    batman-adv multicast packet type?
> 2) Do all active hard interfaces of all nodes, including us, have an MTU
>    of at least 1280 bytes?
> 3) Does a complete multicast packet header with all its destination
>    addresses fit onto the given multicast packet / ethernet frame and
>    does not exceed 1280 bytes?
> 
> If all checks passed then the new batman-adv multicast packet type will
> be used for transmission and distribution. Otherwise we fall back to one or
> more batman-adv unicast packet transmissions, if possible. Or if not
> possible we will fall back to classic flooding through a batman-adv
> broadcast packet.
> 
> Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
> ---
>  net/batman-adv/multicast.c      |  79 ++++-
>  net/batman-adv/multicast.h      |  24 +-
>  net/batman-adv/multicast_forw.c | 504 ++++++++++++++++++++++++++++++++
>  net/batman-adv/soft-interface.c |   6 +-
>  net/batman-adv/types.h          |   6 +
>  5 files changed, 611 insertions(+), 8 deletions(-)

Name of failed tests
====================

ecsv/pu
-------

 * checkpatch ./net/batman-adv/multicast_forw.c
 * headers
 * kerneldoc ./net/batman-adv/multicast_forw.c
 * sparse linux-4.10 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.11 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.11 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.12 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.14 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.14 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.14 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.14.302 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.14.302 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.14.302 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.15 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.17 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.17 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.17 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.18 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.18 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.19 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.19 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.19 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.19.269 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.19.269 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.19.269 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.19.269 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.20 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.9 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.9 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.9.336 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.9.336 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.9.336 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.9.336 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.0 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.0 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.1 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.1 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.10 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.10 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.10 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.10 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.10.159 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.10.159 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.10.159 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.10.159 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.10.159 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.11 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.12 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.12 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.12 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.12 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.13 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.14 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.14 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.15 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.15 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.15 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.15 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.15 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.15 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.15.83 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.15.83 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.15.83 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.15.83 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.15.83 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.16 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.16 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.18 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.18 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.18 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.18 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.18 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.2 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.2 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.2 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.3 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.3 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.4 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.4 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.4 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.4.227 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.5 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.5 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.5 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.5 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.5 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.5 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.6 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.6 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.6 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.7 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.7 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.7 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.7 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.7 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.7 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.8 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.8 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.8 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.8 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.9 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.9 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.9 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-6.0 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-6.0 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-6.0 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-6.0 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-6.0.13 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-6.1 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-6.1 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-6.1 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.11 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.12 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-4.14 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-4.14 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-4.14 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-4.14.302 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.14.302 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.15 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-4.17 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.18 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.19 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-4.19 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.19.269 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.19.269 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-4.19.269 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.19.269 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.20 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-4.9 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.9.336 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-4.9.336 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.0 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.0 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.1 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.10 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.10 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.10 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.10.159 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.10.159 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.10.159 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.10.159 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-5.11 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.12 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.13 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.14 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.14 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.15 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.15 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.15.83 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.15.83 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.15.83 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.16 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.18 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.18 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.18 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.18 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.18 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.2 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.2 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.2 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.3 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.3 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.4 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.4 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.4 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.4.227 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.5 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.5 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.5 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.5 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.5 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.6 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.7 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.7 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.7 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.7 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.7 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.8 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.8 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.9 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.9 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.9 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.9 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-6.0 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-6.0 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-6.0 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-6.0.13 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-6.1 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-6.1 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-6.1 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n


Output of different failed tests
================================

ecsv/pu: checkpatch ./net/batman-adv/multicast_forw.c
-----------------------------------------------------

    CHECK: Macro argument reuse 'num_dests' - possible side-effects?
    #24: FILE: ./net/batman-adv/multicast_forw.c:24:
    +#define batadv_mcast_forw_tracker_for_each_dest(dest, num_dests) \
    +   for (; num_dests; num_dests--, (dest) += ETH_ALEN)
    
    total: 0 errors, 0 warnings, 1 checks, 772 lines checked

ecsv/pu: headers
----------------

    diff --git a/net/batman-adv/multicast.c b/net/batman-adv/multicast.c
    index 85f4b070..2f07a325 100644
    --- a/net/batman-adv/multicast.c
    +++ b/net/batman-adv/multicast.c
    @@ -26,7 +26,6 @@
     #include <linux/ipv6.h>
     #include <linux/jiffies.h>
     #include <linux/kernel.h>
    -#include <linux/kref.h>
     #include <linux/list.h>
     #include <linux/lockdep.h>
     #include <linux/netdevice.h>
    diff --git a/net/batman-adv/multicast_forw.c b/net/batman-adv/multicast_forw.c
    index 05386847..0d214e0e 100644
    --- a/net/batman-adv/multicast_forw.c
    +++ b/net/batman-adv/multicast_forw.c
    @@ -6,19 +6,29 @@
     
     #include "main.h" // IWYU pragma: keep
     
    +#include <linux/bug.h>
    +#include <linux/build_bug.h>
    +#include <linux/byteorder/generic.h>
    +#include <linux/errno.h>
     #include <linux/etherdevice.h>
    +#include <linux/gfp.h>
     #include <linux/if_ether.h>
     #include <linux/if_vlan.h>
     #include <linux/ipv6.h>
    +#include <linux/limits.h>
     #include <linux/netdevice.h>
    +#include <linux/rculist.h>
    +#include <linux/rcupdate.h>
     #include <linux/skbuff.h>
    +#include <linux/stddef.h>
    +#include <linux/string.h>
     #include <linux/types.h>
    +#include <uapi/linux/batadv_packet.h>
     
     #include "bridge_loop_avoidance.h"
     #include "originator.h"
     #include "routing.h"
     #include "send.h"
    -#include "soft-interface.h"
     #include "translation-table.h"
     
     #define batadv_mcast_forw_tracker_for_each_dest(dest, num_dests) \
    diff --git a/net/batman-adv/routing.c b/net/batman-adv/routing.c
    index 0ecb86b3..eb905740 100644
    --- a/net/batman-adv/routing.c
    +++ b/net/batman-adv/routing.c
    @@ -30,7 +30,6 @@
     #include "fragmentation.h"
     #include "hard-interface.h"
     #include "log.h"
    -#include "multicast.h"
     #include "network-coding.h"
     #include "originator.h"
     #include "send.h"
    diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c
    index b76b85b2..69334ef8 100644
    --- a/net/batman-adv/soft-interface.c
    +++ b/net/batman-adv/soft-interface.c
    @@ -48,7 +48,6 @@
     #include "hard-interface.h"
     #include "multicast.h"
     #include "network-coding.h"
    -#include "originator.h"
     #include "send.h"
     #include "translation-table.h"
     
    diff --git a/net/batman-adv/tvlv.h b/net/batman-adv/tvlv.h
    index d1c4e072..743688d1 100644
    --- a/net/batman-adv/tvlv.h
    +++ b/net/batman-adv/tvlv.h
    @@ -9,6 +9,7 @@
     
     #include "main.h" // IWYU pragma: keep
     
    +#include <linux/skbuff.h>
     #include <linux/types.h>
     #include <uapi/linux/batadv_packet.h>

ecsv/pu: kerneldoc ./net/batman-adv/multicast_forw.c
----------------------------------------------------

    ./net/batman-adv/multicast_forw.c:72: warning: Function parameter or member 'bat_priv' not described in 'batadv_mcast_forw_push_dest'
    ./net/batman-adv/multicast_forw.c:385: warning: Function parameter or member 'bat_priv' not described in 'batadv_mcast_forw_push_tvlvs'

ecsv/pu: sparse linux-4.10 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1490: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.11 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1492: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.11 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1492: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.12 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:303: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:561: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1512: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:315: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:573: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1503: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14.302 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:330: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:588: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1556: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14.302 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:330: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:588: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1556: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14.302 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:330: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:588: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1556: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:317: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:575: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1508: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.15 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:317: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:575: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1508: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.17 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:313: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:559: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1571: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.17 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:313: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:559: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1571: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.18 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:318: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1500: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.18 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:318: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1500: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:306: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:546: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1517: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:306: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:546: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1517: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:306: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:546: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1517: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19.269 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:304: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:544: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1551: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19.269 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:304: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:544: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1551: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19.269 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:304: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:544: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1551: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.20 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:292: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:516: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1563: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.9 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:294: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:544: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1490: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.9 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:294: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:544: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1490: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.9.336 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:308: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1544: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.9.336 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:308: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1544: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.9.336 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:308: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1544: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.0 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:277: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:492: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1553: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.1 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:276: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:486: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1571: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.1 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:276: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:486: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1571: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1805: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1805: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1805: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10.159 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:286: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1837: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10.159 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:286: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1837: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10.159 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:286: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1837: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10.159 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:286: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1837: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.11 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1800: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.12 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:271: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:514: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1851: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.12 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:271: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:514: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1851: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.13 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:272: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:515: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1847: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.14 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:271: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:514: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1851: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:277: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:540: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1868: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:277: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:540: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1868: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15.83 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:289: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:552: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1902: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15.83 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:289: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:552: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1902: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15.83 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:289: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:552: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1902: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.16 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:287: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:549: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1846: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:287: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:549: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1846: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.18 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:288: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:550: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1834: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.18 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:288: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:550: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1834: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.2 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:489: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1595: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.2 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:489: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1595: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.2 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:489: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1595: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.3 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1624: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.3 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1624: _module_/home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:509: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1652: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:509: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1652: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4.227 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:262: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1739: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.5 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1693: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.5 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1693: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.5 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1693: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.5 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1693: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.6 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:268: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:505: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1683: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.6 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:268: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:505: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1683: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.7 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:267: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:488: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1729: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.7 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:267: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:488: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1729: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.7 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:267: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:488: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1729: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.7 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:267: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:488: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1729: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.8 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1756: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.8 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1756: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.8 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1756: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.9 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:283: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1784: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.9 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:283: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1784: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.0 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:249: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:465: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1852: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.0 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:249: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:465: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1852: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.0 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:249: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:465: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1852: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.1 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:654:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:669:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:726:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:760:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/multicast_forw.c:107:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:250: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1992: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.1 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:250: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.HZwc7zjBJI/net/batman-adv] Error 2
    make[1]: *** [Makefile:1992: /home/build_test/build_env/tmp.HZwc7zjBJI] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: unused_symbols linux-4.14.302 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_mcast_forw_mcsend
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.9 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_mcast_forw_mcsend
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.0 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hash_set_lock_class
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.15.83 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_event_workqueue
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.18 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.18 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.3 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_mcast_forw_mcsend
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.4.227 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_set_lock_class
    batadv_mcast_forw_mcsend
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.5 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_mcast_forw_mcsend
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.5 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.7 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_mcast_forw_mode_by_count

ecsv/pu: unused_symbols linux-5.9 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_set_lock_class
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.9 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-6.0 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_mcast_forw_mcsend
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-6.0.13 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hash_set_lock_class
    batadv_mcast_forw_mcsend
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-6.1 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_mcast_forw_mcsend
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-6.1 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get


Statistics
==========

ecsv/pu
-------

Failed tests:               193
Started build tests:        111
Tested Linux versions:       37
Tested configs:              79

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 5/5] batman-adv: mcast: shrink tracker packet after scrubbing
  2022-12-26 16:15 ` [PATCH v2 5/5] batman-adv: mcast: shrink tracker packet after scrubbing Linus Lüssing
@ 2022-12-26 18:50   ` Sven Eckelmann
  0 siblings, 0 replies; 11+ messages in thread
From: Sven Eckelmann @ 2022-12-26 18:50 UTC (permalink / raw)
  To: b.a.t.m.a.n; +Cc: Linus Lüssing

[-- Attachment #1: Type: text/plain, Size: 196262 bytes --]

On Monday, 26 December 2022 17:15:54 CET Linus Lüssing wrote:
> Remove all zero MAC address entries (00:00:00:00:00:00) from a multicast
> packet's tracker TVLV before transmitting it and update all headers
> accordingly. This way, instead of keeping the multicast packet at a
> constant size throughout its journey through the mesh, it will become
> more lightweight, smaller with every interested receiver on the way and
> on each splitting intersection. Which can save some valuable bandwidth.
> 
> Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
> ---
>  net/batman-adv/multicast_forw.c | 207 ++++++++++++++++++++++++++++++++
>  1 file changed, 207 insertions(+)

Name of failed tests
====================

ecsv/pu
-------

 * checkpatch ./net/batman-adv/multicast_forw.c
 * headers
 * kerneldoc ./net/batman-adv/multicast_forw.c
 * sparse linux-4.10 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.10 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.10 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.10 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.11 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.11 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.11 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.11 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.11 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.11 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.13 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.13 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.14 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.14 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.14 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.14 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.14 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.14 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.15 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.15 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.16 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.16 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.16 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.16 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.17 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.17 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.17 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.17 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.18 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.18 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.18 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.18 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.18 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.18 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.19 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.19 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.19 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.19.269 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.19.269 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-4.19.269 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-4.19.269 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.20 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-4.20 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-4.20 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-4.9 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.9 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-4.9 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-4.9.336 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-4.9.336 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.0 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.0 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.0 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.0 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.1 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.10 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.10 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.10 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.10 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.10 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.10.159 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.10.159 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.11 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.11 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.11 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.11 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.11 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.11 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.11 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.11 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.12 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.12 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.12 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.13 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.13 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.13 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.14 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.15 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.15 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.15 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.15.83 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.15.83 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.16 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.16 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.16 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * sparse linux-5.17 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.17 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.18 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.18 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.2 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.2 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.2 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.2 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.3 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.4 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.4 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.4.227 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-5.4.227 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.5 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.5 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.6 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.7 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.7 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.7 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.8 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.8 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.8 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-5.8 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * sparse linux-5.8 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
 * sparse linux-5.9 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * sparse linux-5.9 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * sparse linux-5.9 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * sparse linux-5.9 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
 * sparse linux-6.0 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * sparse linux-6.0.13 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-6.0.13 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-6.1 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * sparse linux-6.1 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
 * sparse linux-6.1 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.10 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-4.11 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.11 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.11 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.11 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.11 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.13 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.13 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.14 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.14 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.14 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.14 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.15 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-4.15 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.15 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-4.16 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.16 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.16 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-4.17 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.17 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-4.17 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.18 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.18 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.18 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-4.18 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.18 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-4.19 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-4.19 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.19.269 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.20 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-4.20 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-4.20 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-4.9 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.9 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-4.9 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-4.9.336 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-4.9.336 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.0 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.0 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-5.0 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.1 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-5.10 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.10 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-5.10 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.10.159 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.10.159 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.11 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-5.11 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.11 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.11 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.11 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.11 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.12 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.12 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.13 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.13 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.14 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.15 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.15 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.15 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-5.15.83 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.15.83 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.16 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.16 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.16 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-5.16 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
 * unused_symbols linux-5.17 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.17 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.18 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.2 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.2 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.2 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.4 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-5.4.227 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.5 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.5 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.6 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.7 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.7 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.7 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.8 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.8 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-5.8 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-5.8 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
 * unused_symbols linux-5.9 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
 * unused_symbols linux-5.9 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-5.9 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
 * unused_symbols linux-6.0 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
 * unused_symbols linux-6.1 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
 * unused_symbols linux-6.1 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y


Output of different failed tests
================================

ecsv/pu: checkpatch ./net/batman-adv/multicast_forw.c
-----------------------------------------------------

    CHECK: Macro argument reuse 'num_dests' - possible side-effects?
    #24: FILE: ./net/batman-adv/multicast_forw.c:24:
    +#define batadv_mcast_forw_tracker_for_each_dest(dest, num_dests) \
    +   for (; num_dests; num_dests--, (dest) += ETH_ALEN)
    
    CHECK: Macro argument reuse 'num_dests' - possible side-effects?
    #27: FILE: ./net/batman-adv/multicast_forw.c:27:
    +#define batadv_mcast_forw_tracker_for_each_dest_rev(dest, num_dests) \
    +   for (; num_dests; num_dests--, (dest) -= ETH_ALEN)
    
    total: 0 errors, 0 warnings, 2 checks, 979 lines checked

ecsv/pu: headers
----------------

    diff --git a/net/batman-adv/multicast.c b/net/batman-adv/multicast.c
    index 85f4b070..2f07a325 100644
    --- a/net/batman-adv/multicast.c
    +++ b/net/batman-adv/multicast.c
    @@ -26,7 +26,6 @@
     #include <linux/ipv6.h>
     #include <linux/jiffies.h>
     #include <linux/kernel.h>
    -#include <linux/kref.h>
     #include <linux/list.h>
     #include <linux/lockdep.h>
     #include <linux/netdevice.h>
    diff --git a/net/batman-adv/multicast_forw.c b/net/batman-adv/multicast_forw.c
    index 068c4d86..e13d42fe 100644
    --- a/net/batman-adv/multicast_forw.c
    +++ b/net/batman-adv/multicast_forw.c
    @@ -6,19 +6,29 @@
     
     #include "main.h" // IWYU pragma: keep
     
    +#include <linux/bug.h>
    +#include <linux/build_bug.h>
    +#include <linux/byteorder/generic.h>
    +#include <linux/errno.h>
     #include <linux/etherdevice.h>
    +#include <linux/gfp.h>
     #include <linux/if_ether.h>
     #include <linux/if_vlan.h>
     #include <linux/ipv6.h>
    +#include <linux/limits.h>
     #include <linux/netdevice.h>
    +#include <linux/rculist.h>
    +#include <linux/rcupdate.h>
     #include <linux/skbuff.h>
    +#include <linux/stddef.h>
    +#include <linux/string.h>
     #include <linux/types.h>
    +#include <uapi/linux/batadv_packet.h>
     
     #include "bridge_loop_avoidance.h"
     #include "originator.h"
     #include "routing.h"
     #include "send.h"
    -#include "soft-interface.h"
     #include "translation-table.h"
     
     #define batadv_mcast_forw_tracker_for_each_dest(dest, num_dests) \
    diff --git a/net/batman-adv/routing.c b/net/batman-adv/routing.c
    index 0ecb86b3..eb905740 100644
    --- a/net/batman-adv/routing.c
    +++ b/net/batman-adv/routing.c
    @@ -30,7 +30,6 @@
     #include "fragmentation.h"
     #include "hard-interface.h"
     #include "log.h"
    -#include "multicast.h"
     #include "network-coding.h"
     #include "originator.h"
     #include "send.h"
    diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c
    index b76b85b2..69334ef8 100644
    --- a/net/batman-adv/soft-interface.c
    +++ b/net/batman-adv/soft-interface.c
    @@ -48,7 +48,6 @@
     #include "hard-interface.h"
     #include "multicast.h"
     #include "network-coding.h"
    -#include "originator.h"
     #include "send.h"
     #include "translation-table.h"
     
    diff --git a/net/batman-adv/tvlv.h b/net/batman-adv/tvlv.h
    index d1c4e072..743688d1 100644
    --- a/net/batman-adv/tvlv.h
    +++ b/net/batman-adv/tvlv.h
    @@ -9,6 +9,7 @@
     
     #include "main.h" // IWYU pragma: keep
     
    +#include <linux/skbuff.h>
     #include <linux/types.h>
     #include <uapi/linux/batadv_packet.h>

ecsv/pu: kerneldoc ./net/batman-adv/multicast_forw.c
----------------------------------------------------

    ./net/batman-adv/multicast_forw.c:75: warning: Function parameter or member 'bat_priv' not described in 'batadv_mcast_forw_push_dest'
    ./net/batman-adv/multicast_forw.c:388: warning: Function parameter or member 'bat_priv' not described in 'batadv_mcast_forw_push_tvlvs'
    ./net/batman-adv/multicast_forw.c:540: warning: Function parameter or member 'num_dests_remove' not described in 'batadv_mcast_forw_shrink_align_offset'
    ./net/batman-adv/multicast_forw.c:540: warning: Excess function parameter 'num_dests_reduce' description in 'batadv_mcast_forw_shrink_align_offset'
    ./net/batman-adv/multicast_forw.c:639: warning: Function parameter or member 'num_dests_reduce' not described in 'batadv_mcast_forw_shrink_update_headers'
    ./net/batman-adv/multicast_forw.c:639: warning: Excess function parameter 'num_dest_reduce' description in 'batadv_mcast_forw_shrink_update_headers'

ecsv/pu: sparse linux-4.10 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1490: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.10 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1490: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.11 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1492: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.11 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1492: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.11 cfg: BLA=y DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:295: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:553: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1492: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.13 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:303: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:561: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1512: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.13 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:303: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:561: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1512: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:315: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:573: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1503: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:315: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:573: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1503: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.14 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:315: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:573: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1503: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.15 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:317: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:575: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1508: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.15 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:317: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:575: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1508: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.16 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:323: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:581: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1556: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.16 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:323: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:581: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1556: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.17 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:313: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:559: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1571: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.17 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:313: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:559: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1571: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.17 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:313: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:559: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1571: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.18 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:318: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1500: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.18 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:318: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1500: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.18 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:318: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1500: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:306: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:546: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1517: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:306: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:546: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1517: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19.269 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:304: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:544: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1551: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.19.269 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:304: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:544: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1551: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.20 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:292: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:516: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1563: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.9 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:294: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:544: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1490: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.9.336 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:308: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1544: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-4.9.336 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:308: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:558: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1544: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.0 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:277: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:492: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1553: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.0 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:277: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:492: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1553: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.1 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:276: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:486: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1571: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1805: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1805: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.10.159 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:286: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1837: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.11 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1800: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.11 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1800: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.11 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:496: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1800: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.12 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:271: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:514: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1851: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.12 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:271: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:514: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1851: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.13 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:272: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:515: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1847: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.13 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:272: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:515: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1847: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.14 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:271: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:514: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1851: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:277: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:540: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1868: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.15.83 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:289: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:552: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1902: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.16 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:287: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:549: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1846: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.16 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:287: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:549: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1846: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.16 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:287: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:549: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1846: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.17 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:288: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:550: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1831: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.18 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:288: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:550: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1834: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.18 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:288: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:550: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1834: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.2 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:489: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1595: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.2 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:489: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1595: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.2 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:279: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:489: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1595: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.3 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1624: _module_/home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:509: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1652: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:509: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1652: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4.227 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:262: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1739: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.4.227 cfg: BLA=n DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:262: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1739: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.5 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:266: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:503: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1693: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.6 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:268: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:505: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1683: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.7 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:267: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:488: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1729: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.7 cfg: BLA=y DAT=n DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:267: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:488: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1729: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.8 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:614:9: warning: statement expected after label
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:861:5: warning: symbol 'batadv_mcast_forw_tracker_tvlv_handler' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:876:14: warning: symbol 'batadv_mcast_forw_packet_hdrlen' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:933:6: warning: symbol 'batadv_mcast_forw_push' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:967:5: warning: symbol 'batadv_mcast_forw_mcsend' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:110:12: warning: context imbalance in 'batadv_mcast_forw_push_dests_list' - wrong count at exit
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1756: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.8 cfg: BLA=n DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44: warning: incorrect type in argument 4 (different base types)
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    expected int ( *mptr )( ... )
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:44:    got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:37: error: not enough arguments for function batadv_tvlv_handler_register
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1756: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.8 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: typename in expression
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: Expected ; at end of statement
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:26: error: got int
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:17: error: undefined identifier 'u8'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:21: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:17: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:401:64: error: undefined identifier 'src'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:17: error: undefined identifier 'unsigned'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:413:17: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:414:45: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:415:47: error: undefined identifier 'tvlv_offset'
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:281: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:497: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1756: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.9 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:283: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1784: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-5.9 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=n MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:283: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1784: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.0 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:249: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:465: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1852: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.0.13 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:249: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:465: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1852: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.1 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast.c:1206:1: warning: symbol 'batadv_mcast_forw_mode_by_count' was not declared. Should it be static?
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c: In function ‘batadv_mcast_forw_shrink_pack_dests’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.c:613:1: error: label at end of compound statement
     cont_next_slot:
     ^~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:250: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/multicast_forw.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1992: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.1 cfg: BLA=y DAT=n DEBUG=y TRACING=y NC=n MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c: In function ‘batadv_tvlv_call_handler’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:389:3: error: a label can only be part of a statement and a declaration is not a statement
       u8 *src;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:390:3: error: expected expression before ‘u8’
       u8 *dst;
       ^~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: error: ‘dst’ undeclared (first use in this function)
       dst = ((struct batadv_unicast_tvlv_packet *)skb->data)->dst;
       ^~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:399:3: note: each undeclared identifier is reported only once for each function it appears in
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:405:3: error: a label can only be part of a statement and a declaration is not a statement
       unsigned int tvlv_offset;
       ^~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:398:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
       src = ((struct batadv_unicast_tvlv_packet *)skb->data)->src;
       ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.c:404:2: note: here
      case BATADV_MCAST:
      ^~~~
    make[3]: *** [scripts/Makefile.build:250: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1992: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: sparse linux-6.1 cfg: BLA=y DAT=y DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c: In function ‘batadv_nc_mesh_init’:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:163:16: warning: passing argument 4 of ‘batadv_tvlv_handler_register’ makes pointer from integer without a cast [-Wint-conversion]
              NULL, BATADV_TVLV_NC, 1,
                    ^~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:37:13: note: expected ‘int (*)(struct batadv_priv *, struct sk_buff *)’ but argument is of type ‘int’
           int (*mptr)(struct batadv_priv *bat_priv,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                struct sk_buff *skb),
                ~~~~~~~~~~~~~~~~~~~~
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:162:2: error: too few arguments to function ‘batadv_tvlv_handler_register’
      batadv_tvlv_handler_register(bat_priv, batadv_nc_tvlv_ogm_handler_v1,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.c:45:
    /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/tvlv.h:27:6: note: declared here
     void batadv_tvlv_handler_register(struct batadv_priv *bat_priv,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make[3]: *** [scripts/Makefile.build:250: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv/network-coding.o] Error 1
    make[2]: *** [scripts/Makefile.build:500: /home/build_test/build_env/tmp.Yn6tGCukvG/net/batman-adv] Error 2
    make[1]: *** [Makefile:1992: /home/build_test/build_env/tmp.Yn6tGCukvG] Error 2
    make: *** [Makefile:68: all] Error 2

ecsv/pu: unused_symbols linux-4.11 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hash_set_lock_class
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.11 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.17 cfg: BLA=n DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_set_lock_class
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.17 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_dump
    batadv_algo_get
    batadv_algo_select
    batadv_bla_backbone_dump
    batadv_bla_check_bcast_duplist
    batadv_bla_claim_dump
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_status_update
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_dump
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_gw_tvlv_container_update
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_get_by_netdev
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_is_my_mac
    batadv_mcast_flags_dump
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_mesh_info_put
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_update_min_mtu
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.17 cfg: BLA=y DAT=n DEBUG=y TRACING=n NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_dump
    batadv_algo_get
    batadv_algo_select
    batadv_bla_backbone_dump
    batadv_bla_check_bcast_duplist
    batadv_bla_claim_dump
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_status_update
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_dump
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_gw_tvlv_container_update
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_get_by_netdev
    batadv_hardif_min_mtu
    batadv_mcast_flags_dump
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_mesh_info_put
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_update_min_mtu
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.18 cfg: BLA=y DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-4.19 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_dump
    batadv_algo_get
    batadv_algo_select
    batadv_bla_backbone_dump
    batadv_bla_check_bcast_duplist
    batadv_bla_claim_dump
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_status_update
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_cache_dump
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_dat_status_update
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_dump
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_gw_tvlv_container_update
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_get_by_netdev
    batadv_hardif_min_mtu
    batadv_mcast_flags_dump
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_mesh_info_put
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_update_min_mtu
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.10.159 cfg: BLA=n DAT=y DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_dump
    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_cache_dump
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_dat_status_update
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_dump
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_gw_tvlv_container_update
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_get_by_netdev
    batadv_hardif_min_mtu
    batadv_hash_set_lock_class
    batadv_mcast_flags_dump
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_mesh_info_put
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_update_min_mtu
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.12 cfg: BLA=n DAT=y DEBUG=n TRACING=n NC=y MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_dump
    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_dat_cache_dump
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_dat_status_update
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_dump
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_gw_tvlv_container_update
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_get_by_netdev
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_set_lock_class
    batadv_is_my_mac
    batadv_mcast_flags_dump
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_mesh_info_put
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_update_min_mtu
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.17 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.17 cfg: BLA=y DAT=y DEBUG=y TRACING=n NC=y MCAST=n BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.2 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_bla_check_bcast_duplist
    batadv_bla_is_backbone_gw
    batadv_bla_is_backbone_gw_orig
    batadv_bla_rx
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.5 cfg: BLA=n DAT=n DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_dump
    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_dump
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_gw_tvlv_container_update
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_get_by_netdev
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_is_my_mac
    batadv_mcast_flags_dump
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_mesh_info_put
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_update_min_mtu
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.6 cfg: BLA=y DAT=y DEBUG=n TRACING=y NC=n MCAST=y BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_dump
    batadv_algo_get
    batadv_algo_select
    batadv_bla_backbone_dump
    batadv_bla_check_bcast_duplist
    batadv_bla_claim_dump
    batadv_bla_is_backbone_gw
    batadv_bla_rx
    batadv_bla_status_update
    batadv_bla_tx
    batadv_broadcast_addr
    batadv_dat_cache_dump
    batadv_dat_drop_broadcast_packet
    batadv_dat_snoop_incoming_arp_reply
    batadv_dat_snoop_incoming_arp_request
    batadv_dat_snoop_incoming_dhcp_ack
    batadv_dat_snoop_outgoing_arp_reply
    batadv_dat_snoop_outgoing_arp_request
    batadv_dat_snoop_outgoing_dhcp_ack
    batadv_dat_status_update
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_dump
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_gw_tvlv_container_update
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_get_by_netdev
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_is_my_mac
    batadv_mcast_flags_dump
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_mesh_info_put
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_update_min_mtu
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-5.7 cfg: BLA=n DAT=n DEBUG=y TRACING=y NC=y MCAST=y BATMAN_V=y
---------------------------------------------------------------------------

    batadv_algo_dump
    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_dump
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_gw_tvlv_container_update
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_get_by_netdev
    batadv_hardif_min_mtu
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_mcast_flags_dump
    batadv_mcast_forw_mode
    batadv_mcast_forw_mode_by_count
    batadv_mcast_forw_send
    batadv_mcast_mesh_info_put
    batadv_mcast_purge_orig
    batadv_mesh_free
    batadv_mesh_init
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_update_min_mtu
    batadv_vlan_ap_isola_get

ecsv/pu: unused_symbols linux-6.0 cfg: BLA=n DAT=n DEBUG=n TRACING=n NC=y MCAST=n BATMAN_V=n
---------------------------------------------------------------------------

    batadv_algo_get
    batadv_algo_select
    batadv_broadcast_addr
    batadv_event_workqueue
    batadv_frag_purge_orig
    batadv_frag_send_packet
    batadv_frag_skb_buffer
    batadv_frag_skb_fwd
    batadv_gw_dhcp_recipient_get
    batadv_gw_election
    batadv_gw_get_selected_orig
    batadv_gw_node_delete
    batadv_gw_out_of_range
    batadv_hardif_disable_interface
    batadv_hardif_enable_interface
    batadv_hardif_min_mtu
    batadv_hardif_no_broadcast
    batadv_hash_destroy
    batadv_hash_new
    batadv_hash_set_lock_class
    batadv_is_my_mac
    batadv_mesh_free
    batadv_mesh_init
    batadv_netlink_tpmeter_notify
    batadv_routing_algo
    batadv_skb_set_priority
    batadv_vlan_ap_isola_get


Statistics
==========

ecsv/pu
-------

Failed tests:               214
Started build tests:        121
Tested Linux versions:       38
Tested configs:              84

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2022-12-26 18:50 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-26 16:15 [PATCH v2 0/5] Implementation of a Stateless Multicast Packet Type Linus Lüssing
2022-12-26 16:15 ` [PATCH v2 1/5] batman-adv: mcast: remove now redundant single ucast forwarding Linus Lüssing
2022-12-26 17:09   ` Sven Eckelmann
2022-12-26 16:15 ` [PATCH v2 2/5] batman-adv: tvlv: prepare for tvlv enabled multicast packet type Linus Lüssing
2022-12-26 17:33   ` Sven Eckelmann
2022-12-26 16:15 ` [PATCH v2 3/5] batman-adv: mcast: implement multicast packet reception and forwarding Linus Lüssing
2022-12-26 18:00   ` Sven Eckelmann
2022-12-26 16:15 ` [PATCH v2 4/5] batman-adv: mcast: implement multicast packet generation Linus Lüssing
2022-12-26 18:24   ` Sven Eckelmann
2022-12-26 16:15 ` [PATCH v2 5/5] batman-adv: mcast: shrink tracker packet after scrubbing Linus Lüssing
2022-12-26 18:50   ` Sven Eckelmann

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).