Commit 34dbba5d authored by David S. Miller's avatar David S. Miller

Merge tag 'batadv-net-for-davem-20190201' of git://git.open-mesh.org/linux-merge

Simon Wunderlich says:

====================
Here are some batman-adv bugfixes:

 - Avoid WARN to report incorrect configuration, by Sven Eckelmann

 - Fix mac header position setting, by Sven Eckelmann

 - Fix releasing station statistics, by Felix Fietkau
====================
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents 84826ac7 7d652669
...@@ -104,6 +104,9 @@ static u32 batadv_v_elp_get_throughput(struct batadv_hardif_neigh_node *neigh) ...@@ -104,6 +104,9 @@ static u32 batadv_v_elp_get_throughput(struct batadv_hardif_neigh_node *neigh)
ret = cfg80211_get_station(real_netdev, neigh->addr, &sinfo); ret = cfg80211_get_station(real_netdev, neigh->addr, &sinfo);
/* free the TID stats immediately */
cfg80211_sinfo_release_content(&sinfo);
dev_put(real_netdev); dev_put(real_netdev);
if (ret == -ENOENT) { if (ret == -ENOENT) {
/* Node is not associated anymore! It would be /* Node is not associated anymore! It would be
......
...@@ -20,7 +20,6 @@ ...@@ -20,7 +20,6 @@
#include "main.h" #include "main.h"
#include <linux/atomic.h> #include <linux/atomic.h>
#include <linux/bug.h>
#include <linux/byteorder/generic.h> #include <linux/byteorder/generic.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/gfp.h> #include <linux/gfp.h>
...@@ -179,8 +178,10 @@ static bool batadv_is_on_batman_iface(const struct net_device *net_dev) ...@@ -179,8 +178,10 @@ static bool batadv_is_on_batman_iface(const struct net_device *net_dev)
parent_dev = __dev_get_by_index((struct net *)parent_net, parent_dev = __dev_get_by_index((struct net *)parent_net,
dev_get_iflink(net_dev)); dev_get_iflink(net_dev));
/* if we got a NULL parent_dev there is something broken.. */ /* if we got a NULL parent_dev there is something broken.. */
if (WARN(!parent_dev, "Cannot find parent device")) if (!parent_dev) {
pr_err("Cannot find parent device\n");
return false; return false;
}
if (batadv_mutual_parents(net_dev, net, parent_dev, parent_net)) if (batadv_mutual_parents(net_dev, net, parent_dev, parent_net))
return false; return false;
......
...@@ -221,6 +221,8 @@ static netdev_tx_t batadv_interface_tx(struct sk_buff *skb, ...@@ -221,6 +221,8 @@ static netdev_tx_t batadv_interface_tx(struct sk_buff *skb,
netif_trans_update(soft_iface); netif_trans_update(soft_iface);
vid = batadv_get_vid(skb, 0); vid = batadv_get_vid(skb, 0);
skb_reset_mac_header(skb);
ethhdr = eth_hdr(skb); ethhdr = eth_hdr(skb);
switch (ntohs(ethhdr->h_proto)) { switch (ntohs(ethhdr->h_proto)) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment