From: Li RongQing Date: Fri, 17 Oct 2014 06:06:16 +0000 (+0800) Subject: vxlan: fix a free after use X-Git-Tag: v3.14.24~199 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=102c052fd16e1e73fe2d69028f7c13e1b52571c8;p=thirdparty%2Fkernel%2Fstable.git vxlan: fix a free after use [ Upstream commit 7a9f526fc3ee49b6034af2f243676ee0a27dcaa8 ] 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 Signed-off-by: Li RongQing Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c index e1b4e00430ce3..0704a0402897e 100644 --- a/drivers/net/vxlan.c +++ b/drivers/net/vxlan.c @@ -1986,6 +1986,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 }