Skip to content

Commit

Permalink
mm: page_alloc: convert hot/cold parameter and immediate callers to bool
Browse files Browse the repository at this point in the history
commit b745bc8 upstream.

cold is a bool, make it one.  Make the likely case the "if" part of the
block instead of the else as according to the optimisation manual this is
preferred.

Signed-off-by: Mel Gorman <[email protected]>
Acked-by: Rik van Riel <[email protected]>
Cc: Johannes Weiner <[email protected]>
Cc: Vlastimil Babka <[email protected]>
Cc: Jan Kara <[email protected]>
Cc: Michal Hocko <[email protected]>
Cc: Hugh Dickins <[email protected]>
Cc: Dave Hansen <[email protected]>
Cc: Theodore Ts'o <[email protected]>
Cc: "Paul E. McKenney" <[email protected]>
Cc: Oleg Nesterov <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Signed-off-by: Mel Gorman <[email protected]>
Signed-off-by: Jiri Slaby <[email protected]>
  • Loading branch information
Mel Gorman authored and Jiri Slaby committed Sep 26, 2014
1 parent c01947d commit 3e7379c
Show file tree
Hide file tree
Showing 9 changed files with 22 additions and 22 deletions.
2 changes: 1 addition & 1 deletion arch/tile/mm/homecache.c
Original file line number Diff line number Diff line change
Expand Up @@ -417,7 +417,7 @@ void __homecache_free_pages(struct page *page, unsigned int order)
if (put_page_testzero(page)) {
homecache_change_page_home(page, order, PAGE_HOME_HASH);
if (order == 0) {
free_hot_cold_page(page, 0);
free_hot_cold_page(page, false);
} else {
init_page_count(page);
__free_pages(page, order);
Expand Down
2 changes: 1 addition & 1 deletion fs/fuse/dev.c
Original file line number Diff line number Diff line change
Expand Up @@ -1613,7 +1613,7 @@ static int fuse_notify_store(struct fuse_conn *fc, unsigned int size,

static void fuse_retrieve_end(struct fuse_conn *fc, struct fuse_req *req)
{
release_pages(req->pages, req->num_pages, 0);
release_pages(req->pages, req->num_pages, false);
}

static int fuse_retrieve(struct fuse_conn *fc, struct inode *inode,
Expand Down
4 changes: 2 additions & 2 deletions include/linux/gfp.h
Original file line number Diff line number Diff line change
Expand Up @@ -364,8 +364,8 @@ void *alloc_pages_exact_nid(int nid, size_t size, gfp_t gfp_mask);

extern void __free_pages(struct page *page, unsigned int order);
extern void free_pages(unsigned long addr, unsigned int order);
extern void free_hot_cold_page(struct page *page, int cold);
extern void free_hot_cold_page_list(struct list_head *list, int cold);
extern void free_hot_cold_page(struct page *page, bool cold);
extern void free_hot_cold_page_list(struct list_head *list, bool cold);

extern void __free_memcg_kmem_pages(struct page *page, unsigned int order);
extern void free_memcg_kmem_pages(unsigned long addr, unsigned int order);
Expand Down
2 changes: 1 addition & 1 deletion include/linux/pagemap.h
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ static inline void mapping_set_gfp_mask(struct address_space *m, gfp_t mask)

#define page_cache_get(page) get_page(page)
#define page_cache_release(page) put_page(page)
void release_pages(struct page **pages, int nr, int cold);
void release_pages(struct page **pages, int nr, bool cold);

/*
* speculatively take a reference to a page.
Expand Down
2 changes: 1 addition & 1 deletion include/linux/swap.h
Original file line number Diff line number Diff line change
Expand Up @@ -441,7 +441,7 @@ mem_cgroup_uncharge_swapcache(struct page *page, swp_entry_t ent, bool swapout)
#define free_page_and_swap_cache(page) \
page_cache_release(page)
#define free_pages_and_swap_cache(pages, nr) \
release_pages((pages), (nr), 0);
release_pages((pages), (nr), false);

static inline void show_swap_cache_info(void)
{
Expand Down
20 changes: 10 additions & 10 deletions mm/page_alloc.c
Original file line number Diff line number Diff line change
Expand Up @@ -1185,7 +1185,7 @@ static struct page *__rmqueue(struct zone *zone, unsigned int order,
*/
static int rmqueue_bulk(struct zone *zone, unsigned int order,
unsigned long count, struct list_head *list,
int migratetype, int cold)
int migratetype, bool cold)
{
int i;

Expand All @@ -1204,7 +1204,7 @@ static int rmqueue_bulk(struct zone *zone, unsigned int order,
* merge IO requests if the physical pages are ordered
* properly.
*/
if (likely(cold == 0))
if (likely(!cold))
list_add(&page->lru, list);
else
list_add_tail(&page->lru, list);
Expand Down Expand Up @@ -1365,9 +1365,9 @@ void mark_free_pages(struct zone *zone)

/*
* Free a 0-order page
* cold == 1 ? free a cold page : free a hot page
* cold == true ? free a cold page : free a hot page
*/
void free_hot_cold_page(struct page *page, int cold)
void free_hot_cold_page(struct page *page, bool cold)
{
struct zone *zone = page_zone(page);
struct per_cpu_pages *pcp;
Expand Down Expand Up @@ -1399,10 +1399,10 @@ void free_hot_cold_page(struct page *page, int cold)
}

pcp = &this_cpu_ptr(zone->pageset)->pcp;
if (cold)
list_add_tail(&page->lru, &pcp->lists[migratetype]);
else
if (!cold)
list_add(&page->lru, &pcp->lists[migratetype]);
else
list_add_tail(&page->lru, &pcp->lists[migratetype]);
pcp->count++;
if (pcp->count >= pcp->high) {
unsigned long batch = ACCESS_ONCE(pcp->batch);
Expand All @@ -1417,7 +1417,7 @@ void free_hot_cold_page(struct page *page, int cold)
/*
* Free a list of 0-order pages
*/
void free_hot_cold_page_list(struct list_head *list, int cold)
void free_hot_cold_page_list(struct list_head *list, bool cold)
{
struct page *page, *next;

Expand Down Expand Up @@ -1534,7 +1534,7 @@ struct page *buffered_rmqueue(struct zone *preferred_zone,
{
unsigned long flags;
struct page *page;
int cold = !!(gfp_flags & __GFP_COLD);
bool cold = ((gfp_flags & __GFP_COLD) != 0);

again:
if (likely(order == 0)) {
Expand Down Expand Up @@ -2835,7 +2835,7 @@ void __free_pages(struct page *page, unsigned int order)
{
if (put_page_testzero(page)) {
if (order == 0)
free_hot_cold_page(page, 0);
free_hot_cold_page(page, false);
else
__free_pages_ok(page, order);
}
Expand Down
4 changes: 2 additions & 2 deletions mm/swap.c
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ static void __page_cache_release(struct page *page)
static void __put_single_page(struct page *page)
{
__page_cache_release(page);
free_hot_cold_page(page, 0);
free_hot_cold_page(page, false);
}

static void __put_compound_page(struct page *page)
Expand Down Expand Up @@ -794,7 +794,7 @@ void lru_add_drain_all(void)
* grabbed the page via the LRU. If it did, give up: shrink_inactive_list()
* will free it.
*/
void release_pages(struct page **pages, int nr, int cold)
void release_pages(struct page **pages, int nr, bool cold)
{
int i;
LIST_HEAD(pages_to_free);
Expand Down
2 changes: 1 addition & 1 deletion mm/swap_state.c
Original file line number Diff line number Diff line change
Expand Up @@ -270,7 +270,7 @@ void free_pages_and_swap_cache(struct page **pages, int nr)

for (i = 0; i < todo; i++)
free_swap_cache(pagep[i]);
release_pages(pagep, todo, 0);
release_pages(pagep, todo, false);
pagep += todo;
nr -= todo;
}
Expand Down
6 changes: 3 additions & 3 deletions mm/vmscan.c
Original file line number Diff line number Diff line change
Expand Up @@ -1107,7 +1107,7 @@ static unsigned long shrink_page_list(struct list_head *page_list,
VM_BUG_ON(PageLRU(page) || PageUnevictable(page));
}

free_hot_cold_page_list(&free_pages, 1);
free_hot_cold_page_list(&free_pages, true);

list_splice(&ret_pages, page_list);
count_vm_events(PGACTIVATE, pgactivate);
Expand Down Expand Up @@ -1505,7 +1505,7 @@ shrink_inactive_list(unsigned long nr_to_scan, struct lruvec *lruvec,

spin_unlock_irq(&zone->lru_lock);

free_hot_cold_page_list(&page_list, 1);
free_hot_cold_page_list(&page_list, true);

/*
* If reclaim is isolating dirty pages under writeback, it implies
Expand Down Expand Up @@ -1725,7 +1725,7 @@ static void shrink_active_list(unsigned long nr_to_scan,
__mod_zone_page_state(zone, NR_ISOLATED_ANON + file, -nr_taken);
spin_unlock_irq(&zone->lru_lock);

free_hot_cold_page_list(&l_hold, 1);
free_hot_cold_page_list(&l_hold, true);
}

#ifdef CONFIG_SWAP
Expand Down

0 comments on commit 3e7379c

Please sign in to comment.