K 10 svn:author V 7 git2svn K 8 svn:date V 27 2022-05-20T21:02:43.761750Z K 7 svn:log V 810 nfsd: Fix handling of Open/Create for the pNFS server When the MDS of a pNFS service receives an Open/Create and the file already exists, it must do a Setattr of size == 0. Without this patch, this was eroneously done via a VOP_SETAATR() call, which would set the length of the MDS file to 0 (which is already is, since all data lives on the DSs). This patch fixes the problem by doing a nfsvno_setattr() instead of VOP_SETATTR(), which knows to do a proxied Setattr on the DSs. For a non-pNFS server, the change has no effect, since nfsvno_setattr() only does a VOP_SETATTR() for that case. This was found during a recent IETF NFSv4 testing event. (cherry picked from commit f32bf50d43be1e898cebf751ce749b07d1301b8f) Git Hash: d5c176ad6a7b0cd78e3b893284b292e18ecb804f Git Author: rmacklem@FreeBSD.org END