Re: [PATCH v3 4/4] mm: remove unnecessary smp_wmb() in __SetPageUptodate()

From: Matthew Wilcox
Date: Tue Sep 24 2019 - 19:51:35 EST


On Tue, Sep 24, 2019 at 05:24:59PM -0600, Yu Zhao wrote:
> +/*
> + * Only use this function when there is a following write barrier, e.g.,
> + * an explicit smp_wmb() and/or the page will be added to page or swap
> + * cache locked.
> + */
> static __always_inline void __SetPageUptodate(struct page *page)
> {
> VM_BUG_ON_PAGE(PageTail(page), page);
> - smp_wmb();
> __set_bit(PG_uptodate, &page->flags);
> }

Isn't this now the same as __SETPAGEFLAG(uptodate, Uptodate, PF_NO_TAIL)?