[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240115184102.GU734935@nvidia.com>
Date: Mon, 15 Jan 2024 14:41:02 -0400
From: Jason Gunthorpe <jgg@...dia.com>
To: peterx@...hat.com
Cc: linux-mm@...ck.org, linux-kernel@...r.kernel.org,
James Houghton <jthoughton@...gle.com>,
David Hildenbrand <david@...hat.com>,
"Kirill A . Shutemov" <kirill@...temov.name>,
Yang Shi <shy828301@...il.com>, linux-riscv@...ts.infradead.org,
Andrew Morton <akpm@...ux-foundation.org>,
"Aneesh Kumar K . V" <aneesh.kumar@...nel.org>,
Rik van Riel <riel@...riel.com>,
Andrea Arcangeli <aarcange@...hat.com>,
Axel Rasmussen <axelrasmussen@...gle.com>,
Mike Rapoport <rppt@...nel.org>, John Hubbard <jhubbard@...dia.com>,
Vlastimil Babka <vbabka@...e.cz>,
Michael Ellerman <mpe@...erman.id.au>,
Christophe Leroy <christophe.leroy@...roup.eu>,
Andrew Jones <andrew.jones@...ux.dev>,
linuxppc-dev@...ts.ozlabs.org,
Mike Kravetz <mike.kravetz@...cle.com>,
Muchun Song <muchun.song@...ux.dev>,
linux-arm-kernel@...ts.infradead.org,
Christoph Hellwig <hch@...radead.org>,
Lorenzo Stoakes <lstoakes@...il.com>,
Matthew Wilcox <willy@...radead.org>
Subject: Re: [PATCH v2 09/13] mm/gup: Cache *pudp in follow_pud_mask()
On Wed, Jan 03, 2024 at 05:14:19PM +0800, peterx@...hat.com wrote:
> From: Peter Xu <peterx@...hat.com>
>
> Introduce "pud_t pud" in the function, so the code won't dereference *pudp
> multiple time. Not only because that looks less straightforward, but also
> because if the dereference really happened, it's not clear whether there
> can be race to see different *pudp values if it's being modified at the
> same time.
>
> Acked-by: James Houghton <jthoughton@...gle.com>
> Signed-off-by: Peter Xu <peterx@...hat.com>
> ---
> mm/gup.c | 17 +++++++++--------
> 1 file changed, 9 insertions(+), 8 deletions(-)
I think we have several more case like this, and I ceratinly agree
code should not access a READ_ONCE variable more than once :(
Reviewed-by: Jason Gunthorpe <jgg@...dia.com>
Jason
Powered by blists - more mailing lists