public inbox for linux-nfs@vger.kernel.org
 help / color / mirror / Atom feed
From: Steve Dickson <SteveD@redhat.com>
To: Chuck Lever <chuck.lever@oracle.com>
Cc: linux-nfs@vger.kernel.org, Neil Brown <neilb@suse.de>
Subject: Re: [nfs-utils PATCH] retry on EPERM from NFSv4 mount attempt
Date: Mon, 30 Nov 2009 12:41:30 -0500	[thread overview]
Message-ID: <4B1403CA.8050107@RedHat.com> (raw)
In-Reply-To: <C027313D-A09F-4A72-926A-3D0EC2795E73@oracle.com>

On 11/30/2009 11:43 AM, Chuck Lever wrote:
> On Nov 30, 2009, at 8:11 AM, Steve Dickson wrote:
>> Sorry for the delayed response, I took some time off...
>>
>> On 11/24/2009 09:29 AM, Steve Dickson wrote:
>>>
>>>
>>> On 11/23/2009 06:32 PM, Neil Brown wrote:
>>>>
>>>> Hi,
>>>> I recently packaged nfs-utils 1.2.1 for openSUSE and fairly quickly
>>>> got a bug report - "-o nfsvers=3" was needed to mount NFSv3
>>>> filesystems.
>>>>
>>>> mount.nfs in 1.2.1 will first try a v4 mount but will fall-back to v3
>>>> if it gets ENOENT.  This works fine.
>>>> However for kernel prior to 2.6.25, you don't get ENOENT, you get
>>>> EPERM.
>>>> In that case the fall-back to v3 doesn't happen and you get a failure
>>>> to mount.
>>>>
>>>> So I think we need to fall back on EPERM as well.  See below.
>>> I already posted this patch on the v4 mailing list
>>> http://linux-nfs.org/pipermail/nfsv4/2009-November/011595.html
>>> but it got shot down...  at least that's how I interpreted the
>>> responses...
>>>
>>> But I do thing we need this, since there are so many server
>>> that will simple break if we don't... Agreed?
>>
>> There appears to be a consensus that we need to do something
>> but no agreement on what....
>>
>> I believe the options are:
>>   1) Start servers with '-N 4' when there is no root configured.
>>      * The problem I see with this is, in the event v4 support is wanted
>>        its yet another configuration knob that has to be turned,
>> basically
>>        making it more difficult for people use v4.
>>
>>   2) Change the kernel to return NFS4ERR_SERVERFAULT when there is no
>>      root configured.
>>      * I see this is yet another errno the mounting code has to deal
>> with..
>>        We are up to two errnos, do we really want to add a third?
>>
>> Neither one of these solutions deal with legacy servers or move
>> the "v4 technology" forward... IMHO...
> 
> To quote Yoda, "No.  There is another."
> 
> Distributions can choose to revert the recently added behavior which
> makes mount.nfs try vers=4 by default.  That's what the mount config
> file is for, yes?  That seems like a responsible choice, given the
> number of legacy servers still in the field.
Yes... That was the main reason for the configuration file.

> 
> At some later point (say, when your pseudoroot work is more widely
> deployed), distributions can make vers=4 the default as shipped simply
> by flipping a switch in the mount config file.  For now, the default
> behavior stays the same, with an option for individual sites to try
> something new.  In my opinion, default behavior out of the shrinkwrap
> should always be the behavior most likely to work in any environment --
> principle of least surprise, and all that sort of thing.
Not matter how or when we flip the switch, we'll have to deal 
with the legacy servers...

> 
> This seems like the way we normally deploy new features like this, and
> would give the many very recent changes in mount.nfs more soak time with
> early adopters before we force them on everyone.
Take a look at the Fedora 12... Its set up exactly as you just described
with only difference vers=3 is set in the configuration file...

So in my opinion, we are at the point of no return.... ;-)

steved.
 

  reply	other threads:[~2009-11-30 17:41 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
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 [this message]
     [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=4B1403CA.8050107@RedHat.com \
    --to=steved@redhat.com \
    --cc=chuck.lever@oracle.com \
    --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