Messages in this thread Patch in this message | | | From | js1304@gmail ... | Subject | [PATCH v2 4/5] mm/page_owner: add zone range overlapping check | Date | Fri, 1 Apr 2016 11:06:45 +0900 |
| |
From: Joonsoo Kim <iamjoonsoo.kim@lge.com>
There is a system that node's pfn are overlapped like as following.
-----pfn--------> N0 N1 N2 N0 N1 N2
Therefore, we need to care this overlapping when iterating pfn range.
There are one place in page_owner.c that iterates pfn range and it doesn't consider this overlapping. Add it.
Without this patch, above system could over count early allocated page number before page_owner is activated.
Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com> --- mm/page_owner.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/mm/page_owner.c b/mm/page_owner.c index ac3d8d1..438768c 100644 --- a/mm/page_owner.c +++ b/mm/page_owner.c @@ -301,6 +301,9 @@ static void init_pages_in_zone(pg_data_t *pgdat, struct zone *zone) page = pfn_to_page(pfn); + if (page_zone(page) != zone) + continue; + /* * We are safe to check buddy flag and order, because * this is init stage and only single thread runs. -- 1.9.1
| |