diff options
| author | Johannes Weiner <hannes@cmpxchg.org> | 2009-09-21 17:02:59 -0700 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-09-22 07:17:37 -0700 | 
| commit | 6c0b13519d1c755d874e82c8fb8a6dcef0ee402c (patch) | |
| tree | 0fe6e6902a488ad6c59ecee971fe64c81edbcce3 | |
| parent | 401a8e1c1670085b8177330ca47d4f7c4ac88761 (diff) | |
| download | olio-linux-3.10-6c0b13519d1c755d874e82c8fb8a6dcef0ee402c.tar.xz olio-linux-3.10-6c0b13519d1c755d874e82c8fb8a6dcef0ee402c.zip  | |
mm: return boolean from page_is_file_cache()
page_is_file_cache() has been used for both boolean checks and LRU
arithmetic, which was always a bit weird.
Now that page_lru_base_type() exists for LRU arithmetic, make
page_is_file_cache() a real predicate function and adjust the
boolean-using callsites to drop those pesky double negations.
Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
Reviewed-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
| -rw-r--r-- | include/linux/mm_inline.h | 8 | ||||
| -rw-r--r-- | mm/migrate.c | 6 | ||||
| -rw-r--r-- | mm/swap.c | 2 | ||||
| -rw-r--r-- | mm/vmscan.c | 2 | 
4 files changed, 7 insertions, 11 deletions
diff --git a/include/linux/mm_inline.h b/include/linux/mm_inline.h index 99977ff45b8..8835b877b8d 100644 --- a/include/linux/mm_inline.h +++ b/include/linux/mm_inline.h @@ -5,7 +5,7 @@   * page_is_file_cache - should the page be on a file LRU or anon LRU?   * @page: the page to test   * - * Returns LRU_FILE if @page is page cache page backed by a regular filesystem, + * Returns 1 if @page is page cache page backed by a regular filesystem,   * or 0 if @page is anonymous, tmpfs or otherwise ram or swap backed.   * Used by functions that manipulate the LRU lists, to sort a page   * onto the right LRU list. @@ -16,11 +16,7 @@   */  static inline int page_is_file_cache(struct page *page)  { -	if (PageSwapBacked(page)) -		return 0; - -	/* The page is page cache backed by a normal filesystem. */ -	return LRU_FILE; +	return !PageSwapBacked(page);  }  static inline void diff --git a/mm/migrate.c b/mm/migrate.c index b535a2c1656..e97e513fe89 100644 --- a/mm/migrate.c +++ b/mm/migrate.c @@ -68,7 +68,7 @@ int putback_lru_pages(struct list_head *l)  	list_for_each_entry_safe(page, page2, l, lru) {  		list_del(&page->lru);  		dec_zone_page_state(page, NR_ISOLATED_ANON + -				    !!page_is_file_cache(page)); +				page_is_file_cache(page));  		putback_lru_page(page);  		count++;  	} @@ -701,7 +701,7 @@ unlock:   		 */   		list_del(&page->lru);  		dec_zone_page_state(page, NR_ISOLATED_ANON + -				    !!page_is_file_cache(page)); +				page_is_file_cache(page));  		putback_lru_page(page);  	} @@ -751,7 +751,7 @@ int migrate_pages(struct list_head *from,  	local_irq_save(flags);  	list_for_each_entry(page, from, lru)  		__inc_zone_page_state(page, NR_ISOLATED_ANON + -				      !!page_is_file_cache(page)); +				page_is_file_cache(page));  	local_irq_restore(flags);  	if (!swapwrite) diff --git a/mm/swap.c b/mm/swap.c index 168d53e6e58..4a8a59e671f 100644 --- a/mm/swap.c +++ b/mm/swap.c @@ -189,7 +189,7 @@ void activate_page(struct page *page)  		add_page_to_lru_list(zone, page, lru);  		__count_vm_event(PGACTIVATE); -		update_page_reclaim_stat(zone, page, !!file, 1); +		update_page_reclaim_stat(zone, page, file, 1);  	}  	spin_unlock_irq(&zone->lru_lock);  } diff --git a/mm/vmscan.c b/mm/vmscan.c index 30e56ee833f..172119caebc 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -821,7 +821,7 @@ int __isolate_lru_page(struct page *page, int mode, int file)  	if (mode != ISOLATE_BOTH && (!PageActive(page) != !mode))  		return ret; -	if (mode != ISOLATE_BOTH && (!page_is_file_cache(page) != !file)) +	if (mode != ISOLATE_BOTH && page_is_file_cache(page) != file)  		return ret;  	/*  |