public inbox for linux-nfs@vger.kernel.org
 help / color / mirror / Atom feed
From: Peter Staubach <staubach@redhat.com>
To: Neil Brown <neilb@suse.de>
Cc: "J. Bruce Fields" <bfields@fieldses.org>,
	Steve Dickson <SteveD@redhat.com>,
	linux-nfs@vger.kernel.org
Subject: Re: [nfs-utils PATCH] retry on EPERM from NFSv4 mount attempt
Date: Tue, 24 Nov 2009 17:29:28 -0500	[thread overview]
Message-ID: <4B0C5E48.8020600@redhat.com> (raw)
In-Reply-To: <20091125092227.77735d5a-wvvUuzkyo1EYVZTmpyfIwg@public.gmane.org>

Neil Brown wrote:
> On Tue, 24 Nov 2009 16:58:29 -0500
> Peter Staubach <staubach@redhat.com> wrote:
> 
>> I think that we might be better off in the long run by taking a
>> step back and getting all of the plumbing right, instead of
>> cluttering up things to have knowledge which they have no
>> business knowing or worrying about.
> 
> In principle, I completely agree.
> 
> 
>> If the NFSv4 server gets a request which involves the root file
>> handle and one has not been defined, then it should return the
>> error that is defined by the protocol.  What the client chooses
>> to do with the error is up to it.
> 
> There is no error for "root file handle has not been defined".
> 
> The only errors available for PUTROOTFH are:
>  NFS4ERR_RESOURCE - which means "I'm exchausted after all the other
>                     work you made me do" and shouldn't be returned for
>                     the first op in a compound (that is an implied
>                     restriction, not explicit).
>  NFS4ERR_SERVERFAULT which means something strange went wrong.  This is
>                     probably the closest, hence Bruce's recent patch to
>                     use this error code.
>  NFS4ERR_WRONGSEC   which means the security mechanism used by the
>                     client isn't acceptable to the server.  This is
>                     certainly not usable in this context.
> 
> So NFS4ERR_SERVERFAULT would be OK simply because it is a wildcard.
> But RPC_PROG_MISMATCH, which means "I don't support that version of the
> protocol" would also be correct in this case and it trivial for the
> client to interpret.
> 

Well, to the last section, that is an RPC error and not an
NFS error.  The RPC error, VERSMISMATCH, might be close, but
once again, is an RPC error and not an NFS error.

I don't think that an RPC error is correct to return if the
server is configured to support NFSv4.  It might not be
correctly configured and completely configured, but in
theory, it is supposed to support NFSv4.

I'd probably buy into the SERVERFAULT as the most logical error.

Doing something better is tough because of the way that exports
and the NFS service are managed as distinct things.  Perhaps if
the NFS service could detect that there were no NFSv4 exports,
then it could decline to register the NFSv4 service.  Then, some
of the RPC errors would make sense.

The layering in the current implementations seems to make things
more difficult than it does make them easy.  Just my opinion.

		ps

  parent reply	other threads:[~2009-11-24 22:29 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-11-23 23:32 [nfs-utils PATCH] retry on EPERM from NFSv4 mount attempt Neil Brown
     [not found] ` <19211.7054.291514.185591-wvvUuzkyo1EYVZTmpyfIwg@public.gmane.org>
2009-11-24 14:29   ` Steve Dickson
     [not found]     ` <4B0BEDDB.1010203-AfCzQyP5zfLQT0dZR+AlfA@public.gmane.org>
2009-11-24 20:56       ` J. Bruce Fields
2009-11-24 21:19         ` Peter Staubach
2009-11-24 21:51         ` Neil Brown
     [not found]           ` <20091125085122.316f4eb3-wvvUuzkyo1EYVZTmpyfIwg@public.gmane.org>
2009-11-24 21:58             ` Peter Staubach
2009-11-24 22:22               ` Neil Brown
     [not found]                 ` <20091125092227.77735d5a-wvvUuzkyo1EYVZTmpyfIwg@public.gmane.org>
2009-11-24 22:29                   ` Peter Staubach [this message]
2009-11-24 22:54                     ` J. Bruce Fields
2009-11-24 22:58                   ` Trond Myklebust
2009-11-30 13:11       ` Steve Dickson
     [not found]         ` <4B13C48E.5020009-AfCzQyP5zfLQT0dZR+AlfA@public.gmane.org>
2009-11-30 16:43           ` Chuck Lever
2009-11-30 17:41             ` Steve Dickson
     [not found]               ` <4B1403CA.8050107-AfCzQyP5zfLQT0dZR+AlfA@public.gmane.org>
2009-11-30 17:52                 ` Chuck Lever
2009-11-30 18:12                   ` Steve Dickson
2009-11-30 18:18           ` J. Bruce Fields
2009-11-30 21:59             ` Neil Brown
     [not found]               ` <20091201085916.7c1bb644-wvvUuzkyo1EYVZTmpyfIwg@public.gmane.org>
2009-11-30 22:13                 ` J. Bruce Fields
2009-12-07 22:27   ` 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=4B0C5E48.8020600@redhat.com \
    --to=staubach@redhat.com \
    --cc=SteveD@redhat.com \
    --cc=bfields@fieldses.org \
    --cc=linux-nfs@vger.kernel.org \
    --cc=neilb@suse.de \
    /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