linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH bpf 1/1] xdp: unpin xdp umem pages in error path
@ 2019-08-15 20:56 Ivan Khoronzhuk
  2019-08-15 21:01 ` Jonathan Lemon
  2019-08-20 15:12 ` Daniel Borkmann
  0 siblings, 2 replies; 3+ messages in thread
From: Ivan Khoronzhuk @ 2019-08-15 20:56 UTC (permalink / raw)
  To: bjorn.topel
  Cc: magnus.karlsson, jonathan.lemon, davem, ast, daniel,
	jakub.kicinski, hawk, john.fastabend, netdev, bpf, linux-kernel,
	Ivan Khoronzhuk

Fix mem leak caused by missed unpin routine for umem pages.
Fixes: 8aef7340ae9695 ("commit xsk: introduce xdp_umem_page")

Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org>
---

Based on bpf/master

 net/xdp/xdp_umem.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/net/xdp/xdp_umem.c b/net/xdp/xdp_umem.c
index 83de74ca729a..688aac7a6943 100644
--- a/net/xdp/xdp_umem.c
+++ b/net/xdp/xdp_umem.c
@@ -365,7 +365,7 @@ static int xdp_umem_reg(struct xdp_umem *umem, struct xdp_umem_reg *mr)
 	umem->pages = kcalloc(umem->npgs, sizeof(*umem->pages), GFP_KERNEL);
 	if (!umem->pages) {
 		err = -ENOMEM;
-		goto out_account;
+		goto out_pin;
 	}
 
 	for (i = 0; i < umem->npgs; i++)
@@ -373,6 +373,8 @@ static int xdp_umem_reg(struct xdp_umem *umem, struct xdp_umem_reg *mr)
 
 	return 0;
 
+out_pin:
+	xdp_umem_unpin_pages(umem);
 out_account:
 	xdp_umem_unaccount_pages(umem);
 	return err;
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH bpf 1/1] xdp: unpin xdp umem pages in error path
  2019-08-15 20:56 [PATCH bpf 1/1] xdp: unpin xdp umem pages in error path Ivan Khoronzhuk
@ 2019-08-15 21:01 ` Jonathan Lemon
  2019-08-20 15:12 ` Daniel Borkmann
  1 sibling, 0 replies; 3+ messages in thread
From: Jonathan Lemon @ 2019-08-15 21:01 UTC (permalink / raw)
  To: Ivan Khoronzhuk
  Cc: bjorn.topel, magnus.karlsson, davem, ast, daniel, jakub.kicinski,
	hawk, john.fastabend, netdev, bpf, linux-kernel



On 15 Aug 2019, at 13:56, Ivan Khoronzhuk wrote:

> Fix mem leak caused by missed unpin routine for umem pages.
> Fixes: 8aef7340ae9695 ("commit xsk: introduce xdp_umem_page")
>
> Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org>

Acked-by: Jonathan Lemon <jonathan.lemon@gmail.com>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH bpf 1/1] xdp: unpin xdp umem pages in error path
  2019-08-15 20:56 [PATCH bpf 1/1] xdp: unpin xdp umem pages in error path Ivan Khoronzhuk
  2019-08-15 21:01 ` Jonathan Lemon
@ 2019-08-20 15:12 ` Daniel Borkmann
  1 sibling, 0 replies; 3+ messages in thread
From: Daniel Borkmann @ 2019-08-20 15:12 UTC (permalink / raw)
  To: Ivan Khoronzhuk, bjorn.topel
  Cc: magnus.karlsson, jonathan.lemon, davem, ast, jakub.kicinski,
	hawk, john.fastabend, netdev, bpf, linux-kernel

On 8/15/19 10:56 PM, Ivan Khoronzhuk wrote:
> Fix mem leak caused by missed unpin routine for umem pages.
> Fixes: 8aef7340ae9695 ("commit xsk: introduce xdp_umem_page")
> 
> Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org>

Applied & fixed up 'Fixes:' tag, thanks.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-08-20 15:12 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-15 20:56 [PATCH bpf 1/1] xdp: unpin xdp umem pages in error path Ivan Khoronzhuk
2019-08-15 21:01 ` Jonathan Lemon
2019-08-20 15:12 ` Daniel Borkmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).