Re: inux-next: Tree for July 1
From: Trond Myklebust <hidden>
Date: 2008-07-02 17:15:29
Also in:
linux-nfs, lkml
On Wed, 2008-07-02 at 10:34 -0400, Chuck Lever wrote:
On Tue, Jul 1, 2008 at 8:49 PM, Trond Myklebust [off-list ref] wrote:quoted
On Tue, 2008-07-01 at 22:36 +0200, Rafael J. Wysocki wrote:quoted
I can't mount NFS shares with this kernel. I get something of this sort in dmesg and it seems to be 100% reproducible: [ 314.058858] RPC: Registered udp transport module. [ 314.058863] RPC: Registered tcp transport module. [ 314.490970] RPC: transport (0) not supported [ 319.246987] __ratelimit: 23 messages suppressedDoes this patch fix the problem for you? ----------------------------------------------------------------------------------- From: Trond Myklebust <redacted> NFS: Fix the mount protocol defaults for binary mounts Signed-off-by: Trond Myklebust <redacted> --- fs/nfs/super.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)diff --git a/fs/nfs/super.c b/fs/nfs/super.c index e09b1c2..85fbb98 100644 --- a/fs/nfs/super.c +++ b/fs/nfs/super.c@@ -1575,6 +1575,7 @@ static int nfs_validate_mount_data(void *options, if (!(data->flags & NFS_MOUNT_TCP)) args->nfs_server.protocol = XPRT_TRANSPORT_UDP; + nfs_set_transport_defaults(args);nfs_set_transport_defaults() is overkill for the legacy mount path. The bug is that the logic here assumes that nfs_server.protocol already has the default value of XPRT_TRANSPORT_TCP, but commit 8b59ea3c removed that default. The correct fix is to add args->nfs_server.protocol = XPRT_TRANSPORT_TCP; just before the 'if' statement. We should fold that into 8b59ea3c to preserve bisectability.
NACK. You still need to set the appropriate retrans and timeo defaults. -- Trond Myklebust Linux NFS client maintainer NetApp Trond.Myklebust@netapp.com www.netapp.com