Hi, I am working on a V4L2 based video decoder driver,
At user side there are two contexts. One is queuing/dequeuing buffers from driver (in a separate thread) and other is the main context, from where I am calling streamon, streamoff. When I call a streamoff from main context and thread is blocking on dqbuf, This cause the blocking thread to unblock from dqbuf with an error (EINVAL). Seems this error coming from videobuf2-core, as streamoff will unblock the waiting thread, and this thread will go and check (in function __vb2_wait_for_done_vb) for q->streaming and will return error as q->streaming will be set to false on streamoff. Is it the right behavior of vb2_dqbuf to return error when streamoff is called? Or is it a right way to have this kind of mechanism i.e.on userside one thread is queue/dequeue buffers while another is doing streamoff. Thanks for your help and idea. Thanks, Chetan Nanda
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies