Re: [PATCH 2/8] Split the free lists into kernel and user parts

From: Mel Gorman
Date: Fri Sep 08 2006 - 05:17:19 EST


On Fri, 8 Sep 2006, Peter Zijlstra wrote:

Hi Mel,

Looking good, some small nits follow.

On Thu, 2006-09-07 at 20:04 +0100, Mel Gorman wrote:

+#define for_each_rclmtype_order(type, order) \
+ for (order = 0; order < MAX_ORDER; order++) \
+ for (type = 0; type < RCLM_TYPES; type++)

It seems odd to me that you have the for loops in reverse order of the
arguments.


I'll fix that.

+static inline int get_pageblock_type(struct page *page)
+{
+ return (PageEasyRclm(page) != 0);
+}

I find the naming a little odd, I would have suspected something like:
get_page_blocktype() or thereabout since you're getting a page
attribute.


This is a throwback from an early version when I used a bitmap that used one bit per MAX_ORDER_NR_PAGES block of pages. Many pages in a block shared one bit - hence get_pageblock_type(). The name is now stupid. I'll fix it.

+static inline int gfpflags_to_rclmtype(unsigned long gfp_flags)
+{
+ return ((gfp_flags & __GFP_EASYRCLM) != 0);
+}

gfp_t argument?


doh, yes, it should be gfp_t

Thanks

--
Mel Gorman
Part-time Phd Student Linux Technology Center
University of Limerick IBM Dublin Software Lab
-
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/