From: Hannes Frederic Sowa <han...@stressinduktion.org> Date: Fri, 8 Apr 2016 22:55:01 +0200
> Due to the fact that the udp socket is destructed asynchronously in a > work queue, we have some nondeterministic behavior during shutdown of > vxlan tunnels and creating new ones. Fix this by keeping the destruction > process synchronous in regards to the user space process so IFF_UP can > be reliably set. > > udp_tunnel_sock_release destroys vs->sock->sk if reference counter > indicates so. We expect to have the same lifetime of vxlan_sock and > vxlan_sock->sock->sk even in fast paths with only rcu locks held. So > only destruct the whole socket after we can be sure it cannot be found > by searching vxlan_net->sock_list. > > Cc: Eric Dumazet <eric.duma...@gmail.com> > Cc: Jiri Benc <jb...@redhat.com> > Cc: Marcelo Ricardo Leitner <marcelo.leit...@gmail.com> > Signed-off-by: Hannes Frederic Sowa <han...@stressinduktion.org> Applied.