On Tue, 13 Mar 2012 20:06:25 +0100 Mario Schulz drcms@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?