]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
afs: fs getcacheparms miscounts zero-length dcaches
authorMark Vitale <mvitale@sinenomine.net>
Tue, 12 Jan 2016 22:50:36 +0000 (17:50 -0500)
committerBenjamin Kaduk <kaduk@mit.edu>
Sun, 11 Dec 2016 21:53:33 +0000 (16:53 -0500)
When fs getcacheparms is issued with the -excessive option, it
tabulates all in-memory dcaches ("DCentries") by size.

dcaches with validPos == 0 were being tabulated in the 4k-16k bucket.

Fix the first comparison in the 'sieve' so these dcaches will be counted
in the correct 0-4k bucket instead.

Introduced by commit 176c2fddb95ced6c13e04e7492fc09b5551f273c

Change-Id: I60acb0f115dad9f7951f0b17e5b3e37dc94321b9
Reviewed-on: https://gerrit.openafs.org/12346
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
src/afs/afs_pioctl.c

index 6d5b7ccec42a0c045be1bc44012ec7971d2174e1..3d153251a26d67951bbf7b5044aa9a67c728a901 100644 (file)
@@ -2953,7 +2953,7 @@ DECL_PIOCTL(PGetCacheSize)
            if (tdc){
                results[9]++;
                size = tdc->validPos;
-               if ( 0 < size && size < (1<<12) ) results[10]++;
+               if ( 0 <= size && size < (1<<12) ) results[10]++;
                else if (size < (1<<14) ) results[11]++;
                else if (size < (1<<16) ) results[12]++;
                else if (size < (1<<18) ) results[13]++;