[mythtv] LFireDev Error: Starting A/V streaming: Cannot allocate memory
Kelly Campbell
kelly.a.campbell at gmail.com
Thu Oct 4 05:59:22 UTC 2007
I think I found the cause but haven't been able to confirm the fix yet.
https://bugs.launchpad.net/bugs/148854
Hope this thread helps someone else out since I mostly answered
everything myself so far :)
-Kelly
On 10/4/07, Kelly Campbell <kelly.a.campbell at gmail.com> wrote:
> 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