[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <12303882-dd84-485a-28cb-cefbaac4d960@oracle.com>
Date: Tue, 30 Aug 2022 11:09:33 -0700
From: Sidhartha Kumar <sidhartha.kumar@...cle.com>
To: Matthew Wilcox <willy@...radead.org>
Cc: linux-kernel@...r.kernel.org, linux-mm@...ck.org,
akpm@...ux-foundation.org, songmuchun@...edance.com,
mike.kravetz@...cle.com, vbabka@...e.cz,
william.kucharski@...cle.com, dhowells@...hat.com,
peterx@...hat.com, arnd@...db.de, ccross@...gle.com,
hughd@...gle.com, ebiederm@...ssion.com
Subject: Re: [PATCH 1/7] mm/hugetlb: add folio support to hugetlb specific
flag macros
On 8/29/22 8:33 PM, Matthew Wilcox wrote:
> On Mon, Aug 29, 2022 at 04:00:08PM -0700, Sidhartha Kumar wrote:
>> #define TESTHPAGEFLAG(uname, flname) \
>> +static __always_inline \
>> +int folio_test_hugetlb_##flname(struct folio *folio) \
> One change I made was to have folio_test_foo() return bool instead of
> int. It helps the compiler really understand what's going on. Maybe
> some humans too ;-)
>
I went with returning an int to stay consistent with the page version
of the macros which return an int. I'm fine with changing it to return
a bool.
>> + { void **private = &folio->private; \
>> + return test_bit(HPG_##flname, (void *)((unsigned long)private)); \
> I've made this tricky for you by making folio->private a void * instead
> of the unsigned long in page. Would this look better as ...
>
> { \
> void *private = &folio->private; \
> return test_bit(HPG_##flname, private); \
>
> perhaps?
Ya this looks much better and passes the tests, will add to v2.
Powered by blists - more mailing lists