From: Hannes Frederic Sowa <[email protected]> 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 <[email protected]> > Cc: Jiri Benc <[email protected]> > Cc: Marcelo Ricardo Leitner <[email protected]> > Signed-off-by: Hannes Frederic Sowa <[email protected]> Applied.
