b/drivers/media/v4l2-core/v4l2-async.c
@@ -83,7 +83,20 @@ static int v4l2_async_test_notify(struct
v4l2_async_notifier *notifier,
struct v4l2_async_subdev_list *asdl,
struct v4l2_async_subdev *asd)
{
- int ret;
+ int ret, i, found = 0;
+
+ /* scan through the waiting list and see if the async
+ * subdev is present in it.
+ */
+ for (i = 0; i < notifier->subdev_num; i++) {
+ if (asd == notifier->subdev[i]) {
+ found = 1;
+ break;
+ }
+ }
+ /* The async subdev 'asd' is not intrseted by waiting list */
+ if (!found)
+ return 0;
/* Remove from the waiting list */