On Sat, May 12, 2018 at 11:35:00AM +0000, Huaisheng HS1 Ye wrote:
> > The point of this exercise is to actually encode the zone number in
> > the bottom bits of the GFP flags instead of something which has to be
> > interpreted into a zone number.  When somebody sets __GFP_MOVABLE, they
> > should also be setting ZONE_MOVABLE:
> > 
> > -#define __GFP_MOVABLE   ((__force gfp_t)___GFP_MOVABLE)  /* ZONE_MOVABLE 
> > allowed */
> > +#define __GFP_MOVABLE   ((__force gfp_t)(___GFP_MOVABLE | (ZONE_MOVABLE ^ 
> > ZONE_NORMAL)))
> > 
> I am afraid we couldn't do that, because __GFP_MOVABLE would be used 
> potentially with other __GFPs like __GFP_DMA and __GFP_DMA32.

That's not a combination that makes much sense.  I know it's permitted today
(and it has the effect of being a no-op), but when you think about it, it
doesn't actually make any sense.

Reply via email to