* [PATCH v3] mm/page_owner: Clean up init_pages_in_zone()
@ 2018-01-17 12:45 Oscar Salvador
0 siblings, 0 replies; only message in thread
From: Oscar Salvador @ 2018-01-17 12:45 UTC (permalink / raw)
To: linux-mm; +Cc: vbabka, mhocko, akpm
This patch cleans up init_pages_in_zone() function.
v2 -> v3: Added suggestions made by Vlastimil Babka
v1 -> v2: Added suggestions made by Michal Hocko
@Andrew: Could you please replace the patch that it's in the -mm tree (next-20180115)
with commit b5dc82ee364757fcd1d67f2ea8fa4e19bedd6e48 with this one?
Thanks
Signed-off-by: Oscar Salvador (SuSe) <osalvador@techadventures.net>
Acked-by: Michal Hocko <mhocko@suse.com>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
---
mm/page_owner.c | 14 +++++---------
1 file changed, 5 insertions(+), 9 deletions(-)
diff --git a/mm/page_owner.c b/mm/page_owner.c
index 8602fb41b293..ee55d55a7822 100644
--- a/mm/page_owner.c
+++ b/mm/page_owner.c
@@ -528,21 +528,17 @@ read_page_owner(struct file *file, char __user *buf, size_t count, loff_t *ppos)
static void init_pages_in_zone(pg_data_t *pgdat, struct zone *zone)
{
- struct page *page;
- struct page_ext *page_ext;
- unsigned long pfn = zone->zone_start_pfn, block_end_pfn;
- unsigned long end_pfn = pfn + zone->spanned_pages;
+ unsigned long pfn = zone->zone_start_pfn;
+ unsigned long end_pfn = zone_end_pfn(zone);
unsigned long count = 0;
- /* Scan block by block. First and last block may be incomplete */
- pfn = zone->zone_start_pfn;
-
/*
* Walk the zone in pageblock_nr_pages steps. If a page block spans
* a zone boundary, it will be double counted between zones. This does
* not matter as the mixed block count will still be correct
*/
for (; pfn < end_pfn; ) {
+ unsigned long block_end_pfn;
if (!pfn_valid(pfn)) {
pfn = ALIGN(pfn + 1, pageblock_nr_pages);
continue;
@@ -551,9 +547,9 @@ static void init_pages_in_zone(pg_data_t *pgdat, struct zone *zone)
block_end_pfn = ALIGN(pfn + 1, pageblock_nr_pages);
block_end_pfn = min(block_end_pfn, end_pfn);
- page = pfn_to_page(pfn);
-
for (; pfn < block_end_pfn; pfn++) {
+ struct page *page;
+ struct page_ext *page_ext;
if (!pfn_valid_within(pfn))
continue;
--
2.13.6
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2018-01-17 12:45 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-01-17 12:45 [PATCH v3] mm/page_owner: Clean up init_pages_in_zone() Oscar Salvador
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.