Commit ceeb2e61 authored by Dafna Hirschfeld's avatar Dafna Hirschfeld Committed by Mauro Carvalho Chehab

media: vimc: streamer: fix memory leak in vimc subdevs if kthread_run fails

In case kthread_run fails, the vimc subdevices
should be notified that streaming stopped so they can
release the memory for the streaming. Also, kthread should be
set to NULL.
Signed-off-by: default avatarDafna Hirschfeld <dafna.hirschfeld@collabora.com>
Acked-by: default avatarHelen Koike <helen.koike@collabora.com>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
parent 23c72dd9
...@@ -207,8 +207,13 @@ int vimc_streamer_s_stream(struct vimc_stream *stream, ...@@ -207,8 +207,13 @@ int vimc_streamer_s_stream(struct vimc_stream *stream,
stream->kthread = kthread_run(vimc_streamer_thread, stream, stream->kthread = kthread_run(vimc_streamer_thread, stream,
"vimc-streamer thread"); "vimc-streamer thread");
if (IS_ERR(stream->kthread)) if (IS_ERR(stream->kthread)) {
return PTR_ERR(stream->kthread); ret = PTR_ERR(stream->kthread);
dev_err(ved->dev, "kthread_run failed with %d\n", ret);
vimc_streamer_pipeline_terminate(stream);
stream->kthread = NULL;
return ret;
}
} else { } else {
if (!stream->kthread) if (!stream->kthread)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment