]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
nfp: bpf: Use kmemdup_array instead of kmemdup for multiple allocation
authorYu Jiaoliang <yujiaoliang@vivo.com>
Wed, 21 Aug 2024 08:14:45 +0000 (16:14 +0800)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 22 Aug 2024 13:12:02 +0000 (15:12 +0200)
Let the kememdup_array() take care about multiplication and possible
overflows.

Signed-off-by: Yu Jiaoliang <yujiaoliang@vivo.com>
Signed-off-by: Louis Peens <louis.peens@corigine.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20240821081447.12430-1-yujiaoliang@vivo.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/netronome/nfp/bpf/jit.c

index df2ab5cbd49bd1ffabb8a464462700bdf8b1d3fe..3a02eef58cc6d977fcd130e0b69947deff468d3f 100644 (file)
@@ -4537,8 +4537,8 @@ void *nfp_bpf_relo_for_vnic(struct nfp_prog *nfp_prog, struct nfp_bpf_vnic *bv)
        u64 *prog;
        int err;
 
-       prog = kmemdup(nfp_prog->prog, nfp_prog->prog_len * sizeof(u64),
-                      GFP_KERNEL);
+       prog = kmemdup_array(nfp_prog->prog, nfp_prog->prog_len, sizeof(u64),
+                            GFP_KERNEL);
        if (!prog)
                return ERR_PTR(-ENOMEM);