Server pNFS issues
From Linux NFS
This is a list of what must be done before considering the linux pNFS server implementation to be minimally acceptable.
First, see Server 4.0 and 4.1 issues for prerequisites.
This is just a starting point; we need to make this a more comprehensive list:
This is work that must be completed before we can consider the implementation minimally acceptable.
Tracking layout recalls
We need to keep a list of layout recalls not yet returned and ensure that we take appropriate action when a recall goes for more than a grace period without a corresponding layout return from the client.
Not needed immediately
This is work that may still be a high priority, but that we think we can get away with ignoring for now, without compromising the correctness of the basic implementation.
data server stateid enforcement
The spec requires the data servers to check stateid's and reject IO on stateid's that are not current. (XXX: add spec reference) Implementing this correctly requires an MDS-to-DS protocol.
As far as we can tell, the main reason for this is for correct implementation of mandatory locks: mandatory posix locks and share locks. We don't support mandatory posix locks. We do provide some support for share locks, but it is currently imperfect, and fixing it is not a high priority.
XXX: consider just revoking layouts in presence of DENY locks.