kernel-hacking-2024-linux-s.../fs/nfsd
Jeff Layton 0cc11a61b8 nfsd: move blocked lock handling under a dedicated spinlock
Bruce was hitting some lockdep warnings in testing, showing that we
could hit a deadlock with the new CB_NOTIFY_LOCK handling, involving a
rather complex situation involving four different spinlocks.

The crux of the matter is that we end up taking the nn->client_lock in
the lm_notify handler. The simplest fix is to just declare a new
per-nfsd_net spinlock to protect the new CB_NOTIFY_LOCK structures.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
2016-10-24 16:51:21 -04:00
..
acl.h
auth.c cred: simpler, 1D supplementary groups 2016-10-07 18:46:30 -07:00
auth.h
blocklayout.c fs: Replace current_fs_time() with current_time() 2016-09-27 21:06:22 -04:00
blocklayoutxdr.c Highlights: 2016-08-04 19:59:06 -04:00
blocklayoutxdr.h
cache.h
current_stateid.h
export.c nfsd: allow nfsd to advertise multiple layout types 2016-07-15 15:31:32 -04:00
export.h nfsd: allow nfsd to advertise multiple layout types 2016-07-15 15:31:32 -04:00
fault_inject.c
flexfilelayout.c nfsd: don't set a FL_LAYOUT lease for flexfiles layouts 2016-09-16 16:15:52 -04:00
flexfilelayoutxdr.c nfsd: Add a super simple flex file server 2016-07-13 15:40:48 -04:00
flexfilelayoutxdr.h nfsd: Add a super simple flex file server 2016-07-13 15:40:48 -04:00
idmap.h
Kconfig xfs: abstract block export operations from nfsd layouts 2016-07-15 15:31:29 -04:00
lockd.c
Makefile nfsd: Add a super simple flex file server 2016-07-13 15:40:48 -04:00
netns.h nfsd: move blocked lock handling under a dedicated spinlock 2016-10-24 16:51:21 -04:00
nfs2acl.c
nfs3acl.c
nfs3proc.c
nfs3xdr.c
nfs4acl.c
nfs4callback.c nfsd: plumb in a CB_NOTIFY_LOCK operation 2016-09-26 15:20:35 -04:00
nfs4idmap.c
nfs4layouts.c nfsd: don't set a FL_LAYOUT lease for flexfiles layouts 2016-09-16 16:15:52 -04:00
nfs4proc.c NFSD: Implement the COPY call 2016-10-07 14:54:25 -04:00
nfs4recover.c
nfs4state.c nfsd: move blocked lock handling under a dedicated spinlock 2016-10-24 16:51:21 -04:00
nfs4xdr.c NFSD: Implement the COPY call 2016-10-07 14:54:25 -04:00
nfscache.c
nfsctl.c nfsd: randomize SETCLIENTID reply to help distinguish servers 2016-09-26 15:20:38 -04:00
nfsd.h nfsd: implement machine credential support for some operations 2016-07-13 15:32:47 -04:00
nfsfh.c nfsd: check d_can_lookup in fh_verify of directories 2016-08-04 17:11:48 -04:00
nfsfh.h
nfsproc.c Some RDMA work and some good bugfixes, and two new features that could 2016-10-13 21:04:42 -07:00
nfssvc.c NFSD: fix corruption in notifier registration 2016-09-26 14:17:45 -04:00
nfsxdr.c nfsd: Fix some indent inconsistancy 2016-07-13 15:53:41 -04:00
pnfs.h nfsd: don't set a FL_LAYOUT lease for flexfiles layouts 2016-09-16 16:15:52 -04:00
state.h nfsd: add a LRU list for blocked locks 2016-09-26 15:20:36 -04:00
stats.c
stats.h
trace.c
trace.h
vfs.c NFSD: Implement the COPY call 2016-10-07 14:54:25 -04:00
vfs.h NFSD: Implement the COPY call 2016-10-07 14:54:25 -04:00
xdr.h
xdr3.h
xdr4.h NFSD: Implement the COPY call 2016-10-07 14:54:25 -04:00
xdr4cb.h nfsd: plumb in a CB_NOTIFY_LOCK operation 2016-09-26 15:20:35 -04:00