| From | Andrzej Hajda <> | Subject | [PATCH 26/31] net/sched: use kmemdup rather than duplicating its implementation | Date | Fri, 07 Aug 2015 09:59:32 +0200 |
| |
The patch was generated using fixed coccinelle semantic patch scripts/coccinelle/api/memdup.cocci [1].
[1]: http://permalink.gmane.org/gmane.linux.kernel/2014320
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> --- net/sched/act_bpf.c | 4 +--- net/sched/cls_bpf.c | 4 +--- 2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/net/sched/act_bpf.c b/net/sched/act_bpf.c index 1b97dab..5c0fa03 100644 --- a/net/sched/act_bpf.c +++ b/net/sched/act_bpf.c @@ -190,12 +190,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; diff --git a/net/sched/cls_bpf.c b/net/sched/cls_bpf.c index e5168f8..423f774 100644 --- a/net/sched/cls_bpf.c +++ b/net/sched/cls_bpf.c @@ -212,12 +212,10 @@ static int cls_bpf_prog_from_ops(struct nlattr **tb, if (bpf_size != nla_len(tb[TCA_BPF_OPS])) return -EINVAL; - bpf_ops = kzalloc(bpf_size, GFP_KERNEL); + bpf_ops = kmemdup(nla_data(tb[TCA_BPF_OPS]), bpf_size, GFP_KERNEL); if (bpf_ops == NULL) return -ENOMEM; - memcpy(bpf_ops, nla_data(tb[TCA_BPF_OPS]), bpf_size); - fprog_tmp.len = bpf_num_ops; fprog_tmp.filter = bpf_ops; -- 1.9.1
|