Messages in this thread Patch in this message | | | From | Oskar Andero <> | Subject | [PATCH] mm: vmscan: add BUG_ON on illegal return values from scan_objects | Date | Mon, 20 May 2013 11:14:27 +0200 |
| |
Add a BUG_ON to catch any illegal value from the shrinkers. This fixes a potential bug if scan_objects returns a negative other than -1, which would lead to undefined behaviour.
Cc: Glauber Costa <glommer@openvz.org> Cc: Dave Chinner <dchinner@redhat.com> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Hugh Dickins <hughd@google.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Oskar Andero <oskar.andero@sonymobile.com> --- mm/vmscan.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/mm/vmscan.c b/mm/vmscan.c index 6bac41e..fbe6742 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; + BUG_ON(ret < -1); freed += ret; count_vm_events(SLABS_SCANNED, nr_to_scan); -- 1.8.1.5
| |