Re: [PATCH bpf] devmap: Use GFP_KERNEL for xdp bulk queue allocation

From: Daniel Borkmann
Date: Fri Feb 12 2021 - 18:19:32 EST


On 2/9/21 9:24 AM, NOMURA JUNICHI(野村 淳一) wrote:
The devmap bulk queue is allocated with GFP_ATOMIC and the allocation may
fail if there is no available space in existing percpu pool.

Since commit 75ccae62cb8d42 ("xdp: Move devmap bulk queue into struct net_device")
moved the bulk queue allocation to NETDEV_REGISTER callback, whose context
is allowed to sleep, use GFP_KERNEL instead of GFP_ATOMIC to let percpu
allocator extend the pool when needed and avoid possible failure of netdev
registration.

As the required alignment is natural, we can simply use alloc_percpu().

Signed-off-by: Jun'ichi Nomura <junichi.nomura@xxxxxxx>

Applied, thanks!