Hi,
Lamarque Vieira Souza wrote:
Em Quinta-feira 16 Julho 2009, Mauro Carvalho Chehab escreveu:
Em Wed, 15 Jul 2009 20:54:55 -0300
[...]
+ if (pipe_info->state != 0) {
+ if (usb_submit_urb(pipe_info->stream_urb, GFP_KERNEL))
+ dev_err(&cam->udev->dev, "error submitting urb\n");
+ } else {
+ DBG("read pipe complete state 0\n");
+ }
Hmm... for the usb_submit_urb() call that happens during IRQ context
(while you're receiving stream), you need to use:
urb->status = usb_submit_urb(pipe_info->stream_urb, GFP_ATOMIC);
otherwise, you may get the errors that Antoine is reporting
Ok, changed to GPF_ATOMIC. Could someone test this for me since I was not
able to reproduce this problem? The new patch is here
http://bach.metasys.com.br/~lamarque/zr364xx/zr364xx.c-streaming.patch-v4l-
dvb-20090716 . I upload it to avoid bloating the mailing-list with a 40k
patch.
I confirm it fixes the issue.
I will upload the patch to my branch and send a pull request to Mauro.
Thanks and best regards,
Antoine
--
Antoine "Royale" Jacquet
http://royale.zerezo.com
--
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