[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <50A946BC.7010308@googlemail.com>
Date: Sun, 18 Nov 2012 20:36:12 +0000
From: Chris Clayton <chris2553@...glemail.com>
To: Jiang Liu <liuj97@...il.com>
CC: Andrew Morton <akpm@...ux-foundation.org>,
Wen Congyang <wency@...fujitsu.com>,
David Rientjes <rientjes@...gle.com>,
Jiang Liu <jiang.liu@...wei.com>,
Maciej Rutecki <maciej.rutecki@...il.com>,
"Rafael J . Wysocki" <rjw@...k.pl>, Mel Gorman <mgorman@...e.de>,
Minchan Kim <minchan@...nel.org>,
KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>,
Michal Hocko <mhocko@...e.cz>,
Jianguo Wu <wujianguo@...wei.com>, linux-mm@...ck.org,
linux-kernel@...r.kernel.org
Subject: Re: [RFT PATCH v1 0/5] fix up inaccurate zone->present_pages
Hi Gerry.
On 11/18/12 16:07, 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
>
I've applied the five patches to Linus' 3.7.0-rc6 and can confirm that
the kernel allows my system to resume from a suspend to disc. Although
my laptop is 64 bit, I run a 32 bit kernel with HIGHMEM (I have 8GB RAM):
[chris:~/kernel/tmp/linux-3.7-rc6-resume]$ grep -E HIGHMEM\|X86_32 .config
CONFIG_X86_32=y
CONFIG_X86_32_SMP=y
CONFIG_X86_32_LAZY_GS=y
# CONFIG_X86_32_IRIS is not set
# CONFIG_NOHIGHMEM is not set
# CONFIG_HIGHMEM4G is not set
CONFIG_HIGHMEM64G=y
CONFIG_HIGHMEM=y
I can also say that a quick browse of the output of dmesg, shows nothing
out of the ordinary. I have insufficient knowledge to comment on the
patches, but I will run the kernel over the next few days and report
back later in the week.
Chris
> 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(-)
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists