sunrpc: simplify do_cache_clean
authorJ. Bruce Fields <bfields@redhat.com>
Mon, 21 Sep 2020 13:45:35 +0000 (09:45 -0400)
committerJ. Bruce Fields <bfields@redhat.com>
Fri, 25 Sep 2020 22:02:02 +0000 (18:02 -0400)
Is it just me, or is the logic written in a slightly convoluted way?

I find it a little easier to read this way.

Signed-off-by: J. Bruce Fields <bfields@redhat.com>
net/sunrpc/cache.c

index 9e68e44..2990a7a 100644 (file)
@@ -498,16 +498,17 @@ static int cache_clean(void)
  */
 static void do_cache_clean(struct work_struct *work)
 {
-       int delay = 5;
-       if (cache_clean() == -1)
-               delay = round_jiffies_relative(30*HZ);
+       int delay;
 
        if (list_empty(&cache_list))
-               delay = 0;
+               return;
+
+       if (cache_clean() == -1)
+               delay = round_jiffies_relative(30*HZ);
+       else
+               delay = 5;
 
-       if (delay)
-               queue_delayed_work(system_power_efficient_wq,
-                                  &cache_cleaner, delay);
+       queue_delayed_work(system_power_efficient_wq, &cache_cleaner, delay);
 }