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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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(-)

-- 
1.7.9.5

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]