• Chuck Lever's avatar
    NFS: Revert NFSROOT default mount options · 4251c948
    Chuck Lever authored
    Marek Belisko <marek.belisko@gmail.com> reports that recent attempts
    to fix regressions in NFSROOT have broken his configuration:
    
    > After update from 2.6.38-rc8 to 2.6.38 is mounting rootfs over nfs not possible.
    > Log:
    > VFS: Mounted root (nfs filesystem) on device 0:14.
    > Freeing init memory: 132K
    > nfs: server 10.146.1.21 not responding, still trying
    > nfs: server 10.146.1.21 not responding, still trying
    >
    > This is never ending. I make short bisect (not too much commits
    > between versions)
    > and bad commit was reported: 53d47375
    >
    > NFS: NFSROOT should default to "proto=udp"
    >
    > I've tested on mini2440 board (DM9000, static IP).
    > Is there some missing option or something else to be checked?
    
    An examination of a network trace captured during the failure shows
    that the mount is actually succeeding, but that the client is not
    seeing READ replies larger than 16KB.  This could be a local packet
    filtering issue on the client, but we didn't troubleshoot this
    further because of the reported "git bisect" result.
    
    Last fall we removed the ad hoc mount option parser in
    fs/nfs/nfsroot.c in favor of using the main parser in fs/nfs/super.c
    (see commit 56463e50 "NFS: Use super.c for NFSROOT mount option
    parsing").  That commit changed the default NFSROOT mount options to
    be the same as those employed by user space mounts.
    
    As it turns out, these new default mount options are not tolerated by
    many embedded systems.  So far these problems have been due to
    specific behavior of certain embedded NICs.  The NFS community does
    not have such hardware on hand for running tests.
    
    Commit 53d47375 recently introduced a clean way to specify default
    mount options for NFSROOT, so we can now easily restore the
    traditional defaults for NFSROOT:
    
       vers=2,udp,rsize=4096,wsize=4096
    
    This should revert the new default NFSROOT mount options introduced
    with commit 56463e50.
    Tested-by: default avatarMarek Belisto <marek.belisto@open-nandra.com>
    Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
    Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
    4251c948
nfsroot.c 9.48 KB