diff options
| author | Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> | 2021-06-14 13:23:40 +0200 |
|---|---|---|
| committer | Mauro Carvalho Chehab <mchehab+huawei@kernel.org> | 2021-07-12 14:22:10 +0200 |
| commit | 9e67f24e4d90858bfec2dbac84d5380db3926bd5 (patch) | |
| tree | 2baf61b65e1c6caaf960e8dcdbe456b2f5db1ab1 /lib/mpi | |
| parent | b65836f40a748f14f402135a28fa75c6cca3e3fb (diff) | |
media: ti-vpe: cal: fix ctx uninitialization
Somewhere along the way the context uninitialization has gone a bit odd:
* We have cal_ctx_create() but no matching destroy call, but we still
need to call cal_ctx_v4l2_cleanup() for each context.
* We have cal_media_cleanup() which calls cal_ctx_v4l2_cleanup() for all
contexts, but cal_media_init() is not where the contexts are created.
* The order of uninit steps in cal_remove() is different than the error
handling path in cal_probe().
* cal_probe()'s error handling calls cal_ctx_v4l2_cleanup() for each
context, but also calls cal_media_clean(), doing the same context
cleanup twice.
So fix these, by introducing cal_ctx_destroy(), and using that in
appropriate places instead of calling cal_ctx_v4l2_cleanup() in
cal_media_clean(). Also use normal kzalloc (and kfree) instead of devm
version as we anyway do manual cleanup for each context.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Diffstat (limited to 'lib/mpi')
0 files changed, 0 insertions, 0 deletions
