diff options
author | Li RongQing <roy.qing.li@gmail.com> | 2014-10-17 14:06:16 +0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-10-17 16:23:58 -0400 |
commit | 7a9f526fc3ee49b6034af2f243676ee0a27dcaa8 (patch) | |
tree | 438784301c4410430df7cf2a7d53e71f26a733b2 /drivers | |
parent | 389f48947a5a37ea283de520abb742d42174edb0 (diff) |
vxlan: fix a free after use
pskb_may_pull maybe change skb->data and make eth pointer oboslete,
so eth needs to reload
Fixes: 91269e390d062 ("vxlan: using pskb_may_pull as early as possible")
Cc: Eric Dumazet <edumazet@google.com>
Signed-off-by: Li RongQing <roy.qing.li@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/vxlan.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c index 77ab844cd8a..ca309820d39 100644 --- a/drivers/net/vxlan.c +++ b/drivers/net/vxlan.c @@ -1887,6 +1887,7 @@ static netdev_tx_t vxlan_xmit(struct sk_buff *skb, struct net_device *dev) msg->icmph.icmp6_type == NDISC_NEIGHBOUR_SOLICITATION) return neigh_reduce(dev, skb); } + eth = eth_hdr(skb); #endif } |