Re: [PATCH 1/1] block/bio.c: use GFP_NOFS

Jens Axboe
2014-06-16T15:12:43Z

On 2014-06-15 18:28, Hugh Dickins wrote:
> On Sat, 14 Jun 2014, Fabian Frederick wrote:
>
>> Use GFP_NOFS instead of its definition.
>>
>> Cc: Jens Axboe <axboe@kernel.dk>
>> Signed-off-by: Fabian Frederick <fabf@skynet.be>
>> ---
>> block/bio.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/block/bio.c b/block/bio.c
>> index 8c2e55e..ec5d172 100644
>> --- a/block/bio.c
>> +++ b/block/bio.c
>> @@ -211,7 +211,7 @@ fallback:
>> bvl = mempool_alloc(pool, gfp_mask);
>> } else {
>> struct biovec_slab *bvs = bvec_slabs + *idx;
>> - gfp_t __gfp_mask = gfp_mask & ~(__GFP_WAIT | __GFP_IO);
>> + gfp_t __gfp_mask = gfp_mask & ~GFP_NOFS;
>>
>> /*
>> * Make this allocation restricted and don't dump info on
>> --
>> 1.8.4.5
>
> Please no. The original was fine, this just makes it harder to read.

I agree. GFP_NOFS is useful when it's used as a whole, but for this use
case, explicitly saying that we want to wait for mem and we allow IO is
much clearer. The fact that this just happens to be GFP_NOFS doesn't
really matter.

> (But I confess to hypocrisy in finding "& ~GFP_KERNEL" useful myself
> in the past somewhere.)

That's just sick, Hugh :-)

--
Jens Axboe