From: Stanislav Kinsbursky <skinsbursky@parallels.com>
To: Chuck Lever <chuck.lever@oracle.com>
Cc: Pavel Emelianov <xemul@parallels.com>,
"linux-nfs@vger.kernel.org" <linux-nfs@vger.kernel.org>
Subject: Re: NFS client virtualization plan
Date: Fri, 19 Aug 2011 21:21:16 +0400 [thread overview]
Message-ID: <4E4E9B8C.8050000@parallels.com> (raw)
In-Reply-To: <CDCCBEC6-18B3-4ED5-A562-1DC4611F1169@oracle.com>
19.08.2011 20:12, Chuck Lever пишет:
>
> On Aug 19, 2011, at 5:46 AM, Stanislav Kinsbursky wrote:
>
>> 18.08.2011 19:54, Chuck Lever пишет:
>>>
>>> On Aug 16, 2011, at 7:00 AM, Stanislav Kinsbursky wrote:
>>>
>>>> Hello.
>>>> I'm going to virtualize NFS in mainline and here is my plan for NFS client part.
>>>> Any suggestions or criticism are welcome.
>>>
>>> What are you going to do about statd?
>>>
>>
>> Do you mean user-space statd?
>> If so, what are the problems with it do you see?
>
> You go to the trouble of setting up multiple transports for rpcbind upcalls. This suggests you plan to have an rpcbind in each net namespace.
>
> On behalf of NFS, the kernel also performs idmapd, gssd, and statd (NSM) upcalls. Do you intend to have separate instances of these daemons for each net namespace?
>
Actually, yes, I do. Thanks for notice.
Kernel NSM monitor routines will be virtualized.
For idmapd and gssd rpc_pipefs virtualization is required.
I wasn't going to virtualize rpc_pipefs for now - it was planned to be a part of NFS server virtualization, which is planned to be done after NFS client virtualization.
>>
>>>> ==============================================================================
>>>>
>>>> "NFS client" virtualization plan:
>>>>
>>>> _RPC layer_:
>>>>
>>>> 1) Make rpcbind clients (rpcb_local_clnt and rpcb_local4_clnt) to be
>>>> per net namespace.
>>>>
>>>> _NFS layer_:
>>>>
>>>> 1) Net namespace inheritance (current->nsproxy->net have to be used instead
>>>> of init_net).
>>>> Pointer to net namespace can be stored on nfs_client structure, which will
>>>> give easy access to proper net namespace during RPC transports creation.
>>>>
>>>> 2) Make Lockd kthread able to handle requests from different net namespaces.
>>>>
>>>> 3) Make NFS callbacks kthreads (nfs4_callback_svc and nfs4.1_callback_svc) able
>>>> to handle requests from different net namespaces.
>>>>
>>>> 4) Make NFS info lists (nfs_volume_list and nfs_client_list) to be per
>>>> net namespace in addition to global ones.
>>>>
>>>> 5) Make NFS proc variables and it's internal content variables to be per
>>>> net namespace in addition to global ones.
>>>>
>>>> 6) Make NFS sysctl variables and it's internal content variables to be per
>>>> net namespace in addition to global ones.
>>>>
>>>>
>>>>
>>>> --
>>>> Best regards,
>>>> Stanislav Kinsbursky
>>>> --
>>>> 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
>>>
>>
>>
>> --
>> Best regards,
>> Stanislav Kinsbursky
>> --
>> 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
>
--
Best regards,
Stanislav Kinsbursky
next prev parent reply other threads:[~2011-08-19 17:21 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-16 11:00 NFS client virtualization plan Stanislav Kinsbursky
2011-08-16 11:08 ` Stanislav Kinsbursky
2011-08-16 11:59 ` Ben Greear
2011-08-16 12:19 ` Stanislav Kinsbursky
2011-08-18 15:54 ` Chuck Lever
2011-08-19 9:46 ` Stanislav Kinsbursky
2011-08-19 16:12 ` Chuck Lever
2011-08-19 17:21 ` Stanislav Kinsbursky [this message]
2011-08-19 19:32 ` J. Bruce Fields
2011-08-22 17:30 ` Stanislav Kinsbursky
2011-08-22 18:54 ` Jim Rees
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=4E4E9B8C.8050000@parallels.com \
--to=skinsbursky@parallels.com \
--cc=chuck.lever@oracle.com \
--cc=linux-nfs@vger.kernel.org \
--cc=xemul@parallels.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.