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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox