linux/fs/nfsd
Jeff Layton 68ef3bc316 nfsd: remove blocked locks on client teardown
We had some reports of panics in nfsd4_lm_notify, and that showed a
nfs4_lockowner that had outlived its so_client.

Ensure that we walk any leftover lockowners after tearing down all of
the stateids, and remove any blocked locks that they hold.

With this change, we also don't need to walk the nbl_lru on nfsd_net
shutdown, as that will happen naturally when we tear down the clients.

Fixes: 76d348fadf (nfsd: have nfsd4_lock use blocking locks for v4.1+ locks)
Reported-by: Frank Sorenson <fsorenso@redhat.com>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Cc: stable@vger.kernel.org # 4.9
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
2018-03-19 16:37:21 -04:00
..
Kconfig
Makefile
acl.h
auth.c nfsd: auth: Fix gid sorting when rootsquash enabled 2018-01-22 20:13:07 -08:00
auth.h
blocklayout.c
blocklayoutxdr.c
blocklayoutxdr.h
cache.h
current_stateid.h
export.c NFSD: make cache_detail structures const 2017-11-27 16:45:11 -05:00
export.h
fault_inject.c
flexfilelayout.c
flexfilelayoutxdr.c
flexfilelayoutxdr.h
idmap.h
lockd.c
netns.h race of nfsd inetaddr notifiers vs nn->nfsd_serv change 2017-11-27 16:45:11 -05:00
nfs2acl.c
nfs3acl.c
nfs3proc.c
nfs3xdr.c nfsd: store stat times in fill_pre_wcc() instead of inode times 2018-02-08 13:40:17 -05:00
nfs4acl.c
nfs4callback.c
nfs4idmap.c NFSD: make cache_detail structures const 2017-11-27 16:45:11 -05:00
nfs4layouts.c
nfs4proc.c nfsd: return RESOURCE not GARBAGE_ARGS on too many ops 2018-02-08 13:40:16 -05:00
nfs4recover.c
nfs4state.c nfsd: remove blocked locks on client teardown 2018-03-19 16:37:21 -04:00
nfs4xdr.c NFSD: hide unused svcxdr_dupstr() 2018-02-08 13:40:17 -05:00
nfscache.c
nfsctl.c race of nfsd inetaddr notifiers vs nn->nfsd_serv change 2017-11-27 16:45:11 -05:00
nfsd.h
nfsfh.c
nfsfh.h This request is late, apologies. 2018-02-08 15:18:32 -08:00
nfsproc.c
nfssvc.c race of nfsd inetaddr notifiers vs nn->nfsd_serv change 2017-11-27 16:45:11 -05:00
nfsxdr.c nfsd: encode stat->mtime for getattr instead of inode->i_mtime 2018-02-08 13:40:16 -05:00
pnfs.h
state.h
stats.c
stats.h
trace.c
trace.h
vfs.c
vfs.h
xdr.h
xdr3.h
xdr4.h
xdr4cb.h