freebsd-dev/sys/fs
Rick Macklem ead50c94cb nfscl: Fix must_commit/writeverf handling for Direct I/O
Without this patch, the KASSERT(must_commit == 0,..) can be
triggered by the writeverf in the Direct I/O write reply changing.
This is not a situation that should cause a panic(). Correct
handling is to ignore the change in "writeverf" for Direct
I/O, since it is done with NFSWRITE_FILESYNC.

This patch modifies the semantics of the "must_commit"
argument slightly, allowing an initial value of 2 to indicate
that a change in "writeverf" should be ignored.
It also fixes the KASSERT()s.

This bug would affect few, since Direct I/O is not enabled
by default and "writeverf" rarely changes. Normally "writeverf"
only changes when a NFS server reboots, however I found the
bug when testing against a Linux 5.15.1 kernel nfsd, which
replied to a NFSWRITE_FILESYNC write with a "writeverf" of all
0x0 bytes.

MFC after:	2 weeks
2021-12-11 15:00:30 -08:00
..
autofs vfs: remove cn_thread 2021-10-11 13:21:47 +00:00
cd9660 vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
cuse Fix for loading cuse.ko via rc.d . Make sure we declare the cuse(3) 2020-10-23 08:44:53 +00:00
deadfs vn_open(): If the vnode is reclaimed during open(2), do not return error. 2021-02-12 03:02:20 +02:00
devfs vfs: add vop_stdadd_writecount_nomsync 2021-11-26 12:06:08 +00:00
ext2fs ext2: Check for e2fs_first_dblock in ext2_compute_sb_data() 2021-11-29 09:53:45 -08:00
fdescfs fdescfs: plug a set-but-not-unused var 2021-11-24 21:25:24 +00:00
fifofs fifos: delegate unhandled kqueue filters to underlying filesystem 2021-10-12 02:43:07 -05:00
fuse modules: increase MAXMODNAME and provide backward compat 2021-12-09 18:09:53 +00:00
mntfs mntfs: lock mntfs pseudo devfs vnode properly 2021-11-13 01:00:41 +02:00
msdosfs vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
nfs nfsd: Fix Verify for attributes like FilesAvail 2021-12-04 14:38:55 -08:00
nfsclient nfscl: Fix must_commit/writeverf handling for Direct I/O 2021-12-11 15:00:30 -08:00
nfsserver Revert "wpa: Import wpa_supplicant/hostapd commit 14ab4a816" 2021-12-02 14:45:04 -08:00
nullfs vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
procfs procfs_doprocfile(): simplify 2021-11-04 06:13:47 +02:00
pseudofs pseudofs: Destroy vncache hashtbl on pseudofs module unload. 2021-12-09 21:41:08 +00:00
smbfs vfs: remove cn_thread 2021-10-11 13:21:47 +00:00
tmpfs vfs: replace the MNTK_TEXT_REFS flag with VIRF_TEXT_REF 2021-11-27 23:07:25 +00:00
udf vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
unionfs unionfs: implement VOP_VPUT_PAIR 2021-12-07 16:20:02 -08:00