On Fri, 14 Jun 2019 17:20:14 +0900
Toshiaki Makita <[email protected]> wrote:
> dev_map_free() forgot to free bulk queue when freeing its entries.
>
> Fixes: 5d053f9da431 ("bpf: devmap prepare xdp frames for bulking")
> Signed-off-by: Toshiaki Makita <[email protected]>
> ---
> kernel/bpf/devmap.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/kernel/bpf/devmap.c b/kernel/bpf/devmap.c
> index e001fb1..a126d95 100644
> --- a/kernel/bpf/devmap.c
> +++ b/kernel/bpf/devmap.c
> @@ -186,6 +186,7 @@ static void dev_map_free(struct bpf_map *map)
> if (!dev)
> continue;
>
> + free_percpu(dev->bulkq);
> dev_put(dev->dev);
> kfree(dev);
> }
Do we need to call need to call dev_map_flush_old() before
free_percpu(dev->bulkq) ?
Looking the code, I guess this is not needed as, above we are ensuring
all pending flush operations have completed.
Acked-by: Jesper Dangaard Brouer <[email protected]>
--
Best regards,
Jesper Dangaard Brouer
MSc.CS, Principal Kernel Engineer at Red Hat
LinkedIn: http://www.linkedin.com/in/brouer