nfsd: don't halt scanning the DRC LRU list when there's an RC_INPROG entry
authorJeff Layton <jlayton@primarydata.com>
Thu, 5 Jun 2014 13:45:00 +0000 (09:45 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 7 Jul 2014 01:54:14 +0000 (18:54 -0700)
commit548e6c6e202cb03f5bf5d79392fa4dcf1c1534cf
treec6d7fcb8c41526486bb837dbbd2c3e555e6df7d8
parent03e9dd7847298ea8328b914de8f4777e238cdb77
nfsd: don't halt scanning the DRC LRU list when there's an RC_INPROG entry

commit 1b19453d1c6abcfa7c312ba6c9f11a277568fc94 upstream.

Currently, the DRC cache pruner will stop scanning the list when it
hits an entry that is RC_INPROG. It's possible however for a call to
take a *very* long time. In that case, we don't want it to block other
entries from being pruned if they are expired or we need to trim the
cache to get back under the limit.

Fix the DRC cache pruner to just ignore RC_INPROG entries.

Signed-off-by: Jeff Layton <jlayton@primarydata.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/nfsd/nfscache.c