summaryrefslogtreecommitdiff
path: root/fs/nfsd/nfs4xdr.c
diff options
context:
space:
mode:
authorJeff Layton <jlayton@primarydata.com>2014-07-29 21:34:26 -0400
committerJ. Bruce Fields <bfields@redhat.com>2014-07-31 14:20:18 -0400
commit6b180f0b57af0295e8dc2602a7a4781241766340 (patch)
treecd27ba1d399d67714df6b3798f1512f2a3ef2504 /fs/nfsd/nfs4xdr.c
parent2d3f96689ffc757628c6d4038cacaaeb72a03345 (diff)
nfsd: Add reference counting to state owners
The way stateowners are managed today is somewhat awkward. They need to be explicitly destroyed, even though the stateids reference them. This will be particularly problematic when we remove the client_mutex. We may create a new stateowner and attempt to open a file or set a lock, and have that fail. In the meantime, another RPC may come in that uses that same stateowner and succeed. We can't have the first task tearing down the stateowner in that situation. To fix this, we need to change how stateowners are tracked altogether. Refcount them and only destroy them once all stateids that reference them have been destroyed. This patch starts by adding the refcounting necessary to do that. Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com> Signed-off-by: Jeff Layton <jlayton@primarydata.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/nfsd/nfs4xdr.c')
0 files changed, 0 insertions, 0 deletions