freebsd-src/sys/fs
Rick Macklem 8f4a5fc6bc nfscl: Do not call nfscl_hasexpired() for NFSv4.1/4.2
Commit 981ef32230 enabled marking of potentially bad
session slots when an RPC is interrupted if the "intr"
mount option is used.  As such, it no longer makes
sense to call nfscl_hasexpired() for I/O operations that
reply NFSERR_BADSTATEID for NFSv4.1/4.2, which does a full
recovery of NFSv4 open state, destroying all byte range locks.
Recovery of open state should not be usually needed, since
the session slot has been marked potentially bad and,
although opens for the process that has been terminated via
a signal may be broken, locks for other processes will still
be valid.

This patch disables calls to nfscl_hasexpired for NFSv4.1/4.2
mounts, when I/O RPCs receive NFSERR_BADSTATEID replies.
It does not affect the behaviour of NFSv4.0 mounts nor
hard (non "intr") mounts.

PR: 260011
MFC after:	2 weeks
2022-07-10 13:56:38 -07:00
..
autofs vfs: remove cn_thread 2021-10-11 13:21:47 +00:00
cd9660 vfs: NDFREE(&nd, NDF_ONLY_PNBUF) -> NDFREE_PNBUF(&nd) 2022-03-24 10:20:51 +00:00
cuse cuse(3): Remove PAGE_SIZE from libcuse. 2022-06-25 12:01:59 +02: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 fs: fix a few common typos in source code comments 2022-02-06 13:48:31 +01:00
ext2fs ext2: plug a set-but-not-used var 2022-04-19 12:45:57 +00:00
fdescfs fdescfs: allow chown/utime etc on fdescfs fd for underlying files opened with O_PATH 2022-06-06 22:27:36 +03:00
fifofs fifos: delegate unhandled kqueue filters to underlying filesystem 2021-10-12 02:43:07 -05:00
fuse fusefs: handle evil servers that return illegal inode numbers 2022-05-12 14:32:26 -06:00
mntfs mntfs: lock mntfs pseudo devfs vnode properly 2021-11-13 01:00:41 +02:00
msdosfs vfs: NDFREE(&nd, NDF_ONLY_PNBUF) -> NDFREE_PNBUF(&nd) 2022-03-24 10:20:51 +00:00
nfs nfscl: Enable detection of bad session slots 2022-07-10 13:33:19 -07:00
nfsclient nfscl: Do not call nfscl_hasexpired() for NFSv4.1/4.2 2022-07-10 13:56:38 -07:00
nfsserver nfscl: Add optional support for slots marked bad 2022-07-09 14:43:16 -07:00
nullfs null_vptocnp(): busy nullfs mp instead of refing it 2022-06-14 10:32:45 +03:00
procfs sysent: Get rid of bogus sys/sysent.h include. 2022-05-28 20:52:17 +03:00
pseudofs pseudofs: Destroy vncache hashtbl on pseudofs module unload. 2021-12-09 21:41:08 +00:00
smbfs smbfs: Remove unused variable. 2022-04-07 17:01:28 -07:00
tmpfs insmntque1(): remove useless arguments 2022-01-31 16:49:08 +02:00
udf vfs: NDFREE(&nd, NDF_ONLY_PNBUF) -> NDFREE_PNBUF(&nd) 2022-03-24 10:20:51 +00:00
unionfs unionfs: Use __diagused for a variable only used in KASSERT(). 2022-04-13 16:08:20 -07:00