Messages in this thread | | | Date | Tue, 30 Aug 2022 19:07:08 +0200 | From | Tommaso Merciai <> | Subject | Re: [PATCH] media: amphion: release m2m ctx when releasing vpu instance |
| |
Hi Ming, Nice, from my point off view you move v4l2_m2m_ctx_release into the right position (release function).
checkpatch.pl also looks good. total: 0 errors, 0 warnings, 772 lines checked
Looks good to me.
Reviewed-by: Tommaso Merciai <tommaso.merciai@amarulasolutions.com>
Regards, Tommaso
On Mon, Aug 29, 2022 at 01:33:16PM +0800, Ming Qian wrote: > release m2m ctx in the callback function that > release the vpu instance, then there is no need > to add lock around releasing m2m ctx. > > Fixes: 3cd084519c6f ("media: amphion: add vpu v4l2 m2m support") > Signed-off-by: Ming Qian <ming.qian@nxp.com> > --- > drivers/media/platform/amphion/vpu_v4l2.c | 11 ++++------- > 1 file changed, 4 insertions(+), 7 deletions(-) > > diff --git a/drivers/media/platform/amphion/vpu_v4l2.c b/drivers/media/platform/amphion/vpu_v4l2.c > index 1f18289aa47a..99ad2f1c5a53 100644 > --- a/drivers/media/platform/amphion/vpu_v4l2.c > +++ b/drivers/media/platform/amphion/vpu_v4l2.c > @@ -688,6 +688,10 @@ static int vpu_v4l2_release(struct vpu_inst *inst) > inst->workqueue = NULL; > } > > + if (inst->fh.m2m_ctx) { > + v4l2_m2m_ctx_release(inst->fh.m2m_ctx); > + inst->fh.m2m_ctx = NULL; > + } > v4l2_ctrl_handler_free(&inst->ctrl_handler); > mutex_destroy(&inst->lock); > v4l2_fh_del(&inst->fh); > @@ -770,13 +774,6 @@ int vpu_v4l2_close(struct file *file) > > vpu_trace(vpu->dev, "tgid = %d, pid = %d, inst = %p\n", inst->tgid, inst->pid, inst); > > - vpu_inst_lock(inst); > - if (inst->fh.m2m_ctx) { > - v4l2_m2m_ctx_release(inst->fh.m2m_ctx); > - inst->fh.m2m_ctx = NULL; > - } > - vpu_inst_unlock(inst); > - > call_void_vop(inst, release); > vpu_inst_unregister(inst); > vpu_inst_put(inst); > -- > 2.37.1 >
-- Tommaso Merciai Embedded Linux Engineer tommaso.merciai@amarulasolutions.com __________________________________
Amarula Solutions SRL Via Le Canevare 30, 31100 Treviso, Veneto, IT T. +39 042 243 5310 info@amarulasolutions.com www.amarulasolutions.com
| |