From: Shirley Ma <shirley.ma@oracle.com>
To: Chuck Lever <chuck.lever@oracle.com>,
Trond Myklebust <trond.myklebust@primarydata.com>
Cc: Anna Schumaker <Anna.Schumaker@netapp.com>,
"J. Bruce Fields" <bfields@redhat.com>,
Leon Romanovsky <leon@leon.nu>,
Linux NFS Mailing List <linux-nfs@vger.kernel.org>
Subject: Re: [PATCH] nfs: add nfs IPv6 rdma6 mount option support
Date: Wed, 23 Mar 2016 11:03:53 -0700 [thread overview]
Message-ID: <56F2DA89.9040905@oracle.com> (raw)
In-Reply-To: <4A9EA080-30CC-4DD8-9BD8-28D54F13C582@oracle.com>
On 03/22/2016 03:01 PM, Chuck Lever wrote:
>
>> On Mar 22, 2016, at 5:55 PM, Trond Myklebust <trond.myklebust@primarydata.com> wrote:
>>
>> On Tue, Mar 22, 2016 at 5:52 PM, Chuck Lever <chuck.lever@oracle.com> wrote:
>>>
>>>> On Mar 22, 2016, at 5:46 PM, Trond Myklebust <trond.myklebust@primarydata.com> wrote:
>>>>
>>>> On Tue, Mar 22, 2016 at 5:24 PM, Chuck Lever <chuck.lever@oracle.com> wrote:
>>>>>
>>>>>> On Mar 22, 2016, at 3:38 PM, Anna Schumaker <Anna.Schumaker@netapp.com> wrote:
>>>>>>
>>>>>> Hi Shirley,
>>>>>>
>>>>>> Sorry for the delay in looking at this patch. Comments are below:
>>>>>>
>>>>>> On 03/16/2016 02:30 PM, Shirley Ma wrote:
>>>>>>> Add rdma6 option to support NFS/RDMA IPv6.
>>>>>>>
>>>>>>> Signed-off-by: Shirley Ma <shirley.ma@oracle.com>
>>>>>>
>>>>>> Can you add a little more to the patch description to describe when RDMA with IPv6 would be used?
>>>>>>
>>>>>>> ---
>>>>>>>
>>>>>>> diff --git a/fs/nfs/super.c b/fs/nfs/super.c
>>>>>>> index f126828..62a55d0 100644
>>>>>>> --- a/fs/nfs/super.c
>>>>>>> +++ b/fs/nfs/super.c
>>>>>>> @@ -191,6 +191,7 @@ static const match_table_t nfs_mount_option_tokens = {
>>>>>>>
>>>>>>> enum {
>>>>>>> Opt_xprt_udp, Opt_xprt_udp6, Opt_xprt_tcp, Opt_xprt_tcp6, Opt_xprt_rdma,
>>>>>>> + Opt_xprt_rdma6,
>>>>>>>
>>>>>>> Opt_xprt_err
>>>>>>> };
>>>>>>> @@ -201,6 +202,7 @@ static const match_table_t nfs_xprt_protocol_tokens = {
>>>>>>> { Opt_xprt_tcp, "tcp" },
>>>>>>> { Opt_xprt_tcp6, "tcp6" },
>>>>>>> { Opt_xprt_rdma, "rdma" },
>>>>>>> + { Opt_xprt_rdma6, "rdma6" },
>>>>>>>
>>>>>>> { Opt_xprt_err, NULL }
>>>>>>> };
>>>>>>> @@ -1456,6 +1458,8 @@ static int nfs_parse_mount_options(char *raw,
>>>>>>> mnt->flags |= NFS_MOUNT_TCP;
>>>>>>> mnt->nfs_server.protocol = XPRT_TRANSPORT_TCP;
>>>>>>> break;
>>>>>>> + case Opt_xprt_rdma6:
>>>>>>> + protofamily = AF_INET6;
>>>>>>> case Opt_xprt_rdma:
>>>>>>> /* vector side protocols to TCP */
>>>>>>> mnt->flags |= NFS_MOUNT_TCP;
>>>>>>> @@ -1490,6 +1494,8 @@ static int nfs_parse_mount_options(char *raw,
>>>>>>> case Opt_xprt_tcp:
>>>>>>> mnt->mount_server.protocol = XPRT_TRANSPORT_TCP;
>>>>>>> break;
>>>>>>> + case Opt_xprt_rdma6:
>>>>>>> + mountfamily = AF_INET6;
>>>>>>> case Opt_xprt_rdma: /* not used for side protocols */
>>>>>> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>>>>>> Do we need to be setting mountfamily here? The comment next to Opt_xprt_rdma makes it sound like this code doesn't apply to RDMA.
>>>>>
>>>>> I wondered this too.
>>>>>
>>>>> But what's going on is that for NFSv3 on RDMA, when IPv6 is
>>>>> used for the main protocol, IPv6 needs to be used for the
>>>>> mount protocol as well, even though it is going over TCP.
>>>>
>>>> It causes nfs_mount_parse_options to immediately stop further parsing
>>>> and return '0' == error encountered. The mount is supposed to fail in
>>>> that case.
>>>
>>> Ah, a break; is needed there too.
>>>
>>
>> I'm saying that makes no sense to allow "rdma6" here in the first
>> place, since we've already banned the use of "rdma" through that same
>> mechanism.
>
> I see, this is the parsing logic just for "mountproto=".
>
> This hunk should be dropped, and maybe the
> "case Opt_xprt_rdma:" can be removed, too.
Thanks for the review. I will drop mountfamily option case.
>
> --
> Chuck Lever
>
>
>
next prev parent reply other threads:[~2016-03-23 18:04 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-16 18:30 [PATCH] nfs: add nfs IPv6 rdma6 mount option support Shirley Ma
2016-03-16 18:46 ` J. Bruce Fields
2016-03-22 19:38 ` Anna Schumaker
2016-03-22 21:24 ` Chuck Lever
2016-03-22 21:46 ` Trond Myklebust
2016-03-22 21:52 ` Chuck Lever
2016-03-22 21:55 ` Trond Myklebust
2016-03-22 22:01 ` Chuck Lever
2016-03-23 18:03 ` Shirley Ma [this message]
2016-04-04 18:15 ` [PATCH V2] nfs: add mount proto=rdma6 option for NFS/RDMA IPv6 addressing Shirley Ma
2016-04-04 18:15 ` Shirley Ma
2016-04-04 19:50 ` Leon Romanovsky
2016-04-04 19:50 ` Leon Romanovsky
2016-04-04 20:23 ` Shirley Ma
2016-04-04 20:23 ` Shirley Ma
2016-04-04 22:08 ` [PATCH] Documentation nfs-rdma.txt: Update nfs-rdma kernel module name and add IPv6 addressing option rdma6 Shirley Ma
2016-04-04 22:08 ` Shirley Ma
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=56F2DA89.9040905@oracle.com \
--to=shirley.ma@oracle.com \
--cc=Anna.Schumaker@netapp.com \
--cc=bfields@redhat.com \
--cc=chuck.lever@oracle.com \
--cc=leon@leon.nu \
--cc=linux-nfs@vger.kernel.org \
--cc=trond.myklebust@primarydata.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.