From: Eric Dumazet <[email protected]>
Date: Fri, 29 May 2020 11:20:53 -0700
> syzbot recently found a way to crash the kernel [1]
>
> Issue here is that inet_hash() & inet_unhash() are currently
> only meant to be used by TCP & DCCP, since only these protocols
> provide the needed hashinfo pointer.
>
> L2TP uses a single list (instead of a hash table)
>
> This old bug became an issue after commit 610236587600
> ("bpf: Add new cgroup attach type to enable sock modifications")
> since after this commit, sk_common_release() can be called
> while the L2TP socket is still considered 'hashed'.
...
> Fixes: 0d76751fad77 ("l2tp: Add L2TPv3 IP encapsulation (no UDP) support")
> Signed-off-by: Eric Dumazet <[email protected]>
> Cc: James Chapman <[email protected]>
> Cc: Andrii Nakryiko <[email protected]>
> Reported-by: [email protected]
Applied and queued up for -stable, thanks.