diff options
Diffstat (limited to 'mm')
| -rw-r--r-- | mm/vmscan.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/mm/vmscan.c b/mm/vmscan.c index a85a261bf8f9..866ab27c52a5 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c | |||
| @@ -1196,13 +1196,17 @@ static unsigned long isolate_lru_pages(unsigned long nr_to_scan, | |||
| 1196 | break; | 1196 | break; |
| 1197 | 1197 | ||
| 1198 | if (__isolate_lru_page(cursor_page, mode, file) == 0) { | 1198 | if (__isolate_lru_page(cursor_page, mode, file) == 0) { |
| 1199 | unsigned int isolated_pages; | ||
| 1200 | |||
| 1199 | mem_cgroup_lru_del(cursor_page); | 1201 | mem_cgroup_lru_del(cursor_page); |
| 1200 | list_move(&cursor_page->lru, dst); | 1202 | list_move(&cursor_page->lru, dst); |
| 1201 | nr_taken += hpage_nr_pages(cursor_page); | 1203 | isolated_pages = hpage_nr_pages(cursor_page); |
| 1202 | nr_lumpy_taken++; | 1204 | nr_taken += isolated_pages; |
| 1205 | nr_lumpy_taken += isolated_pages; | ||
| 1203 | if (PageDirty(cursor_page)) | 1206 | if (PageDirty(cursor_page)) |
| 1204 | nr_lumpy_dirty++; | 1207 | nr_lumpy_dirty += isolated_pages; |
| 1205 | scan++; | 1208 | scan++; |
| 1209 | pfn += isolated_pages - 1; | ||
| 1206 | } else { | 1210 | } else { |
| 1207 | /* | 1211 | /* |
| 1208 | * Check if the page is freed already. | 1212 | * Check if the page is freed already. |
