On Mon, 30 Nov 2020 17:19:11 +0100 Antoine Tenart wrote: > syzkaller managed to crash the kernel using an NBMA ip6gre interface. I > could reproduce it creating an NBMA ip6gre interface and forwarding > traffic to it: > > skbuff: skb_under_panic: text:ffffffff8250e927 len:148 put:44 > head:ffff8c03c7a33 > ------------[ cut here ]------------ > kernel BUG at net/core/skbuff.c:109! > Call Trace: > skb_push+0x10/0x10 > ip6gre_header+0x47/0x1b0 > neigh_connected_output+0xae/0xf0 > > ip6gre tunnel provides its own header_ops->create, and sets it > conditionally when initializing the tunnel in NBMA mode. When > header_ops->create is used, dev->hard_header_len should reflect the > length of the header created. Otherwise, when not used, > dev->needed_headroom should be used. > > Fixes: eb95f52fc72d ("net: ipv6_gre: Fix GRO to work on IPv6 over GRE tap") > Cc: Maria Pasechnik <mar...@mellanox.com> > Signed-off-by: Antoine Tenart <aten...@kernel.org>
Applied, thank you!