Commit 074b1d12fe2500d7d453902f9266e6674b30d84c

Authored by Trond Myklebust
1 parent 6926afd192

NFSv4: Change the default setting of the nfs4_disable_idmapping parameter

Now that the use of numeric uids/gids is officially sanctioned in
RFC3530bis, it is time to change the default here to 'enabled'.

By doing so, we ensure that NFSv4 copies the behaviour of NFSv3 when we're
using the default AUTH_SYS authentication (i.e. when the client uses the
numeric uids/gids as authentication tokens), so that when new files are
created, they will appear to have the correct user/group.
It also fixes a number of backward compatibility issues when migrating
from NFSv3 to NFSv4 on a platform where the server uses different uid/gid
mappings than the client.

Note also that this setting has been successfully tested against servers
that do not support numeric uids/gids at several Connectathon/Bakeathon
events at this point, and the fall back to using string names/groups has
been shown to work well in all those test cases.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

Showing 2 changed files with 12 additions and 7 deletions Side-by-side Diff

Documentation/kernel-parameters.txt
... ... @@ -1630,12 +1630,17 @@
1630 1630 The default is to return 64-bit inode numbers.
1631 1631  
1632 1632 nfs.nfs4_disable_idmapping=
1633   - [NFSv4] When set, this option disables the NFSv4
1634   - idmapper on the client, but only if the mount
1635   - is using the 'sec=sys' security flavour. This may
1636   - make migration from legacy NFSv2/v3 systems easier
1637   - provided that the server has the appropriate support.
1638   - The default is to always enable NFSv4 idmapping.
  1633 + [NFSv4] When set to the default of '1', this option
  1634 + ensures that both the RPC level authentication
  1635 + scheme and the NFS level operations agree to use
  1636 + numeric uids/gids if the mount is using the
  1637 + 'sec=sys' security flavour. In effect it is
  1638 + disabling idmapping, which can make migration from
  1639 + legacy NFSv2/v3 systems to NFSv4 easier.
  1640 + Servers that do not support this mode of operation
  1641 + will be autodetected by the client, and it will fall
  1642 + back to using the idmapper.
  1643 + To turn off this behaviour, set the value to '0'.
1639 1644  
1640 1645 nmi_debug= [KNL,AVR32,SH] Specify one or more actions to take
1641 1646 when a NMI is triggered.
... ... @@ -84,7 +84,7 @@
84 84 /*
85 85 * Turn off NFSv4 uid/gid mapping when using AUTH_SYS
86 86 */
87   -static int nfs4_disable_idmapping = 0;
  87 +static int nfs4_disable_idmapping = 1;
88 88  
89 89 /*
90 90 * RPC cruft for NFS