[gst-embedded] oom-killer on gstreamer 0.10.20
ensonic at hora-obscura.de
Tue Feb 17 23:50:10 PST 2009
> It was understood. I want to know anyone in the mail list have good
> tools to debug this memory leakage issues. I was using the dmalloc. but
> after changing the configure file to use the arm crosscompile option,
> I got some werid errors about the dmalloc.h
> /pro/devkit/arm/v5t_le/bin/arm_v5t_le-gcc -g -O2 -DHAVE_STDARG_H=1
> -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_UNISTD_H=1
> -DHAVE_SYS_MMAN_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_W32API_WINBASE_H=0
> -DHAVE_W32API_WINDEF_H=0 -DHAVE_SYS_CYGWIN_H=0 -DHAVE_SIGNAL_H=1 -I.
> -I. -c arg_check.c -o ./arg_check.o
> In file included from arg_check.c:40:
> dmalloc.h:460: error: parse error before "__extension__"
> dmalloc.h:460: error: `__len' undeclared here (not in a function)
> dmalloc.h:460: error: initializer element is not constant
> dmalloc.h:460: error: parse error before "if"
> dmalloc.h:460: error: conflicting types for '__retval'
> dmalloc.h:460: error: previous definition of '__retval' was here
> dmalloc.h:460: warning: data definition has no type or storage class
> dmalloc.h:460: error: parse error before '}' token
If you can compile the same code to x86, you can use valgrind with memcheck
(http://www.valgrind.org). There are some efforts for valgrind to support arm,
but they are quite new.
glibc also has some memory checking tools (see
> On Tue, Feb 17, 2009 at 12:57 PM, Michael Smith <msmith at xiph.org
> <mailto:msmith at xiph.org>> wrote:
> On Tue, Feb 17, 2009 at 10:49 AM, yihe <tihpa2004 at gmail.com
> <mailto:tihpa2004 at gmail.com>> wrote:
> > Mike,
> > I am a new hand to linux/gstreamer.
> > The project is to let the system to decoder multples mepg2
> avi.stream on the
> > hardware and mux the decoded buffers to a single display buffer
> and display
> > out.
> > our team has developed the decoder element and display element
> based on the
> > hardware platform.
> > My job is to make a muxer element between these two
> elements,besides that,
> > filesrc and avimux elemetn were used in the pipeline.
> > I guess somehow the project has some memory leakage. since the
> oom-kiill did
> > not occur at first running. it was only present after nth running
> n,where n
> > was decided by the number of input streams.
> Ok, that's entirely possible. We're not familiar with your system
> though, and you're using a bunch of your own plugins - so we can't
> really help you with any of that sort of thing.
> Good luck!
More information about the Gstreamer-embedded