[PATCH net-next] bpf: fix a return in sockmap_get_from_fd()

Subsystems: bpf [core], bpf [general] (safe dynamic programs and tools), the rest

STALE3350d

4 messages, 4 authors, 2017-08-18 · open the first message on its own page

[PATCH net-next] bpf: fix a return in sockmap_get_from_fd()

From: Dan Carpenter <hidden>
Date: 2017-08-18 07:27:43

"map" is a valid pointer.  We wanted to return "err" instead.  Also
let's return a zero literal at the end.

Fixes: 174a79ff9515 ("bpf: sockmap with sk redirect support")
Signed-off-by: Dan Carpenter <redacted>
diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c
index d2f2bdf71ffa..b8cb1b3c9bfb 100644
--- a/kernel/bpf/syscall.c
+++ b/kernel/bpf/syscall.c
@@ -1125,11 +1125,11 @@ static int sockmap_get_from_fd(const union bpf_attr *attr, int ptype)
 		fdput(f);
 		bpf_prog_put(prog1);
 		bpf_prog_put(prog2);
-		return PTR_ERR(map);
+		return err;
 	}
 
 	fdput(f);
-	return err;
+	return 0;
 }
 
 static int bpf_prog_attach(const union bpf_attr *attr)

Re: [PATCH net-next] bpf: fix a return in sockmap_get_from_fd()

From: John Fastabend <john.fastabend@gmail.com>
Date: 2017-08-18 07:40:58

On 08/18/2017 12:27 AM, Dan Carpenter wrote:
quoted hunk
"map" is a valid pointer.  We wanted to return "err" instead.  Also
let's return a zero literal at the end.

Fixes: 174a79ff9515 ("bpf: sockmap with sk redirect support")
Signed-off-by: Dan Carpenter <redacted>
diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c
index d2f2bdf71ffa..b8cb1b3c9bfb 100644
--- a/kernel/bpf/syscall.c
+++ b/kernel/bpf/syscall.c
Thanks, just a note though the sockmap attach call can not fail so
this branch is effectively never used. We could just remove the
branch but having an unchecked 'err' code seems fragile if we ever
do find a reason to fail in the attach path.

Acked-by: John Fastabend <john.fastabend@gmail.com>
quoted hunk
@@ -1125,11 +1125,11 @@ static int sockmap_get_from_fd(const union bpf_attr *attr, int ptype)
 		fdput(f);
 		bpf_prog_put(prog1);
 		bpf_prog_put(prog2);
-		return PTR_ERR(map);
+		return err;
 	}
 
 	fdput(f);
-	return err;
+	return 0;
 }
 
 static int bpf_prog_attach(const union bpf_attr *attr)

Re: [PATCH net-next] bpf: fix a return in sockmap_get_from_fd()

From: Daniel Borkmann <daniel@iogearbox.net>
Date: 2017-08-18 08:21:16

On 08/18/2017 09:27 AM, Dan Carpenter wrote:
"map" is a valid pointer.  We wanted to return "err" instead.  Also
let's return a zero literal at the end.

Fixes: 174a79ff9515 ("bpf: sockmap with sk redirect support")
Signed-off-by: Dan Carpenter <redacted>
Acked-by: Daniel Borkmann <daniel@iogearbox.net>

Re: [PATCH net-next] bpf: fix a return in sockmap_get_from_fd()

From: David Miller <davem@davemloft.net>
Date: 2017-08-18 17:18:36

From: Dan Carpenter <redacted>
Date: Fri, 18 Aug 2017 10:27:02 +0300
"map" is a valid pointer.  We wanted to return "err" instead.  Also
let's return a zero literal at the end.

Fixes: 174a79ff9515 ("bpf: sockmap with sk redirect support")
Signed-off-by: Dan Carpenter <redacted>
Applied.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help