Subject: Re: [PATCH 2/2] IPVS netns shutdown/startup dead-lock (Take II)

From: Hans Schillstrom <[email-masked]>
Date: Mon, 3 Oct 2011 23:12:13 +0200

Hi Julian
On Monday, October 03, 2011 22:55:02 Julian Anastasov wrote:
> 
> 	Hello,
> 
> On Mon, 3 Oct 2011, Hans Schillstrom wrote:
> 
> > From: Hans Schillstrom <[email-masked]>
> > 
> > ip_vs_mutext is used by both netns shutdown code and startup
> > and both implicit uses sk_lock-AF_INET mutex.
> > 
> > cleanup CPU-1         startup CPU-2
> > ip_vs_dst_event()     ip_vs_genl_set_cmd()
> >  sk_lock-AF_INET     __ip_vs_mutex
> >                      sk_lock-AF_INET
> > __ip_vs_mutex
> > * DEAD LOCK *
> > 
> > A new mutex placed in ip_vs netns struct called sync_mutex is added.
> > 
> > Comments from Julian and Simon added.
> > This patch has been running for more than 3 month now and it seems to work.
> 
> 	May be IP_VS_SO_GET_DAEMON in do_ip_vs_get_ctl
> must be protected by sync_mutex in a similar way.
> 

That's right there is a small risk inconsistent data there...
I will send a new patch tomorrow.

Thanks
Hans