Commit 25a64360 authored by Laurent Pinchart's avatar Laurent Pinchart Committed by Mauro Carvalho Chehab
Browse files

media: v4l2-async: Safely unregister an non-registered async subdev



Make the V4L2 async framework a bit more robust by allowing to
unregister a non-registered async subdev. Otherwise the
v4l2_async_cleanup() will attempt to delete the async subdev from the
subdev_list with the corresponding list_head not initialized.

Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
parent b7cdd645
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -813,6 +813,9 @@ EXPORT_SYMBOL(v4l2_async_register_subdev);

void v4l2_async_unregister_subdev(struct v4l2_subdev *sd)
{
	if (!sd->async_list.next)
		return;

	mutex_lock(&list_lock);

	__v4l2_async_notifier_unregister(sd->subdev_notifier);