On 06/05/2013 07:16 PM, Michal Hocko wrote: > Hi Andrew, > the above patch breaks compilation: > mm/page_alloc.c: In function ‘adjust_managed_page_count’: > mm/page_alloc.c:5226: error: lvalue required as left operand of assignment > > Could you drop the mm/page_alloc.c hunk, please? Not all versions of gcc > are able to cope with this obviously (mine is 4.3.4). > > Thanks > Hi Andrew, When CONFIG_HIGHMEM is undefined, totalhigh_pages is defined as: #define totalhigh_pages 0UL Thus statement "totalhigh_pages += count" will cause build failure as: CC mm/page_alloc.o mm/page_alloc.c: In function ‘adjust_managed_page_count’: mm/page_alloc.c:5262:19: error: lvalue required as left operand of assignment make[1]: *** [mm/page_alloc.o] Error 1 make: *** [mm/page_alloc.o] Error 2 So we still need to use CONFIG_HIGHMEM to guard the statement. --- diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 3437f7a..860d639 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -5258,8 +5258,10 @@ void adjust_managed_page_count(struct page *page, long count) spin_lock(&managed_page_count_lock); page_zone(page)->managed_pages += count; totalram_pages += count; +#ifdef CONFIG_HIGHMEM if (PageHighMem(page)) totalhigh_pages += count; +#endif spin_unlock(&managed_page_count_lock); } EXPORT_SYMBOL(adjust_managed_page_count); --- -- 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>