summaryrefslogtreecommitdiffstats
path: root/mm/page_alloc.c
diff options
context:
space:
mode:
authorGeliang Tang <geliangtang@163.com>2016-01-14 18:20:33 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2016-01-14 19:00:49 -0500
commit86760a2c6e827858f8eaf020b12b72b3210faf79 (patch)
treefcb066b1982ae53a18cbaf368ad331612cf8298c /mm/page_alloc.c
parenta16601c5458eb702f26cd48b9e8e1a9471700e72 (diff)
mm/page_alloc.c: use list_for_each_entry in mark_free_pages()
Use list_for_each_entry instead of list_for_each + list_entry to simplify the code. Signed-off-by: Geliang Tang <geliangtang@163.com> Acked-by: Michal Hocko <mhocko@suse.com> Acked-by: Mel Gorman <mgorman@techsingularity.net> Acked-by: David Rientjes <rientjes@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/page_alloc.c')
-rw-r--r--mm/page_alloc.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index b9747aa0fb59..d7f5bc895157 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -1980,7 +1980,7 @@ void mark_free_pages(struct zone *zone)
1980 unsigned long pfn, max_zone_pfn; 1980 unsigned long pfn, max_zone_pfn;
1981 unsigned long flags; 1981 unsigned long flags;
1982 unsigned int order, t; 1982 unsigned int order, t;
1983 struct list_head *curr; 1983 struct page *page;
1984 1984
1985 if (zone_is_empty(zone)) 1985 if (zone_is_empty(zone))
1986 return; 1986 return;
@@ -1990,17 +1990,17 @@ void mark_free_pages(struct zone *zone)
1990 max_zone_pfn = zone_end_pfn(zone); 1990 max_zone_pfn = zone_end_pfn(zone);
1991 for (pfn = zone->zone_start_pfn; pfn < max_zone_pfn; pfn++) 1991 for (pfn = zone->zone_start_pfn; pfn < max_zone_pfn; pfn++)
1992 if (pfn_valid(pfn)) { 1992 if (pfn_valid(pfn)) {
1993 struct page *page = pfn_to_page(pfn); 1993 page = pfn_to_page(pfn);
1994
1995 if (!swsusp_page_is_forbidden(page)) 1994 if (!swsusp_page_is_forbidden(page))
1996 swsusp_unset_page_free(page); 1995 swsusp_unset_page_free(page);
1997 } 1996 }
1998 1997
1999 for_each_migratetype_order(order, t) { 1998 for_each_migratetype_order(order, t) {
2000 list_for_each(curr, &zone->free_area[order].free_list[t]) { 1999 list_for_each_entry(page,
2000 &zone->free_area[order].free_list[t], lru) {
2001 unsigned long i; 2001 unsigned long i;
2002 2002
2003 pfn = page_to_pfn(list_entry(curr, struct page, lru)); 2003 pfn = page_to_pfn(page);
2004 for (i = 0; i < (1UL << order); i++) 2004 for (i = 0; i < (1UL << order); i++)
2005 swsusp_set_page_free(pfn_to_page(pfn + i)); 2005 swsusp_set_page_free(pfn_to_page(pfn + i));
2006 } 2006 }