HomeFreeBSD

nfsclient: Protest loudly when GETATTR responses are invalid

Description

nfsclient: Protest loudly when GETATTR responses are invalid

BROKEN NFS SERVER OR MIDDLEWARE: Certain WAN "accelerators" attempt to cache
NFS GETATTR traffic, but actually corrupt it (e.g., responding to requests
with attributes for totally different files).

Warn very verbosely when this is detected. Linux' NFS client has a similar
warning.

Adds a sysctl/tunable (vfs.nfs.fileid_maxwarnings) to configure the quantity
of warnings; default to 10. (Zero disables; -1 is unlimited.)

Adds a failpoint to aid in validating the warning / behavior with a
non-broken server. Use something like:

sysctl 'debug.fail_point.nfscl_force_fileid_warning=10%return(1)'

Reviewed by: rmacklem
Approved by: markj (mentor)
Sponsored by: EMC / Isilon Storage Division
Differential Revision: https://reviews.freebsd.org/D3304

Details

Provenance
cemAuthored on
Reviewer
rmacklem
Differential Revision
D3304: nfsclient: Protest loudly when GETATTR responses are invalid
Parents
rS286353: Pass SYNCHRONIZE CACHE command parameters to backends.
Branches
Unknown
Tags
Unknown