Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx> wrote on Tue [2016-Feb-16 15:51:05 -0300]: > After sub-dev registration in v4l2_async_test_notify(), the v4l2-async > core calls the registered_async callback but if a sub-dev driver does > not implement it, v4l2_subdev_call() will return a -ENOIOCTLCMD which > should not be considered an error. > > Reported-by: Benoit Parrot <bparrot@xxxxxx> > Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx> > > --- > > drivers/media/v4l2-core/v4l2-async.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/media/v4l2-core/v4l2-async.c b/drivers/media/v4l2-core/v4l2-async.c > index 716bfd47daab..4d809115ba49 100644 > --- a/drivers/media/v4l2-core/v4l2-async.c > +++ b/drivers/media/v4l2-core/v4l2-async.c > @@ -113,7 +113,7 @@ static int v4l2_async_test_notify(struct v4l2_async_notifier *notifier, > list_move(&sd->async_list, ¬ifier->done); > > ret = v4l2_device_register_subdev(notifier->v4l2_dev, sd); > - if (ret < 0) { > + if (ret < 0 && ret != -ENOIOCTLCMD) { NAK. This fix should be on the next if block. The one that actually invokes the registered_async call back. As is it does not help. Benoit > if (notifier->unbind) > notifier->unbind(notifier, sd, asd); > return ret; > -- > 2.5.0 > -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html