RCN kernel 3.13.4-bone5 UVC issue

I don't know if this is an issue specific to the 3.13 kernel, but I have not seen this on 3.8.13. It appears whenever I attempt to stop UVC video acquisition. I suspect it is something to do with DMA vs. PIO. Please let me know if I should post this elsewhere, or if this is the correct place.

Regards,

Dave

[ 8892.908975] ------------[ cut here ]------------
[ 8892.913866] WARNING: CPU: 0 PID: 661 at drivers/dma/cppi41.c:605 cppi41_dma_control+0x230/0x2ac()
[ 8892.923168] Modules linked in: xfrm_user xfrm4_tunnel tunnel4 ipcomp xfrm_ipcomp esp4 ah4 nfsd deflate ctr des_generic cbc ecb cmac af_key xfrm_algo uvcvideo snd_usb_audio videobuf2_vmalloc snd_hwdep videobuf2_memops snd_usbmidi_lib snd_rawmidi videobuf2_core snd_seq_device ti_am335x_adc kfifo_buf industrialio rtc_omap uio_pdrv_genirq uio loop
[ 8892.955243] CPU: 0 PID: 661 Comm: python Not tainted 3.13.4-bone5 #1
[ 8892.961944] [<c001413c>] (unwind_backtrace+0x0/0xdc) from [<c0010ed8>] (show_stack+0x10/0x14)
[ 8892.970895] [<c0010ed8>] (show_stack+0x10/0x14) from [<c06ffd8c>] (dump_stack+0x70/0x8c)
[ 8892.979391] [<c06ffd8c>] (dump_stack+0x70/0x8c) from [<c003997c>] (warn_slowpath_common+0x64/0x88)
[ 8892.988793] [<c003997c>] (warn_slowpath_common+0x64/0x88) from [<c0039a30>] (warn_slowpath_null+0x18/0x20)
[ 8892.998922] [<c0039a30>] (warn_slowpath_null+0x18/0x20) from [<c040e7d8>] (cppi41_dma_control+0x230/0x2ac)
[ 8893.009062] [<c040e7d8>] (cppi41_dma_control+0x230/0x2ac) from [<c0516578>] (cppi41_dma_channel_abort+0x104/0x140)
[ 8893.019924] [<c0516578>] (cppi41_dma_channel_abort+0x104/0x140) from [<c0511ce4>] (musb_cleanup_urb.isra.7+0x44/0xe4)
[ 8893.031056] [<c0511ce4>] (musb_cleanup_urb.isra.7+0x44/0xe4) from [<c0511e78>] (musb_urb_dequeue+0xf4/0x114)
[ 8893.041374] [<c0511e78>] (musb_urb_dequeue+0xf4/0x114) from [<c04fa494>] (usb_hcd_unlink_urb+0x5c/0x7c)
[ 8893.051233] [<c04fa494>] (usb_hcd_unlink_urb+0x5c/0x7c) from [<c04fb244>] (usb_kill_urb+0x50/0xc4)
[ 8893.060674] [<c04fb244>] (usb_kill_urb+0x50/0xc4) from [<bf0994b8>] (uvc_uninit_video+0x34/0x60 [uvcvideo])
[ 8893.070934] [<bf0994b8>] (uvc_uninit_video+0x34/0x60 [uvcvideo]) from [<bf09b538>] (uvc_video_enable+0x18/0x124 [uvcvideo])
[ 8893.082635] [<bf09b538>] (uvc_video_enable+0x18/0x124 [uvcvideo]) from [<bf097bb0>] (uvc_v4l2_release+0x40/0xc4 [uvcvideo])
[ 8893.094338] [<bf097bb0>] (uvc_v4l2_release+0x40/0xc4 [uvcvideo]) from [<c0544718>] (v4l2_release+0x30/0x68)
[ 8893.104564] [<c0544718>] (v4l2_release+0x30/0x68) from [<c011ffb0>] (__fput+0xd4/0x1dc)
[ 8893.112972] [<c011ffb0>] (__fput+0xd4/0x1dc) from [<c005421c>] (task_work_run+0xac/0xc4)
[ 8893.121465] [<c005421c>] (task_work_run+0xac/0xc4) from [<c003bf70>] (do_exit+0x3f0/0x930)
[ 8893.130138] [<c003bf70>] (do_exit+0x3f0/0x930) from [<c003c528>] (do_group_exit+0x4c/0xc4)
[ 8893.138819] [<c003c528>] (do_group_exit+0x4c/0xc4) from [<c00496b0>] (get_signal_to_deliver+0x558/0x5bc)
[ 8893.148769] [<c00496b0>] (get_signal_to_deliver+0x558/0x5bc) from [<c0010528>] (do_signal+0xa8/0x38c)
[ 8893.158444] [<c0010528>] (do_signal+0xa8/0x38c) from [<c0010954>] (do_work_pending+0x54/0x9c)
[ 8893.167389] [<c0010954>] (do_work_pending+0x54/0x9c) from [<c000d920>] (work_pending+0xc/0x20)
[ 8893.176421] ---[ end trace 7ebc29db0c0c9333 ]---
[ 8893.181259] ------------[ cut here ]------------
[ 8893.186102] WARNING: CPU: 0 PID: 661 at drivers/dma/cppi41.c:629 cppi41_dma_control+0x278/0x2ac()
[ 8893.195402] Modules linked in: xfrm_user xfrm4_tunnel tunnel4 ipcomp xfrm_ipcomp esp4 ah4 nfsd deflate ctr des_generic cbc ecb cmac af_key xfrm_algo uvcvideo snd_usb_audio videobuf2_vmalloc snd_hwdep videobuf2_memops snd_usbmidi_lib snd_rawmidi videobuf2_core snd_seq_device ti_am335x_adc kfifo_buf industrialio rtc_omap uio_pdrv_genirq uio loop
[ 8893.227454] CPU: 0 PID: 661 Comm: python Tainted: G W 3.13.4-bone5 #1
[ 8893.235127] [<c001413c>] (unwind_backtrace+0x0/0xdc) from [<c0010ed8>] (show_stack+0x10/0x14)
[ 8893.244073] [<c0010ed8>] (show_stack+0x10/0x14) from [<c06ffd8c>] (dump_stack+0x70/0x8c)
[ 8893.252562] [<c06ffd8c>] (dump_stack+0x70/0x8c) from [<c003997c>] (warn_slowpath_common+0x64/0x88)
[ 8893.261963] [<c003997c>] (warn_slowpath_common+0x64/0x88) from [<c0039a30>] (warn_slowpath_null+0x18/0x20)
[ 8893.272091] [<c0039a30>] (warn_slowpath_null+0x18/0x20) from [<c040e820>] (cppi41_dma_control+0x278/0x2ac)
[ 8893.282223] [<c040e820>] (cppi41_dma_control+0x278/0x2ac) from [<c0516578>] (cppi41_dma_channel_abort+0x104/0x140)
[ 8893.293084] [<c0516578>] (cppi41_dma_channel_abort+0x104/0x140) from [<c0511ce4>] (musb_cleanup_urb.isra.7+0x44/0xe4)
[ 8893.304217] [<c0511ce4>] (musb_cleanup_urb.isra.7+0x44/0xe4) from [<c0511e78>] (musb_urb_dequeue+0xf4/0x114)
[ 8893.314529] [<c0511e78>] (musb_urb_dequeue+0xf4/0x114) from [<c04fa494>] (usb_hcd_unlink_urb+0x5c/0x7c)
[ 8893.324385] [<c04fa494>] (usb_hcd_unlink_urb+0x5c/0x7c) from [<c04fb244>] (usb_kill_urb+0x50/0xc4)
[ 8893.333799] [<c04fb244>] (usb_kill_urb+0x50/0xc4) from [<bf0994b8>] (uvc_uninit_video+0x34/0x60 [uvcvideo])
[ 8893.344045] [<bf0994b8>] (uvc_uninit_video+0x34/0x60 [uvcvideo]) from [<bf09b538>] (uvc_video_enable+0x18/0x124 [uvcvideo])
[ 8893.355746] [<bf09b538>] (uvc_video_enable+0x18/0x124 [uvcvideo]) from [<bf097bb0>] (uvc_v4l2_release+0x40/0xc4 [uvcvideo])
[ 8893.367437] [<bf097bb0>] (uvc_v4l2_release+0x40/0xc4 [uvcvideo]) from [<c0544718>] (v4l2_release+0x30/0x68)
[ 8893.377658] [<c0544718>] (v4l2_release+0x30/0x68) from [<c011ffb0>] (__fput+0xd4/0x1dc)
[ 8893.386058] [<c011ffb0>] (__fput+0xd4/0x1dc) from [<c005421c>] (task_work_run+0xac/0xc4)
[ 8893.394548] [<c005421c>] (task_work_run+0xac/0xc4) from [<c003bf70>] (do_exit+0x3f0/0x930)
[ 8893.403220] [<c003bf70>] (do_exit+0x3f0/0x930) from [<c003c528>] (do_group_exit+0x4c/0xc4)
[ 8893.411892] [<c003c528>] (do_group_exit+0x4c/0xc4) from [<c00496b0>] (get_signal_to_deliver+0x558/0x5bc)
[ 8893.421841] [<c00496b0>] (get_signal_to_deliver+0x558/0x5bc) from [<c0010528>] (do_signal+0xa8/0x38c)
[ 8893.431516] [<c0010528>] (do_signal+0xa8/0x38c) from [<c0010954>] (do_work_pending+0x54/0x9c)
[ 8893.440460] [<c0010954>] (do_work_pending+0x54/0x9c) from [<c000d920>] (work_pending+0xc/0x20)
[ 8893.449489] ---[ end trace 7ebc29db0c0c9334 ]---

Hi Dave,

Is this the classic white or black beaglebone?

I'd try with disabling:

CONFIG_USB_TI_CPPI41_DMA
and enabling
CONFIG_MUSB_PIO_ONLY

The cpu will do all the transfers...

Regards,

Black That was the next thing on my list. I’ll keep you posted.

That worked fine. I was hoping the DMA was mature enough to offload the CPU. Evidently, not yet Regards, Dave.