]> git.baikalelectronics.ru Git - kernel.git/commit
nfsd: skip subsequent UMH "create" operations after the first one for v4.0 clients
authorJeff Layton <jlayton@primarydata.com>
Fri, 12 Sep 2014 20:40:22 +0000 (16:40 -0400)
committerJ. Bruce Fields <bfields@redhat.com>
Wed, 17 Sep 2014 20:33:17 +0000 (16:33 -0400)
commit063e726c61d987c02819cd0f4c272c9e411b909f
tree49d4f1ea598a80c4c1c40fe45b22e3ca5b23b377
parent92dddb5c40464eefad745bcfbac55f1767a37fb3
nfsd: skip subsequent UMH "create" operations after the first one for v4.0 clients

In the case of v4.0 clients, we may call into the "create" client
tracking operation multiple times (once for each openowner). Upcalling
for each one of those is wasteful and slow however. We can skip doing
further "create" operations after the first one if we know that one has
already been done.

v4.1+ clients generally only call into this function once (on
RECLAIM_COMPLETE), and we can't skip upcalling on the create even if the
STABLE bit is set. Doing so would make it impossible for nfsdcltrack to
lift the grace period early since the timestamp has a different meaning
in the case where the client is expected to issue a RECLAIM_COMPLETE.

Signed-off-by: Jeff Layton <jlayton@primarydata.com>
fs/nfsd/nfs4recover.c