mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-09 03:10:30 -04:00
media: amphion: add lock around vdec_g_fmt
the capture format may be changed when
sequence header is parsed,
it may be read and write in the same time,
add lock around vdec_g_fmt to synchronize it
Fixes: 6de8d628df ("media: amphion: add v4l2 m2m vpu decoder stateful driver")
Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
This commit is contained in:
@@ -286,6 +286,7 @@ static int vdec_g_fmt(struct file *file, void *fh, struct v4l2_format *f)
|
||||
struct vpu_format *cur_fmt;
|
||||
int i;
|
||||
|
||||
vpu_inst_lock(inst);
|
||||
cur_fmt = vpu_get_format(inst, f->type);
|
||||
|
||||
pixmp->pixelformat = cur_fmt->pixfmt;
|
||||
@@ -303,6 +304,7 @@ static int vdec_g_fmt(struct file *file, void *fh, struct v4l2_format *f)
|
||||
f->fmt.pix_mp.xfer_func = vdec->codec_info.transfer_chars;
|
||||
f->fmt.pix_mp.ycbcr_enc = vdec->codec_info.matrix_coeffs;
|
||||
f->fmt.pix_mp.quantization = vdec->codec_info.full_range;
|
||||
vpu_inst_unlock(inst);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user