Re: [RFC PATCH 0/2] race of lockd/nfsd inetaddr notifiers with pointers change

2017-10-31 Thread Scott Mayhew
On Mon, 30 Oct 2017, Vasily Averin wrote: > I've reproduced the problem both on RHEL7 and then on last mainline kernel: > > 1) start nfsd on host > # service nfs start > > 2) create separate net and mount namespaces: > # unshare -m -n ; mount -t nfsd nfsd /proc/fs/nfsd > > 3) execute screen (

Re: [RFC PATCH 0/2] race of lockd/nfsd inetaddr notifiers with pointers change

2017-10-30 Thread Vasily Averin
I've reproduced the problem both on RHEL7 and then on last mainline kernel: 1) start nfsd on host # service nfs start 2) create separate net and mount namespaces: # unshare -m -n ; mount -t nfsd nfsd /proc/fs/nfsd 3) execute screen (we need 2 consoles with newly created namespaces) 4) on first

Re: [RFC PATCH 0/2] race of lockd/nfsd inetaddr notifiers with pointers change

2017-10-19 Thread Vasily Averin
cc: Scott Mayhew Dear Scott, could you please take look at patches? Let me describe the problem once again: lockd_inetaddr_event() ... if (nlmsvc_rqst) { ... svc_age_temp_xprts_now(nlmsvc_rqst->rq_server, (struct sockaddr *)&sin); } Usually ac

[RFC PATCH 0/2] race of lockd/nfsd inetaddr notifiers with pointers change

2017-10-17 Thread Vasily Averin
lockd and nfsd inet[6]addr notifiers use pointer that can be changed during execution. lockd_inet[6]addr_event use nlmsvc_rqst without taken nlmsvc_mutex, nfsd notifier have similar trouble. We got few crashes from OpenVz customers on RHEL6-based kernel, and I have reproduced the problem locally