RFC: Use of VOP_ALLOCATE() by NFSV4.2 nfsd

From: Rick Macklem <rmacklem_at_uoguelph.ca>
Date: Sun, 10 Oct 2021 01:11:47 UTC
Hi,

I ran into an issue this week during the nfsv4@ietf.org's testing event.
UFS - supports VOP_ALLOCATE() by using vop_stdallocate().
ZFS - just return EINVAL for VOP_ALLOCATE().

An NFSv4.2 server can either support Allocate or not, but it has to be
for all exported file systems.

This leads me to a couple of questions:
- Is there a good reason for not using vop_stdallocate() for ZFS?
- Should I try and support both file system types via vop_stdallocate()
  or not support Allocate at all?

Btw, as a bit of an aside, "cc" uses posix_fallocate() and in weird ways,
such as offset=0, len=1. Why, I have no idea?

Thanks in advance for any comments, rick