On 04/08/2013 09:39 PM, Rik van Riel wrote: > On 04/06/2013 09:55 AM, Jiang Liu wrote: > >> @@ -5186,6 +5189,22 @@ early_param("movablecore", cmdline_parse_movablecore); >> >> #endif /* CONFIG_HAVE_MEMBLOCK_NODE_MAP */ >> >> +void adjust_managed_page_count(struct page *page, long count) >> +{ >> + bool lock = (system_state != SYSTEM_BOOTING); >> + >> + /* No need to acquire the lock during boot */ >> + if (lock) >> + spin_lock(&managed_page_count_lock); >> + >> + page_zone(page)->managed_pages += count; >> + totalram_pages += count; >> + >> + if (lock) >> + spin_unlock(&managed_page_count_lock); >> +} > > While I agree the boot code currently does not need the lock, is > there any harm to removing that conditional? > > That would simplify the code, and protect against possible future > cleverness of initializing multiple memory things simultaneously. > Hi Rik, Thanks for you comments. I'm OK with that. Acquiring/releasing the lock should be lightweight because there shouldn't be contention during boot. Will remove the logic in next version. Regards! Gerry -- 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>