diff options
author | 2013-02-22 16:35:27 -0800 | |
---|---|---|
committer | 2013-02-23 17:50:20 -0800 | |
commit | da3649e133948d8b7d8c57b05a33faf62ac2cc7e (patch) | |
tree | d03e6ce3b4ee6a5b08739839809c88ae8ec53629 | |
parent | mm/page_alloc: add a VM_BUG in __free_one_page() if the zone is uninitialized. (diff) | |
download | linux-da3649e133948d8b7d8c57b05a33faf62ac2cc7e.tar.gz linux-da3649e133948d8b7d8c57b05a33faf62ac2cc7e.tar.bz2 linux-da3649e133948d8b7d8c57b05a33faf62ac2cc7e.zip |
mmzone: add pgdat_{end_pfn,is_empty}() helpers & consolidate.
Add pgdat_end_pfn() and pgdat_is_empty() helpers which match the similar
zone_*() functions.
Change node_end_pfn() to be a wrapper of pgdat_end_pfn().
Signed-off-by: Cody P Schafer <cody@linux.vnet.ibm.com>
Cc: David Hansen <dave@linux.vnet.ibm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Mel Gorman <mel@csn.ul.ie>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | include/linux/mmzone.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h index cf8925962b68..ede274957e05 100644 --- a/include/linux/mmzone.h +++ b/include/linux/mmzone.h @@ -756,11 +756,17 @@ typedef struct pglist_data { #define nid_page_nr(nid, pagenr) pgdat_page_nr(NODE_DATA(nid),(pagenr)) #define node_start_pfn(nid) (NODE_DATA(nid)->node_start_pfn) +#define node_end_pfn(nid) pgdat_end_pfn(NODE_DATA(nid)) -#define node_end_pfn(nid) ({\ - pg_data_t *__pgdat = NODE_DATA(nid);\ - __pgdat->node_start_pfn + __pgdat->node_spanned_pages;\ -}) +static inline unsigned long pgdat_end_pfn(pg_data_t *pgdat) +{ + return pgdat->node_start_pfn + pgdat->node_spanned_pages; +} + +static inline bool pgdat_is_empty(pg_data_t *pgdat) +{ + return !pgdat->node_start_pfn && !pgdat->node_spanned_pages; +} #include <linux/memory_hotplug.h> |