mm: compaction: trivial clean up in acct_isolated()
commit b9e84ac153 upstream.
Stable note: Not tracked in Bugzilla. This patch makes later patches
easier to apply but has no other impact.
acct_isolated of compaction uses page_lru_base_type which returns only
base type of LRU list so it never returns LRU_ACTIVE_ANON or
LRU_ACTIVE_FILE. In addtion, cc->nr_[anon|file] is used in only
acct_isolated so it doesn't have fields in conpact_control.
This patch removes fields from compact_control and makes clear function of
acct_issolated which counts the number of anon|file pages isolated.
Signed-off-by: Minchan Kim <minchan.kim@gmail.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Reviewed-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Reviewed-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Acked-by: Mel Gorman <mgorman@suse.de>
Acked-by: Rik van Riel <riel@redhat.com>
Reviewed-by: Michal Hocko <mhocko@suse.cz>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Mel Gorman <mgorman@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
4682e89d14
commit
f665a680f8
1 changed files with 5 additions and 13 deletions
|
|
@ -35,10 +35,6 @@ struct compact_control {
|
|||
unsigned long migrate_pfn; /* isolate_migratepages search base */
|
||||
bool sync; /* Synchronous migration */
|
||||
|
||||
/* Account for isolated anon and file pages */
|
||||
unsigned long nr_anon;
|
||||
unsigned long nr_file;
|
||||
|
||||
unsigned int order; /* order a direct compactor needs */
|
||||
int migratetype; /* MOVABLE, RECLAIMABLE etc */
|
||||
struct zone *zone;
|
||||
|
|
@ -223,17 +219,13 @@ static void isolate_freepages(struct zone *zone,
|
|||
static void acct_isolated(struct zone *zone, struct compact_control *cc)
|
||||
{
|
||||
struct page *page;
|
||||
unsigned int count[NR_LRU_LISTS] = { 0, };
|
||||
unsigned int count[2] = { 0, };
|
||||
|
||||
list_for_each_entry(page, &cc->migratepages, lru) {
|
||||
int lru = page_lru_base_type(page);
|
||||
count[lru]++;
|
||||
}
|
||||
list_for_each_entry(page, &cc->migratepages, lru)
|
||||
count[!!page_is_file_cache(page)]++;
|
||||
|
||||
cc->nr_anon = count[LRU_ACTIVE_ANON] + count[LRU_INACTIVE_ANON];
|
||||
cc->nr_file = count[LRU_ACTIVE_FILE] + count[LRU_INACTIVE_FILE];
|
||||
__mod_zone_page_state(zone, NR_ISOLATED_ANON, cc->nr_anon);
|
||||
__mod_zone_page_state(zone, NR_ISOLATED_FILE, cc->nr_file);
|
||||
__mod_zone_page_state(zone, NR_ISOLATED_ANON, count[0]);
|
||||
__mod_zone_page_state(zone, NR_ISOLATED_FILE, count[1]);
|
||||
}
|
||||
|
||||
/* Similar to reclaim, but different enough that they don't share logic */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue