Add a VM_BUG_ON to catch any illegal value from the shrinkers. It's a potential bug if scan_objects returns a negative other than -1 and would lead to undefined behaviour.
Cc: Glauber Costa <[email protected]> Cc: Dave Chinner <[email protected]> Cc: Andrew Morton <[email protected]> Cc: Hugh Dickins <[email protected]> Cc: Greg Kroah-Hartman <[email protected]> Signed-off-by: Oskar Andero <[email protected]> --- mm/vmscan.c | 1 + 1 file changed, 1 insertion(+) diff --git a/mm/vmscan.c b/mm/vmscan.c index 6bac41e..63fec86 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -293,6 +293,7 @@ shrink_slab_one(struct shrinker *shrinker, struct shrink_control *shrinkctl, ret = shrinker->scan_objects(shrinker, shrinkctl); if (ret == -1) break; + VM_BUG_ON(ret < -1); freed += ret; count_vm_events(SLABS_SCANNED, nr_to_scan); -- 1.8.1.5 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

