--- fs/nfsserver/nfs_nfsdserv.c.sav2	2018-03-08 20:44:43.163080000 -0500
+++ fs/nfsserver/nfs_nfsdserv.c	2018-03-08 20:54:50.225719000 -0500
@@ -912,6 +912,15 @@ nfsrvd_write(struct nfsrv_descript *nd, 
 	}
 
 	/*
+	 * If nfs_async is non-zero, pretend that all writes are being
+	 * done NFSWRITE_UNSTABLE.  Doing this violates the RFCs and runs the
+	 * risk of data loss/corruption when the NFS server crashes.
+	 *
+	 */
+	if (nfs_async != 0 && (nd->nd_flag & (ND_NFSV3 | ND_NFSV4)) != 0)
+		stable = NFSWRITE_UNSTABLE;
+
+	/*
 	 * For NFS Version 2, it is not obvious what a write of zero length
 	 * should do, but I might as well be consistent with Version 3,
 	 * which is to return ok so long as there are no permission problems.
