Re: [PATCH 12/25] Remove a branch by assuming __GFP_HIGH == ALLOC_HIGH

Pekka Enberg
2009-04-21T10:25:27Z

Hi Mel,

On Tue, Apr 21, 2009 at 11:45 AM, Mel Gorman <mel@csn.ul.ie> wrote:
>> > @@ -1639,8 +1639,8 @@ gfp_to_alloc_flags(gfp_t gfp_mask)
>> >      * policy or is asking for __GFP_HIGH memory.  GFP_ATOMIC requests will
>> >      * set both ALLOC_HARDER (!wait) and ALLOC_HIGH (__GFP_HIGH).
>> >      */
>> > -   if (gfp_mask & __GFP_HIGH)
>> > -           alloc_flags |= ALLOC_HIGH;
>> > +   VM_BUG_ON(__GFP_HIGH != ALLOC_HIGH);
>> > +   alloc_flags |= (gfp_mask & __GFP_HIGH);
>>
>> Shouldn't you then also change ALLOC_HIGH to use __GFP_HIGH or at least
>> add a comment somewhere?
>
> That might break in weird ways if __GFP_HIGH changes in value then. I
> can add a comment though
>
> /*
>  * __GFP_HIGH is assumed to be the same as ALLOC_HIGH to save a branch.
>  * Check for DEBUG_VM that the assumption is still correct. It cannot be
>  * checked at compile-time due to casting
>  */
>
> ?

I'm perfectly fine with something like that.

Reviewed-by: Pekka Enberg <penberg@cs.helsinki.fi>

Pekka