batman-adv: upgrade package to latest release 2017.0
[feed/routing.git] / batman-adv / patches / 0002-batman-adv-Decrease-hardif-refcnt-on-fragmentation-s.patch
diff --git a/batman-adv/patches/0002-batman-adv-Decrease-hardif-refcnt-on-fragmentation-s.patch b/batman-adv/patches/0002-batman-adv-Decrease-hardif-refcnt-on-fragmentation-s.patch
deleted file mode 100644 (file)
index 92da394..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-From: Sven Eckelmann <sven@narfation.org>
-Date: Tue, 27 Dec 2016 08:51:17 +0100
-Subject: [PATCH] batman-adv: Decrease hardif refcnt on fragmentation send error
-
-An error before the hardif is found has to free the skb. But every error
-after that has to free the skb + put the hard interface.
-
-Fixes: 8b4132b1447a ("batman-adv: Consume skb in batadv_frag_send_packet")
-Signed-off-by: Sven Eckelmann <sven@narfation.org>
-Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
----
- net/batman-adv/fragmentation.c | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/net/batman-adv/fragmentation.c b/net/batman-adv/fragmentation.c
-index 9c561e6..0854ebd 100644
---- a/net/batman-adv/fragmentation.c
-+++ b/net/batman-adv/fragmentation.c
-@@ -474,7 +474,7 @@ int batadv_frag_send_packet(struct sk_buff *skb,
-       primary_if = batadv_primary_if_get_selected(bat_priv);
-       if (!primary_if) {
-               ret = -EINVAL;
--              goto put_primary_if;
-+              goto free_skb;
-       }
-       /* Create one header to be copied to all fragments */
-@@ -502,7 +502,7 @@ int batadv_frag_send_packet(struct sk_buff *skb,
-               skb_fragment = batadv_frag_create(skb, &frag_header, mtu);
-               if (!skb_fragment) {
-                       ret = -ENOMEM;
--                      goto free_skb;
-+                      goto put_primary_if;
-               }
-               batadv_inc_counter(bat_priv, BATADV_CNT_FRAG_TX);
-@@ -511,7 +511,7 @@ int batadv_frag_send_packet(struct sk_buff *skb,
-               ret = batadv_send_unicast_skb(skb_fragment, neigh_node);
-               if (ret != NET_XMIT_SUCCESS) {
-                       ret = NET_XMIT_DROP;
--                      goto free_skb;
-+                      goto put_primary_if;
-               }
-               frag_header.no++;
-@@ -519,7 +519,7 @@ int batadv_frag_send_packet(struct sk_buff *skb,
-               /* The initial check in this function should cover this case */
-               if (frag_header.no == BATADV_FRAG_MAX_FRAGMENTS - 1) {
-                       ret = -EINVAL;
--                      goto free_skb;
-+                      goto put_primary_if;
-               }
-       }
-@@ -527,7 +527,7 @@ int batadv_frag_send_packet(struct sk_buff *skb,
-       if (batadv_skb_head_push(skb, header_size) < 0 ||
-           pskb_expand_head(skb, header_size + ETH_HLEN, 0, GFP_ATOMIC) < 0) {
-               ret = -ENOMEM;
--              goto free_skb;
-+              goto put_primary_if;
-       }
-       memcpy(skb->data, &frag_header, header_size);