Skip to content

Commit 3826909

Browse files
joelagnelpaulmckrcu
authored andcommitted
rcu/kfree: Fix kfree_rcu_shrink_count() return value
As per the comments in include/linux/shrinker.h, .count_objects callback should return the number of freeable items, but if there are no objects to free, SHRINK_EMPTY should be returned. The only time 0 is returned should be when we are unable to determine the number of objects, or the cache should be skipped for another reason. Signed-off-by: Joel Fernandes (Google) <[email protected]> Reviewed-by: Uladzislau Rezki (Sony) <[email protected]> Signed-off-by: Paul E. McKenney <[email protected]>
1 parent 093590c commit 3826909

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

kernel/rcu/tree.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3372,7 +3372,7 @@ kfree_rcu_shrink_count(struct shrinker *shrink, struct shrink_control *sc)
33723372
atomic_set(&krcp->backoff_page_cache_fill, 1);
33733373
}
33743374

3375-
return count;
3375+
return count == 0 ? SHRINK_EMPTY : count;
33763376
}
33773377

33783378
static unsigned long

0 commit comments

Comments
 (0)