]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - mm/vmscan.c
mm: vmscan: fix misused nr_reclaimed in shrink_mem_cgroup_zone()
[mv-sheeva.git] / mm / vmscan.c
index 61a66881235d44e4370759e5a7358047b3df8584..8dfa59866af23748336c3d26c0470b8b6ca19857 100644 (file)
@@ -2112,7 +2112,12 @@ restart:
                 * with multiple processes reclaiming pages, the total
                 * freeing target can get unreasonably large.
                 */
-               if (nr_reclaimed >= nr_to_reclaim && priority < DEF_PRIORITY)
+               if (nr_reclaimed >= nr_to_reclaim)
+                       nr_to_reclaim = 0;
+               else
+                       nr_to_reclaim -= nr_reclaimed;
+
+               if (!nr_to_reclaim && priority < DEF_PRIORITY)
                        break;
        }
        blk_finish_plug(&plug);