Re: [PATCH v20 08/20] mm: page_idle_get_page() does not need lru_lock

From: Alex Shi
Date: Thu Nov 05 2020 - 20:11:31 EST




在 2020/11/5 下午11:36, Johannes Weiner 写道:
>>> */
>>>
> Yeah, I don't think this scenario warrants the full race diagram in
> the code itself.
>
> But the code is highly specific - synchronizing one struct page member
> for one particular use case. Let's keep at least a reference to what
> we are synchronizing against. There is a non-zero chance that if the
> comment goes out of date, so does the code. How about this?
>
> /*
> * page_idle does a lockless/optimistic rmap scan on page->mapping.
> * Make sure the compiler doesn't split the stores of anon_vma and
> * the PAGE_MAPPING_ANON type identifier, otherwise the rmap code
> * could mistake the mapping for a struct address_space and crash.
> */

Thanks a lot to you all. I will update to v21 patch

Alex