Re: [RFT PATCH v1 0/5] fix up inaccurate zone->present_pages

From: Jiang Liu
Date: Tue Nov 20 2012 - 11:03:14 EST


Thanks, Maciej!

On 11/20/2012 05:36 AM, Maciej Rutecki wrote:
> On niedziela, 18 listopada 2012 o 17:07:25 Jiang Liu wrote:
>> The commit 7f1290f2f2a4 ("mm: fix-up zone present pages") tries to
>> resolve an issue caused by inaccurate zone->present_pages, but that
>> fix is incomplete and causes regresions with HIGHMEM. And it has been
>> reverted by commit
>> 5576646 revert "mm: fix-up zone present pages"
>>
>> This is a following-up patchset for the issue above. It introduces a
>> new field named "managed_pages" to struct zone, which counts pages
>> managed by the buddy system from the zone. And zone->present_pages
>> is used to count pages existing in the zone, which is
>> spanned_pages - absent_pages.
>>
>> But that way, zone->present_pages will be kept in consistence with
>> pgdat->node_present_pages, which is sum of zone->present_pages.
>>
>> This patchset has only been tested on x86_64 with nobootmem.c. So need
>> help to test this patchset on machines:
>> 1) use bootmem.c
>> 2) have highmem
>>
>> This patchset applies to "f4a75d2e Linux 3.7-rc6" from
>> git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>>
>> Any comments and helps are welcomed!
>>
>> Jiang Liu (5):
>> mm: introduce new field "managed_pages" to struct zone
>> mm: replace zone->present_pages with zone->managed_pages if
>> appreciated
>> mm: set zone->present_pages to number of existing pages in the zone
>> mm: provide more accurate estimation of pages occupied by memmap
>> mm: increase totalram_pages when free pages allocated by bootmem
>> allocator
>>
>> include/linux/mmzone.h | 1 +
>> mm/bootmem.c | 14 ++++++++
>> mm/memory_hotplug.c | 6 ++++
>> mm/mempolicy.c | 2 +-
>> mm/nobootmem.c | 15 ++++++++
>> mm/page_alloc.c | 89
>> +++++++++++++++++++++++++++++++----------------- mm/vmscan.c |
>> 16 ++++-----
>> mm/vmstat.c | 8 +++--
>> 8 files changed, 108 insertions(+), 43 deletions(-)
> Tested in 32 bit linux with HIGHMEM. Seems be OK.
>
> Regards
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/