Re: [PATCH 0/3] lockd: use per-net refrence-counted NSM clients

Myklebust, Trond
2012-09-14T17:38:37Z

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="utf-8", Size: 1895 bytes --]

On Fri, 2012-09-14 at 13:01 -0400, Chuck Lever wrote:
> What happens if statd is restarted?

Nothing unusual. Why?

> Sent from my iPhone
>
> On Sep 14, 2012, at 10:25 AM, Stanislav Kinsbursky <skinsbursky@parallels.com> wrote:
>
> > This is a bug fix for https://bugzilla.redhat.com/show_bug.cgi?id=830862.
> >
> > The problem is that with NFSv4 mount in container (with separated mount
> > namesapce) and active lock on it, dying child reaped of this container will
> > try to umount NFS and doing this will try to create RPC client to send
> > unmonitor request to statd.
> > But creation of RCP client requires valid current->nsproxy (for operation with
> > utsname()) and during umount on child reaper exit it's equal to zero.
> >
> > Proposed solution is to introduce refrence-counter per-net NSM client, which
> > is created on fist monitor call and destroyed after the lst monitor call.
> >
> > The following series implements...
> >
> > ---
> >
> > Stanislav Kinsbursky (3):
> > lockd: use rpc client's cl_nodename for id encoding
> > lockd: per-net NSM client creation and destruction helpers introduced
> > lockd: create and use per-net NSM RPC clients on MON/UNMON requests
> >
> >
> > fs/lockd/mon.c | 91 +++++++++++++++++++++++++++++++++++++++++++-----------
> > fs/lockd/netns.h | 4 ++
> > fs/lockd/svc.c | 1 +
> > 3 files changed, 77 insertions(+), 19 deletions(-)
> >
> >
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at http://vger.kernel.org/majordomo-info.html

--
Trond Myklebust
Linux NFS client maintainer

NetApp
Trond.Myklebust@netapp.com
www.netapp.com
ÿôèº{.nÇ+‰·Ÿ®‰­†+%ŠËÿ±éÝ¶\x17¥Šwÿº{.nÇ+‰·¥Š{±þG«éÿŠ{ayº\x1dÊ‡Ú™ë,j\a­¢f£¢·hšïêÿ‘êçz_è®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?™¨è­Ú&£ø§~á¶iO•æ¬z·švØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?–I¥