Re: [PATCH net] udplite: call proper backlog handlers

From: David Miller
Date: Thu Nov 24 2016 - 15:32:54 EST


From: Eric Dumazet <eric.dumazet@xxxxxxxxx>
Date: Tue, 22 Nov 2016 09:06:45 -0800

> From: Eric Dumazet <edumazet@xxxxxxxxxx>
>
> In commits 93821778def10 ("udp: Fix rcv socket locking") and
> f7ad74fef3af ("net/ipv6/udp: UDP encapsulation: break backlog_rcv into
> __udpv6_queue_rcv_skb") UDP backlog handlers were renamed, but UDPlite
> was forgotten.
>
> This leads to crashes if UDPlite header is pulled twice, which happens
> starting from commit e6afc8ace6dd ("udp: remove headers from UDP packets
> before queueing")
>
> Bug found by syzkaller team, thanks a lot guys !
>
> Note that backlog use in UDP/UDPlite is scheduled to be removed starting
> from linux-4.10, so this patch is only needed up to linux-4.9
>
> Fixes: 93821778def1 ("udp: Fix rcv socket locking")
> Fixes: f7ad74fef3af ("net/ipv6/udp: UDP encapsulation: break backlog_rcv into __udpv6_queue_rcv_skb")
> Fixes: e6afc8ace6dd ("udp: remove headers from UDP packets before queueing")
> Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
> Reported-by: Andrey Konovalov <andreyknvl@xxxxxxxxxx>

Applied and queued up for -stable, thanks Eric.