[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YxDj+ZCKx3fpHQvI@monkey>
Date: Thu, 1 Sep 2022 09:55:21 -0700
From: Mike Kravetz <mike.kravetz@...cle.com>
To: Sidhartha Kumar <sidhartha.kumar@...cle.com>
Cc: Matthew Wilcox <willy@...radead.org>, linux-kernel@...r.kernel.org,
linux-mm@...ck.org, akpm@...ux-foundation.org,
songmuchun@...edance.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 08/30/22 11:09, Sidhartha Kumar wrote:
>
>
> 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.
I believe the page test macros returned an int when I added the hugetlb
specific versions. So, I just did the same. Since they are now bool,
it makes sense to have these be consistent.
--
Mike Kravetz
>
> > > + { 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