Documentation/filesystems/nfs/nfs41-server.rst

Source file repositories/reference/linux-study-clean/Documentation/filesystems/nfs/nfs41-server.rst

File Facts

System
Linux kernel
Corpus path
Documentation/filesystems/nfs/nfs41-server.rst
Extension
.rst
Size
22453 bytes
Lines
257
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: documentation
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

=============================
NFSv4.1 Server Implementation
=============================

Server support for minorversion 1 can be controlled using the
/proc/fs/nfsd/versions control file.  The string output returned
by reading this file will contain either "+4.1" or "-4.1"
correspondingly.

Currently, server support for minorversion 1 is enabled by default.
It can be disabled at run time by writing the string "-4.1" to
the /proc/fs/nfsd/versions control file.  Note that to write this
control file, the nfsd service must be taken down.  You can use rpc.nfsd
for this; see rpc.nfsd(8).

(Warning: older servers will interpret "+4.1" and "-4.1" as "+4" and
"-4", respectively.  Therefore, code meant to work on both new and old
kernels must turn 4.1 on or off *before* turning support for version 4
on or off; rpc.nfsd does this correctly.)

The NFSv4 minorversion 1 (NFSv4.1) implementation in nfsd is based
on RFC 5661.

From the many new features in NFSv4.1 the current implementation
focuses on the mandatory-to-implement NFSv4.1 Sessions, providing
"exactly once" semantics and better control and throttling of the
resources allocated for each client.

The table below, taken from the NFSv4.1 document, lists
the operations that are mandatory to implement (REQ), optional
(OPT), and NFSv4.0 operations that are required not to implement (MNI)
in minor version 1.  The first column indicates the operations that
are not supported yet by the linux server implementation.

The OPTIONAL features identified and their abbreviations are as follows:

- **pNFS**	Parallel NFS
- **FDELG**	File Delegations
- **DDELG**	Directory Delegations

The following abbreviations indicate the linux server implementation status.

- **I**	Implemented NFSv4.1 operations.
- **NS**	Not Supported.
- **NS\***	Unimplemented optional feature.

Operations
==========

+-----------------------+----------------------+---------------------+---------------------------+----------------+
| Implementation status | Operation            | REQ,REC, OPT or NMI | Feature (REQ, REC or OPT) | Definition     |
+=======================+======================+=====================+===========================+================+
|                       | ACCESS               | REQ                 |                           | Section 18.1   |
+-----------------------+----------------------+---------------------+---------------------------+----------------+
| I                     | BACKCHANNEL_CTL      | REQ                 |                           | Section 18.33  |
+-----------------------+----------------------+---------------------+---------------------------+----------------+
| I                     | BIND_CONN_TO_SESSION | REQ                 |                           | Section 18.34  |
+-----------------------+----------------------+---------------------+---------------------------+----------------+
|                       | CLOSE                | REQ                 |                           | Section 18.2   |
+-----------------------+----------------------+---------------------+---------------------------+----------------+
|                       | COMMIT               | REQ                 |                           | Section 18.3   |
+-----------------------+----------------------+---------------------+---------------------------+----------------+
|                       | CREATE               | REQ                 |                           | Section 18.4   |
+-----------------------+----------------------+---------------------+---------------------------+----------------+
| I                     | CREATE_SESSION       | REQ                 |                           | Section 18.36  |
+-----------------------+----------------------+---------------------+---------------------------+----------------+
| NS*                   | DELEGPURGE           | OPT                 | FDELG (REQ)               | Section 18.5   |
+-----------------------+----------------------+---------------------+---------------------------+----------------+
|                       | DELEGRETURN          | OPT                 | FDELG,                    | Section 18.6   |
+-----------------------+----------------------+---------------------+---------------------------+----------------+

Annotation

Implementation Notes