[vdr] Memory leak (was Re: Channel 4 HD on Freesat)

Tony Houghton h at realh.co.uk
Mon Mar 26 16:44:05 CEST 2012


On Tue, 13 Mar 2012 20:06:25 +0100
Mario Schulz <drcms at arcor.de> wrote:

> Am 13.03.2012 17:52, schrieb Tony Houghton:
> 
> > memory leak
> 
> I just met hepi, he also is a Doctor Who fan and is tuned to Astra2 as I am.
> He complained about the bad status of EEPG, restarting his server every
> three days or so due to a memory leak within that plugin.

I now also believe the leak is in the eepg plugin. I was probably still
running it when I thought I was testing without a few months ago,
because I didn't realise the debian init script/loader now automatically
loads all installed plugins, not just the ones in order.conf.

> As this is a 'must have' if you are on Freesat, it might be closely
> related, even if you feel it is not...

More important still with Freeview HD I think, because that doesn't even
have EIT p/f in plain text like Freesat does.

> I personally do not care because I have the receiver off most of the time.
> 
> How would you analyze or debug a memory leak in a running environment:
> - which thread/plugin is the root cause?
> - which datastructure sees the growth?
> - which allocs are not bracketed by a proper de-alloc?

Debian also includes a script to run vdr in valgrind but it didn't find
the leak even when I added the --show-reachable option. Perhaps I need
to check the fork-related options.

I haven't tried static analysis of the source code so far because C++
isn't my forte. Are any of eepg's developers available to check into
this?



More information about the vdr mailing list