Re: [PATCH v2,net-next] ip6_gre: fix a pontential issue in ip6erspan_rcv
From: David Miller
Date: Tue Dec 19 2017 - 10:35:15 EST
From: Haishuang Yan <yanhaishuang@xxxxxxxxxxxxxxxxxxxx>
Date: Sat, 16 Dec 2017 10:25:25 +0800
> pskb_may_pull() can change skb->data, so we need to load ipv6h/ershdr at
> the right place.
>
> Fixes: 5a963eb61b7c ("ip6_gre: Add ERSPAN native tunnel support")
> Acked-by: William Tu <u9012063@xxxxxxxxx>
> Cc: William Tu <u9012063@xxxxxxxxx>
> Signed-off-by: Haishuang Yan <yanhaishuang@xxxxxxxxxxxxxxxxxxxx>
This patch does not apply:
> + ipv6h = ipv6_hdr(skb);
> + ershdr = (struct erspan_base_hdr *)skb->data;
> ver = (ntohs(ershdr->ver_vlan) & VER_MASK) >> VER_OFFSET;
> tpi->key = cpu_to_be32(ntohs(ershdr->session_id) & ID_MASK);
> pkt_md = (struct erspan_metadata *)(ershdr + 1);
There is not "pkt_md = ..." assignment in net-next on this line.