]> git.baikalelectronics.ru Git - kernel.git/commitdiff
sunrpc: fix expiry of auth creds
authorDan Aloni <dan.aloni@vastdata.com>
Mon, 4 Jul 2022 12:56:57 +0000 (15:56 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 Aug 2022 09:18:22 +0000 (11:18 +0200)
commit d45302b3d65e4fbba1a00d020cdcce3a8ba137f3 upstream.

Before this commit, with a large enough LRU of expired items (100), the
loop skipped all the expired items and was entirely ineffectual in
trimming the LRU list.

Fixes: ccebcd94652a ('SUNRPC: Clean up the AUTH cache code')
Signed-off-by: Dan Aloni <dan.aloni@vastdata.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/sunrpc/auth.c

index cdb05b48de4498b59bebab11c812cb88f64e158c..e8fa21ad06a071d19c3bea6f594fa9272df3c39f 100644 (file)
@@ -494,7 +494,7 @@ rpcauth_prune_expired(struct list_head *free, int nr_to_scan)
                 * Enforce a 60 second garbage collection moratorium
                 * Note that the cred_unused list must be time-ordered.
                 */
-               if (!time_in_range(cred->cr_expire, expired, jiffies))
+               if (time_in_range(cred->cr_expire, expired, jiffies))
                        continue;
                if (!rpcauth_unhash_cred(cred))
                        continue;