All of lore.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 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.