Re: [PATCH] block: blk-mq-sched: Replace GFP_ATOMIC with GFP_KERNEL in blk_mq_sched_assign_ioc
From: Ming Lei <hidden>
Date: 2018-01-25 05:29:54
Also in:
lkml
From: Ming Lei <hidden>
Date: 2018-01-25 05:29:54
Also in:
lkml
On Wed, Jan 24, 2018 at 08:34:14PM -0700, Jens Axboe wrote:
On 1/24/18 7:46 PM, Jia-Ju Bai wrote:quoted
The function ioc_create_icq here is not called in atomic context. Thus GFP_ATOMIC is not necessary, and it can be replaced with GFP_KERNEL. This is found by a static analysis tool named DCNS written by myself.But it's running off the IO submission path, so by definition the GFP mask cannot include anything that will do IO. GFP_KERNEL will make it deadlock prone. It could be GFP_NOIO, but that's also overlooking the fact that we can have preemption disabled here.
We have REQ_NOWAIT request too, so GFP_NOIO isn't OK too. -- Ming