[PATCH v2 2/2] media: meson: vdec: add HEVC decode codec
Dan Carpenter
error27 at gmail.com
Sun Mar 12 21:36:39 PDT 2023
Hi Christian,
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Christian-Hewitt/media-meson-vdec-implement-10bit-bitstream-handling/20230124-114201
base: git://linuxtv.org/media_tree.git master
patch link: https://lore.kernel.org/r/20230124034058.3407235-3-christianshewitt%40gmail.com
patch subject: [PATCH v2 2/2] media: meson: vdec: add HEVC decode codec
config: s390-randconfig-m031-20230310 (https://download.01.org/0day-ci/archive/20230312/202303120441.YFGHDOya-lkp@intel.com/config)
compiler: s390-linux-gcc (GCC) 12.1.0
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp at intel.com>
| Reported-by: Dan Carpenter <error27 at gmail.com>
| Link: https://lore.kernel.org/r/202303120441.YFGHDOya-lkp@intel.com/
smatch warnings:
drivers/staging/media/meson/vdec/codec_hevc.c:734 codec_hevc_prepare_new_frame() warn: possible memory leak of 'new_frame'
vim +/new_frame +734 drivers/staging/media/meson/vdec/codec_hevc.c
015f7814a5a991 Maxime Jourdan 2023-01-24 718 static struct hevc_frame *
015f7814a5a991 Maxime Jourdan 2023-01-24 719 codec_hevc_prepare_new_frame(struct amvdec_session *sess)
015f7814a5a991 Maxime Jourdan 2023-01-24 720 {
015f7814a5a991 Maxime Jourdan 2023-01-24 721 struct amvdec_core *core = sess->core;
015f7814a5a991 Maxime Jourdan 2023-01-24 722 struct hevc_frame *new_frame = NULL;
015f7814a5a991 Maxime Jourdan 2023-01-24 723 struct codec_hevc *hevc = sess->priv;
015f7814a5a991 Maxime Jourdan 2023-01-24 724 struct vb2_v4l2_buffer *vbuf;
015f7814a5a991 Maxime Jourdan 2023-01-24 725 union rpm_param *params = &hevc->rpm_param;
015f7814a5a991 Maxime Jourdan 2023-01-24 726
015f7814a5a991 Maxime Jourdan 2023-01-24 727 new_frame = kzalloc(sizeof(*new_frame), GFP_KERNEL);
015f7814a5a991 Maxime Jourdan 2023-01-24 728 if (!new_frame)
015f7814a5a991 Maxime Jourdan 2023-01-24 729 return NULL;
015f7814a5a991 Maxime Jourdan 2023-01-24 730
015f7814a5a991 Maxime Jourdan 2023-01-24 731 vbuf = v4l2_m2m_dst_buf_remove(sess->m2m_ctx);
015f7814a5a991 Maxime Jourdan 2023-01-24 732 if (!vbuf) {
015f7814a5a991 Maxime Jourdan 2023-01-24 733 dev_err(sess->core->dev, "No dst buffer available\n");
015f7814a5a991 Maxime Jourdan 2023-01-24 @734 return NULL;
kfree(new_frame);
015f7814a5a991 Maxime Jourdan 2023-01-24 735 }
015f7814a5a991 Maxime Jourdan 2023-01-24 736
015f7814a5a991 Maxime Jourdan 2023-01-24 737 new_frame->vbuf = vbuf;
015f7814a5a991 Maxime Jourdan 2023-01-24 738 new_frame->referenced = 1;
015f7814a5a991 Maxime Jourdan 2023-01-24 739 new_frame->show = 1;
015f7814a5a991 Maxime Jourdan 2023-01-24 740 new_frame->poc = hevc->curr_poc;
015f7814a5a991 Maxime Jourdan 2023-01-24 741 new_frame->cur_slice_type = params->p.slice_type;
015f7814a5a991 Maxime Jourdan 2023-01-24 742 new_frame->num_reorder_pic = params->p.sps_num_reorder_pics_0;
015f7814a5a991 Maxime Jourdan 2023-01-24 743 new_frame->offset = amvdec_read_dos(core, HEVC_SHIFT_BYTE_COUNT);
015f7814a5a991 Maxime Jourdan 2023-01-24 744
015f7814a5a991 Maxime Jourdan 2023-01-24 745 list_add_tail(&new_frame->list, &hevc->ref_frames_list);
015f7814a5a991 Maxime Jourdan 2023-01-24 746 hevc->frames_num++;
015f7814a5a991 Maxime Jourdan 2023-01-24 747
015f7814a5a991 Maxime Jourdan 2023-01-24 748 return new_frame;
015f7814a5a991 Maxime Jourdan 2023-01-24 749 }
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests
More information about the linux-arm-kernel
mailing list