Hi Hirofumi,

On Wednesday 10 October 2007, Hirofumi Momose wrote:
> Hello,
>
> I am making custom webcam app.
> It works good at first, but fails over time. It invoked by cron, so no
> user memory leakage.
> When fails, messages are :
>
> webcam: page allocation failure. order:5, mode:0x0
[snip]
> Mem-info:
> DMA per-cpu:
> CPU    0: Hot: hi:   42, btch:   7 usd:   5   Cold: hi:   14, btch:   3
> usd:  13 Active:5931 inactive:22401 dirty:158 writeback:0 unstable:0
>  free:1021 slab:1351 mapped:1075 pagetables:70 bounce:0
> DMA free:4084kB min:1440kB low:1800kB high:2160kB active:23724kB
> inactive:89604kB present:13 able
>
> lowmem_reserve[]: 0 0
> DMA: 467*4kB 85*8kB 28*16kB 8*32kB 11*64kB 1*128kB 0*256kB 0*512kB 0*1024kB
> 0*2048kB 0*4096k = 4084kB
> Swap cache: add 0, delete 0, find 0/0, race 0+0
>
> I think this might be caused by page fragmentation.

Looks like it :-/ The problems you report on this mailing list have all been 
interesting so far, but next time please try to report something trivial, 
that will be less work for me :-)

> Small number of large pages are separated into large number of small
> parts as time passed. And cause allocation failure.
>
> Does someone have any idea ?

For high-bandwidth isochronous streaming the driver allocates URB buffers that 
can grow to 120kB. If this puts too much pressure on your system memory, try 
to decrease UVC_MAX_ISO_PACKETS in uvcvideo.h.

Best regards,

Laurent Pinchart
_______________________________________________
Linux-uvc-devel mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/linux-uvc-devel

Reply via email to