[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20220108081340.3oi2z2rm3cbqozzt@master>
Date: Sat, 8 Jan 2022 08:13:40 +0000
From: Wei Yang <richard.weiyang@...il.com>
To: Matthew Wilcox <willy@...radead.org>
Cc: Andrew Morton <akpm@...ux-foundation.org>,
Wei Yang <richard.weiyang@...il.com>, peterz@...radead.org,
vbabka@...e.cz, will@...nel.org, linyunsheng@...wei.com,
aarcange@...hat.com, feng.tang@...el.com, ebiederm@...ssion.com,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] mm: remove offset check on page->compound_head and
folio->lru
On Sat, Jan 08, 2022 at 12:49:53AM +0000, Matthew Wilcox wrote:
>On Fri, Jan 07, 2022 at 04:08:25PM -0800, Andrew Morton wrote:
>> On Fri, 7 Jan 2022 22:11:20 +0000 Matthew Wilcox <willy@...radead.org> wrote:
>>
>> > > Hi, Matthew
>> > >
>> > > Would you mind sharing some insight on this check?
>> >
>> > It's right there in the comments.
>>
>> Well I can't figure out which comment you're referring to?
>
> * WARNING: bit 0 of the first word is used for PageTail(). That
> * means the other users of this union MUST NOT use the bit to
> * avoid collision and false-positive PageTail().
>
I know this requirement on bit 0 of first word. But I don't see the connection
between this and the check of page->compound_head and folio->lru.
This is more like a internal requirement on struct page. There are 8 struct in
this five words union. And this requirement apply to bit 0 of first word of
all those five struct.
To me, if folio has the same layout of page, folio meets this requirement. I
still not catch the point why we need this check here.
--
Wei Yang
Help you, Help me
Powered by blists - more mailing lists