Discussion:
[linux-uvc-devel] page allocation failure
Michael Dzamba
2014-12-14 22:38:26 UTC
Permalink
Hi,
I have been hitting my head against a wall and I don't know how to
proceed. I sometimes unable to start capture on my cameras (all the same
brand) and I get the following message in my dmesg,

[181759.333011] vmalloc: allocation failure: 257224704 bytes
[181759.333046] camsrc:src: page allocation failure: order:0, mode:0x80d2
[181759.333064] CPU: 0 PID: 32393 Comm: camsrc:src Not tainted 3.12.28+
#713
[181759.333134] [<c001444c>] (unwind_backtrace+0x0/0xec) from [<c0011730>]
(show_stack+0x10/0x14)
[181759.333172] [<c0011730>] (show_stack+0x10/0x14) from [<c00a44e8>]
(warn_alloc_failed+0xe0/0x124)
[181759.333211] [<c00a44e8>] (warn_alloc_failed+0xe0/0x124) from
[<c00cd1d0>] (__vmalloc_node_range+0x154/0x1fc)
[181759.333236] [<c00cd1d0>] (__vmalloc_node_range+0x154/0x1fc) from
[<c00cd308>] (vmalloc_user+0x48/0x78)
[181759.333272] [<c00cd308>] (vmalloc_user+0x48/0x78) from [<bf0113ec>]
(vb2_vmalloc_alloc+0x40/0xac [videobuf2_vmalloc])
[181759.333354] [<bf0113ec>] (vb2_vmalloc_alloc+0x40/0xac
[videobuf2_vmalloc]) from [<bf1396d8>] (__vb2_queue_alloc+0xf0/0x400
[videobuf2_core])
[181759.333404] [<bf1396d8>] (__vb2_queue_alloc+0xf0/0x400
[videobuf2_core]) from [<bf13b7c8>] (__reqbufs.isra.15+0xf8/0x250
[videobuf2_core])
[181759.333486] [<bf13b7c8>] (__reqbufs.isra.15+0xf8/0x250
[videobuf2_core]) from [<bf19ad7c>] (uvc_alloc_buffers+0x24/0x40
[uvcvideo])
[181759.333537] [<bf19ad7c>] (uvc_alloc_buffers+0x24/0x40 [uvcvideo]) from
[<bf19c738>] (uvc_v4l2_do_ioctl+0xb1c/0x115c [uvcvideo])
[181759.333727] [<bf19c738>] (uvc_v4l2_do_ioctl+0xb1c/0x115c [uvcvideo])
from [<bf0d7694>] (video_usercopy+0x1d0/0x448 [videodev])
[181759.333875] [<bf0d7694>] (video_usercopy+0x1d0/0x448 [videodev]) from
[<bf0d35f4>] (v4l2_ioctl+0x10c/0x13c [videodev])
[181759.333971] [<bf0d35f4>] (v4l2_ioctl+0x10c/0x13c [videodev]) from
[<c00f6a64>] (do_vfs_ioctl+0x3f4/0x5dc)
[181759.333998] [<c00f6a64>] (do_vfs_ioctl+0x3f4/0x5dc) from [<c00f6c84>]
(SyS_ioctl+0x38/0x60)
[181759.334024] [<c00f6c84>] (SyS_ioctl+0x38/0x60) from [<c000dec0>]
(ret_fast_syscall+0x0/0x30)

I don't know where to look next. I have tried using various UVC quirks but
none have helped. I tried to collect kernel module debug informaiton and
have ,

...
[181747.283805] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
[181747.283867] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
[181747.284031] uvcvideo: uvc_v4l2_ioctl(VIDIOC_CROPCAP)
[181747.284146] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
[181747.284209] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
[181747.284328] uvcvideo: uvc_v4l2_ioctl(VIDIOC_CROPCAP)
[181747.284437] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
[181747.284499] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
[181747.284618] uvcvideo: uvc_v4l2_ioctl(VIDIOC_CROPCAP)
[181747.302864] uvcvideo: uvc_v4l2_ioctl(VIDIOC_S_FMT)
[181747.302925] uvcvideo: Trying format 0x56595559 (YUYV): 640x480.
[181747.302947] uvcvideo: Using default frame interval 33333.3 us (30.0
fps).
[181747.308749] uvcvideo: uvc_v4l2_ioctl(VIDIOC_G_PARM)
[181747.308816] uvcvideo: uvc_v4l2_ioctl(VIDIOC_G_PARM)
[181747.308878] uvcvideo: uvc_v4l2_ioctl(VIDIOC_S_PARM)
[181747.308906] uvcvideo: Setting frame interval to 1/30 (333333).
[181747.402144] uvcvideo: uvc_v4l2_poll
[181747.402202] uvcvideo: uvc_v4l2_ioctl(VIDIOC_REQBUFS)


Does anyone have any ideas of where to look next? This is running on
raspberry pi.

Thanks,

Misko

Loading...