[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1358463181-17956-1-git-send-email-cody@linux.vnet.ibm.com>
Date: Thu, 17 Jan 2013 14:52:52 -0800
From: Cody P Schafer <cody@...ux.vnet.ibm.com>
To: Linux MM <linux-mm@...ck.org>,
David Hansen <dave@...ux.vnet.ibm.com>
Cc: LKML <linux-kernel@...r.kernel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Catalin Marinas <catalin.marinas@....com>
Subject: [PATCH v2 0/9] mm: zone & pgdat accessors plus some cleanup
Summaries:
1 - avoid repeating checks for section in page flags by adding a define.
2 - add & switch to zone_end_pfn() and zone_spans_pfn()
3 - adds zone_is_initialized() & zone_is_empty()
4 - adds a VM_BUG using zone_is_initialized() in __free_one_page()
5 - add pgdat_end_pfn() and pgdat_is_empty()
6 - add debugging message to VM_BUG check.
7 - add ensure_zone_is_initialized() (for memory_hotplug)
8 - use the above addition in memory_hotplug
9 - use pgdat_end_pfn()
As a general concern: spanned_pages & start_pfn (in pgdat & zone) are supposed
to be locked (via a seqlock) when read (due to changes to them via
memory_hotplug), but very few (only 1?) of their users appear to actually lock
them.
--
Since v1:
- drop zone+pgdat growth factoring (I use this in some WIP code to resign the
NUMA node a page belongs to, will send with that patchset)
- merge zone_end_pfn() & zone_spans_pfn() introduction & usage
- split zone_is_initialized() & zone_is_empty() out from the above.
- add a missing semicolon
include/linux/mm.h | 8 ++++++--
include/linux/mmzone.h | 34 +++++++++++++++++++++++++++++----
mm/compaction.c | 10 +++++-----
mm/kmemleak.c | 5 ++---
mm/memory_hotplug.c | 52 ++++++++++++++++++++++++++------------------------
mm/page_alloc.c | 31 +++++++++++++++++-------------
mm/vmstat.c | 2 +-
7 files changed, 89 insertions(+), 53 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