diff options
author | Geliang Tang <geliangtang@163.com> | 2016-01-14 18:20:33 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-01-14 19:00:49 -0500 |
commit | 86760a2c6e827858f8eaf020b12b72b3210faf79 (patch) | |
tree | fcb066b1982ae53a18cbaf368ad331612cf8298c /mm/page_alloc.c | |
parent | a16601c5458eb702f26cd48b9e8e1a9471700e72 (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.c | 10 |
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 | } |