Messages in this thread | | | Date | Fri, 25 Nov 2011 13:42:43 +0800 | From | Wang Sheng-Hui <> | Subject | Question about mm/compaction.c/acct_isolated: computing nr_anon, nr_file |
| |
Why does it double the number in line 233/234?
222/* Update the number of anon and file isolated pages in the zone */ 223static void acct_isolated(struct zone *zone, struct compact_control *cc) 224{ 225 struct page *page; 226 unsigned int count[NR_LRU_LISTS] = { 0, }; 227 228 list_for_each_entry(page, &cc->migratepages, lru) { 229 int lru = page_lru_base_type(page); 230 count[lru]++; 231 } 232 233 cc->nr_anon = count[LRU_ACTIVE_ANON] + count[LRU_INACTIVE_ANON]; 234 cc->nr_file = count[LRU_ACTIVE_FILE] + count[LRU_INACTIVE_FILE]; 235 __mod_zone_page_state(zone, NR_ISOLATED_ANON, cc->nr_anon); 236 __mod_zone_page_state(zone, NR_ISOLATED_FILE, cc->nr_file); 237}
thanks,
| |