From: "J. Bruce Fields" <bfields@fieldses.org>
To: Chuck Lever <chuck.lever@oracle.com>
Cc: Tom Talpey <tmtalpey@gmail.com>,
linux-nfs@vger.kernel.org, nfsv4@linux-nfs.org,
Jeff Layton <jlayton@redhat.com>
Subject: Re: [PATCH 3/5] nfs-utils: query for remote port using rpcbind instead of getaddrinfo
Date: Thu, 9 Apr 2009 12:19:47 -0400 [thread overview]
Message-ID: <20090409161947.GG32589@fieldses.org> (raw)
In-Reply-To: <DDF2F477-FC1E-45D0-A9F6-A4D690F2256B@oracle.com>
On Wed, Apr 08, 2009 at 03:32:43PM -0400, Chuck Lever wrote:
> On Apr 7, 2009, at 7:14 PM, J. Bruce Fields wrote:
>> On Tue, Apr 07, 2009 at 03:43:39PM -0400, Tom Talpey wrote:
>>> At 01:11 PM 4/7/2009, Jeff Layton wrote:
>>>> On Tue, 07 Apr 2009 12:27:49 -0400
>>>> Tom Talpey <tmtalpey@gmail.com> wrote:
>>>>
>>>>> At 12:02 PM 4/7/2009, Chuck Lever wrote:
>>>>>>
>>>>>> On Apr 7, 2009, at 11:25 AM, Jeff Layton wrote:
>>>>>>> + /* Use standard NFS port for NFSv4 */
>>>>>>> + if (program == 100003 && version == 4) {
>>>>>>> + port = 2049;
>>>>>>> + goto set_port;
>>>>>>> + }
>>>>>>
>>>>>> I think this patch set looks pretty reasonable. Here's my one
>>>>>> remaining quibble.
>>>>>>
>>>>>> You can specify "port=" for nfs4 mounts, in which case we want
>>>>>> to use
>>>>>> that value here, too, I think. It would be simpler overall if the
>>>>>
>>>>> *Must* use a port= specification. The 2049 definition is only
>>>>> true for
>>>>> NFSv4/TCP, as a counterexample the NFSv4/RDMA IANA binding is
>>>>> port 20049. So slamming the port to 2049 would break NFSv4/RDMA.
>>>>>
>>>>
>>>> rpc.gssd doesn't seem to be rdma-enabled at this point. It only
>>>> seems
>>>> to handle "tcp" and "udp" in the existing code.
>>>
>>> Fair enough. But hardwiring 2049 for all transports is going to very
>>> problematic. What's the motivation for bypassing the rpcbind query
>>> altogether (that "goto set_port" skips over it)? Why not at least
>>> try the query first?
>>
>> We're just doing the rpcsec_gss context initiation. Normally that
>> would
>> be done over an already-established connection--the only reason we
>> don't
>> is because our implementation is split between the client and the
>> server, so it's more convenient for us to set up a new connection in
>> rpc.gssd. But we really shouldn't be doing an entirely new rpcbind
>> call--somebody else already did that for us and is telling us the
>> results through the rpc_pipefs info file.
>
> This is an entirely separate RPC transport being set up for gssd, and
> there seem to be a lot of cases where the kernel (rightfully) passes a
> zero for the port number. In fact, even if the kernel did the rpcbind
> for gssd at some point in the past, gss doesn't have any information
> about how old that information is.
>
> So, yes, we do want an rpcbind here.
As long as we don't do it in the NFSv4 case, I'm happy.
My only point is that the above argument is putting the cart before the
horse a bit: the fact that there's an entirely separate RPC transport
being set up is entirely an artifact of our implementation, and if it
became a problem at some point, then we'd need to consider modifying the
kernel/gssd interface to eliminate the need for that.
--b.
next prev parent reply other threads:[~2009-04-09 16:19 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-04-07 15:25 [PATCH 0/5] nfs-utils: convert gssd to TI-RPC and add IPv6 support (try #4) Jeff Layton
2009-04-07 15:25 ` [PATCH 1/5] nfs-utils: make getnameinfo() required for --enable-gss Jeff Layton
2009-04-07 15:25 ` [PATCH 2/5] nfs-utils: store the address given in the upcall for later use Jeff Layton
2009-04-07 15:25 ` [PATCH 3/5] nfs-utils: query for remote port using rpcbind instead of getaddrinfo Jeff Layton
2009-04-07 16:02 ` Chuck Lever
2009-04-07 16:20 ` J. Bruce Fields
2009-04-07 16:29 ` Chuck Lever
2009-04-07 16:32 ` J. Bruce Fields
2009-04-07 16:34 ` Chuck Lever
2009-04-07 17:00 ` Jeff Layton
2009-04-07 17:12 ` Chuck Lever
2009-04-07 16:27 ` Tom Talpey
2009-04-07 16:32 ` Chuck Lever
2009-04-07 17:11 ` Jeff Layton
[not found] ` <20090407131151.69203e5e-RtJpwOs3+0O+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2009-04-07 19:43 ` Tom Talpey
2009-04-07 19:53 ` Jeff Layton
2009-04-07 20:01 ` Tom Talpey
[not found] ` <49dbb129.02045a0a.023b.6bc7-ATjtLOhZ0NVl57MIdRCFDg@public.gmane.org>
2009-04-07 20:30 ` Jeff Layton
2009-04-07 23:16 ` J. Bruce Fields
2009-04-07 23:27 ` Jeff Layton
2009-04-07 23:14 ` J. Bruce Fields
2009-04-07 23:37 ` Jeff Layton
2009-04-08 19:32 ` Chuck Lever
2009-04-09 16:19 ` J. Bruce Fields [this message]
2009-04-09 17:34 ` Chuck Lever
2009-04-07 15:25 ` [PATCH 4/5] nfs-utils: switch gssd to use standard function for getting an RPC client Jeff Layton
2009-04-07 15:25 ` [PATCH 5/5] nfs-utils: add IPv6 code to gssd Jeff Layton
2009-04-15 16:02 ` [PATCH 0/5] nfs-utils: convert gssd to TI-RPC and add IPv6 support (try #4) Steve Dickson
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=20090409161947.GG32589@fieldses.org \
--to=bfields@fieldses.org \
--cc=chuck.lever@oracle.com \
--cc=jlayton@redhat.com \
--cc=linux-nfs@vger.kernel.org \
--cc=nfsv4@linux-nfs.org \
--cc=tmtalpey@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.