media: mediatek: vcodec: Use kmemdup rather than kmalloc/memcpy
authorHaowen Bai <baihaowen@meizu.com>
Tue, 24 May 2022 03:42:21 +0000 (04:42 +0100)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Mon, 20 Jun 2022 09:30:35 +0000 (10:30 +0100)
kmemdup is introduced to duplicate a region of memory in a neat way.
Rather than kmalloc/kzalloc + memcpy, which the programmer needs to
write the size twice (sometimes lead to mistakes), kmemdup improves
readability, leads to smaller code and also reduce the chances of mistakes.
Suggestion to use kmemdup rather than using kmalloc/kzalloc + memcpy.

Signed-off-by: Haowen Bai <baihaowen@meizu.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/media/platform/mediatek/vcodec/vdec/vdec_vp9_req_lat_if.c

index 1e6e8eb942657de4f312b8b4b00aaf36404677a6..f464af190d8ca4bd9f3805efbb261f202321afc4 100644 (file)
@@ -526,13 +526,12 @@ static int vdec_vp9_slice_init_default_frame_ctx(struct vdec_vp9_slice_instance
        if (vdec_vp9_slice_default_frame_ctx)
                goto out;
 
-       frame_ctx = kmalloc(sizeof(*frame_ctx), GFP_KERNEL);
+       frame_ctx = kmemdup(remote_frame_ctx, sizeof(*frame_ctx), GFP_KERNEL);
        if (!frame_ctx) {
                ret = -ENOMEM;
                goto out;
        }
 
-       memcpy(frame_ctx, remote_frame_ctx, sizeof(*frame_ctx));
        vdec_vp9_slice_default_frame_ctx = frame_ctx;
 
 out: