diff options
author | J. Bruce Fields <bfields@redhat.com> | 2013-11-19 09:50:48 -0500 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2013-12-10 20:35:57 -0500 |
commit | 4bd8eabc29e17d9b29cee16077e1621e209a1b27 (patch) | |
tree | 91f3faf95e170410697488b49169f8fd18b269e5 /Documentation/filesystems | |
parent | 781c2a5a5f75eacc04663aced0f0f1a648d4f308 (diff) |
nfsd4: update 4.1 nfsd status documentation
This has gone a little stale.
Reported-by: Christoph Hellwig <hch@infradead.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'Documentation/filesystems')
-rw-r--r-- | Documentation/filesystems/nfs/nfs41-server.txt | 42 |
1 files changed, 14 insertions, 28 deletions
diff --git a/Documentation/filesystems/nfs/nfs41-server.txt b/Documentation/filesystems/nfs/nfs41-server.txt index 01c2db769791..b930ad087780 100644 --- a/Documentation/filesystems/nfs/nfs41-server.txt +++ b/Documentation/filesystems/nfs/nfs41-server.txt | |||
@@ -5,11 +5,11 @@ Server support for minorversion 1 can be controlled using the | |||
5 | by reading this file will contain either "+4.1" or "-4.1" | 5 | by reading this file will contain either "+4.1" or "-4.1" |
6 | correspondingly. | 6 | correspondingly. |
7 | 7 | ||
8 | Currently, server support for minorversion 1 is disabled by default. | 8 | Currently, server support for minorversion 1 is enabled by default. |
9 | It can be enabled at run time by writing the string "+4.1" to | 9 | It can be disabled at run time by writing the string "-4.1" to |
10 | the /proc/fs/nfsd/versions control file. Note that to write this | 10 | the /proc/fs/nfsd/versions control file. Note that to write this |
11 | control file, the nfsd service must be taken down. Use your user-mode | 11 | control file, the nfsd service must be taken down. You can use rpc.nfsd |
12 | nfs-utils to set this up; see rpc.nfsd(8) | 12 | for this; see rpc.nfsd(8). |
13 | 13 | ||
14 | (Warning: older servers will interpret "+4.1" and "-4.1" as "+4" and | 14 | (Warning: older servers will interpret "+4.1" and "-4.1" as "+4" and |
15 | "-4", respectively. Therefore, code meant to work on both new and old | 15 | "-4", respectively. Therefore, code meant to work on both new and old |
@@ -29,29 +29,6 @@ are still under development out of tree. | |||
29 | See http://wiki.linux-nfs.org/wiki/index.php/PNFS_prototype_design | 29 | See http://wiki.linux-nfs.org/wiki/index.php/PNFS_prototype_design |
30 | for more information. | 30 | for more information. |
31 | 31 | ||
32 | The current implementation is intended for developers only: while it | ||
33 | does support ordinary file operations on clients we have tested against | ||
34 | (including the linux client), it is incomplete in ways which may limit | ||
35 | features unexpectedly, cause known bugs in rare cases, or cause | ||
36 | interoperability problems with future clients. Known issues: | ||
37 | |||
38 | - gss support is questionable: currently mounts with kerberos | ||
39 | from a linux client are possible, but we aren't really | ||
40 | conformant with the spec (for example, we don't use kerberos | ||
41 | on the backchannel correctly). | ||
42 | - We do not support SSV, which provides security for shared | ||
43 | client-server state (thus preventing unauthorized tampering | ||
44 | with locks and opens, for example). It is mandatory for | ||
45 | servers to support this, though no clients use it yet. | ||
46 | |||
47 | In addition, some limitations are inherited from the current NFSv4 | ||
48 | implementation: | ||
49 | |||
50 | - Incomplete delegation enforcement: if a file is renamed or | ||
51 | unlinked by a local process, a client holding a delegation may | ||
52 | continue to indefinitely allow opens of the file under the old | ||
53 | name. | ||
54 | |||
55 | The table below, taken from the NFSv4.1 document, lists | 32 | The table below, taken from the NFSv4.1 document, lists |
56 | the operations that are mandatory to implement (REQ), optional | 33 | the operations that are mandatory to implement (REQ), optional |
57 | (OPT), and NFSv4.0 operations that are required not to implement (MNI) | 34 | (OPT), and NFSv4.0 operations that are required not to implement (MNI) |
@@ -169,6 +146,16 @@ NS*| CB_WANTS_CANCELLED | OPT | FDELG, | Section 20.10 | | |||
169 | 146 | ||
170 | Implementation notes: | 147 | Implementation notes: |
171 | 148 | ||
149 | SSV: | ||
150 | * The spec claims this is mandatory, but we don't actually know of any | ||
151 | implementations, so we're ignoring it for now. The server returns | ||
152 | NFS4ERR_ENCR_ALG_UNSUPP on EXCHANGE_ID, which should be future-proof. | ||
153 | |||
154 | GSS on the backchannel: | ||
155 | * Again, theoretically required but not widely implemented (in | ||
156 | particular, the current Linux client doesn't request it). We return | ||
157 | NFS4ERR_ENCR_ALG_UNSUPP on CREATE_SESSION. | ||
158 | |||
172 | DELEGPURGE: | 159 | DELEGPURGE: |
173 | * mandatory only for servers that support CLAIM_DELEGATE_PREV and/or | 160 | * mandatory only for servers that support CLAIM_DELEGATE_PREV and/or |
174 | CLAIM_DELEG_PREV_FH (which allows clients to keep delegations that | 161 | CLAIM_DELEG_PREV_FH (which allows clients to keep delegations that |
@@ -176,7 +163,6 @@ DELEGPURGE: | |||
176 | now. | 163 | now. |
177 | 164 | ||
178 | EXCHANGE_ID: | 165 | EXCHANGE_ID: |
179 | * only SP4_NONE state protection supported | ||
180 | * implementation ids are ignored | 166 | * implementation ids are ignored |
181 | 167 | ||
182 | CREATE_SESSION: | 168 | CREATE_SESSION: |