On Tue, Jun 04, 2013 at 08:29:18AM -0700, Dave Hansen wrote: > 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.
Thanks. it's enough for me. > > 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? Never mind. At first, I thought we can simply use @free_pages instead of redundant new LRU list and it's *minor*. That's why I already gave my Reviewed-by. But you woke up my brain so I realized it so I don't have a concern any more about your patch. Thanks. -- Kind regards, Minchan Kim -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/