Skip to content
  • Rick Macklem's avatar
    nfsd: Disable the NFSv4.2 Allocate operation by default · dfe887b7
    Rick Macklem authored
    Some exported file systems, such as ZFS ones, cannot do VOP_ALLOCATE().
    Since an NFSv4.2 server must either support the Allocate operation for
    all file systems or not support it at all, define a sysctl called
    vfs.nfsd.enable_v42allocate to enable the Allocate operation.
    This sysctl is false by default and can only be set true if all
    exported file systems (or all DSs for a pNFS server) can perform
    VOP_ALLOCATE().
    
    Unfortunately, there is no way to know if a ZFS file system will
    be exported once the nfsd is operational, even if there are none
    exported when the nfsd is started up, so enabling Allocate must
    be done manually for a server configuration.
    
    This problem was detected during a recent NFSv4 interoperability
    testing event held by the IETF working group.
    
    MFC after:	2 weeks
    dfe887b7