diff --git a/net/batman-adv/routing.c b/net/batman-adv/routing.c
index c26f07368849b86bd0dacec984dcc88a59725d12..a953d5b196a3825020ba306c8df42130a0d26eda 100644
--- a/net/batman-adv/routing.c
+++ b/net/batman-adv/routing.c
@@ -918,6 +918,8 @@ int batadv_recv_unicast_tvlv(struct sk_buff *skb,
 
 	if (ret != NET_RX_SUCCESS)
 		ret = batadv_route_unicast_packet(skb, recv_if);
+	else
+		consume_skb(skb);
 
 	return ret;
 }