On Thu, Oct 22, 2020 at 04:58:42PM -0400, Gabriel Krisman Bertazi wrote: > Similarly to commit 457e490f2b741 ("blkcg: allocate struct blkcg_gq > outside request queue spinlock"), blkg_create can also trigger > occasional -ENOMEM failures at the radix insertion because any > allocation inside blkg_create has to be non-blocking, making it more > likely to fail. This causes trouble for userspace tools trying to > configure io weights who need to deal with this condition. > > This patch reduces the occurrence of -ENOMEMs on this path by preloading > the radix tree element on a GFP_KERNEL context, such that we guarantee > the later non-blocking insertion won't fail. > > A similar solution exists in blkcg_init_queue for the same situation. > > Signed-off-by: Gabriel Krisman Bertazi <krisman@xxxxxxxxxxxxx> Acked-by: Tejun Heo <tj@xxxxxxxxxx> Thanks. -- tejun