diff options
author | J. Bruce Fields | 2019-08-15 03:57:37 +0200 |
---|---|---|
committer | J. Bruce Fields | 2019-08-15 20:53:02 +0200 |
commit | dc46bba709cfb45e4b2d40cf45aaeacb82690504 (patch) | |
tree | 7fafbda8473a01d1f793735ac9ed4d1f03796887 /include/trace/events/cachefiles.h | |
parent | nfsd: fix dentry leak upon mkdir failure. (diff) | |
download | kernel-qcow2-linux-dc46bba709cfb45e4b2d40cf45aaeacb82690504.tar.gz kernel-qcow2-linux-dc46bba709cfb45e4b2d40cf45aaeacb82690504.tar.xz kernel-qcow2-linux-dc46bba709cfb45e4b2d40cf45aaeacb82690504.zip |
nfsd: use i_wrlock instead of rcu for nfsdfs i_private
synchronize_rcu() gets called multiple times each time a client is
destroyed. If the laundromat thread has a lot of clients to destroy,
the delay can be noticeable. This was causing pynfs test RENEW3 to
fail.
We could embed an rcu_head in each inode and do the kref_put in an rcu
callback. But simplest is just to take a lock here.
(I also wonder if the laundromat thread would be better replaced by a
bunch of scheduled work or timers or something.)
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'include/trace/events/cachefiles.h')
0 files changed, 0 insertions, 0 deletions