bpf: Use kmemdup() to replace kmalloc + memcpy
Eliminate the follow coccicheck warning: ./kernel/bpf/btf.c:6537:13-20: WARNING opportunity for kmemdup. Reported-by: Abaci Robot <abaci@linux.alibaba.com> Signed-off-by: Jiapeng Chong <jiapeng.chong@linux.alibaba.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Link: https://lore.kernel.org/bpf/1639030882-92383-1-git-send-email-jiapeng.chong@linux.alibaba.com
This commit is contained in:
parent
84ef3f0bb7
commit
4674f21071
|
@ -6534,12 +6534,11 @@ static struct bpf_cand_cache *populate_cand_cache(struct bpf_cand_cache *cands,
|
||||||
bpf_free_cands_from_cache(*cc);
|
bpf_free_cands_from_cache(*cc);
|
||||||
*cc = NULL;
|
*cc = NULL;
|
||||||
}
|
}
|
||||||
new_cands = kmalloc(sizeof_cands(cands->cnt), GFP_KERNEL);
|
new_cands = kmemdup(cands, sizeof_cands(cands->cnt), GFP_KERNEL);
|
||||||
if (!new_cands) {
|
if (!new_cands) {
|
||||||
bpf_free_cands(cands);
|
bpf_free_cands(cands);
|
||||||
return ERR_PTR(-ENOMEM);
|
return ERR_PTR(-ENOMEM);
|
||||||
}
|
}
|
||||||
memcpy(new_cands, cands, sizeof_cands(cands->cnt));
|
|
||||||
/* strdup the name, since it will stay in cache.
|
/* strdup the name, since it will stay in cache.
|
||||||
* the cands->name points to strings in prog's BTF and the prog can be unloaded.
|
* the cands->name points to strings in prog's BTF and the prog can be unloaded.
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue