On 06/03/2013 11:02 PM, Minchan Kim wrote: >> > Why do we need new lru list instead of using @free_pages? > I got your point that @free_pages could have freed page by > put_page_testzero of shrink_page_list and they don't have > valid mapping so __remove_mapping_batch's mapping_release_page > would access NULL pointer. > > I think it would be better to mention it in comment. :( > Otherwise, I suggest we can declare another new LIST_HEAD to > accumulate pages freed by put_page_testzero in shrink_page_list > so __remove_mapping_batch don't have to declare temporal LRU list > and can remove unnecessary list_move operation. If I respin them again, I'll add a comment. I guess we could splice the whole list over at once instead of moving the pages individually. But, what are we trying to optimize here? Saving a list_head worth of space on the stack? -- 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>