summaryrefslogtreecommitdiffstats
path: root/fs/nfsd/xdr4.h
diff options
context:
space:
mode:
authorJ. Bruce Fields <bfields@redhat.com>2019-06-19 12:43:11 -0400
committerJ. Bruce Fields <bfields@redhat.com>2019-07-03 17:52:50 -0400
commit89c905beccbbafa88490c8c4c35eaec5ce4c1329 (patch)
treee335b0c13b5527adcf17459bde3d0fd36aa3d68e /fs/nfsd/xdr4.h
parenta204f25e372d942245dc0fdccd12f5c16483bbc1 (diff)
downloadlinux-89c905beccbbafa88490c8c4c35eaec5ce4c1329.tar.gz
linux-89c905beccbbafa88490c8c4c35eaec5ce4c1329.tar.bz2
linux-89c905beccbbafa88490c8c4c35eaec5ce4c1329.zip
nfsd: allow forced expiration of NFSv4 clients
NFSv4 clients are automatically expired and all their locks removed if they don't contact the server for a certain amount of time (the lease period, 90 seconds by default). There can still be situations where that's not enough, so allow userspace to force expiry by writing "expire\n" to the new nfsd/client/#/ctl file. (The generic "ctl" name is because I expect we may want to allow other operations on clients in the future.) The write will not return until the client is expired and all of its locks and other state removed. The fault injection code also provides a way of expiring clients, but it fails if there are any in-progress RPC's referencing the client. Also, its method of selecting a client to expire is a little more primitive--it uses an IP address, which can't always uniquely specify an NFSv4 client. Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/nfsd/xdr4.h')
0 files changed, 0 insertions, 0 deletions