[PATCH net-next] act_bpf: Use kmemdup instead of duplicating it in tcf_bpf_init_from_ops

Subsystems: bpf [general] (safe dynamic programs and tools), bpf [networking] (tcx & tc bpf, sock_addr), networking [general], tc subsystem, the rest

STALE2936d

2 messages, 2 authors, 2018-07-28 · open the first message on its own page

[PATCH net-next] act_bpf: Use kmemdup instead of duplicating it in tcf_bpf_init_from_ops

From: YueHaibing <hidden>
Date: 2018-07-28 10:38:38

Replace calls to kmalloc followed by a memcpy with a direct call to
kmemdup.

Signed-off-by: YueHaibing <redacted>
---
 net/sched/act_bpf.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/net/sched/act_bpf.c b/net/sched/act_bpf.c
index 06f743d..6203eb0 100644
--- a/net/sched/act_bpf.c
+++ b/net/sched/act_bpf.c
@@ -196,12 +196,10 @@ static int tcf_bpf_init_from_ops(struct nlattr **tb, struct tcf_bpf_cfg *cfg)
 	if (bpf_size != nla_len(tb[TCA_ACT_BPF_OPS]))
 		return -EINVAL;
 
-	bpf_ops = kzalloc(bpf_size, GFP_KERNEL);
+	bpf_ops = kmemdup(nla_data(tb[TCA_ACT_BPF_OPS]), bpf_size, GFP_KERNEL);
 	if (bpf_ops == NULL)
 		return -ENOMEM;
 
-	memcpy(bpf_ops, nla_data(tb[TCA_ACT_BPF_OPS]), bpf_size);
-
 	fprog_tmp.len = bpf_num_ops;
 	fprog_tmp.filter = bpf_ops;
 
-- 
2.7.0

Re: [PATCH net-next] act_bpf: Use kmemdup instead of duplicating it in tcf_bpf_init_from_ops

From: Daniel Borkmann <daniel@iogearbox.net>
Date: 2018-07-28 19:18:09

On 07/28/2018 12:38 PM, YueHaibing wrote:
Replace calls to kmalloc followed by a memcpy with a direct call to
kmemdup.

Signed-off-by: YueHaibing <redacted>
Acked-by: Daniel Borkmann <daniel@iogearbox.net>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help