[mythtv] LFireDev Error: Starting A/V streaming: Cannot allocate memory

Kelly Campbell kelly.a.campbell at gmail.com
Thu Oct 4 05:07:33 UTC 2007


Got some more info after diving into the kernel drivers/ieee1394/
source. It's a dma alloc failure which is logged in dmesg:

[98343.027489] dma_region_alloc: vmalloc_32() failed

So is there some way to give the kernel more dma memory or something?

Thanks,
Kelly

On 10/4/07, Kelly Campbell <kelly.a.campbell at gmail.com> wrote:
> I get the following error usually on the second recording after a
> successful recording. I'm using a very recent svn build of myth trunk,
> libraw1394, libiec61883, and libavc1394.
>
> LFireDev(0016B5FFFE030EF3): Buffered packets 1500 (6000 KB)
> LFireDev(0016B5FFFE030EF3), Error: Starting A/V streaming
>                         eno: Cannot allocate memory (12)
>
> I've tried debugging this a little bit. I reduced the buffer size by
> 500 packets as you can see there. The memory issue is sometimes sticky
> across backend restarts. I haven't tried any bus resets or replugging
> the cable yet.
>
> I've narrowed it down to the ioctl in do_iso_init (libraw1394/src/iso.c):
>         if(ioctl(handle->fd, cmd, &handle->iso_status)) {
>                 fprintf(stderr, "ioctl for iso status failed\n");
>                 return -1;
>         }
>
> Log & stderr output:
> 2007-10-04 00:18:56.600 LFireDev(0016B5FFFE030EF3): Opening A/V stream object
> 2007-10-04 00:18:56.600 LFireDev(0016B5FFFE030EF3): Buffered packets
> 1500 (6000 KB)
> 2007-10-04 00:18:56.600 LFireDev(0016B5FFFE030EF3): Starting A/V
> streaming -- really
> ioctl for iso status failed
> 2007-10-04 00:18:56.622 LFireDev(0016B5FFFE030EF3), Error: Starting
> A/V streaming
>                         eno: Cannot allocate memory (12)
>
>
> Kernel (from Ubuntu 7.10 beta):
> Linux mythtv 2.6.22-12-generic #1 SMP Sun Sep 23 20:03:18 GMT 2007
> x86_64 GNU/Linux
>
> 1394 controller from lspci -vv:
> 02:04.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host
> Controller (rev 80) (prog-if 10 [OHCI])
>         Subsystem: Micro-Star International Co., Ltd. Unknown device 093d
>         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium
> >TAbort- <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 64 (8000ns max), Cache Line Size: 32 bytes
>         Interrupt: pin A routed to IRQ 21
>         Region 0: Memory at fcffe000 (32-bit, non-prefetchable) [size=2K]
>         Region 1: I/O ports at de00 [size=128]
>         Capabilities: [50] Power Management version 2
>                 Flags: PMEClk- DSI- D1- D2+ AuxCurrent=0mA
> PME(D0-,D1-,D2+,D3hot+,D3cold+)
>                 Status: D0 PME-Enable- DSel=0 DScale=0 PME-
>
> Cable box rom info from libavc1394/test/romtest:
> Node 0:
> -------------------------------------------------
> bus info block length = 4
> bus id = 0x31333934
> bus options:
>     isochronous resource manager capable: 1
>     cycle master capable                : 1
>     isochronous capable                 : 1
>     bus manager capable                 : 0
>     cycle master clock accuracy         : 50 ppm
>     maximum asynchronous record size    : 512 bytes
> GUID: 0x0016b5fffe030ef3
> directory:
>     node capabilities    : 0x000083c0
>     vendor id            : 0x000016b5
>     unit spec id         : 0x00005068
>     unit software version: 0x00010101
>     model id             : 0x0000620a
>     textual leaves       : MOTOROLA DCT-6200 DCT-6200
>


More information about the mythtv-dev mailing list