From: bfields@fieldses.org (J. Bruce Fields)
To: Trond Myklebust <trondmy@gmail.com>
Cc: "J. Bruce Fields" <bfields@redhat.com>, linux-nfs@vger.kernel.org
Subject: Re: [PATCH v2 0/6] Allow containerised knfsd to set supported NFS versions
Date: Tue, 9 Apr 2019 16:09:29 -0400 [thread overview]
Message-ID: <20190409200929.GA29099@fieldses.org> (raw)
In-Reply-To: <20190409154619.33615-1-trond.myklebust@hammerspace.com>
On Tue, Apr 09, 2019 at 11:46:13AM -0400, Trond Myklebust wrote:
> The current knfsd implementation is unable to support containers that
> want to run different combinations of NFS versions. This is because of
> the way we define which versions are supported: by directly editing the
> global version table in 'nfsd_program'.
> The following patch set modifies the method used to define version
> information by moving some of the server RPC request initialisation
> down into knfsd itself, allowing it to manage the version-specific
> initialisation.
>
> Note that we might want to consider a few follow ups to this patchset
> to get rid of some of the version-specific flags (e.g. vs_hidden) that
> currently need to be managed in the generic SUNRPC server code on behalf
> of just one or two RPC programs. These flags can easily by replaced by
> custom RPC request initialisers.
>
> ---
> v2: Fix compile issues when CONFIG_NFSD_V2_ACL and CONFIG_NFSD_V3_ACL
> are undefined.
> Don't move the svc_reserve() call in svc_process_common(), since
> that can trigger 'RPC request reserved xxx but used yyy' issues.
Thanks! I've applied this revised version.
--b.
>
>
> Trond Myklebust (6):
> SUNRPC/nfs: Fix return value for nfs4_callback_compound()
> SUNRPC: Add a callback to initialise server requests
> SUNRPC: Clean up generic dispatcher code
> SUNRPC: Allow further customisation of RPC program registration
> nfsd: Add custom rpcbind callbacks for knfsd
> nfsd: Allow containers to set supported nfs versions
>
> fs/lockd/svc.c | 4 +-
> fs/nfs/callback.c | 2 +
> fs/nfs/callback_xdr.c | 2 +-
> fs/nfsd/netns.h | 8 +
> fs/nfsd/nfs4proc.c | 3 +-
> fs/nfsd/nfsctl.c | 25 ++--
> fs/nfsd/nfsd.h | 8 +-
> fs/nfsd/nfssvc.c | 255 +++++++++++++++++++++++++------
> include/linux/sunrpc/svc.h | 33 ++++
> net/sunrpc/svc.c | 298 ++++++++++++++++++++++++-------------
> 10 files changed, 478 insertions(+), 160 deletions(-)
>
> --
> 2.20.1
prev parent reply other threads:[~2019-04-09 20:09 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-09 15:46 [PATCH v2 0/6] Allow containerised knfsd to set supported NFS versions Trond Myklebust
2019-04-09 15:46 ` [PATCH v2 1/6] SUNRPC/nfs: Fix return value for nfs4_callback_compound() Trond Myklebust
2019-04-09 15:46 ` [PATCH v2 2/6] SUNRPC: Add a callback to initialise server requests Trond Myklebust
2019-04-09 15:46 ` [PATCH v2 3/6] SUNRPC: Clean up generic dispatcher code Trond Myklebust
2019-04-09 15:46 ` [PATCH v2 4/6] SUNRPC: Allow further customisation of RPC program registration Trond Myklebust
2019-04-09 15:46 ` [PATCH v2 5/6] nfsd: Add custom rpcbind callbacks for knfsd Trond Myklebust
2019-04-09 15:46 ` [PATCH v2 6/6] nfsd: Allow containers to set supported nfs versions Trond Myklebust
2019-04-09 20:09 ` J. Bruce Fields [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190409200929.GA29099@fieldses.org \
--to=bfields@fieldses.org \
--cc=bfields@redhat.com \
--cc=linux-nfs@vger.kernel.org \
--cc=trondmy@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.