aboutsummaryrefslogtreecommitdiffstats
path: root/net/batman-adv/vis.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/batman-adv/vis.c')
-rw-r--r--net/batman-adv/vis.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/net/batman-adv/vis.c b/net/batman-adv/vis.c
index 94eaeb521c17..4983340f1943 100644
--- a/net/batman-adv/vis.c
+++ b/net/batman-adv/vis.c
@@ -697,7 +697,7 @@ static void batadv_broadcast_vis_packet(struct batadv_priv *bat_priv,
697 struct batadv_orig_node *orig_node; 697 struct batadv_orig_node *orig_node;
698 struct batadv_vis_packet *packet; 698 struct batadv_vis_packet *packet;
699 struct sk_buff *skb; 699 struct sk_buff *skb;
700 uint32_t i; 700 uint32_t i, res;
701 701
702 702
703 packet = (struct batadv_vis_packet *)info->skb_packet->data; 703 packet = (struct batadv_vis_packet *)info->skb_packet->data;
@@ -724,7 +724,8 @@ static void batadv_broadcast_vis_packet(struct batadv_priv *bat_priv,
724 if (!skb) 724 if (!skb)
725 continue; 725 continue;
726 726
727 if (!batadv_send_skb_to_orig(skb, orig_node, NULL)) 727 res = batadv_send_skb_to_orig(skb, orig_node, NULL);
728 if (res == NET_XMIT_DROP)
728 kfree_skb(skb); 729 kfree_skb(skb);
729 } 730 }
730 rcu_read_unlock(); 731 rcu_read_unlock();
@@ -748,7 +749,7 @@ static void batadv_unicast_vis_packet(struct batadv_priv *bat_priv,
748 if (!skb) 749 if (!skb)
749 goto out; 750 goto out;
750 751
751 if (!batadv_send_skb_to_orig(skb, orig_node, NULL)) 752 if (batadv_send_skb_to_orig(skb, orig_node, NULL) == NET_XMIT_DROP)
752 kfree_skb(skb); 753 kfree_skb(skb);
753 754
754out: 755out: