]> git.michaelhowe.org Git - packages/o/openafs.git/commit
libafs: Fix second pass in ShakeLooseVCaches
authorMarc Dionne <marc.c.dionne@gmail.com>
Fri, 12 Oct 2012 20:31:24 +0000 (16:31 -0400)
committerDerrick Brashear <shadow@your-file-system.com>
Thu, 18 Oct 2012 09:32:19 +0000 (02:32 -0700)
commit2aab481dfa6416ff562d1a78e4cffda3acf1ec93
tree3dab91ae14fee483733c6561686ec411e00c903e
parent0506af9c058e22e3475f7e152c022571c0823253
libafs: Fix second pass in ShakeLooseVCaches

Commit 3105c7ff introduced a two phase process for reclaiming
vcache entries.  First go through the list and do what's possible
without sleeping (skipping aliased dentries on Linux), then do
a second pass only if necessary, allowing sleeping.

Unfortunately the test for the end of the VLRU scan is incorrect
and can never trigger, so this second pass was effectively disabled
and any code that is conditional on defersleep=1 was never
exercised.  The code to start the second scan also has issues.

Fix the end of VLRU test, and also correctly set the variables
needed to restart the scan.

Change-Id: I8034cd3b79aab4f2976ab2559c13c102126480d7
Reviewed-on: http://gerrit.openafs.org/8234
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
(cherry picked from commit a7828d50a82384e6d0fb0ad5b5a702f768029581)
Reviewed-on: http://gerrit.openafs.org/8247
src/afs/afs_vcache.c